On 2017/07/11 01:55, Kyle J. McKay wrote: > 2) 32-bit systems are going to be around for many years still; 32-bit ARM > platforms are everywhere .. > 4) 32-bit time_t has potentially still got over 20 years of life left in it
Yes. The gamble is whether 32-bit systems will still be around then. I don't see why they _wouldn't_ be. The sooner that OS adapt, the less likely there are to still be operational systems when 2038 comes around. > 3) 32-bit systems typically have 32-bit time_t values (I'm not aware of > anything in the standard preventing use of a 64-bit time_t on a 32-bit > system but that doesn't seem to be happening, at least not yet) This depends on the OS. Linux's general avoidance of ABI breaks is certainly a problem in this area. NetBSD has used 64-bit time_t on all architectures since 6.0 (2012) and OpenBSD since 5.5 (2014). I haven't looked recently but IIRC FreeBSD has 64-bit time_t on 32-bit ARM (and of course on 64-bit systems). Plenty of software still needs patching to fix operation on a 32-bit arch with 64-bit time_t - we have a lot of these in the ports tree (with mixed success feeding such changes upstream - "Linux doesn't need it"...).