[cfe-commits] r147020 - /cfe/trunk/lib/Sema/SemaDeclObjC.cpp

Fariborz Jahanian fjahanian at apple.com
Tue Dec 20 16:09:11 PST 2011


Author: fjahanian
Date: Tue Dec 20 18:09:11 2011
New Revision: 147020

URL: http://llvm.org/viewvc/llvm-project?rev=147020&view=rev
Log:
objc QOI: Don't't warn about mismatch between attributes 
on method declaration and definition if former is in
a system header. // rdar://10580333

Modified:
    cfe/trunk/lib/Sema/SemaDeclObjC.cpp

Modified: cfe/trunk/lib/Sema/SemaDeclObjC.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclObjC.cpp?rev=147020&r1=147019&r2=147020&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaDeclObjC.cpp (original)
+++ cfe/trunk/lib/Sema/SemaDeclObjC.cpp Tue Dec 20 18:09:11 2011
@@ -2737,8 +2737,11 @@
                                 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);





More information about the cfe-commits mailing list