diff options
Diffstat (limited to 'lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp')
-rw-r--r-- | lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp b/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp index 81f16bdfa8..1d112c5328 100644 --- a/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp +++ b/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp @@ -243,7 +243,10 @@ SymbolRef GenericTaintChecker::getPointedToSymbol(CheckerContext &C, return 0; } - SVal Val = State->getSVal(*AddrLoc); + const PointerType *ArgTy = + dyn_cast<PointerType>(Arg->getType().getCanonicalType().getTypePtr()); + assert(ArgTy); + SVal Val = State->getSVal(*AddrLoc, ArgTy->getPointeeType()); return Val.getAsSymbol(); } |