Pablo Galindo Salgado <[email protected]> added the comment:
The DFA for the rule
with_stmt: 'with' ( with_item (',' with_item)* | '(' with_item (',' with_item)*
[','] ')' ) ':' suite
is:
DFA for with_stmt
[512/2103]
State 0
'with' -> 1
State 1
'(' -> 2
with_item -> 3
State 2
with_item -> 4
State 3
',' -> 5
':' -> 6
State 4
')' -> 7
',' -> 8
State 5
with_item -> 3
State 6
suite -> 10
State 7
':' -> 6
State 8
')' -> 7
with_item -> 4
State 9
',' -> 5
':' -> 6
State 10 (final)
State 11
')' -> 7
',' -> 8
It works because the transition from State 1 into a "(" is going to prioritize
the path:
0 -> 1 -> "(" -> 2
instead if
0 -> 1 -> with_item -> 3
----------
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue12782>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com