[Python-Dev] [Python-checkins] cpython: fix compiler warnings (original) (raw)

Benjamin Peterson benjamin at python.org
Tue Oct 4 13:57:57 CEST 2011


2011/10/4 Victor Stinner <victor.stinner at haypocalc.com>:

Le 04/10/2011 01:34, benjamin.peterson a écrit :

http://hg.python.org/cpython/rev/afb60b190f1c changeset:   72633:afb60b190f1c user:        Benjamin Peterson<benjamin at python.org> date:        Mon Oct 03 19:34:12 2011 -0400 summary: fix compiler warnings +++ b/Objects/unicodeobject.c @@ -369,6 +369,12 @@  }  return 1;  } +#else +static int +PyUnicodeCheckConsistency(void *op) +{ +    return 1; +}  #endif Oh no, please don't do that. Calling PyUnicodeCheckConsistency() is reserved to debug builds. In release mode, we should not check string consistency (it would slow down Python).

It should be optimized out.

Yes, there was a warning: Objects/unicodeobject.c:539:13: warning: statement with no effect  PyUnicodeCHECK(unicode); I added these checks recently to ensure that strings are consistent just before exiting (to help me to track down a bug). The right fix is just to replace PyUnicodeCHECK(unicode) by assert(PyUnicodeCHECK(unicode)).

But _PyUnicode_CheckConsistency is just a string of assertions. What sense does it make to check the return value?

-- Regards, Benjamin



More information about the Python-Dev mailing list