bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: strftime test on Solaris based OS


From: Paul Eggert
Subject: Re: strftime test on Solaris based OS
Date: Mon, 20 Feb 2017 15:21:48 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0

Bruno Haible wrote:
On Dyson OS, a Solaris based OS with Debian packaging system [1],
the gnulib 'strftime' test fails:


FAIL: test-strftime
===================

NZST-12NZDT,M9.5.0,M4.1.0/3: expected "1970-01-01 13:00:00 +1300 (NZDT)", got 
"1970-01-01 13:00:00 +1300 (NZST)"
NZST-12NZDT,M9.5.0,M4.1.0/3: expected "1985-11-05 13:53:21 +1300 (NZDT)", got 
"1985-11-05 13:53:21 +1300 (NZST)"
PST8PDT,M3.2.0,M11.1.0: expected "2001-09-08 18:46:42 -0700 (PDT)", got "2001-09-08 
18:46:42 -0700 (PST)"
CET-1CEST,M3.5.0,M10.5.0/3: expected "2001-09-09 03:46:42 +0200 (CEST)", got 
"2001-09-09 03:46:42 +0200 (CET)"
FAIL test-strftime (exit status: 1)


Any ideas? Paul?

Apparently strftime %Z is not working even though %z works. I assume HAVE_TM_ZONE is not defined and that HAVE_TZNAME is defined (that's how things should be on Solaris; you can check this in config.h). On the troublesome cases, __strftime_internal should set zone=NULL, then tzname_vec = tz->tzname_copy, then zone = tzname_vec[tp->tm_isdst != 0]; since tp->tm_isdst should be 1, this should set zone = tz->tzname_copy[1]. Since 'zone' is wrong, I suggest running test-strftime under GDB and investigating whether 'zone' is wrong because tz->tzname_copy[1] is wrong, or because tp->tm_isdst is wrong.

For what it's worth I can't reproduce the bug on either Solaris 10 sparc, or on Solaris 11 x86-64. I tried 32- and 64-bit builds on both platforms. I couldn't download Dyson OS and to be honest would rather not fight with installing it.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]