summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1995-09-30 17:01:02 (GMT)
committerGuido van Rossum <guido@python.org>1995-09-30 17:01:02 (GMT)
commit896fc7ed4a75469bbc70906eb1aeffbf275d2f9e (patch)
treef4466eebbae714df98e0afe3577be2129834a88e
parent64b24fb062d98e90eae7b58367eefba5ebf6aa87 (diff)
downloadcpython-896fc7ed4a75469bbc70906eb1aeffbf275d2f9e.zip
cpython-896fc7ed4a75469bbc70906eb1aeffbf275d2f9e.tar.gz
cpython-896fc7ed4a75469bbc70906eb1aeffbf275d2f9e.tar.bz2
re-enable new.code(...) with new args
-rw-r--r--Modules/newmodule.c21
1 files changed, 18 insertions, 3 deletions
diff --git a/Modules/newmodule.c b/Modules/newmodule.c
index 92d7870..98e5f72 100644
--- a/Modules/newmodule.c
+++ b/Modules/newmodule.c
@@ -91,28 +91,43 @@ new_function(unused, args)
return (object *)newfunc;
}
+#endif
static char new_code_doc[] =
-"Create a code object from (CODESTRING, CONSTANTS, NAMES, FILENAME, NAME).";
+"Create a code object from (ARGCOUNT, NLOCALS, FLAGS, CODESTRING, CONSTANTS, NAMES, VARNAMES, FILENAME, NAME).";
static object *
new_code(unused, args)
object* unused;
object* args;
{
+ int argcount;
+ int nlocals;
+ int flags;
object* code;
object* consts;
object* names;
+ object* varnames;
object* filename;
object* name;
+#if 0
if (!newgetargs(args, "SO!O!SS",
&code, &Tupletype, &consts, &Tupletype, &names,
&filename, &name))
return NULL;
return (object *)newcodeobject(code, consts, names, filename, name);
-}
+#else
+ if (!newgetargs(args, "iiiSO!O!O!SS",
+ &argcount, &nlocals, &flags, /* These are new */
+ &code, &Tupletype, &consts, &Tupletype, &names,
+ &Tupletype, &varnames, /* These are new */
+ &filename, &name))
+ return NULL;
+ return (object *)newcodeobject(argcount, nlocals, flags,
+ code, consts, names, varnames, filename, name);
#endif
+}
static char new_module_doc[] =
"Create a module object from (NAME).";
@@ -133,8 +148,8 @@ static struct methodlist new_methods[] = {
{"instancemethod", new_instancemethod, 1, new_im_doc},
#if 0
{"function", new_function, 1, new_function_doc},
- {"code", new_code, 1, new_code_doc},
#endif
+ {"code", new_code, 1, new_code_doc},
{"module", new_module, 1, new_module_doc},
{NULL, NULL} /* sentinel */
};