Marc-Andre Lemburg <m...@egenix.com> added the comment: Amaury Forgeot d'Arc wrote: > > Amaury Forgeot d'Arc <amaur...@gmail.com> added the comment: > >> Could you explain what this bit is about ? >> -#if defined(HAVE_USABLE_WCHAR_T) && defined(WANT_WCTYPE_FUNCTIONS) >> +#if defined(Py_UNICODE_WIDE) && defined(WANT_WCTYPE_FUNCTIONS) > > On Windows at least, HAVE_USABLE_WCHAR_T is True, this means that Py_Unicode > can be converted to wchar_t. But now that Py_UNICODE_ISSPACE() takes > Py_UCS4, it cannot be converted to wchar_t anymore.
Right, but you still have to check whether wchar_t is usable, don't you ? If wchar_t is 2 bytes on a non-Windows platform, using the wctypes functions won't work either. The line should probably read: #if defined(WANT_WCTYPE_FUNCTIONS) && defined(HAVE_USABLE_WCHAR_T) && defined(Py_UNICODE_WIDE) > Now that the unicode database functions claim to use Py_UCS4, the functions > of wctypes.h are usable only if they also support Py_UCS4. > > OTOH the symbol WANT_WCTYPE_FUNCTIONS is defined only if ./configure is > called with --with-wctype-functions, I don't expect it to be common. > BTW, the comment says that "This reduces the interpreter's code size". I > don't really agree, these functions are two-liners. True. The support for the wctype functions should have been remove long ago, since they cause subtle incompatibilities between Python builds. I should have probably never added it in the first place... people were worried about the size of the type record tables at the time, which is why I thought it would be a good idea to try to optionally use the C lib functions. The comment was true before the Python type tables were changed into a type record database: the switch used to remove the Python tables required for those functions. With the type records database, this is no longer the case, since the records are also being used for properties that are not exposed via wctype functions. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue5127> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com