System.Posix.Types.CSsize oddity

Sigbjorn Finne sof at galois.com
Fri Oct 7 18:52:26 EDT 2005


Why is CSsize defined as:

#if defined(HTYPE_SIZE_T)
INTEGRAL_TYPE(CSsize,tyConCSsize,"CSsize",HTYPE_SIZE_T)
#endif

#if defined(HTYPE_SSIZE_T) && !defined(HTYPE_SIZE_T)
INTEGRAL_TYPE(CSsize,tyConCSsize,"CSsize",HTYPE_SSIZE_T)
#endif

and not as

#if defined(HTYPE_SSIZE_T)
INTEGRAL_TYPE(CSsize,tyConCSsize,"CSsize",HTYPE_SSIZE_T)
#elif defined(HTYPE_SIZE_T)
INTEGRAL_TYPE(CSsize,tyConCSsize,"CSsize",HTYPE_SIZE_T)
#endif

[assuming you really want to draft in the aid of size_t if ssize_t isn't 
defined.]

As is, with 6.4.1 and HEAD, CSsize is represented by an unsigned type.

--sigbjorn



More information about the Cvs-ghc mailing list