[Python-Dev] What is the purpose of NEXT_BLOCK()?

Serhiy Storchaka storchaka at gmail.com
Wed Mar 21 06:52:27 EDT 2018

There is the NEXT_BLOCK() macro in compile.c. It creates a new block, 
creates an implicit jump from the current block to the new block, and 
sets it as the current block.

But why it is used? All seems working if remove NEXT_BLOCK(). If there 
was a need of NEXT_BLOCK() (if it reduces the computational complexity 
of compilation or allows some optimizations), it should be documented, 
and we should analyze the code and add missed NEXT_BLOCK() where they 
are needed, and perhaps add new tests. Otherwise it can be removed.

More information about the Python-Dev mailing list