On Sat, Apr 04, 2009 at 05:11:09AM +0100, Dave Korn wrote:
>Christopher Faylor wrote:
>
>>>  The attached patch fixes all these by adjusting only the suffix letters.  
>>> OK
>>> for head?
>>>
>>> winsup/cygwin/ChangeLog
>>>
>>>     * include/stdint.h (UINT32_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
>>>     INT_FAST16_MIN, INT_FAST32_MIN, INT_FAST16_MAX, INT_FAST32_MAX,
>>>     INTPTR_MIN, INTPTR_MAX, SIZE_MAX):  Fix integer constant suffixes.
>> 
>>Many of the changes introduce divergence from Linux.  Why is that?
>
>Because our stdint.h types are divergent from Linux, and changing them
>instead could cause yet another ABI break.

Why would changing uint32_t from 'unsigned long' to 'unsigned int' break
anything?  It looks to me like that is a disaster waiting to happen if
we ever provide a 64-bit port.

Isn't a long 32 bits?  What would be the ABI breakage in changing that
one typedef rather than lots of #defines?  It seems like fixing the
typedefs in stdint.h is the right thing to do before Cygwin 1.7 rolls
out.

cgf

Reply via email to