SHA256
1
0
forked from pool/icu
icu/icu-avoid-x87-excess-precision.diff

39 lines
1.8 KiB
Diff
Raw Normal View History

---
source/test/intltest/dcfmapts.cpp | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
Index: icu/source/test/intltest/dcfmapts.cpp
===================================================================
--- icu.orig/source/test/intltest/dcfmapts.cpp
+++ icu/source/test/intltest/dcfmapts.cpp
@@ -851,7 +851,8 @@ void IntlTestDecimalFormatAPI::TestFixed
ASSERT_EQUAL(22, fd.getPluralOperand(PLURAL_OPERAND_V));
ASSERT_EQUAL(1234567890123456789LL, fd.getPluralOperand(PLURAL_OPERAND_F));
ASSERT_EQUAL(1234567890123456789LL, fd.getPluralOperand(PLURAL_OPERAND_T));
- ASSERT_EQUAL(345678901234567890LL, fd.getPluralOperand(PLURAL_OPERAND_I));
+ volatile double xxa = fd.getPluralOperand(PLURAL_OPERAND_I);
+ ASSERT_EQUAL(345678901234567890LL, xxa);
ASSERT_EQUAL(FALSE, fd.hasIntegerValue());
ASSERT_EQUAL(FALSE, fd.isNegative());
@@ -947,14 +948,15 @@ void IntlTestDecimalFormatAPI::TestFixed
// note: going through DigitList path to FixedDecimal, which is trimming
// int64_t fields to 18 digits. See ticket Ticket #10374
// ASSERT_EQUAL(223372036854775807LL, fd.getPluralOperand(PLURAL_OPERAND_I);
+ volatile double xxb = fd.getPluralOperand(PLURAL_OPERAND_I);
if (!(
- fd.getPluralOperand(PLURAL_OPERAND_I) == 223372036854775807LL ||
- fd.getPluralOperand(PLURAL_OPERAND_I) == 9223372036854775807LL)) {
+ xxb == 223372036854775807LL ||
+ xxb == 9223372036854775807LL)) {
dataerrln(
"File %s, Line %d, fd.getPluralOperand(PLURAL_OPERAND_I = %lld",
__FILE__,
__LINE__,
- fd.getPluralOperand(PLURAL_OPERAND_I));
+ xxb);
}
ASSERT_EQUAL(TRUE, fd.hasIntegerValue());
ASSERT_EQUAL(FALSE, fd.isNegative());