Backport PEP 3110's new 'except' syntax to 2.6.
diff --git a/Lib/compiler/transformer.py b/Lib/compiler/transformer.py
index ac23ad1..77ac776 100644
--- a/Lib/compiler/transformer.py
+++ b/Lib/compiler/transformer.py
@@ -930,7 +930,7 @@
for i in range(3, len(nodelist), 3):
node = nodelist[i]
if node[0] == symbol.except_clause:
- # except_clause: 'except' [expr [',' expr]] */
+ # except_clause: 'except' [expr [(',' | 'as') expr]] */
if len(node) > 2:
expr1 = self.com_node(node[2])
if len(node) > 4:
diff --git a/Lib/test/test_grammar.py b/Lib/test/test_grammar.py
index 14ce7e4..51d77f2 100644
--- a/Lib/test/test_grammar.py
+++ b/Lib/test/test_grammar.py
@@ -600,7 +600,7 @@
def testTry(self):
### try_stmt: 'try' ':' suite (except_clause ':' suite)+ ['else' ':' suite]
### | 'try' ':' suite 'finally' ':' suite
- ### except_clause: 'except' [expr [',' expr]]
+ ### except_clause: 'except' [expr [('as' | ',') expr]]
try:
1/0
except ZeroDivisionError:
@@ -609,7 +609,7 @@
pass
try: 1/0
except EOFError: pass
- except TypeError, msg: pass
+ except TypeError as msg: pass
except RuntimeError, msg: pass
except: pass
else: pass