[PATCH] D80286: [Analyzer] Allow creation of stack frame for functions without definition
Balogh, Ádám via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed May 20 03:45:34 PDT 2020
baloghadamsoftware marked 2 inline comments as done.
baloghadamsoftware added a comment.
I tested this on several open-source projects: BitCoin, CURL, OpenSLL, PostGreS, TMux, Xerces and even on LLVM itself with most of the projects enabled. No new crash and no change in findings. So it seems to be stable.
================
Comment at: clang/lib/StaticAnalyzer/Core/CallEvent.cpp:179
- // situation because there's a loss of precision anyway because we cannot
- // inline the call.
- RuntimeDefinition RD = getRuntimeDefinition();
----------------
We introduced `ParamRegion`s to overcome this, but please provide me the tests that crash when deleting these lines without `ParamRegions` you mentioned D49443#1193290.
================
Comment at: clang/test/Analysis/temporaries.cpp:893
glob = 1;
- // FIXME: Why is destructor not inlined in C++17
clang_analyzer_checkInlined(true);
#ifdef TEMPORARY_DTORS
----------------
I wonder whether `clang_analyzer_checkInlined()` works correctly with this patch: it seems it only checks for stack frame which now any function with definition can have.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D80286/new/
https://reviews.llvm.org/D80286
More information about the cfe-commits
mailing list