summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExprObjC.cpp
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2014-05-09 19:51:39 +0000
committerFariborz Jahanian <fjahanian@apple.com>2014-05-09 19:51:39 +0000
commit65a78b5d9b9f318d27a37a173e22ea97e2dd4b84 (patch)
tree830a21e2e10a05f0ed11b8e156198ee99b82ead2 /clang/lib/Sema/SemaExprObjC.cpp
parent0c6a14ca82ce3f646b7128c68242acbdc0e2784d (diff)
downloadbcm5719-llvm-65a78b5d9b9f318d27a37a173e22ea97e2dd4b84.tar.gz
bcm5719-llvm-65a78b5d9b9f318d27a37a173e22ea97e2dd4b84.zip
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
Diffstat (limited to 'clang/lib/Sema/SemaExprObjC.cpp')
-rw-r--r--clang/lib/Sema/SemaExprObjC.cpp5
1 files changed, 3 insertions, 2 deletions
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<Selector, SourceLocation>::iterator Pos
= ReferencedSelectors.find(Sel);
if (Pos == ReferencedSelectors.end())
OpenPOWER on IntegriCloud