Revert "[analyzer] Keep track of escaped locals"
authorGabor Horvath <xazax@google.com>
Wed, 11 Dec 2019 00:42:03 +0000 (16:42 -0800)
committerGabor Horvath <xazax@google.com>
Wed, 11 Dec 2019 00:42:03 +0000 (16:42 -0800)
commit8434fbbee62e382376a39787785909bd55ae1696
treeb04bcd5798cd15da5ba8a9fa80fd9edb84c7c0fc
parent21bc8631fe934126a19ddc9cfd08b20798c5043d
Revert "[analyzer] Keep track of escaped locals"

It was a step in the right direction but it is not clear how can this
fit into the checker API at this point. The pre-escape happens in the
analyzer core and the checker has no control over it. If the checker
is not interestd in a pre-escape it would need to do additional work
on each escape to check if the escaped symbol is originated from an
"uninteresting" pre-escaped memory region. In order to keep the
checker API simple we abandoned this solution for now.

We will reland this once we have a better answer for what to do on the
checker side.

This reverts commit f3a28202ef58551db15818f8f51afd21e0f3e231.
clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
clang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h
clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
clang/lib/StaticAnalyzer/Core/ProgramState.cpp
clang/test/Analysis/symbol-escape.cpp