diff options
author | Artem Dergachev <artem.dergachev@gmail.com> | 2019-09-26 07:01:31 +0000 |
---|---|---|
committer | Artem Dergachev <artem.dergachev@gmail.com> | 2019-09-26 07:01:31 +0000 |
commit | d9b477af8f43b4e09f16188e1727813354f8f55e (patch) | |
tree | 9b1169a5648c7521aa5f57806c70c08545911548 /clang | |
parent | 43fd14caa060d7467ccb186ef8dd485665c737bf (diff) | |
download | bcm5719-llvm-d9b477af8f43b4e09f16188e1727813354f8f55e.tar.gz bcm5719-llvm-d9b477af8f43b4e09f16188e1727813354f8f55e.zip |
[analyzer] A speculative attempt to avoid gcc-7 crashes caused by r372942.
llvm-svn: 372945
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/StaticAnalyzer/Core/Store.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/StaticAnalyzer/Core/Store.cpp b/clang/lib/StaticAnalyzer/Core/Store.cpp index b4ab6877726..5276789d207 100644 --- a/clang/lib/StaticAnalyzer/Core/Store.cpp +++ b/clang/lib/StaticAnalyzer/Core/Store.cpp @@ -51,8 +51,11 @@ StoreRef StoreManager::enterStackFrame(Store OldStore, SmallVector<CallEvent::FrameBindingTy, 16> InitialBindings; Call.getInitialStackFrameContents(LCtx, InitialBindings); - for (const auto &I : InitialBindings) - Store = Bind(Store.getStore(), I.first.castAs<Loc>(), I.second); + for (const auto &I : InitialBindings) { + Loc L = I.first.castAs<Loc>(); + SVal V = I.second; + Store = Bind(Store.getStore(), L, V); + } return Store; } |