You've already forked python-uncompyle6
mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2025-08-03 00:45:53 +08:00
Predidence of cmp_list: x == y == z
The x, y, z should not have parenthesis around pairs of them (x == y) or (y == z)
This commit is contained in:
BIN
test/bytecode_2.7/03_double_equals.pyc
Normal file
BIN
test/bytecode_2.7/03_double_equals.pyc
Normal file
Binary file not shown.
6
test/simple_source/bug26/03_double_equals.py
Normal file
6
test/simple_source/bug26/03_double_equals.py
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
# From Python 2.7 parse_starttag HTMLParser.pyc
|
||||||
|
attrvalue = [1,2]
|
||||||
|
while attrvalue:
|
||||||
|
if attrvalue[:1] == 5 or \
|
||||||
|
attrvalue[:1] == 2 == attrvalue[-1:]:
|
||||||
|
attrvalue = 10
|
@@ -176,7 +176,7 @@ TABLE_DIRECT = {
|
|||||||
'conditional_lambda': ( '(%c if %c else %c)', 2, 0, 3),
|
'conditional_lambda': ( '(%c if %c else %c)', 2, 0, 3),
|
||||||
'return_lambda': ('%c', 0),
|
'return_lambda': ('%c', 0),
|
||||||
'compare': ( '%p %[-1]{pattr} %p', (0, 19), (1, 19) ),
|
'compare': ( '%p %[-1]{pattr} %p', (0, 19), (1, 19) ),
|
||||||
'cmp_list': ( '%p %p', (0, 20), (1, 19)),
|
'cmp_list': ( '%p %p', (0, 29), (1, 30)),
|
||||||
'cmp_list1': ( '%[3]{pattr} %p %p', (0, 19), (-2, 19)),
|
'cmp_list1': ( '%[3]{pattr} %p %p', (0, 19), (-2, 19)),
|
||||||
'cmp_list2': ( '%[1]{pattr} %p', (0, 19)),
|
'cmp_list2': ( '%[1]{pattr} %p', (0, 19)),
|
||||||
# 'classdef': (), # handled by n_classdef()
|
# 'classdef': (), # handled by n_classdef()
|
||||||
@@ -274,6 +274,10 @@ MAP = {
|
|||||||
'exprlist': MAP_R0,
|
'exprlist': MAP_R0,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Operator precidence
|
||||||
|
# See https://docs.python.org/3/reference/expressions.html
|
||||||
|
# or https://docs.python.org/3/reference/expressions.html
|
||||||
|
# for a list.
|
||||||
PRECEDENCE = {
|
PRECEDENCE = {
|
||||||
'build_list': 0,
|
'build_list': 0,
|
||||||
'mapexpr': 0,
|
'mapexpr': 0,
|
||||||
|
Reference in New Issue
Block a user