Merged in issue735 (pull request #302)
use NameConstant node when it exists (fixes #735)
This commit is contained in:
commit
304fc4f222
|
@ -1,6 +1,8 @@
|
||||||
2.8.0.dev (compared to 2.7.X)
|
2.8.0.dev (compared to 2.7.X)
|
||||||
-----------------------------
|
-----------------------------
|
||||||
|
|
||||||
|
- fix issue735: assertion failures on debug versions of Python 3.4+
|
||||||
|
|
||||||
- change test module importing behaviour to append to sys.path
|
- change test module importing behaviour to append to sys.path
|
||||||
instead of prepending. This better allows to run test modules
|
instead of prepending. This better allows to run test modules
|
||||||
against installated versions of a package even if the package
|
against installated versions of a package even if the package
|
||||||
|
|
|
@ -442,6 +442,13 @@ binop_map = {
|
||||||
ast.NotIn: "not in"
|
ast.NotIn: "not in"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Python 3.4+ compatibility
|
||||||
|
if hasattr(ast, "NameConstant"):
|
||||||
|
_NameConstant = ast.NameConstant
|
||||||
|
else:
|
||||||
|
def _NameConstant(c):
|
||||||
|
return ast.Name(str(c), ast.Load())
|
||||||
|
|
||||||
|
|
||||||
def set_location(node, lineno, col_offset):
|
def set_location(node, lineno, col_offset):
|
||||||
"""Set node location information recursively."""
|
"""Set node location information recursively."""
|
||||||
|
@ -680,7 +687,7 @@ class AssertionRewriter(ast.NodeVisitor):
|
||||||
if self.variables:
|
if self.variables:
|
||||||
variables = [ast.Name(name, ast.Store())
|
variables = [ast.Name(name, ast.Store())
|
||||||
for name in self.variables]
|
for name in self.variables]
|
||||||
clear = ast.Assign(variables, ast.Name("None", ast.Load()))
|
clear = ast.Assign(variables, _NameConstant(None))
|
||||||
self.statements.append(clear)
|
self.statements.append(clear)
|
||||||
# Fix line numbers.
|
# Fix line numbers.
|
||||||
for stmt in self.statements:
|
for stmt in self.statements:
|
||||||
|
|
Loading…
Reference in New Issue