From eee9bca03de4602cd8e899c708f0c8dc677e8bba Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Fri, 24 Feb 2012 00:34:58 +0000 Subject: Add an ivar test for modern objc abi translator. llvm-svn: 151316 --- clang/test/Rewriter/objc-modern-ivar-receiver-1.mm | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 clang/test/Rewriter/objc-modern-ivar-receiver-1.mm (limited to 'clang') diff --git a/clang/test/Rewriter/objc-modern-ivar-receiver-1.mm b/clang/test/Rewriter/objc-modern-ivar-receiver-1.mm new file mode 100644 index 00000000000..537530b664a --- /dev/null +++ b/clang/test/Rewriter/objc-modern-ivar-receiver-1.mm @@ -0,0 +1,28 @@ +// RUN: %clang_cc1 -E %s -o %t.mm +// RUN: %clang_cc1 -x objective-c++ -fblocks -fms-extensions -rewrite-objc %t.mm -o - | FileCheck %s + +void *sel_registerName(const char *); + +@interface NSMutableArray +- (void)addObject:(id)addObject; +@end + +@interface NSInvocation { +@private + id _container; +} ++ (NSInvocation *)invocationWithMethodSignature; + +@end + +@implementation NSInvocation + ++ (NSInvocation *)invocationWithMethodSignature { + NSInvocation *newInv; + id obj = newInv->_container; + [newInv->_container addObject:0]; + return 0; +} +@end + +// CHECK: id obj = (*(id *)((char *)newInv + OBJC_IVAR_$_NSInvocation__container)); -- cgit v1.2.3