summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDeclObjC.cpp
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2011-02-04 23:19:27 +0000
committerFariborz Jahanian <fjahanian@apple.com>2011-02-04 23:19:27 +0000
commitc9b7c209bb7b6dfb85dc33fd8ce5ab5bdd53663c (patch)
tree5aeb401b9dd52efac5f3e489f009d868791c27d6 /clang/lib/Sema/SemaDeclObjC.cpp
parent191524e8a54852aef50441a8e7dacc67a0c08ac0 (diff)
downloadbcm5719-llvm-c9b7c209bb7b6dfb85dc33fd8ce5ab5bdd53663c.tar.gz
bcm5719-llvm-c9b7c209bb7b6dfb85dc33fd8ce5ab5bdd53663c.zip
-Wselector should warn on implemented selectors only
when selector metadata is generated, which is triggered by at least on class implementation. This is to match gcc's behavior. // rdar://8851684. llvm-svn: 124909
Diffstat (limited to 'clang/lib/Sema/SemaDeclObjC.cpp')
-rw-r--r--clang/lib/Sema/SemaDeclObjC.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp
index 338a5333c89..a2f6b516bee 100644
--- a/clang/lib/Sema/SemaDeclObjC.cpp
+++ b/clang/lib/Sema/SemaDeclObjC.cpp
@@ -1994,7 +1994,11 @@ void ObjCImplementationDecl::setIvarInitializers(ASTContext &C,
}
void Sema::DiagnoseUseOfUnimplementedSelectors() {
- if (ReferencedSelectors.empty())
+ // Warning will be issued only when selector table is
+ // generated (which means there is at lease one implementation
+ // in the TU). This is to match gcc's behavior.
+ if (ReferencedSelectors.empty() ||
+ !Context.AnyObjCImplementation())
return;
for (llvm::DenseMap<Selector, SourceLocation>::iterator S =
ReferencedSelectors.begin(),
OpenPOWER on IntegriCloud