about summary refs log tree commit diff
path: root/time
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2022-06-06 14:47:03 +0000
committerJoseph Myers <joseph@codesourcery.com>2022-06-06 14:47:03 +0000
commit828c72519f49b16b989886ef4f66859d12c46aa9 (patch)
treea2f2d0e240dc3f9ad7a9bde7b82c0d93431bff87 /time
parent603e5c8ba7257483c162cabb06eb6f79096429b6 (diff)
downloadglibc-828c72519f49b16b989886ef4f66859d12c46aa9.tar.gz
glibc-828c72519f49b16b989886ef4f66859d12c46aa9.tar.xz
glibc-828c72519f49b16b989886ef4f66859d12c46aa9.zip
Declare timegm for ISO C2X
The next revision of the ISO C standard has added the timegm function
(that was already supported in glibc).  Update the feature test
conditionals on its declaration in <time.h> accordingly.

Tested for x86_64.
Diffstat (limited to 'time')
-rw-r--r--time/time.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/time/time.h b/time/time.h
index 2cf89e6222..d18089116e 100644
--- a/time/time.h
+++ b/time/time.h
@@ -240,21 +240,30 @@ extern long int timezone;
   ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0))
 
 
+#if defined __USE_MISC || __GLIBC_USE (ISOC2X)
+# ifndef __USE_TIME_BITS64
+/* Like `mktime', but for TP represents Universal Time, not local time.  */
+extern time_t timegm (struct tm *__tp) __THROW;
+# else
+#  ifdef __REDIRECT_NTH
+extern time_t __REDIRECT_NTH (timegm, (struct tm *__tp), __timegm64);
+#  else
+#   define timegm __timegm64
+#  endif
+# endif
+#endif
+
+
 #ifdef __USE_MISC
 /* Miscellaneous functions many Unices inherited from the public domain
    localtime package.  These are included only for compatibility.  */
 
 #ifndef __USE_TIME_BITS64
-/* Like `mktime', but for TP represents Universal Time, not local time.  */
-extern time_t timegm (struct tm *__tp) __THROW;
 /* Another name for `mktime'.  */
 extern time_t timelocal (struct tm *__tp) __THROW;
 #else
 # ifdef __REDIRECT_NTH
-extern time_t __REDIRECT_NTH (timegm, (struct tm *__tp), __timegm64);
 extern time_t __REDIRECT_NTH (timelocal, (struct tm *__tp), __mktime64);
-# else
-#  define timegm __timegm64
 # endif
 #endif