Oct. 24, 2018
11:35 p.m.
Thanks for the heads-up. I confirmed that tzcode 2015f (and earlier) when compiled for 32-bit time_t misreads the 32-bit binary (TZif) files generated by tzdb 2018f. I'll try to come up with a fix soon, most likely by having zic insert a dummy transition or two in the 32-bit data. As a temporary workaround you can continue to use 2018e zic to compile from .zi to TZif. Recommended practice nowadays is for 32-bit client code to ignore 32-bit binary data entirely, and to just use the 64-bit data, discarding any timestamps outside the 32-bit range. This is why tests with 2018f didn't catch the problem. However, we should support 32-bit clients that don't follow the recommended practice.