[cfe-commits] r68837 - in /cfe/trunk: lib/CodeGen/CGBlocks.h test/CodeGenObjC/blocks-1.m

Mike Stump mrs at apple.com
Fri Apr 10 16:09:55 PDT 2009


Author: mrs
Date: Fri Apr 10 18:09:55 2009
New Revision: 68837

URL: http://llvm.org/viewvc/llvm-project?rev=68837&view=rev
Log:
Fixup copy/dispose helpers for Objective-C.  Radar 6756504

Added:
    cfe/trunk/test/CodeGenObjC/blocks-1.m
Modified:
    cfe/trunk/lib/CodeGen/CGBlocks.h

Modified: cfe/trunk/lib/CodeGen/CGBlocks.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGBlocks.h?rev=68837&r1=68836&r2=68837&view=diff

==============================================================================
--- cfe/trunk/lib/CodeGen/CGBlocks.h (original)
+++ cfe/trunk/lib/CodeGen/CGBlocks.h Fri Apr 10 18:09:55 2009
@@ -207,6 +207,8 @@
       return true;
     if (getContext().isObjCNSObjectType(Ty))
       return true;
+    if (getContext().isObjCObjectPointerType(Ty))
+      return true;
     return false;
   }
 };

Added: cfe/trunk/test/CodeGenObjC/blocks-1.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenObjC/blocks-1.m?rev=68837&view=auto

==============================================================================
--- cfe/trunk/test/CodeGenObjC/blocks-1.m (added)
+++ cfe/trunk/test/CodeGenObjC/blocks-1.m Fri Apr 10 18:09:55 2009
@@ -0,0 +1,14 @@
+// RUN: clang-cc %s -emit-llvm -o %t -fblocks &&
+// RUN: grep "_Block_object_dispose" %t | count 2 &&
+// RUN: grep "__copy_helper_block_" %t | count 2 &&
+// RUN: grep "__destroy_helper_block_" %t | count 2 &&
+// RUN: grep "__Block_byref_id_object_copy_" %t | count 0 &&
+// RUN: grep "__Block_byref_id_object_dispose_" %t | count 0 &&
+// RUN: grep "i32 135)" %t | count 0 &&
+// RUN: grep "_Block_object_assign" %t | count 2
+
+ at interface NSDictionary @end
+
+void test1(NSDictionary * dict) {
+  ^{ (void)dict; }();
+}





More information about the cfe-commits mailing list