2.6.9 tryelsestmt

This commit is contained in:
rocky
2016-07-02 22:53:58 -04:00
parent 12d22c055f
commit bec1524c5a
3 changed files with 7 additions and 3 deletions

View File

@@ -164,9 +164,7 @@ class Python2Parser(PythonParser):
POP_BLOCK LOAD_CONST POP_BLOCK LOAD_CONST
COME_FROM suite_stmts_opt END_FINALLY COME_FROM suite_stmts_opt END_FINALLY
tryelsestmt ::= SETUP_EXCEPT suite_stmts_opt POP_BLOCK # Move to 2.7? 2.6 may use come_froms
try_middle else_suite COME_FROM
tryelsestmtc ::= SETUP_EXCEPT suite_stmts_opt POP_BLOCK tryelsestmtc ::= SETUP_EXCEPT suite_stmts_opt POP_BLOCK
try_middle else_suitec COME_FROM try_middle else_suitec COME_FROM

View File

@@ -49,6 +49,9 @@ class Python26Parser(Python2Parser):
trystmt ::= SETUP_EXCEPT suite_stmts_opt POP_BLOCK trystmt ::= SETUP_EXCEPT suite_stmts_opt POP_BLOCK
try_middle try_middle
tryelsestmt ::= SETUP_EXCEPT suite_stmts_opt POP_BLOCK
try_middle else_suite come_froms
except_suite ::= c_stmts_opt JUMP_FORWARD come_from_pop except_suite ::= c_stmts_opt JUMP_FORWARD come_from_pop
# Python 3 also has this. # Python 3 also has this.

View File

@@ -20,6 +20,9 @@ class Python27Parser(Python2Parser):
try_middle ::= jmp_abs COME_FROM except_stmts try_middle ::= jmp_abs COME_FROM except_stmts
END_FINALLY END_FINALLY
tryelsestmt ::= SETUP_EXCEPT suite_stmts_opt POP_BLOCK
try_middle else_suite COME_FROM
except_cond1 ::= DUP_TOP expr COMPARE_OP except_cond1 ::= DUP_TOP expr COMPARE_OP
jmp_false POP_TOP POP_TOP POP_TOP jmp_false POP_TOP POP_TOP POP_TOP