[analyzer] Minor refactor to addTaint.
llvm-svn: 146535
This commit is contained in:
@@ -658,13 +658,19 @@ const ProgramState* ProgramState::addTaint(const Stmt *S,
|
||||
return addTaint(Sym, Kind);
|
||||
|
||||
const MemRegion *R = getSVal(S).getAsRegion();
|
||||
if (const SymbolicRegion *SR = dyn_cast_or_null<SymbolicRegion>(R))
|
||||
return addTaint(SR->getSymbol(), Kind);
|
||||
addTaint(R, Kind);
|
||||
|
||||
// Cannot add taint, so just return the state.
|
||||
return this;
|
||||
}
|
||||
|
||||
const ProgramState* ProgramState::addTaint(const MemRegion *R,
|
||||
TaintTagType Kind) const {
|
||||
if (const SymbolicRegion *SR = dyn_cast_or_null<SymbolicRegion>(R))
|
||||
return addTaint(SR->getSymbol(), Kind);
|
||||
return this;
|
||||
}
|
||||
|
||||
const ProgramState* ProgramState::addTaint(SymbolRef Sym,
|
||||
TaintTagType Kind) const {
|
||||
const ProgramState *NewState = set<TaintMap>(Sym, Kind);
|
||||
|
||||
Reference in New Issue
Block a user