aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrooks Davis <brooks@FreeBSD.org>2018-09-18 15:31:24 +0000
committerBrooks Davis <brooks@FreeBSD.org>2018-09-18 15:31:24 +0000
commitd02489d11aed2aa5410889f18f4fe8a356f4ca3b (patch)
tree5e507d5871a84036a4d0c8829eb2d253b58b33b3
parent9ed6559e3e70bef18b7e18b87b9c33200b6b2849 (diff)
downloadsrc-d02489d11aed2aa5410889f18f4fe8a356f4ca3b.tar.gz
src-d02489d11aed2aa5410889f18f4fe8a356f4ca3b.zip
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
Notes
Notes: svn path=/head/; revision=338751
-rw-r--r--include/time.h4
1 files changed, 4 insertions, 0 deletions
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 <xlocale/_time.h>
#endif
+#if defined(__BSD_VISIBLE) || __ISO_C_VISIBLE >= 2011 || \
+ (defined(cplusplus) && cplusplus >= 201703)
+#include <sys/_timespec.h>
/* 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