March 9, 2015
4:08 p.m.
In time2sub() there is this code: } else { lo = 1; for (i = 0; i < (int) TYPE_BIT(time_t) - 1; ++i) lo *= 2; hi = -(lo + 1); } The last *= 2 will overflow a signed integer time_t. This can be fixed with “lo = -1” instead of “lo = 1”. This change seems to be consistent with the variable names. - Jörg