wibiti/uncompyle2

Conditional lambda problems

Closed this issue · 2 comments

Hi, firstofall thanks for this great tool! :)
I stumbled upon a little problem: Decompiling something like the following failes and I’ve no idea on how to fix it:

def bar(self):
    return 'C' or ('A' if True else 'B')

Here is the output:

0   LOAD_CONST        'C'
3   JUMP_IF_TRUE_OR_POP '19'
6   LOAD_GLOBAL       'True'
9   POP_JUMP_IF_FALSE '16'
12  LOAD_CONST        'A'
15  RETURN_END_IF     None
16  LOAD_CONST        'B'
19_0    COME_FROM         '3'
19  RETURN_VALUE      None
-1  RETURN_LAST       None
Syntax error at or near `RETURN_END_IF' token at offset 15

Thanks. I'll take a look at it.

I think it's fixed now. Let me know if not.