[cfe-commits] r63534 - /cfe/trunk/lib/AST/ASTContext.cpp

Steve Naroff snaroff at apple.com
Mon Feb 2 10:24:30 PST 2009


Author: snaroff
Date: Mon Feb  2 12:24:29 2009
New Revision: 63534

URL: http://llvm.org/viewvc/llvm-project?rev=63534&view=rev
Log:
Change the ObjC type encoding for block pointer types to "@?" (for consistency with GCC).
This fixes <rdar://problem/6538564> clang ObjC rewriter: Wrong encoding emitted for methods with Block parameters.

Modified:
    cfe/trunk/lib/AST/ASTContext.cpp

Modified: cfe/trunk/lib/AST/ASTContext.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ASTContext.cpp?rev=63534&r1=63533&r2=63534&view=diff

==============================================================================
--- cfe/trunk/lib/AST/ASTContext.cpp (original)
+++ cfe/trunk/lib/AST/ASTContext.cpp Mon Feb  2 12:24:29 2009
@@ -2100,7 +2100,7 @@
     else
       S += 'i';
   } else if (T->isBlockPointerType()) {
-    S += '^'; // This type string is the same as general pointers.
+    S += "@?"; // Unlike a pointer-to-function, which is "^?".
   } else if (T->isObjCInterfaceType()) {
     // @encode(class_name)
     ObjCInterfaceDecl *OI = T->getAsObjCInterfaceType()->getDecl();





More information about the cfe-commits mailing list