diff options
author | Steve Naroff <snaroff@apple.com> | 2009-02-02 18:24:29 +0000 |
---|---|---|
committer | Steve Naroff <snaroff@apple.com> | 2009-02-02 18:24:29 +0000 |
commit | 49140cb544bea6c57527f60ca7153721bfa86b97 (patch) | |
tree | d72f0df187ac4ea7b7aecea169b70756bfcee8ef /clang | |
parent | c81fdd1773c8d7c3b9edd541b3e462d59f4e5400 (diff) | |
download | bcm5719-llvm-49140cb544bea6c57527f60ca7153721bfa86b97.tar.gz bcm5719-llvm-49140cb544bea6c57527f60ca7153721bfa86b97.zip |
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.
llvm-svn: 63534
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/AST/ASTContext.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/AST/ASTContext.cpp b/clang/lib/AST/ASTContext.cpp index c43ae78c9f5..7892c84f92b 100644 --- a/clang/lib/AST/ASTContext.cpp +++ b/clang/lib/AST/ASTContext.cpp @@ -2100,7 +2100,7 @@ void ASTContext::getObjCEncodingForTypeImpl(QualType T, std::string& S, 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(); |