cygwin-1999-12-01: Prototypes in system headers not standard-compliant

Chris Faylor cgf@cygnus.com
Tue Dec 7 16:38:00 GMT 1999


On Fri, Dec 03, 1999 at 08:13:43PM -0800, Martin Buchholz wrote:
>The prototype for read() and write() in Unix98 don't match those in
>the Cygwin header files.
>
> http://www.opengroup.org/onlinepubs/007908799/xsh/read.html
> http://www.opengroup.org/onlinepubs/007908799/xsh/write.html
>
>The standard return type for these functions is `ssize_t'.  
>The traditional return type for these functions is `int'.
>The return type in Cygwin is `int'.
>
>On 32-bit platforms, like Cygwin, the best choice is probably to use
>`ssize_t' in the prototypes (they are standard, after all, right?),
>but to then have
>
>typedef int ssize_t;
>
>This is effectively what Linux does.

We're discussing this now.  It's not a simple issue since the "newlib"
code used by cygwin is also used by other Cygnus products so we have
to make sure that we don't break anything just to benefit Cygwin's
portability.

I do agree with this change, however, and hope to things fixed soon.

cgf

>Here's the obvious untested patch (I've never used Cygwin):
>[snip]

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com



More information about the Cygwin mailing list