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 sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com From: "Harold Hunt" To: "cygwin" Subject: __STRICT_ANSI__ Date: Wed, 16 May 2001 09:38:04 -0400 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0) Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 I can't seem to understand the conditional prototyping of some functions in Cygwin's headers. When compiling Cygwin/XFree86, which uses -ansi, which in turn defines __STRICT_ANSI__, we get warnings about references to undefined functions. Below I have included the simplified prototyping of each offending function; I have removed other functions declared within the same #ifndef scope for simplicity. It looks to me like __STRICT_ANSI__ might not be being used correctly. Any ideas? Harold Cygwin's stdio.h: #ifndef __STRICT_ANSI__ #ifndef _REENT_ONLY FILE * _EXFUN(fdopen, (int, const char *)); #endif int _EXFUN(fileno, (FILE *)); int _EXFUN(pclose, (FILE *)); FILE * _EXFUN(popen, (const char *, const char *)); #endif GNU/Linux stdio.h: #ifdef __USE_POSIX extern FILE *fdopen (int __fd, __const char *__modes) __THROW; #endif #ifdef __USE_POSIX extern int fileno (FILE *__stream) __THROW; #endif #if defined __USE_POSIX2 extern FILE *popen (__const char *__command, __const char *__modes) __THROW; extern int pclose (FILE *__stream) __THROW; #endif Cygwin's stdlib.h: #ifndef __STRICT_ANSI__ #ifndef _REENT_ONLY int _EXFUN(mkstemp,(char *)); char * _EXFUN(mktemp,(char *)); #endif #endif GNU/Linux stdlib.h: #if defined __USE_MISC || defined __USE_XOPEN_EXTENDED extern int mkstemp (char *__template) __THROW; #endif -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple