diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp index 5a6babb3216c85473204f170c7bd70db044cd9e2..c4183a0e61b1edf592fc2631e0fb28f52ff9c807 100644 --- a/clang/lib/Sema/SemaChecking.cpp +++ b/clang/lib/Sema/SemaChecking.cpp @@ -793,9 +793,10 @@ Sema::CheckNonNullArguments(const NonNullAttr *NonNull, const CallExpr *TheCall) { for (NonNullAttr::iterator i = NonNull->begin(), e = NonNull->end(); i != e; ++i) { - const Expr *ArgExpr = TheCall->getArg(*i)->IgnoreParenCasts(); + const Expr *ArgExpr = TheCall->getArg(*i); if (ArgExpr->isNullPointerConstant(Context)) - Diag(ArgExpr->getLocStart(), diag::warn_null_arg); + Diag(TheCall->getCallee()->getLocStart(), diag::warn_null_arg) + << ArgExpr->getSourceRange(); } }