<div dir="ltr"><div dir="ltr">On Thu, Oct 13, 2022 at 6:32 PM Paul Eggert <<a href="mailto:eggert@cs.ucla.edu">eggert@cs.ucla.edu</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 10/13/22 14:58, Bradley White via tz wrote:<br>
> For example, for *"Australia/Sydney"*, whose POSIX TZ string is<br>
> *"AEST-10AEDT,M10.1.0,M4.1.0/3"*, tz_localtime_rz() produces the following<br>
> civil times at the given instants:<br>
> <br>
>    14745254399 = 2437-04-05T02:59:59+1100<br>
>    14745254400 = 2437-04-05T02:00:00+1000<br>
>    14760979199 = 2437-10-04T01:59:59+1000<br>
>    14760979200 = 2437-10-04T03:00:00+1100<br>
> <br>
> That looks good ... daylight time from the first Sunday in Oct through the<br>
> first Sunday in Apr, shifting at 03:00.  But once we hit 2438, the UTC<br>
> offset is stuck at +1100.  For example, in July we would expect to see<br>
> standard time, but instead get:<br>
> <br>
>    14784296400 = 2438-07-01T00:00:00+1100<br>
> <br>
> And it never seems to recover after that.<br>
<br>
Thanks for reporting the issue. I'm not seeing that problem when I build <br>
on Fedora 36 x86-64, using this command:<br>
<br>
   make TOPDIR=/tmp/tz CFLAGS='$(GCC_DEBUG_FLAGS)' -j5 install<br></blockquote><div><br></div><div>Try that with <font face="monospace">ZFLAGS='-b fat'</font> and observe the difference.</div><div><br></div><div><font face="monospace">$ make TOPDIR=/tmp/tz CFLAGS='$(GCC_DEBUG_FLAGS)' ZFLAGS='-b fat' -j5 install <br>    :<br>$ /tmp/tz/usr/bin/zdump -i -c 2437,2440 /tmp/tz/usr/share/zoneinfo/Australia/Sydney <br><br>TZ="/tmp/tz/usr/share/zoneinfo/Australia/Sydney"<br>-       -       +11     AEDT    1<br>2437-04-05      02      +10     AEST<br>2437-10-04      03      +11     AEDT    1</font><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">in that when I run this command:<br>
<br>
   ./zdump -i -c 2437,2440 Australia/Sydney<br>
<br>
the output is:<br>
<br>
   TZ="Australia/Sydney"<br>
   -    -       +11     AEDT    1<br>
   2437-04-05   02      +10     AEST<br>
   2437-10-04   03      +11     AEDT    1<br>
   2438-04-04   02      +10     AEST<br>
   2438-10-03   03      +11     AEDT    1<br>
   2439-04-03   02      +10     AEST<br>
   2439-10-02   03      +11     AEDT    1<br>
<br>
which looks OK. I get the same results if I set <br>
CFLAGS='$(GCC_DEBUG_FLAGS) -m32 -D_TIME_BITS=64' instead.<br>
<br>
To help debug this, it'd be nice to know the platform and a recipe for <br>
reproducing the problem. The existence of tz_localtime_tz indicates that <br>
you're using non-default CFLAGS of some sort, and this may be at issue here.<br>
</blockquote></div></div>