[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: posixtm failure
From: |
Paul Eggert |
Subject: |
Re: posixtm failure |
Date: |
Fri, 11 Feb 2011 19:12:40 -0800 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.13) Gecko/20101208 Thunderbird/3.1.7 |
On 02/11/2011 11:18 AM, Bruno Haible wrote:
> The problem appears to be inside gnulib's __mktime_internal. It is still
> present after Paul's recent patches: On MacOS X 10.5, after configuring
> with CC="gcc -m64", I get:
>
> 000001010000.00 mismatch (-: actual; +:expected)
> --62167132800
> +-62167219200
> 000012312359.59 return value mismatch: got 0, expected 1
Those same two tests fail on 64-bit Solaris up through at
least Solaris 10. It's probably the same think-o inside
localtime. (Programmers get confused near the year zero,
for some reason. :-) It's probably not worth worrying about.
> Whereas with CC="gcc -m32", I get a different failure:
>
> ...
> skipping 000101010000.00: result is out of range of your time_t
> 190112132045.51 return value mismatch: got 0, expected 1
> skipping 190112132045.52: result is out of range of your time_t
That's a weird one. What type is time_t on that platform,
exactly? Signed or unsigned? 32- or 64-bit?
That test is depending on undefined behavior at the C level,
since it assumes signed integer overflow wraps around; it could
be that we're running afoul of that.