From 39f6c1e67a5e9f7fe10f84ef8c785447b9c1239b Mon Sep 17 00:00:00 2001 From: brooks Date: Tue, 18 Sep 2018 15:31:24 +0000 Subject: [PATCH] Fix C11 and POSIX 1003.1b-1993 compliance in time.h Only expose timespec_get in C11, C++17, or BSD code. Always define struct timespect if defining timespec_get. PR: 231425 Reviewed by: kib Approved by: re (gjb) Differential Revision: https://reviews.freebsd.org/D17174 --- include/time.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/include/time.h b/include/time.h index 26e208ffa65b..cec901a1e8ba 100644 --- a/include/time.h +++ b/include/time.h @@ -207,9 +207,13 @@ time_t posix2time(time_t t); #include #endif +#if defined(__BSD_VISIBLE) || __ISO_C_VISIBLE >= 2011 || \ + (defined(cplusplus) && cplusplus >= 201703) +#include /* ISO/IEC 9899:201x 7.27.2.5 The timespec_get function */ #define TIME_UTC 1 /* time elapsed since epoch */ int timespec_get(struct timespec *ts, int base); +#endif __END_DECLS