diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2011-12-21 00:09:11 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2011-12-21 00:09:11 +0000 |
| commit | 13d08955ea7e16d1747369536bd9443a00c305bb (patch) | |
| tree | 66cb65de5f2e9b287559ac175d2559be610c221a | |
| parent | 91c052c4d814e8ccc27c3925930d1d6f0c2b1d36 (diff) | |
| download | bcm5719-llvm-13d08955ea7e16d1747369536bd9443a00c305bb.tar.gz bcm5719-llvm-13d08955ea7e16d1747369536bd9443a00c305bb.zip | |
objc QOI: Don't't warn about mismatch between attributes
on method declaration and definition if former is in
a system header. // rdar://10580333
llvm-svn: 147020
| -rw-r--r-- | clang/lib/Sema/SemaDeclObjC.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaDeclObjC.cpp b/clang/lib/Sema/SemaDeclObjC.cpp index 4f87db426db..c86f735d57d 100644 --- a/clang/lib/Sema/SemaDeclObjC.cpp +++ b/clang/lib/Sema/SemaDeclObjC.cpp @@ -2737,8 +2737,11 @@ Decl *Sema::ActOnMethodDeclaration( ObjCMethod->isInstanceMethod()); if (ObjCMethod->hasAttrs() && containsInvalidMethodImplAttribute(IMD, ObjCMethod->getAttrs())) { - Diag(EndLoc, diag::warn_attribute_method_def); - Diag(IMD->getLocation(), diag::note_method_declared_at); + SourceLocation MethodLoc = IMD->getLocation(); + if (!getSourceManager().isInSystemHeader(MethodLoc)) { + Diag(EndLoc, diag::warn_attribute_method_def); + Diag(MethodLoc, diag::note_method_declared_at); + } } } else { cast<DeclContext>(ClassDecl)->addDecl(ObjCMethod); |

