diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2011-02-04 23:19:27 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2011-02-04 23:19:27 +0000 |
commit | c9b7c209bb7b6dfb85dc33fd8ce5ab5bdd53663c (patch) | |
tree | 5aeb401b9dd52efac5f3e489f009d868791c27d6 /clang/lib/Sema/SemaDeclObjC.cpp | |
parent | 191524e8a54852aef50441a8e7dacc67a0c08ac0 (diff) | |
download | bcm5719-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.cpp | 6 |
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(), |