[Python-Dev] New Py_UNICODE doc
Thomas Heller
theller at python.net
Wed May 4 18:08:54 CEST 2005
Nicholas Bastin <nbastin at opnet.com> writes:
> The current documentation for Py_UNICODE states:
>
> "This type represents a 16-bit unsigned storage type which is used by
> Python internally as basis for holding Unicode ordinals. On platforms
> where wchar_t is available and also has 16-bits, Py_UNICODE is a
> typedef alias for wchar_t to enhance native platform compatibility. On
> all other platforms, Py_UNICODE is a typedef alias for unsigned
> short."
>
> I propose changing this to:
>
> "This type represents the storage type which is used by Python
> internally as the basis for holding Unicode ordinals. On platforms
> where wchar_t is available, Py_UNICODE is a typedef alias for wchar_t
> to enhance native platform compatibility. On all other platforms,
> Py_UNICODE is a typedef alias for unsigned short. Extension module
> developers should make no assumptions about the size of this type on
> any given platform."
>
> If no one has a problem with that, I'll make the change in CVS.
AFAIK, you can configure Python to use 16-bits or 32-bits Unicode chars,
independend from the size of wchar_t. The HAVE_USABLE_WCHAR_T macro can
be used by extension writers to determine if Py_UNICODE is the same as
wchar_t. At least that's my understanding, so the above seems still
wrong. And +1 for trying to clean up this confusion.
Thomas
More information about the Python-Dev
mailing list