From: Anna Zaks Date: Sat, 17 Dec 2011 00:26:29 +0000 (+0000) Subject: [analyzer] Minor: Simplify & assert. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=777d706547ebc751d998134774d9d5388fff8e02;p=clang [analyzer] Minor: Simplify & assert. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146792 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h b/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h index 02c92c9150..b86f4e119d 100644 --- a/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h +++ b/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h @@ -34,7 +34,10 @@ public: : Eng(eng), Pred(pred), Location(loc), - NB(builder) {} + NB(builder) { + assert(Pred->getState() && + "We should not call the checkers on an empty state."); + } AnalysisManager &getAnalysisManager() { return Eng.getAnalysisManager(); diff --git a/lib/StaticAnalyzer/Core/ProgramState.cpp b/lib/StaticAnalyzer/Core/ProgramState.cpp index 76c25f2226..d4b31c1f51 100644 --- a/lib/StaticAnalyzer/Core/ProgramState.cpp +++ b/lib/StaticAnalyzer/Core/ProgramState.cpp @@ -692,8 +692,8 @@ bool ProgramState::isTainted(const Stmt *S, TaintTagType Kind) const { bool ProgramState::isTainted(SVal V, TaintTagType Kind) const { if (const SymExpr *Sym = V.getAsSymExpr()) return isTainted(Sym, Kind); - if (loc::MemRegionVal *RegVal = dyn_cast(&V)) - return isTainted(RegVal->getRegion(), Kind); + if (const MemRegion *Reg = V.getAsRegion()) + return isTainted(Reg, Kind); return false; }