]> granicus.if.org Git - clang/commit
[analyzer] First step toward removing
authorAnna Zaks <ganna@apple.com>
Mon, 5 Dec 2011 18:58:19 +0000 (18:58 +0000)
committerAnna Zaks <ganna@apple.com>
Mon, 5 Dec 2011 18:58:19 +0000 (18:58 +0000)
commit3cdf584e068056540769dab56cad333e95a89750
treeb57f457ac206da284dc39e899e98e92f3f66cff8
parent1a00eef3b02230ccad30fb34d8357a4e376c47fa
[analyzer] First step toward removing
ConstraintManager::canReasonAbout() from the ExprEngine.

ExprEngine should not care if the constraint solver can reason about
something or not. The solver should be able to handle all the SymExprs.

To do this, the solver should be able to keep track of not only the
SymbolData but of all SymExprs. This is why we change SymbolRef to be an
alias of SymExpr*. When encountering an expression it cannot simplify,
the solver should just add the constraints to it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@145831 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
lib/StaticAnalyzer/Core/ExprEngineC.cpp
lib/StaticAnalyzer/Core/SVals.cpp
lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp
lib/StaticAnalyzer/Core/SimpleConstraintManager.h