[cfe-commits] r110515 - in /cfe/trunk: lib/Sema/SemaDeclObjC.cpp test/SemaObjC/protocols.m

Douglas Gregor dgregor at apple.com
Sat Aug 7 05:29:18 PDT 2010


Author: dgregor
Date: Sat Aug  7 07:29:18 2010
New Revision: 110515

URL: http://llvm.org/viewvc/llvm-project?rev=110515&view=rev
Log:
Fix an Objective-C crasher, PR7839.

Modified:
    cfe/trunk/lib/Sema/SemaDeclObjC.cpp
    cfe/trunk/test/SemaObjC/protocols.m

Modified: cfe/trunk/lib/Sema/SemaDeclObjC.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclObjC.cpp?rev=110515&r1=110514&r2=110515&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaDeclObjC.cpp (original)
+++ cfe/trunk/lib/Sema/SemaDeclObjC.cpp Sat Aug  7 07:29:18 2010
@@ -1532,7 +1532,8 @@
       Param->setInvalidDecl();
     }
     Param->setDeclContext(ObjCMethod);
-    IdResolver.RemoveDecl(Param);
+    if (Param->getDeclName())
+      IdResolver.RemoveDecl(Param);
     Params.push_back(Param);
   }
   

Modified: cfe/trunk/test/SemaObjC/protocols.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/protocols.m?rev=110515&r1=110514&r2=110515&view=diff
==============================================================================
--- cfe/trunk/test/SemaObjC/protocols.m (original)
+++ cfe/trunk/test/SemaObjC/protocols.m Sat Aug  7 07:29:18 2010
@@ -61,3 +61,7 @@
 @protocol B < A > // expected-error{{protocol has circular dependency}}
 @end
 
+ at protocol P
+- (int)test:(int)param, ..; // expected-warning{{type specifier missing}} \
+                      // expected-error{{expected ';' after method prototype}}
+ at end





More information about the cfe-commits mailing list