Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com From: Chris Faylor Date: Tue, 7 Dec 1999 19:37:39 -0500 To: Martin Buchholz Cc: cygwin AT sourceware DOT cygnus DOT com, XEmacs NT , Eric Christopher Subject: Re: cygwin-1999-12-01: Prototypes in system headers not standard-compliant Message-ID: <19991207193739.A723@cygnus.com> Mail-Followup-To: Martin Buchholz , cygwin AT sourceware DOT cygnus DOT com, XEmacs NT , Eric Christopher References: <14408 DOT 38135 DOT 146580 DOT 963528 AT lasker DOT 666 DOT com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 1.0i In-Reply-To: <14408.38135.146580.963528@lasker.666.com>; from martin@xemacs.org on Fri, Dec 03, 1999 at 08:13:43PM -0800 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 AT sourceware DOT cygnus DOT com