brintos

brintos / llvm-project-archived public Read only

0
0
Text · 755 B · cc454f3 Raw
31 lines · plain
1// RUN: %clang_cc1 -E %s -o %t.mm2// RUN: %clang_cc1 -x objective-c++ -fblocks -fms-extensions -rewrite-objc %t.mm -o - | FileCheck %s 3 4void *sel_registerName(const char *);5 6@interface NSMutableArray 7- (void)addObject:(id)addObject;8@end9 10@interface NSInvocation {11@private12    id _container;13}14+ (NSInvocation *)invocationWithMethodSignature;15 16@end17 18@implementation NSInvocation19 20+ (NSInvocation *)invocationWithMethodSignature {21    NSInvocation *newInv;22    id obj = newInv->_container;23    [newInv->_container addObject:0];24   return 0;25}26@end27 28// CHECK: id obj = (*(id *)((char *)newInv + OBJC_IVAR_$_NSInvocation$_container));29// CHECK: struct _class_t *superclass;30// CHECK: extern "C" __declspec(dllimport) struct objc_cache _objc_empty_cache;31