[Python-Dev] RE: [Patches] [Patch #100745] Fix PR #384, fixes UTF-8 en/decode

Moshe Zadka Moshe Zadka <moshez@math.huji.ac.il>
Fri, 7 Jul 2000 07:25:40 +0300 (IDT)


On Thu, 6 Jul 2000, Bill Tutt wrote:

> How about this:
> /*
>  * Use this typedef when you need to represent a UTF-16 surrogate pair
>  * as single unsigned integer.
>  */
> #if SIZEOF_INT >= 4 
> typedef unsigned int Py_UCS4; 
> #else
> #if SIZEOF_LONG >= 4
> typedef unsigned long Py_UCS4; 
> #else
> #error "can't find integral type that can contain 32 bits"
> #endif /* SIZEOF_LONG */
> #endif /* SIZEOF_INT */

+0 from me, except (and this is really a nit, since I don't know real
machines like that) what if sizeof(long) == 2 and sizeof(long long) == 4?
long long is "almost standard", and I'm sure a configure test could make
sure it is really there, so you can add

#else
#if HAVE_LONG_LONG and SIZEOF_LONG_LONG >= 4
....
#endif

--
Moshe Zadka <moshez@math.huji.ac.il>
There is no GOD but Python, and HTTP is its prophet.