summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang/lib/AST/Expr.cpp10
-rw-r--r--clang/lib/AST/ExprConstant.cpp5
-rw-r--r--clang/lib/CodeGen/CGExprScalar.cpp4
3 files changed, 13 insertions, 6 deletions
diff --git a/clang/lib/AST/Expr.cpp b/clang/lib/AST/Expr.cpp
index dfe412f4fc9..943cd9a0577 100644
--- a/clang/lib/AST/Expr.cpp
+++ b/clang/lib/AST/Expr.cpp
@@ -29,7 +29,9 @@ using namespace clang;
/// debugging dumps, etc.
double FloatingLiteral::getValueAsApproximateDouble() const {
llvm::APFloat V = getValue();
- V.convert(llvm::APFloat::IEEEdouble, llvm::APFloat::rmNearestTiesToEven);
+ bool ignored;
+ V.convert(llvm::APFloat::IEEEdouble, llvm::APFloat::rmNearestTiesToEven,
+ &ignored);
return V.convertToDouble();
}
@@ -977,9 +979,11 @@ bool Expr::isIntegerConstantExpr(llvm::APSInt &Result, ASTContext &Ctx,
// TODO: Warn on overflow, but probably not here: isIntegerConstantExpr can
// be called multiple times per AST.
- uint64_t Space[4];
+ uint64_t Space[4];
+ bool ignored;
(void)FL->getValue().convertToInteger(Space, DestWidth, DestSigned,
- llvm::APFloat::rmTowardZero);
+ llvm::APFloat::rmTowardZero,
+ &ignored);
Result = llvm::APInt(DestWidth, 4, Space);
break;
}
diff --git a/clang/lib/AST/ExprConstant.cpp b/clang/lib/AST/ExprConstant.cpp
index 01dad74fa18..2b94964a918 100644
--- a/clang/lib/AST/ExprConstant.cpp
+++ b/clang/lib/AST/ExprConstant.cpp
@@ -557,9 +557,10 @@ bool IntExprEvaluator::HandleCast(SourceLocation CastLoc,
bool DestSigned = DestType->isSignedIntegerType();
// FIXME: Warning for overflow.
- uint64_t Space[4];
+ uint64_t Space[4];
+ bool ignored;
(void)F.convertToInteger(Space, DestWidth, DestSigned,
- llvm::APFloat::rmTowardZero);
+ llvm::APFloat::rmTowardZero, &ignored);
Result = llvm::APInt(DestWidth, 4, Space);
Result.setIsUnsigned(!DestSigned);
return true;
diff --git a/clang/lib/CodeGen/CGExprScalar.cpp b/clang/lib/CodeGen/CGExprScalar.cpp
index 88b8c9edefd..c4d3377e44c 100644
--- a/clang/lib/CodeGen/CGExprScalar.cpp
+++ b/clang/lib/CodeGen/CGExprScalar.cpp
@@ -605,7 +605,9 @@ Value *ScalarExprEmitter::VisitPrePostIncDec(const UnaryOperator *E,
llvm::ConstantFP::get(llvm::APFloat(static_cast<double>(AmountVal)));
else {
llvm::APFloat F(static_cast<float>(AmountVal));
- F.convert(CGF.Target.getLongDoubleFormat(), llvm::APFloat::rmTowardZero);
+ bool ignored;
+ F.convert(CGF.Target.getLongDoubleFormat(), llvm::APFloat::rmTowardZero,
+ &ignored);
NextVal = llvm::ConstantFP::get(F);
}
NextVal = Builder.CreateAdd(InVal, NextVal, isInc ? "inc" : "dec");
OpenPOWER on IntegriCloud