Discussion:
[Python-3000-checkins] r67012 - python/branches/py3k/Python/Python-ast.c
benjamin.peterson
2008-10-24 23:11:02 UTC
Permalink
Author: benjamin.peterson
Date: Sat Oct 25 01:11:02 2008
New Revision: 67012

Log:
update Python-ast.c

Modified:
python/branches/py3k/Python/Python-ast.c

Modified: python/branches/py3k/Python/Python-ast.c
==============================================================================
--- python/branches/py3k/Python/Python-ast.c (original)
+++ python/branches/py3k/Python/Python-ast.c Sat Oct 25 01:11:02 2008
@@ -621,11 +621,29 @@
return 0;
}

+static int add_ast_fields()
+{
+ PyObject *empty_tuple, *d;
+ if (PyType_Ready(&AST_type) < 0)
+ return -1;
+ d = AST_type.tp_dict;
+ empty_tuple = PyTuple_New(0);
+ if (!empty_tuple ||
+ PyDict_SetItemString(d, "_fields", empty_tuple) < 0 ||
+ PyDict_SetItemString(d, "_attributes", empty_tuple) < 0) {
+ Py_XDECREF(empty_tuple);
+ return -1;
+ }
+ Py_DECREF(empty_tuple);
+ return 0;
+}
+

static int init_types(void)
{
static int initialized;
if (initialized) return 1;
+ if (add_ast_fields() < 0) return 0;
mod_type = make_type("mod", &AST_type, NULL, 0);
if (!mod_type) return 0;
if (!add_attributes(mod_type, NULL, 0)) return 0;

Loading...