summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Support/APFloat.cpp4
-rw-r--r--llvm/lib/Support/StringRef.cpp2
-rw-r--r--llvm/unittests/ADT/APFloatTest.cpp26
3 files changed, 10 insertions, 22 deletions
diff --git a/llvm/lib/Support/APFloat.cpp b/llvm/lib/Support/APFloat.cpp
index f6999a6f236..d26c5e6cd2e 100644
--- a/llvm/lib/Support/APFloat.cpp
+++ b/llvm/lib/Support/APFloat.cpp
@@ -4511,7 +4511,9 @@ hash_code hash_value(const APFloat &Arg) {
APFloat::APFloat(const fltSemantics &Semantics, StringRef S)
: APFloat(Semantics) {
auto StatusOrErr = convertFromString(S, rmNearestTiesToEven);
- assert(StatusOrErr && "Invalid floating point representation");
+ if (!StatusOrErr) {
+ assert(false && "Invalid floating point representation");
+ }
}
APFloat::opStatus APFloat::convert(const fltSemantics &ToSemantics,
diff --git a/llvm/lib/Support/StringRef.cpp b/llvm/lib/Support/StringRef.cpp
index 4142d130d51..b5db172cc1a 100644
--- a/llvm/lib/Support/StringRef.cpp
+++ b/llvm/lib/Support/StringRef.cpp
@@ -590,7 +590,7 @@ bool StringRef::getAsDouble(double &Result, bool AllowInexact) const {
APFloat F(0.0);
auto ErrOrStatus = F.convertFromString(*this, APFloat::rmNearestTiesToEven);
if (!ErrOrStatus) {
- assert("Invalid floating point representation");
+ assert(false && "Invalid floating point representation");
return true;
}
diff --git a/llvm/unittests/ADT/APFloatTest.cpp b/llvm/unittests/ADT/APFloatTest.cpp
index 927e1fe1367..db529a094c3 100644
--- a/llvm/unittests/ADT/APFloatTest.cpp
+++ b/llvm/unittests/ADT/APFloatTest.cpp
@@ -666,26 +666,12 @@ TEST(APFloatTest, Zero) {
TEST(APFloatTest, DecimalStringsWithoutNullTerminators) {
// Make sure that we can parse strings without null terminators.
// rdar://14323230.
- APFloat Val(APFloat::IEEEdouble());
- Val.convertFromString(StringRef("0.00", 3),
- llvm::APFloat::rmNearestTiesToEven);
- EXPECT_EQ(Val.convertToDouble(), 0.0);
- Val.convertFromString(StringRef("0.01", 3),
- llvm::APFloat::rmNearestTiesToEven);
- EXPECT_EQ(Val.convertToDouble(), 0.0);
- Val.convertFromString(StringRef("0.09", 3),
- llvm::APFloat::rmNearestTiesToEven);
- EXPECT_EQ(Val.convertToDouble(), 0.0);
- Val.convertFromString(StringRef("0.095", 4),
- llvm::APFloat::rmNearestTiesToEven);
- EXPECT_EQ(Val.convertToDouble(), 0.09);
- Val.convertFromString(StringRef("0.00e+3", 7),
- llvm::APFloat::rmNearestTiesToEven);
- EXPECT_EQ(Val.convertToDouble(), 0.00);
- Val.convertFromString(StringRef("0e+3", 4),
- llvm::APFloat::rmNearestTiesToEven);
- EXPECT_EQ(Val.convertToDouble(), 0.00);
-
+ EXPECT_EQ(convertToDoubleFromString(StringRef("0.00", 3)), 0.0);
+ EXPECT_EQ(convertToDoubleFromString(StringRef("0.01", 3)), 0.0);
+ EXPECT_EQ(convertToDoubleFromString(StringRef("0.09", 3)), 0.0);
+ EXPECT_EQ(convertToDoubleFromString(StringRef("0.095", 4)), 0.09);
+ EXPECT_EQ(convertToDoubleFromString(StringRef("0.00e+3", 7)), 0.00);
+ EXPECT_EQ(convertToDoubleFromString(StringRef("0e+3", 4)), 0.00);
}
TEST(APFloatTest, fromZeroDecimalString) {
OpenPOWER on IntegriCloud