[tz] Why is "AEST" the abbreviation for Australia/Sydney in 1900?

Florian Weimer fweimer at redhat.com
Thu May 2 09:24:12 UTC 2024


* Jonathan Wakely:

> On Thu, 2 May 2024 at 08:18, Florian Weimer wrote:
>>
>> * Jonathan Wakely via tz:
>>
>> > And that matches what glibc does: it finds the earliest transition
>> > with SAVE of zero, and uses that LETTER for the period before the
>> > first transition.
>>
>> Do you mean zic instead of glibc?  I don't think we have a .zi parser in
>> glibc proper.  We mostly bundle zic for historic reasons.
>
> I mean glibc code such as:
> https://sourceware.org/git/?p=glibc.git;a=blob;f=time/tzfile.c;h=41475399643913ac4eb78c7f84151692bc521984;hb=HEAD#l416
> The comment says it's finding the offsets, but it seems to be finding
> the abbreviations for the first two transitions, storing them in the
> __tzname array.
>
> There's similar logic here:
> https://sourceware.org/git/?p=glibc.git;a=blob;f=time/tzfile.c;h=41475399643913ac4eb78c7f84151692bc521984;hb=HEAD#l596
>
> When I ran `TZ=Australia/Sydney date -d 1900-01-01` under gdb that
> seemed to be the code that decided on AEST, but maybe I got confused.

What I meant is that glibc isn't looking at LETTER, it's picking a
precomposed time zone identifier.

Thanks,
Florian



More information about the tz mailing list