Message297189
Actually I just finished reading njs's blog post, and as he points out that special case for SETUP_FINALLY is basically broken. There are other cases where it doesn't really work either. For example if you have:
if ...:
do_something()
else:
do_something_else()
try:
...
finally:
...
then (ignoring the issue about POP_TOP for a moment) the last instruction in *one* of these branches if followed immediately by SETUP_FINALLY, while in the other branch there's a JUMP_FORWARD, then the SETUP_FINALLY.
All the more reason for a more generic solution to this that doesn't depend strictly on the next op locally in the byte code. |
|
Date |
User |
Action |
Args |
2017-06-28 14:54:28 | erik.bray | set | recipients:
+ erik.bray, ncoghlan, njs, Mark.Shannon, jdemeyer, yselivanov, deleted0524 |
2017-06-28 14:54:28 | erik.bray | set | messageid: <1498661668.73.0.0822663285722.issue29988@psf.upfronthosting.co.za> |
2017-06-28 14:54:28 | erik.bray | link | issue29988 messages |
2017-06-28 14:54:28 | erik.bray | create | |
|