Subject: Re: [Boost-bugs] [Boost C++ Libraries] #9419: boost::chrono::floor() and negative durations is wrong
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-11-22 11:26:56
#9419: boost::chrono::floor() and negative durations is wrong
-------------------------------+---------------------
Reporter: 1czajnik@⦠| Owner: viboes
Type: Bugs | Status: new
Milestone: To Be Determined | Component: chrono
Version: Boost 1.54.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+---------------------
Comment (by 1czajnik@â¦):
The attached unit test demonstrates the problem, as well as a problem with
round<>, which I think doesn't follow the documented rule "tie towards
even" for negative values.
There are also overflow tests, and they all pass ;-)
My output of this test is:
{{{
Running 4 test cases...
../chrono_rounding.cpp(28): error in "floor_": check seconds(-2) ==
floor<seconds>( milliseconds(-1999) ) failed [-2 seconds != -1 second]
../chrono_rounding.cpp(29): error in "floor_": check seconds(-2) ==
floor<seconds>( milliseconds(-1001) ) failed [-2 seconds != -1 second]
../chrono_rounding.cpp(31): error in "floor_": check seconds(-1) ==
floor<seconds>( milliseconds(-999) ) failed [-1 second != 0 seconds]
../chrono_rounding.cpp(32): error in "floor_": check seconds(-1) ==
floor<seconds>( milliseconds(-1) ) failed [-1 second != 0 seconds]
../chrono_rounding.cpp(63): error in "round_": check seconds(-2) ==
round<seconds>( milliseconds(-1500) ) failed [-2 seconds != -1 second]
*** 5 failures detected in test suite "Master Test Suite"
}}}
HTH, Kris
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/9419#comment:1> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:14 UTC