diff options
author | Nick Desaulniers <ndesaulniers@google.com> | 2019-06-07 19:51:22 +0000 |
---|---|---|
committer | Nick Desaulniers <ndesaulniers@google.com> | 2019-06-07 19:51:22 +0000 |
commit | 7ddd694d3684aba30a6f2b49a54aea0f58b6d835 (patch) | |
tree | fd5e2fbc73c7638b887552d1fde6b2766b308fb0 /llvm/lib/Support/APFloat.cpp | |
parent | d4a8089f035a1724d2c6642c6d205b8c96b8b2e6 (diff) | |
download | bcm5719-llvm-7ddd694d3684aba30a6f2b49a54aea0f58b6d835.tar.gz bcm5719-llvm-7ddd694d3684aba30a6f2b49a54aea0f58b6d835.zip |
[APFloat] APFloat::Storage::Storage - refix use after move
Summary:
Re-land r360675 after it was reverted in r360770.
This was reported in:
https://llvm.org/reports/scan-build/
Based on feedback in:
https://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20190513/652286.html
Reviewers: RKSimon, efriedma
Reviewed By: RKSimon, efriedma
Subscribers: eli.friedman, hiraditya, llvm-commits, srhines
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D62767
llvm-svn: 362833
Diffstat (limited to 'llvm/lib/Support/APFloat.cpp')
-rw-r--r-- | llvm/lib/Support/APFloat.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Support/APFloat.cpp b/llvm/lib/Support/APFloat.cpp index 208950d7ab7..d2cd8b4b688 100644 --- a/llvm/lib/Support/APFloat.cpp +++ b/llvm/lib/Support/APFloat.cpp @@ -4418,8 +4418,9 @@ APFloat::Storage::Storage(IEEEFloat F, const fltSemantics &Semantics) { return; } if (usesLayout<DoubleAPFloat>(Semantics)) { + const fltSemantics& S = F.getSemantics(); new (&Double) - DoubleAPFloat(Semantics, APFloat(std::move(F), F.getSemantics()), + DoubleAPFloat(Semantics, APFloat(std::move(F), S), APFloat(semIEEEdouble)); return; } |