[Python-Dev] assert(blah blah) in the C code base

Eric V. Smith eric at trueblade.com
Sat Dec 28 02:45:29 CET 2013

On 12/27/2013 7:53 PM, Ethan Furman wrote:
> Greetings!
> I'm working on Issue19995, and I'm seeing stuff like this:
>   assert(PyLong_Check(val));
> My question is:  Are these asserts in final production code?
> My possible scenarios are:
>   - the assert isn't in place
>   - the assert isn't working correctly
>   - PyLong_Check isn't working correctly
>   - the non-ints are being converted before the function
>     containing the assert is called
> The fourth possibility is the most likely, but since I don't know how
> assert() works in C I can't be sure.
> Any quick pointers?


They should be completely removed in a non-debug build (when NDEBUG is


More information about the Python-Dev mailing list