Subject: bug#8017: posixtm failure

From: Bruno Haible <[email-masked]>
Date: Fri, 11 Feb 2011 20:18:33 +0100

Hi Eric,

Eric Blake wrote:
> > FAIL: test-posixtm (exit: 1)
> > ============================
> > 
> > 000001010000.00 mismatch (-: actual; +:expected)
> > --62167132800
> > +-62167219200
> > 000012312359.59 return value mismatch: got 0, expected 1
> > 
> 
> This particular test comes from gnulib, so I've added bug-gnulib in case
> someone there has better ideas on how to troubleshoot if it is a
> weakness in the test or a bug in fink's implementation of posixtm() that
> gnulib should be working around.

There was no explicit mention of the platform, but from the word "fink" I
guess it's MacOS X. The report was then already half analyzed in this
thread:
<http://lists.gnu.org/archive/html/bug-gnulib/2010-04/msg00168.html>

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
  FAIL: test-posixtm

Whereas with CC="gcc -m32", I get a different failure:

  skipping 000001010000.00: result is out of range of your time_t
  skipping 000012312359.59: result is out of range of your time_t
  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
  skipping 203801190314.08: result is out of range of your time_t
  skipping 999912312359.59: result is out of range of your time_t
  skipping 6812131415.16: result is out of range of your time_t
  FAIL: test-posixtm

Bruno
-- 
In memoriam Rudolf Hilferding <http://en.wikipedia.org/wiki/Rudolf_Hilferding>