[PATCH 2/2] tzset_r.c(_tzset_unlocked_r): POSIX angle bracket <> support
jdoubleu
hi@jdoubleu.de
Thu Apr 7 16:18:43 GMT 2022
> [..] we are no longer using those predefined values, just those used locally in the code
Yes, got that. The comment just confused me. Can it be removed?
> Feel free to look at tzset_t.log attached to my ...testing post
Great work! Should we actually generate these values with glibc and
check whether they match?
In the meantime, I've also created some test vectors:
[PATCH] add tests for tzset(3)
https://sourceware.org/pipermail/newlib/2022/019536.html
All tests pass so far.
Cheers
---
🙎🏻♂️ jdoubleu
On 4/7/2022 6:07 PM, Brian Inglis wrote:
> On 2022-04-07 03:56, jdoubleu wrote:
>>> +#include <limits.h> /* {,_POSIX_}TZNAME_MAX */
>>> ... > +#define TZNAME_MIN 3 /* POSIX min TZ abbr size local def */
>>> +#define TZNAME_MAX 10 /* POSIX max TZ abbr size local def */
>>
>> The comment suggests, that `TZNAME_MAX` is coming from `limits.h`,
>> isn't it?
>
> From previous comments, we are no longer using those predefined values,
> just those used locally in the code, and the minimum from the POSIX spec.
>
>> Everything else looks good to me.
>> Unfortunately, I wasn't able to test these changes, yet. I cannot
>> easily build newlib for my project. However, I've prepared some tests
>> vectors (see
>> https://github.com/jdoubleu/newlib-posix-tzset-tests/blob/main/timezones.h),
>> which I plan to integrate with the newlib testsuite.
>
> Feel free to look at tzset_t.log attached to my ...testing post:
>
> tzset/_r POSIX tz abbr angle bracket <> support testing
> https://sourceware.org/pipermail/newlib/2022/019529.html
>
> and add the 103 unique TZ=... values used there, extracted from the end
> of the latest tzdb tzdata /usr/share/zoneinfo/ files, as they include
> actual exceptional times and offsets to achieve the required transitions
> and challenge implementation parsers and calculations.
> See the tzcode/tzdata project zic(8)/zdump(8)/tzfile(5) implementation
> limits for how wide those limits need to extend.
>
>> 🙎🏻♂️ jdoubleu
>> On 4/5/2022 6:03 AM, Brian Inglis wrote:
>>>
>>> local defines for POSIX minimum TZ abbr size 3 TZNAME_MIN and
>>> maximum TZ abbr size supported 10 TZNAME_MAX
>>> allow POSIX angle bracket < > quoted signed alphanumeric tz abbr e.g.
>>> <MESZ+0330>
>>> allow POSIX unquoted alphabetic tz abbr e.g. MESZ
>>> allow same suuport for DST tz abbr
>>> ---
>>> newlib/libc/time/tzset_r.c | 67 +++++++++++++++++++++++++++++++-------
>>> 1 file changed, 55 insertions(+), 12 deletions(-)
>
More information about the Newlib
mailing list