From: Anna Zaks Date: Thu, 17 Nov 2011 22:59:00 +0000 (+0000) Subject: [analyzer] Minor tweaks to the ProgramState::isTainted(). X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ee081c4051cde4bd44475b5e29d695008c15a9cc;p=clang [analyzer] Minor tweaks to the ProgramState::isTainted(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144928 91177308-0d34-0410-b5e6-96231b3b80d8 --- 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(Sym)) return isTainted(SD->getParentSymbol(), Kind);