/* The guards are for MinGW64, which defines these structs on its
system headers which are included by ms-w32.h. */
-#ifndef _W64
/* Allow inclusion of sys/time.h and winsock2.h in any order. Needed
for running the configure test, which is only relevant to MinGW. */
#ifndef _TIMEVAL_DEFINED
((tvp)->tv_usec cmp (uvp)->tv_usec))
#define timerclear(tvp) (tvp)->tv_sec = (tvp)->tv_usec = 0
#endif /* _TIMEVAL_DEFINED */
-#endif /* _W64 */
#ifndef _TIMEZONE_DEFINED
+#define _TIMEZONE_DEFINED
struct timezone
{
int tz_minuteswest; /* minutes west of Greenwich */
};
#endif
+
/* This needs to be compatible with Posix signature, in order to pass
- the configure test for the type of the second argument. See
- m4/gettimeofday.m4. */
-int gettimeofday (struct timeval *restrict, struct timezone *restrict);
+ the configure test for the type of the second argument; see
+ m4/gettimeofday.m4. We use '__restrict' here, rather than
+ 'restrict', for the benefit of the old nt/configure.bat build,
+ which does not force the use of -std= switch to GCC, and that
+ causes compilation errors with 'restrict', which is a C99
+ extension. */
+int gettimeofday (struct timeval *__restrict, struct timezone *__restrict);
#define ITIMER_REAL 0
#define ITIMER_PROF 1