On 5/31/19 10:45 AM, Florian Weimer wrote:
TZ='IST-1GMT0,M10.5.0,M3.5.0/1' java [arguments]
Is this really the right example? I would have expected something negative after the slash.
The "/1" means that the fallback transition occurs at 01:00 local time in March, which is a different matter. The topic under discussion is whether the "-1" after the "IST" can be numerically less than the "0" after the "GMT". POSIX and Internet RFC 8536 both requires support for this sort of thing and tzdb and a lot of other software (including the GNU C library) implement it, but apparently some software cannot handle it. The "/1" does raise a separate issue about whether the number after the "/" can be negative, which means the transition occurs before 00:00. Although POSIX does not require support for a negative time-of-day, Internet RFC 8536 does require it, and as far as I know the Java code in question also supports it. An example of this is TZ='<-03>3<-02>,M3.5.0/-2,M10.5.0/-1', which expresses the rules for America/Godthab since 1996. Although this TZ string works in GNU/Linux and I assume many other platforms, POSIX does not require support for it.