diff options
author | Anna Zaks <ganna@apple.com> | 2011-11-17 22:59:00 +0000 |
---|---|---|
committer | Anna Zaks <ganna@apple.com> | 2011-11-17 22:59:00 +0000 |
commit | ee081c4051cde4bd44475b5e29d695008c15a9cc (patch) | |
tree | 5b3290a25b4c4d9a82904d4d239e4a0bf38f03c1 /lib/StaticAnalyzer/Core/ProgramState.cpp | |
parent | 64595fad45abbaa75778609196b9223bf6f2ece3 (diff) |
[analyzer] Minor tweaks to the ProgramState::isTainted().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144928 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/StaticAnalyzer/Core/ProgramState.cpp')
-rw-r--r-- | lib/StaticAnalyzer/Core/ProgramState.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/lib/StaticAnalyzer/Core/ProgramState.cpp b/lib/StaticAnalyzer/Core/ProgramState.cpp index 3ce3db7313..07f76c585f 100644 --- a/lib/StaticAnalyzer/Core/ProgramState.cpp +++ b/lib/StaticAnalyzer/Core/ProgramState.cpp @@ -644,15 +644,13 @@ bool ProgramState::isTainted(const Stmt *S, TaintTagType Kind) const { } bool ProgramState::isTainted(SVal V, TaintTagType Kind) const { - const SymExpr* Sym = V.getAsSymbol(); - if (!Sym) - Sym = V.getAsSymbolicExpression(); - if (!Sym) - return false; - return isTainted(Sym, Kind); + return isTainted(V.getAsSymExpr(), Kind); } bool ProgramState::isTainted(const SymExpr* Sym, TaintTagType Kind) const { + if (!Sym) + return false; + // Check taint on derived symbols. if (const SymbolDerived *SD = dyn_cast<SymbolDerived>(Sym)) return isTainted(SD->getParentSymbol(), Kind); |