diff options
author | Guido van Rossum <guido@python.org> | 2007-03-18 15:41:51 +0000 |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2007-03-18 15:41:51 +0000 |
commit | 35e0295e5cf79db1fe5c3926064690b181f902f3 (patch) | |
tree | 64129082762a7f5e9ff17d310f7c617598de7c29 /Python/symtable.c | |
parent | 73c6e4eda41ad862c6ee5fae3b3f0bd58d789900 (diff) | |
download | cpython-35e0295e5cf79db1fe5c3926064690b181f902f3.tar.gz |
Implement PEP 3115 -- new metaclass syntax and semantics.
The compiler package hasn't been updated yet; test_compiler.py fails.
Otherwise all tests seem to be passing now. There are no occurrences
of __metaclass__ left in the standard library.
Docs have not been updated.
Diffstat (limited to 'Python/symtable.c')
-rw-r--r-- | Python/symtable.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/Python/symtable.c b/Python/symtable.c index 5bac2a2c9e..e9c9391580 100644 --- a/Python/symtable.c +++ b/Python/symtable.c @@ -983,6 +983,11 @@ symtable_visit_stmt(struct symtable *st, stmt_ty s) if (!symtable_add_def(st, s->v.ClassDef.name, DEF_LOCAL)) return 0; VISIT_SEQ(st, expr, s->v.ClassDef.bases); + VISIT_SEQ(st, keyword, s->v.ClassDef.keywords); + if (s->v.ClassDef.starargs) + VISIT(st, expr, s->v.ClassDef.starargs); + if (s->v.ClassDef.kwargs) + VISIT(st, expr, s->v.ClassDef.kwargs); if (!symtable_enter_block(st, s->v.ClassDef.name, ClassBlock, (void *)s, s->lineno)) return 0; |