[PATCH] Prototype initstate() etc. if _XOPEN_SOURCE is defined appropriately
Jon TURNEY
jon.turney@dronecode.org.uk
Wed Nov 13 14:36:00 GMT 2013
Not sure if this is wanted, but mesa likes to compile with '-std=c99
D_XOPEN_SOURCE=500', which leads to exciting crashes on x86_64 because
initstate() is not prototyped.
2013-11-13 Jon TURNEY <jon.turney@dronecode.org.uk>
* include/cygwin/stdlib.h(initstate, random, setstate, srandom) :
Prototype if not __STRICT_ANSI__ or _XOPEN_SOURCE is defined appropriately.
-------------- next part --------------
Index: cygwin/include/cygwin/stdlib.h
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/include/cygwin/stdlib.h,v
retrieving revision 1.13
diff -u -u -p -r1.13 stdlib.h
--- cygwin/include/cygwin/stdlib.h 21 May 2013 19:04:49 -0000 1.13
+++ cygwin/include/cygwin/stdlib.h 13 Nov 2013 14:28:35 -0000
@@ -31,10 +31,14 @@ void setprogname (const char *);
char *realpath (const char *, char *);
char *canonicalize_file_name (const char *);
int unsetenv (const char *);
+#endif /*__STRICT_ANSI__*/
+#if !defined(__STRICT_ANSI__) || (_XOPEN_SOURCE >= 500) || (defined(_XOPEN_SOURCE) && defined(_XOPEN_SOURCE_EXTENDED))
char *initstate (unsigned seed, char *state, size_t size);
long random (void);
char *setstate (const char *state);
void srandom (unsigned);
+#endif
+#ifndef __STRICT_ANSI__
char *ptsname (int);
int ptsname_r(int, char *, size_t);
int getpt (void);
More information about the Cygwin-patches
mailing list