On Wed, Jul 27, 2022 at 12:04 PM <kzstatis(a)gmail.com> wrote:
> -----Oorspronkelijk bericht-----
> Van: Cottrell, Allin
> ...
> Unix-type systems treat this epoch time as a signed integer, so negative offsets
> relative to midnight of 1969-12-31/1970-01-01 can be represented. MS
> Windows treats it as an unsigned integer and so cannot handle prior dates.
I think on MS Windows time_t is also a signed integer (int64); see
https://docs.microsoft.com/en-us/cpp/c-runtime-library/standard-types?vie...
Also, mktime could not have -1 as a return value if time_t was unsigned.
Rather it's the implementation that refuses to deal with dates before 1-1-1970; see
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/mktime-m...
Thanks for the correction. So it looks as if we can fix the issue on
Windows by calling _mktime64() instead of plain mktime().
Allin