[llvm] r360675 - [APFloat] APFloat::Storage::Storage - fix use after move
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Tue May 14 07:13:30 PDT 2019
Author: rksimon
Date: Tue May 14 07:13:30 2019
New Revision: 360675
URL: http://llvm.org/viewvc/llvm-project?rev=360675&view=rev
Log:
[APFloat] APFloat::Storage::Storage - fix use after move
This was mentioned both in https://www.viva64.com/en/b/0629/ and by scan-build checks
Modified:
llvm/trunk/lib/Support/APFloat.cpp
Modified: llvm/trunk/lib/Support/APFloat.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/APFloat.cpp?rev=360675&r1=360674&r2=360675&view=diff
==============================================================================
--- llvm/trunk/lib/Support/APFloat.cpp (original)
+++ llvm/trunk/lib/Support/APFloat.cpp Tue May 14 07:13:30 2019
@@ -4418,9 +4418,9 @@ APFloat::Storage::Storage(IEEEFloat F, c
return;
}
if (usesLayout<DoubleAPFloat>(Semantics)) {
- new (&Double)
- DoubleAPFloat(Semantics, APFloat(std::move(F), F.getSemantics()),
- APFloat(semIEEEdouble));
+ const fltSemantics IEEESemantics = F.getSemantics();
+ new (&Double) DoubleAPFloat(Semantics, APFloat(std::move(F), IEEESemantics),
+ APFloat(semIEEEdouble));
return;
}
llvm_unreachable("Unexpected semantics");
More information about the llvm-commits
mailing list