Author: Amaury Forgeot d'Arc <[email protected]>
Branch: py3.5
Changeset: r83886:1ec6fa2191c0
Date: 2016-04-25 23:42 +0200
http://bitbucket.org/pypy/pypy/changeset/1ec6fa2191c0/
Log: Fix for class definition inside a function.
diff --git a/pypy/module/__builtin__/compiling.py
b/pypy/module/__builtin__/compiling.py
--- a/pypy/module/__builtin__/compiling.py
+++ b/pypy/module/__builtin__/compiling.py
@@ -127,7 +127,10 @@
keywords=keywords,
keywords_w=kwds_w.values())
w_namespace = space.call_args(w_prep, args)
- w_cell = w_func.getcode().exec_code(space, w_func.w_func_globals,
w_namespace)
+ code = w_func.getcode()
+ frame = space.createframe(code, w_func.w_func_globals, w_func)
+ frame.setdictscope(w_namespace)
+ w_cell = frame.run()
keywords = kwds_w.keys()
args = Arguments(space,
args_w=[w_name, w_bases, w_namespace],
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit