Try to fix test_time.test_AsSecondsDouble() on "x86 Gentoo Non-Debug with X 3.x" buildbot

Use volatile keyword in _PyTime_Round()
This commit is contained in:
Victor Stinner 2015-09-10 11:48:00 +02:00
parent 350b51839a
commit 1efbebaac2
1 changed files with 8 additions and 3 deletions

View File

@ -75,12 +75,17 @@ _PyTime_RoundHalfEven(double x)
static double
_PyTime_Round(double x, _PyTime_round_t round)
{
/* volatile avoids optimization changing how numbers are rounded */
volatile double d;
d = x;
if (round == _PyTime_ROUND_HALF_EVEN)
return _PyTime_RoundHalfEven(x);
d = _PyTime_RoundHalfEven(d);
else if (round == _PyTime_ROUND_CEILING)
return ceil(x);
d = ceil(d);
else
return floor(x);
d = floor(d);
return d;
}
static int