diff options
author | cpopa <devnull@localhost> | 2014-01-27 15:56:40 +0200 |
---|---|---|
committer | cpopa <devnull@localhost> | 2014-01-27 15:56:40 +0200 |
commit | 497bc1cbe3a141a5c1cf58ba6cb3ba8e54e060ec (patch) | |
tree | e7a174ad80f41fde33d6692aee4ed1bcd2aa50de | |
parent | 76ae10b9d02a11fce661cbf93261e578f7f49030 (diff) | |
download | astroid-497bc1cbe3a141a5c1cf58ba6cb3ba8e54e060ec.tar.gz |
vararg and kwarg are instances of _arg.arg for Python 3.4, not strings.
-rw-r--r-- | rebuilder.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/rebuilder.py b/rebuilder.py index d4b46d3..c9a5a88 100644 --- a/rebuilder.py +++ b/rebuilder.py @@ -88,6 +88,7 @@ REDIRECT = {'arguments': 'Arguments', 'Repr': 'Backquote', } PY3K = sys.version_info >= (3, 0) +PY34 = sys.version_info >= (3, 4) def _init_set_doc(node, newnode): newnode.doc = None @@ -854,6 +855,13 @@ class TreeRebuilder3k(TreeRebuilder): def visit_arguments(self, node, parent): newnode = super(TreeRebuilder3k, self).visit_arguments(node, parent) + if PY34: + # change added in 82732 (7c5c678e4164), vararg and kwarg + # are instances of `_ast.arg`, not strings + if node.vararg: + newnode.vararg = node.vararg.arg + if node.kwarg: + newnode.kwarg = node.kwarg.arg self.asscontext = "Ass" newnode.kwonlyargs = [self.visit(child, newnode) for child in node.kwonlyargs] self.asscontext = None |