1 // TEST_CFLAGS -framework Foundation
4 #include <Foundation/Foundation.h>
5 #include <objc/runtime.h>
10 static const char *key = "key";
13 @interface Value : NSObject @end
14 @interface Super : NSObject @end
15 @interface Sub : NSObject @end
20 // rdar://8270243 don't lose associations after isa swizzling
22 id value = [Value new];
23 objc_setAssociatedObject(self, &key, value, OBJC_ASSOCIATION_RETAIN);
26 object_setClass(self, [Sub class]);
60 for (i = 0; i < 100; i++) {
61 [[[Super alloc] init] release];
67 testassert(subs == values);