summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmile Anclin <emile.anclin@logilab.fr>2010-02-02 15:27:38 +0100
committerEmile Anclin <emile.anclin@logilab.fr>2010-02-02 15:27:38 +0100
commit40404237fda76e16e18dd6c637c6907faa9338f8 (patch)
tree5fee69eea9bad5786bfd0f4339c6eada44c9d34d
parentc585c526fd1455787cefcbf08a735095ff5d7038 (diff)
downloadastroid-git-40404237fda76e16e18dd6c637c6907faa9338f8.tar.gz
fix set_infos for _nodify_args
we have to set node.parent before we call save_assignments --HG-- branch : rebuild
-rw-r--r--_nodes_compiler.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/_nodes_compiler.py b/_nodes_compiler.py
index 8e6bc4b1..9f40eba5 100644
--- a/_nodes_compiler.py
+++ b/_nodes_compiler.py
@@ -191,13 +191,14 @@ class TreeRebuilder(RebuildVisitor):
for arg in values:
if isinstance(arg, (tuple, list)):
n = new.Tuple()
+ self._set_infos(parent, n, parent)
n.elts = self._nodify_args(n, arg)
else:
- n = new.AssName()
assert isinstance(arg, basestring)
+ n = new.AssName()
+ self._set_infos(parent, n, parent)
n.name = arg
self._save_assignment(n, n.name)
- self._set_infos(parent, n, parent)
res.append(n)
return res
@@ -213,8 +214,8 @@ class TreeRebuilder(RebuildVisitor):
else:
vararg = None
newnode = new.Arguments(vararg, kwarg)
- newnode.args = self._nodify_args(newnode, node.argnames)
self._set_infos(node, newnode, parent)
+ newnode.args = self._nodify_args(newnode, node.argnames)
self._save_argument_name(newnode)
newnode.defaults = [self.visit(child, newnode) for child in node.defaults]
self.set_infos(newnode,node)