Author: fjahanian
Date: Wed Aug 12 13:17:53 2009
New Revision: 78826

URL: http://llvm.org/viewvc/llvm-project?rev=78826&view=rev
Log:
error on property of objc interface type instead of crashing

Modified:
    cfe/trunk/lib/Sema/SemaDeclObjC.cpp
    cfe/trunk/test/SemaObjC/invalid-objc-decls-1.m

Modified: cfe/trunk/lib/Sema/SemaDeclObjC.cpp
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclObjC.cpp?rev=78826&r1=78825&r2=78826&view=diff

==============================================================================
--- cfe/trunk/lib/Sema/SemaDeclObjC.cpp (original)
+++ cfe/trunk/lib/Sema/SemaDeclObjC.cpp Wed Aug 12 13:17:53 2009
@@ -1940,6 +1940,8 @@
               Diag(AtLoc, diag::warn_implements_nscopying)  
                 << FD.D.getIdentifier();
       }
+  if (T->isObjCInterfaceType())
+    Diag(FD.D.getIdentifierLoc(), diag::err_statically_allocated_object);
   
   DeclContext *DC = dyn_cast<DeclContext>(ClassDecl);
   assert(DC && "ClassDecl is not a DeclContext");

Modified: cfe/trunk/test/SemaObjC/invalid-objc-decls-1.m
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/invalid-objc-decls-1.m?rev=78826&r1=78825&r2=78826&view=diff

==============================================================================
--- cfe/trunk/test/SemaObjC/invalid-objc-decls-1.m (original)
+++ cfe/trunk/test/SemaObjC/invalid-objc-decls-1.m Wed Aug 12 13:17:53 2009
@@ -32,3 +32,11 @@
        Super p1; // expected-error{{interface type cannot be statically 
allocated}}
        return p1;
 }
+
+...@interface NSMutableSet @end
+
+...@interface DVTDummyAnnotationProvider  
+  @property(readonly) NSMutableSet annotations;        // 
expected-error{{interface type cannot be statically allocated}}
+
+...@end
+


_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to