> Unfortunately now that I think of it, I see that this can't work on
> hosts with 32-bit time_t, as they can't cover the 400-year span. So the
> code is still broken on 32-bit hosts. Is there a better way to fix the code?
Since 32-bit time_t values can only cover (about) 140 years, not covering a 400-year span's not a bug, it's a given.-)
(An aside: in the future, my guess is that there'll either be a new, 64-bit-only time zone binary format or that time zone source will be interpreted at run time with no binary format; at that point, a lot of code simplification happens.)
@dashdashado