diff options
| author | exarkun <exarkun> | 2008-07-14 12:27:04 +0000 |
|---|---|---|
| committer | exarkun <exarkun> | 2008-07-14 12:27:04 +0000 |
| commit | 1cd653d38b521d1e8ea10410830cf29683a8c09f (patch) | |
| tree | b4a2c72b6251112792ffe6cd921ef3824810f546 | |
| parent | c4e1e56b1f9a8f47438084cd92267bd42155dfee (diff) | |
| download | pyflakes-1cd653d38b521d1e8ea10410830cf29683a8c09f.tar.gz | |
Merge pyflakes-nameless-with-2048
Author: exarkun
Reviewer: glyph
Fixes: #2048
Support `with` without `as` on Python 2.5.
| -rw-r--r-- | pyflakes/checker.py | 4 | ||||
| -rw-r--r-- | pyflakes/test/test_other.py | 13 |
2 files changed, 16 insertions, 1 deletions
diff --git a/pyflakes/checker.py b/pyflakes/checker.py index a700fad..6f2adb3 100644 --- a/pyflakes/checker.py +++ b/pyflakes/checker.py @@ -206,8 +206,10 @@ class Checker(object): if isinstance(node.vars, ast.AssTuple): varNodes = node.vars.nodes - else: + elif node.vars is not None: varNodes = [node.vars] + else: + varNodes = [] for varNode in varNodes: self.addBinding(varNode.lineno, Assignment(varNode.name, varNode)) diff --git a/pyflakes/test/test_other.py b/pyflakes/test/test_other.py index 3449785..e6ac477 100644 --- a/pyflakes/test/test_other.py +++ b/pyflakes/test/test_other.py @@ -91,6 +91,19 @@ class Python25Test(harness.Test): self.flakes("a = 'moo' if True else bar", m.UndefinedName) + def test_withStatementNoNames(self): + """ + No warnings are emitted for using inside or after a nameless C{with} + statement a name defined beforehand. + """ + self.flakes(''' + from __future__ import with_statement + bar = None + with open("foo"): + bar + bar + ''') + def test_withStatementSingleName(self): """ No warnings are emitted for using a name defined by a C{with} statement |
