WG 14 N 3147 -- Refinement of mktime Here is the homework for a revised comment GB-159: Here's the updated mktime proposal including timegm... (It includes the change to the mktime return value text that was accepted in January but wasn't made for timegm then!) Under "Returns" in 7.29.2.3 para 3, change: If the calendar time cannot be represented in the time_t encoding used for the return value, the function returns the value (time_t)(-1). to: If the calendar time cannot be represented in the time_t encoding used for the return value or the value to be returned in the tm_year component of the structure pointed to by timeptr cannot be represented as an int, the function returns the value (time_t)(-1) and does not change the value of the tm_wday component of the structure. and in the example code change: if (mktime(&time_str) == (time_t)(-1)) time_str.tm_wday = 7; to: time_str.tm_wday = 7; mktime(&time_str); Under "Returns" in 7.29.2.4 para 3, change: If the calendar time cannot be represented, the function returns the value (time_t)(-1). to: If the calendar time cannot be represented in the time_t encoding used for the return value or the value to be returned in the tm_year component of the structure pointed to by timeptr cannot be represented as an int, the function returns the value (time_t)(-1) and does not change the value of the tm_wday component of the structure.