From bd8f60d6d117eb782c61a559533a180d1b777e1e Mon Sep 17 00:00:00 2001 From: Anna Zaks Date: Tue, 26 Mar 2013 23:58:49 +0000 Subject: [analyzer] Make sure IDC works for ‘NSContainer value/key is nil’ checks. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Register the nil tracking visitors with the region and refactor trackNullOrUndefValue a bit. Also adds the cast and paren stripping before checking if the value is an OpaqueValueExpr or ExprWithCleanups. llvm-svn: 178093 --- clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'clang/lib/StaticAnalyzer/Checkers') diff --git a/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp b/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp index fb43964a89c..533a324e750 100644 --- a/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp @@ -139,6 +139,7 @@ void NilArgChecker::WarnIfNilArg(CheckerContext &C, BugReport *R = new BugReport(*BT, os.str(), N); R->addRange(msg.getArgSourceRange(Arg)); + bugreporter::trackNullOrUndefValue(N, msg.getArgExpr(Arg), *R); C.emitReport(R); } } -- cgit v1.2.3