[Jeremy] >> I added some const to several API functions that take char* but >> typically called by passing string literals. In C++, a string literal >> is a const char* so you need to add a const_cast<> to every call site, >> which is incredibly cumbersome. After some discussion on python-dev, >> I made changes to a small set of API functions and chased the >> const-ness the rest of the way, as you would expect. There was >> nothing random about the places const was added.
[Guido] > I still don't understand *why* this was done, Primarily to make life easier for C++ programmers using Python's C API. But didn't Jeremy just say that? Some people (including me) have been adding const to char* API arguments for years, but in much slower motion, and at least I did it only when someone complained about a specific function. > nor how the set of functions was chosen if not randomly. [Jeremy] I added some const to several API functions that take char* but typically called by passing string literals. If he had _stuck_ to that, we wouldn't be having this discussion :-) (that is, nobody passes string literals to PyArg_ParseTupleAndKeywords's kws argument). _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com