[tz] Irish Standard Time vs Irish Summer Time

Jonathan Lennox lennox at cs.columbia.edu
Tue Jan 23 17:12:17 UTC 2018


On Sunday, January 21 2018, "Robert Elz" wrote to "eggert at cs.ucla.edu, tz at iana.org, jsm at polyomino.org.uk" saying:

>   | If tm_zone is a pointer, its lifetime 
>   | would be that of the corresponding timezone_t object
> 
> Agreed.   For the majority of programs that don't call tzset,
> that means for the lifetime of the program.  For those that
> do, it is easy to manage.

This corresponds to the definition of strftime "%Z" in POSIX:

     If a struct tm broken-down time structure is created by localtime() or
     localtime_r(), or modified by mktime(), and the value of TZ is
     subsequently modified, the results of the %Z and %z strftime()
     conversion specifiers are undefined, when strftime() is called with
     such a broken-down time structure.

http://pubs.opengroup.org/onlinepubs/9699919799/functions/strftime.html

The reason it's "undefined" (as opposed to "unspecified") is specifically to
handle the case where struct tm has tm_zone, and %Z is populated from it.

-- 
Jonathan Lennox
lennox at cs.columbia.edu


More information about the tz mailing list