From f2b352944106e61c5b3026f01ded737183a94292 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Mon, 8 Mar 2021 15:23:29 +0900 Subject: time.c: fix errors on Windows and macOS; ref #5354 `gmtime_r` detection logic was too strict. --- mrbgems/mruby-time/src/time.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mrbgems/mruby-time/src/time.c b/mrbgems/mruby-time/src/time.c index 5446d43f2..15ec7f362 100644 --- a/mrbgems/mruby-time/src/time.c +++ b/mrbgems/mruby-time/src/time.c @@ -66,6 +66,10 @@ double round(double x) { #define NO_GMTIME_R #endif #endif +#ifdef __STRICT_ANSI__ +/* Strict ANSI (e.g. -std=c99) do not provide gmtime_r/localtime_r */ +#define NO_GMTIME_R +#endif /* asctime(3) */ /* mruby usually use its own implementation of struct tm to string conversion */ @@ -125,7 +129,7 @@ gettimeofday(struct timeval *tv, void *tz) # include # endif #endif -#if !(defined(_POSIX_C_SOURCE) || defined(_BSD_SOURCE) || defined(_SVID_SOURCE)) +#ifdef NO_GMTIME_R #define gmtime_r(t,r) gmtime(t) #define localtime_r(t,r) localtime(t) #endif -- cgit v1.2.3