summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2006-02-27 00:09:50 (GMT)
committerMartin v. Löwis <martin@v.loewis.de>2006-02-27 00:09:50 (GMT)
commitd3a5f53a27be821cfdff869fd8ad93a060497e8c (patch)
treeee22ad4c843e07d067847ffc25cddccb0c09033b
parent8d0701daf11e9f93db0b91adad4fc9911752160f (diff)
downloadcpython-d3a5f53a27be821cfdff869fd8ad93a060497e8c.zip
cpython-d3a5f53a27be821cfdff869fd8ad93a060497e8c.tar.gz
cpython-d3a5f53a27be821cfdff869fd8ad93a060497e8c.tar.bz2
Avoid reinitializing the types twice.
-rwxr-xr-xParser/asdl_c.py1
-rw-r--r--Python/Python-ast.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/Parser/asdl_c.py b/Parser/asdl_c.py
index a853f5e..e1dd463 100755
--- a/Parser/asdl_c.py
+++ b/Parser/asdl_c.py
@@ -446,6 +446,7 @@ static PyObject* ast2obj_bool(bool b)
self.emit("static int init_types(void)",0)
self.emit("{", 0)
self.emit("if (initialized) return 1;", 1)
+ self.emit("initialized = 1;", 1)
for dfn in mod.dfns:
self.visit(dfn)
self.emit("return 1;", 0);
diff --git a/Python/Python-ast.c b/Python/Python-ast.c
index cf27129..6935851 100644
--- a/Python/Python-ast.c
+++ b/Python/Python-ast.c
@@ -392,6 +392,7 @@ static int initialized;
static int init_types(void)
{
if (initialized) return 1;
+ initialized = 1;
mod_type = make_type("mod", &PyBaseObject_Type, NULL, 0);
Module_type = make_type("Module", mod_type, Module_fields, 1);
Interactive_type = make_type("Interactive", mod_type,