Serhiy Storchaka added the comment:

Great! I tried to update the patch myself, but there were too much conflicts. 
Thank you very much Antoine for taking this!

Seems there are bugs in frame_setlineno() related to code duplications. And 
deduplicating the 'finally' blocks doesn't solve all of them. See comments on 
GitHub.

I don't like the new END_ITER instruction. This complicates (and slows down) 
the evaluation loop and the peepholer. This also adds a limitation on the 
peepholer (END_ITER can't be optimized out). We can use other way for 
determaining the end of the 'for' block. The argument of the FOR_ITER 
instruction points to the end of the 'for' block. Just scan all addresses from 
0 to max_addr and count all FOR_ITER instructions and their targets in the 
range between min_addr and max_addr.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue17611>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to