]> granicus.if.org Git - clang/commit
[analyzer] NFC: Assert that our fix for noreturn destructors keeps working.
authorArtem Dergachev <artem.dergachev@gmail.com>
Sat, 10 Feb 2018 03:14:22 +0000 (03:14 +0000)
committerArtem Dergachev <artem.dergachev@gmail.com>
Sat, 10 Feb 2018 03:14:22 +0000 (03:14 +0000)
commit8d0b5771e42ee079be1cb3475a65af2220847a44
tree9f21adf90e3c64be34c4b0e1c8b83b6b9219f807
parent5ec079b92eaa97f91a30e1fc60ace93206bcec28
[analyzer] NFC: Assert that our fix for noreturn destructors keeps working.

Massive false positives were known to be caused by continuing the analysis
after a destructor with a noreturn attribute has been executed in the program
but not modeled in the analyzer due to being missing in the CFG.

Now that work is being done on enabling the modeling of temporary constructors
and destructors in the CFG, we need to make sure that the heuristic that
suppresses these false positives keeps working when such modeling is disabled.
In particular, different code paths open up when the corresponding constructor
is being inlined during analysis.

Differential Revision: https://reviews.llvm.org/D42779

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@324802 91177308-0d34-0410-b5e6-96231b3b80d8
lib/StaticAnalyzer/Core/ExprEngineCXX.cpp