Author: Ronan Lamy <[email protected]>
Branch: translation-cleanup
Changeset: r57004:da9a2079206a
Date: 2012-08-16 17:42 +0100
http://bitbucket.org/pypy/pypy/changeset/da9a2079206a/

Log:    Copy all FSFrame initialisation code into the class

diff --git a/pypy/objspace/flow/flowcontext.py 
b/pypy/objspace/flow/flowcontext.py
--- a/pypy/objspace/flow/flowcontext.py
+++ b/pypy/objspace/flow/flowcontext.py
@@ -348,7 +348,19 @@
             outerfunc.closure = [Cell(Constant(value)) for value in cl]
         else:
             outerfunc.closure = []
-        super(FlowSpaceFrame, self).__init__(space, code, w_globals, outerfunc)
+        self.pycode = code
+        self.space      = space
+        self.w_globals  = w_globals  # wrapped dict of globals
+        self.w_locals   = None       # wrapped dict of locals
+        self.locals_stack_w = [None] * (code.co_nlocals + code.co_stacksize)
+        self.valuestackdepth = code.co_nlocals
+        self.lastblock = None
+        if space.config.objspace.honor__builtins__:
+            self.builtin = space.builtin.pick_builtin(w_globals)
+        # regular functions always have CO_OPTIMIZED and CO_NEWLOCALS.
+        # class bodies only have CO_NEWLOCALS.
+        self.initialize_frame_scopes(outerfunc, code)
+        self.f_lineno = code.co_firstlineno
         self.last_instr = 0
 
         if constargs is None:
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to