[llvm-commits] [llvm-gcc-4.2] r112279 - in /llvm-gcc-4.2/trunk/gcc/objc: ChangeLog.apple objc-act.c

Jim Grosbach grosbach at apple.com
Fri Aug 27 11:37:05 PDT 2010


Author: grosbach
Date: Fri Aug 27 13:37:05 2010
New Revision: 112279

URL: http://llvm.org/viewvc/llvm-project?rev=112279&view=rev
Log:
2010-08-26 Fariborz Jahanian <fjahanian at apple.com>

	Radar 8351204
	* objc-act.c (objc_resolve_build_property_setter_name): Issue error
	if receiver type cannot be resolved to a known class type.
	* objc.dg/property-receiver-id-type.m: New


Modified:
    llvm-gcc-4.2/trunk/gcc/objc/ChangeLog.apple
    llvm-gcc-4.2/trunk/gcc/objc/objc-act.c

Modified: llvm-gcc-4.2/trunk/gcc/objc/ChangeLog.apple
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/objc/ChangeLog.apple?rev=112279&r1=112278&r2=112279&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/objc/ChangeLog.apple (original)
+++ llvm-gcc-4.2/trunk/gcc/objc/ChangeLog.apple Fri Aug 27 13:37:05 2010
@@ -1,3 +1,10 @@
+2010-08-26 Fariborz Jahanian <fjahanian at apple.com>
+
+	Radar 8351204
+	* objc-act.c (objc_resolve_build_property_setter_name): Issue error
+	if receiver type cannot be resolved to a known class type.
+	* objc.dg/property-receiver-id-type.m: New
+
 2010-07-10 Fariborz Jahanian <fjahanian at apple.com>
 
 	Radar 8290584

Modified: llvm-gcc-4.2/trunk/gcc/objc/objc-act.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/objc/objc-act.c?rev=112279&r1=112278&r2=112279&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/objc/objc-act.c (original)
+++ llvm-gcc-4.2/trunk/gcc/objc/objc-act.c Fri Aug 27 13:37:05 2010
@@ -1935,6 +1935,14 @@
                 && CLASS_SUPER_NAME (implementation_template))
 	    class = lookup_interface (CLASS_SUPER_NAME (implementation_template));
 	}
+      /* APPLE LOCAL begin radar 8351204 */
+      if (!class) {
+        error ("expression is not assignable - type of receiver is unknown");
+        /* recover */
+        return objc_build_property_setter_name (property_ident, true);
+      }
+      /* APPLE LOCAL end radar 8351204 */
+
       /* APPLE LOCAL begin radar 8290584 */
       else {
         /* receiver could be of type id<protocol,...> find property in 





More information about the llvm-commits mailing list