On 01/12/2017 02:26 AM, Robert Elz wrote:
There are proposals (even implemented, though I am not sure how widely) to alter the range of 32 bit time_t, 0 is still Jan 1, 1970, but from that positive values range from (say) 1..BFFFFFFF and C0000000..FFFFFFFF are negative. (The actual cutover point seems to vary).
I haven't seen that; what implementations are those? They would not conform to POSIX, which requires that time_t be an integer type that counts non-leap seconds since 1970. There are systems with unsigned 32-bit time_t, which will work until the year 2106 and which does conform to POSIX. Older Network Appliance filers come to mind. Microsoft and NetBSD are not the only 32-bit systems with 64-bit time_t; OpenBSD and GNU/Linux's x32 ABI also work that way, and I expect these platforms to supplant their older 32-bit time_t cousins on 32-bit systems before 2038 rolls around.