Serhiy Storchaka added the comment:

FYI this optimization is already implemented in 3.5+.

>>> def fo():
...   if a:
...     if b:
...      if c:
...        print()
... 
>>> import dis
>>> dis.dis(fo)
  2           0 LOAD_GLOBAL              0 (a)
              2 POP_JUMP_IF_FALSE       18

  3           4 LOAD_GLOBAL              1 (b)
              6 POP_JUMP_IF_FALSE       18

  4           8 LOAD_GLOBAL              2 (c)
             10 POP_JUMP_IF_FALSE       18

  5          12 LOAD_GLOBAL              3 (print)
             14 CALL_FUNCTION            0
             16 POP_TOP
        >>   18 LOAD_CONST               0 (None)
             20 RETURN_VALUE

----------
nosy: +serhiy.storchaka
resolution:  -> out of date
stage:  -> resolved
status: open -> closed

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

Reply via email to