Message 224119 - Python tracker
The documentation of the built-in compile() function is not 100% clear but I think it says that giving the "optimize=1" argument turns "__debug__" to false in the compiled code ( https://docs.python.org/3.5/library/functions.html?highlight=compile#compile ). It doesn't work this way in practice, though: python3.5 >>> exec(compile("print(__debug__)", "exec", "exec", optimize=1)) True I'd recommend to fix either the documentation or the source code.