https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=c02a2b01e14937019ea481c819b3595b7d7aa4b8 commit c02a2b01e14937019ea481c819b3595b7d7aa4b8 Author: Zack Weinberg Date: Sat Mar 9 16:01:38 2019 -0500 Simplify definition of __time64_t. bits/time64.h always sets __TIME64_T_TYPE to be __time_t when __TIMESIZE == 64, so we can unconditionally use __TIME64_T_TYPE to define __time64_t; we don’t need another conditional in bits/types.h. Also move the definition of __time64_t next to the definition of __time_t. * posix/bits/types.h (__time64_t): Unconditionally define as __TIME64_T_TYPE. Move definition next to __time_t. Diff: --- posix/bits/types.h | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/posix/bits/types.h b/posix/bits/types.h index 73e6a1a..1f07950 100644 --- a/posix/bits/types.h +++ b/posix/bits/types.h @@ -158,6 +158,7 @@ __STD_TYPE __RLIM_T_TYPE __rlim_t; /* Type for resource measurement. */ __STD_TYPE __RLIM64_T_TYPE __rlim64_t; /* Type for resource measurement (LFS). */ __STD_TYPE __ID_T_TYPE __id_t; /* General type for IDs. */ __STD_TYPE __TIME_T_TYPE __time_t; /* Seconds since the Epoch. */ +__STD_TYPE __TIME64_T_TYPE __time64_t; /* Seconds since the Epoch (Y2038). */ __STD_TYPE __USECONDS_T_TYPE __useconds_t; /* Count of microseconds. */ __STD_TYPE __SUSECONDS_T_TYPE __suseconds_t; /* Signed count of microseconds. */ @@ -213,15 +214,6 @@ __STD_TYPE __U32_TYPE __socklen_t; It is not currently necessary for this to be machine-specific. */ typedef int __sig_atomic_t; -/* Seconds since the Epoch, visible to user code when time_t is too - narrow only for consistency with the old way of widening too-narrow - types. User code should never use __time64_t. */ -#if __TIMESIZE == 64 && defined __LIBC -# define __time64_t __time_t -#elif __TIMESIZE != 64 -__STD_TYPE __TIME64_T_TYPE __time64_t; -#endif - /* BSD: Size of a general-purpose integer register. */ __STD_TYPE __REGISTER_T_TYPE __register_t;