diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2008-03-28 05:29:57 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2008-03-28 05:29:57 (GMT) |
commit | 51d1864eaed5aceaec2476828c6879c900b64b5e (patch) | |
tree | 2e3e26746de9c309ab2d601734d7d22f3bfb9d17 /Lib/lib2to3/fixes/fix_except.py | |
parent | ba4af493a5bcece67bc6ae369bfea0592b10f9e5 (diff) | |
download | cpython-51d1864eaed5aceaec2476828c6879c900b64b5e.zip cpython-51d1864eaed5aceaec2476828c6879c900b64b5e.tar.gz cpython-51d1864eaed5aceaec2476828c6879c900b64b5e.tar.bz2 |
Merged revisions 61988-61990 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
................
r61988 | martin.v.loewis | 2008-03-28 06:25:36 +0100 (Fr, 28 Mär 2008) | 2 lines
Disable test that depends on #2412 being fixed.
................
r61989 | martin.v.loewis | 2008-03-28 06:26:10 +0100 (Fr, 28 Mär 2008) | 2 lines
Run 2to3 tests.
................
r61990 | martin.v.loewis | 2008-03-28 06:27:44 +0100 (Fr, 28 Mär 2008) | 13 lines
Merged revisions 61825-61989 via svnmerge from
svn+ssh://pythondev@svn.python.org/sandbox/trunk/2to3/lib2to3
........
r61899 | collin.winter | 2008-03-25 17:53:41 +0100 (Di, 25 Mär 2008) | 1 line
Add a missing explicit fixer to test_all_fixers.
........
r61983 | collin.winter | 2008-03-28 03:19:46 +0100 (Fr, 28 Mär 2008) | 2 lines
Fix http://bugs.python.org/issue2453: support empty excepts in fix_except.
........
................
Diffstat (limited to 'Lib/lib2to3/fixes/fix_except.py')
-rw-r--r-- | Lib/lib2to3/fixes/fix_except.py | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/Lib/lib2to3/fixes/fix_except.py b/Lib/lib2to3/fixes/fix_except.py index 34281a0..5d6d153 100644 --- a/Lib/lib2to3/fixes/fix_except.py +++ b/Lib/lib2to3/fixes/fix_except.py @@ -37,15 +37,18 @@ class FixExcept(basefix.BaseFix): PATTERN = """ try_stmt< 'try' ':' suite - cleanup=((except_clause ':' suite)+ ['else' ':' suite] - ['finally' ':' suite] - | 'finally' ':' suite) > + cleanup=(except_clause ':' suite)+ + tail=(['except' ':' suite] + ['else' ':' suite] + ['finally' ':' suite]) > """ def transform(self, node, results): syms = self.syms - try_cleanup = [ch.clone() for ch in results['cleanup']] + tail = [n.clone() for n in results["tail"]] + + try_cleanup = [ch.clone() for ch in results["cleanup"]] for except_clause, e_suite in find_excepts(try_cleanup): if len(except_clause.children) == 4: (E, comma, N) = except_clause.children[1:4] @@ -85,5 +88,5 @@ class FixExcept(basefix.BaseFix): N.set_prefix(" ") #TODO(cwinter) fix this when children becomes a smart list - children = [c.clone() for c in node.children[:3]] + try_cleanup + children = [c.clone() for c in node.children[:3]] + try_cleanup + tail return pytree.Node(node.type, children) |