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

Bill Tutt rassilon@list.org
Thu, 6 Jul 2000 13:53:47 -0700 (PDT)


On Thu, 6 Jul 2000, Tim Peters wrote:

> [moved from patches to python-dev]
> 
> [Bill Tutt]
> > Code currently in unicodeobject.c needs to do 32-bit arithmetic in
> > order to work. Additionally, UCS-4 characters (aka UTF-16 surrogate
> > characters) require 32 bits to represent the true unicode code point of a
> > surrogate pair.
> 
> But is the requirement really for *exactly* 32 bits, or for *at least* 32
> bits?  The problem isn't with feebler machines, it's with higher-end ones:
> on some Python platforms, even sizeof(short) == 8.  As is, your patch will
> prevent Python from compiling on those.

Its definately for at least 32 bits. 
Having a 32 bit specific type lets me not worry about all the issues
relating to:
What happens if sizeof(int) | sizeof(long) > 32 bits and I failed to 
compensate for that somehow.

Now, the code that I changed to use the typedef might not care about this,
but other code using the typedef might. Just color me a paranoid SOB. :)
I'd rather always have a 32 bit type for something I know will always
require just 32 bits.

Bill