You've already forked python-uncompyle6
mirror of
https://github.com/rocky/python-uncompyle6.git
synced 2025-08-04 01:09:52 +08:00
Merge branch 'master' into python-3.3-to-3.5
This commit is contained in:
BIN
test/bytecode_3.3_run/02_make_closure.pyc
Normal file
BIN
test/bytecode_3.3_run/02_make_closure.pyc
Normal file
Binary file not shown.
BIN
test/bytecode_3.4_run/02_make_closure.pyc
Normal file
BIN
test/bytecode_3.4_run/02_make_closure.pyc
Normal file
Binary file not shown.
18
test/simple_source/bug34/02_make_closure.py
Normal file
18
test/simple_source/bug34/02_make_closure.py
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# Related to #426
|
||||||
|
|
||||||
|
# This file is RUNNABLE!
|
||||||
|
"""This program is self-checking!"""
|
||||||
|
|
||||||
|
a = 5
|
||||||
|
class MakeClosureTest():
|
||||||
|
# This function uses MAKE_CLOSURE with annotation args
|
||||||
|
def __init__(self, dev: str, b: bool):
|
||||||
|
super().__init__()
|
||||||
|
self.dev = dev
|
||||||
|
self.b = b
|
||||||
|
self.a = a
|
||||||
|
|
||||||
|
x = MakeClosureTest("dev", True)
|
||||||
|
assert x.dev == "dev"
|
||||||
|
assert x.b == True
|
||||||
|
assert x.a == 5
|
@@ -1178,7 +1178,7 @@ class Python3Parser(PythonParser):
|
|||||||
"pos_arg " * args_pos,
|
"pos_arg " * args_pos,
|
||||||
opname,
|
opname,
|
||||||
)
|
)
|
||||||
elif self.version == (3, 3):
|
elif (3, 3) <= self.version < (3, 5):
|
||||||
if annotate_args > 0:
|
if annotate_args > 0:
|
||||||
rule = (
|
rule = (
|
||||||
"mkfunc_annotate ::= %s%s%sannotate_tuple load_closure LOAD_CODE LOAD_STR %s"
|
"mkfunc_annotate ::= %s%s%sannotate_tuple load_closure LOAD_CODE LOAD_STR %s"
|
||||||
@@ -1196,7 +1196,7 @@ class Python3Parser(PythonParser):
|
|||||||
opname,
|
opname,
|
||||||
)
|
)
|
||||||
|
|
||||||
elif self.version >= (3, 4):
|
elif self.version >= (3, 5):
|
||||||
if not self.is_pypy:
|
if not self.is_pypy:
|
||||||
load_op = "LOAD_STR"
|
load_op = "LOAD_STR"
|
||||||
else:
|
else:
|
||||||
|
Reference in New Issue
Block a user