Skip to contentSkip to conversation

python's assert doesn't work

PATCH Robert Yang 1 participant 1 message Apr 25, 2013

lore
Share & tools
lore
#0 lore raw

Both native and target python's assert doesn't work, because python has been optimized by default by us:

Python/compile.c +1 -1
@@ -32,7 +32,7 @@
 #include "symtable.h"
 #include "opcode.h"
 
-int Py_OptimizeFlag = 0;
+int Py_OptimizeFlag = 1;
 
 #define DEFAULT_BLOCK_SIZE 16
 #define DEFAULT_BLOCKS 8

The optimization should be specified by the user, for example, run by "python -O/OO", or "export PYTHONOPTIMIZE" in the env, but we have hardcode it, then we can't change it back to 0, and this causes the "assert" doesn't work, e.g.: the "assert False" should raise error, but it doesn't, this may hide or cause unexpected errors.

I'd like to send a patch to change it back if you are fine with it, and we can set PYTHONOPTIMIZE in the env if we really need it, this gives the user a way to disable the optimization.

Signature · 3 lines
Thanks

Robert