diff options
author | Jeremy Hylton <jeremy@alum.mit.edu> | 2001-01-25 20:07:56 (GMT) |
---|---|---|
committer | Jeremy Hylton <jeremy@alum.mit.edu> | 2001-01-25 20:07:56 (GMT) |
commit | 903f654ac9116bc5c598c19b9e9c45f5ba9e1a7b (patch) | |
tree | 5742605c33f07c5747c24e31ef8ca90912700702 | |
parent | f65e500594f935c642e2b8d6de44c9d530f1ec47 (diff) | |
download | cpython-903f654ac9116bc5c598c19b9e9c45f5ba9e1a7b.zip cpython-903f654ac9116bc5c598c19b9e9c45f5ba9e1a7b.tar.gz cpython-903f654ac9116bc5c598c19b9e9c45f5ba9e1a7b.tar.bz2 |
PEP 227 implementation
Track changes to PyFrame_New() and PyFuntion_New().
-rw-r--r-- | Modules/newmodule.c | 11 | ||||
-rw-r--r-- | Modules/pyexpat.c | 6 |
2 files changed, 13 insertions, 4 deletions
diff --git a/Modules/newmodule.c b/Modules/newmodule.c index 21b82ef..06b7d82 100644 --- a/Modules/newmodule.c +++ b/Modules/newmodule.c @@ -101,7 +101,7 @@ new_function(PyObject* unused, PyObject* args) } static char new_code_doc[] = -"Create a code object from (ARGCOUNT, NLOCALS, STACKSIZE, FLAGS, CODESTRING, CONSTANTS, NAMES, VARNAMES, FILENAME, NAME, FIRSTLINENO, LNOTAB)."; +"Create a code object from (ARGCOUNT, NLOCALS, STACKSIZE, FLAGS, CODESTRING, CONSTANTS, NAMES, VARNAMES, FREEVARS, CELLVARS, FILENAME, NAME, FIRSTLINENO, LNOTAB)."; static PyObject * new_code(PyObject* unused, PyObject* args) @@ -114,18 +114,22 @@ new_code(PyObject* unused, PyObject* args) PyObject* consts; PyObject* names; PyObject* varnames; + PyObject* freevars; + PyObject* cellvars; PyObject* filename; PyObject* name; int firstlineno; PyObject* lnotab; PyBufferProcs *pb; - if (!PyArg_ParseTuple(args, "iiiiOO!O!O!SSiS:code", + if (!PyArg_ParseTuple(args, "iiiiOO!O!O!O!O!SSiS:code", &argcount, &nlocals, &stacksize, &flags, &code, &PyTuple_Type, &consts, &PyTuple_Type, &names, &PyTuple_Type, &varnames, + &PyTuple_Type, &freevars, + &PyTuple_Type, &cellvars, &filename, &name, &firstlineno, &lnotab)) return NULL; @@ -143,7 +147,8 @@ new_code(PyObject* unused, PyObject* args) return (PyObject *)PyCode_New(argcount, nlocals, stacksize, flags, code, consts, names, varnames, - filename, name, firstlineno, lnotab); + freevars, cellvars, filename, name, + firstlineno, lnotab); } static char new_module_doc[] = diff --git a/Modules/pyexpat.c b/Modules/pyexpat.c index cbe0a6e..6778a9c 100644 --- a/Modules/pyexpat.c +++ b/Modules/pyexpat.c @@ -257,6 +257,8 @@ getcode(enum HandlerTypes slot, char* func_name, int lineno) nulltuple, /* consts */ nulltuple, /* names */ nulltuple, /* varnames */ + nulltuple, /* freevars */ + nulltuple, /* cellvars */ filename, /* filename */ name, /* name */ lineno, /* firstlineno */ @@ -288,7 +290,9 @@ call_with_frame(PyCodeObject *c, PyObject* func, PyObject* args) tstate, /*back*/ c, /*code*/ tstate->frame->f_globals, /*globals*/ - NULL); /*locals*/ + NULL, /*locals*/ + 0, + NULL); /* closure */ if (f == NULL) return NULL; tstate->frame = f; |