You've already forked python-uncompyle6
mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2025-08-03 00:45:53 +08:00
Correct 3.4 "yield from" semantic action bug
This commit is contained in:
BIN
test/bytecode_3.3/09_yield_from.pyc
Normal file
BIN
test/bytecode_3.3/09_yield_from.pyc
Normal file
Binary file not shown.
BIN
test/bytecode_3.4/09_yield_from.pyc
Normal file
BIN
test/bytecode_3.4/09_yield_from.pyc
Normal file
Binary file not shown.
@@ -11,6 +11,9 @@
|
|||||||
def _walk_dir(dir, dfile, ddir=None):
|
def _walk_dir(dir, dfile, ddir=None):
|
||||||
yield from _walk_dir(dir, ddir=dfile)
|
yield from _walk_dir(dir, ddir=dfile)
|
||||||
|
|
||||||
|
def ybug(g):
|
||||||
|
yield from g
|
||||||
|
|
||||||
# From 3.5.1 _wakrefset.py
|
# From 3.5.1 _wakrefset.py
|
||||||
#
|
#
|
||||||
# 3.5:
|
# 3.5:
|
||||||
|
@@ -193,12 +193,12 @@ def customize_for_version3(self, version):
|
|||||||
def n_yield_from(node):
|
def n_yield_from(node):
|
||||||
self.write('yield from')
|
self.write('yield from')
|
||||||
self.write(' ')
|
self.write(' ')
|
||||||
if 3.3 <= self.version <= 3.4:
|
if 3.3 == self.version:
|
||||||
self.preorder(node[0][0][0][0])
|
self.preorder(node[0][0][0][0])
|
||||||
elif self.version >= 3.5:
|
elif self.version >= 3.4:
|
||||||
self.preorder(node[0])
|
self.preorder(node[0])
|
||||||
else:
|
else:
|
||||||
assert False, "dunno about this python version"
|
assert False, "dunno how ths Python handles 'yield from'"
|
||||||
self.prune() # stop recursing
|
self.prune() # stop recursing
|
||||||
self.n_yield_from = n_yield_from
|
self.n_yield_from = n_yield_from
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user