develooper Front page | perl.perl5.porters | Postings from April 2018

Re: 5.27.11 fails ../lib/File/Copy.t on linux (ubuntu-16.04) with-Dusequadmath

Thread Previous | Thread Next
From:
Dave Mitchell
Date:
April 27, 2018 13:29
Subject:
Re: 5.27.11 fails ../lib/File/Copy.t on linux (ubuntu-16.04) with-Dusequadmath
Message ID:
20180427132900.GA597@iabyn.com
On Thu, Apr 26, 2018 at 12:12:04AM +1000, sisyphus1@optusnet.com.au wrote:
> -----Original Message----- From: Dave Mitchell
> Sent: Wednesday, April 25, 2018 11:58 PM
> To: sisyphus1@optusnet.com.au
> Cc: perl5-porters@perl.org
> Subject: Re: 5.27.11 fails ../lib/File/Copy.t on linux (ubuntu-16.04) with
> -Dusequadmath
> 
> > > not ok 53 - mtime preserved by copy() while testing cross-partition
> > > #   Failed test 'mtime preserved by copy() while testing cross-partition'
> > > #   at lib/File/Copy.t line 128.
> > > #          got: '1000000000.123449998'
> > > #     expected: '1000000000.123449999'
> > > 
> > > Configure args were '-des -Duse64bitint -Duse64bitall -Dusethreads
> > > -Dusequadmath -Dusedevel -Uversiononly'.
> > 
> > It seems to be an issue with Time::HiRes; that module's
> > nanosec-supporting stat() and utimes() calls are in some fashion not
> > preserving an exact round-trip mtime. I'm still investigating...
> 
> If it helps, that test passes when I run that test file (ie the
> lib/File/Copy.t that ships with 5.27.11) from perl-5.27.5 and earlier, but
> fails when I run it from perl-5.27.6 and later.

I've found it. It's a rounding error (using truncating rather than rounding)
I've pushed a fix for smoking as smoke-me/davem/time_hires_nsec.

The bug's been present since utime() was added to Time::HiRes in
5.25.3. I'm don't think its critical enough to be added to 5.28.0.


-- 
"You're so sadly neglected, and often ignored.
A poor second to Belgium, When going abroad."
    -- Monty Python, "Finland"

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About