From 65a78b5d9b9f318d27a37a173e22ea97e2dd4b84 Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Fri, 9 May 2014 19:51:39 +0000 Subject: Objective-C. Reduce false positive warnings with -Wselector by issuing warning only when named selector is declared in TU and it is not declared in a system header. rdar://16600230 llvm-svn: 208443 --- clang/lib/Sema/SemaExprObjC.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'clang/lib') diff --git a/clang/lib/Sema/SemaExprObjC.cpp b/clang/lib/Sema/SemaExprObjC.cpp index 037175e6015..d388a4b82e5 100644 --- a/clang/lib/Sema/SemaExprObjC.cpp +++ b/clang/lib/Sema/SemaExprObjC.cpp @@ -1049,8 +1049,9 @@ ExprResult Sema::ParseObjCSelectorExpression(Selector Sel, } else DiagnoseMismatchedSelectors(*this, AtLoc, Method); - if (!Method || - Method->getImplementationControl() != ObjCMethodDecl::Optional) { + if (Method && + Method->getImplementationControl() != ObjCMethodDecl::Optional && + !getSourceManager().isInSystemHeader(Method->getLocation())) { llvm::DenseMap::iterator Pos = ReferencedSelectors.find(Sel); if (Pos == ReferencedSelectors.end()) -- cgit v1.2.3