[Python-Dev] Opinions on const-correctness? (original) (raw)

Guido van Rossum guido@python.org
Tue, 12 Mar 2002 15:47:20 -0500


When you interface const-correct C or C++ code with Python, you currently need to jump through hoops like this:

somefunc(const char* modulename, const char* key) { ... PyImportImportModule(constcast<char*>(modulename)) ...

I'd be willing to invest some time to change this, the question is: 1. someone opposed to such a change? 2. any technical reasons against it (const is ANSI, do we have a portability problem that cannot be solved by a #define)? The largest negative effect I can see is that it'll add some turbulence to the CVS log (many little changes).

-1.

I've never tried to enforce const-correctness before, but I've heard enough horror stories about this. The problem is that it breaks 3rd party extensions left and right, and fixing those isn't always easy. In general, whenever you add a const somewhere, it ends up propagating to some other API, which then also requires a const, which propagates to yet another API needing a const, ad infinitum.

--Guido van Rossum (home page: http://www.python.org/~guido/)