Make PropertyIntrospectionTest2 use arc.

Recent versions of clang object to weak properties in non-ARC mode.
main
David Chisnall 10 years ago
parent f1c323b0a2
commit b5e12e914c

@ -19,7 +19,7 @@ set(TESTS
NestedExceptions.m NestedExceptions.m
PropertyAttributeTest.m PropertyAttributeTest.m
PropertyIntrospectionTest.m PropertyIntrospectionTest.m
PropertyIntrospectionTest2.m PropertyIntrospectionTest2_arc.m
ProtocolCreation.m ProtocolCreation.m
ResurrectInDealloc_arc.m ResurrectInDealloc_arc.m
RuntimeTest.m RuntimeTest.m

@ -46,12 +46,12 @@ __attribute__((objc_root_class))
id idDefault; id idDefault;
id idRetain; id idRetain;
id idCopy; id idCopy;
id idWeak; __weak id idWeak;
id idStrong; id idStrong;
int intNonatomic; int intNonatomic;
id idReadonlyCopyNonatomic; id idReadonlyCopyNonatomic;
id idReadonlyRetainNonatomic; id idReadonlyRetainNonatomic;
id idReadonlyWeakNonatomic; __weak id idReadonlyWeakNonatomic;
id _idOther; id _idOther;
} }
@property char charDefault; @property char charDefault;
@ -196,12 +196,12 @@ __attribute__((objc_root_class))
id idDefault; id idDefault;
id idRetain; id idRetain;
id idCopy; id idCopy;
id idWeak; __weak id idWeak;
id idStrong; id idStrong;
int intNonatomic; int intNonatomic;
id idReadonlyCopyNonatomic; id idReadonlyCopyNonatomic;
id idReadonlyRetainNonatomic; id idReadonlyRetainNonatomic;
id idReadonlyWeakNonatomic; __weak id idReadonlyWeakNonatomic;
id _idOther; id _idOther;
} }
@end @end
@ -473,17 +473,17 @@ static int intDefault2Getter(id self, SEL _cmd) {
static void intDefault2Setter(id self, SEL _cmd, int value) { static void intDefault2Setter(id self, SEL _cmd, int value) {
Ivar ivar = class_getInstanceVariable(objc_getClass("PropertyTest"), "intDefault"); Ivar ivar = class_getInstanceVariable(objc_getClass("PropertyTest"), "intDefault");
object_setIvar(self, ivar, (id)(intptr_t)value); object_setIvar(self, ivar, (__bridge id)(void*)(intptr_t)value);
} }
static struct YorkshireTeaStruct* structDefault2Getter(id self, SEL _cmd) { static struct YorkshireTeaStruct* structDefault2Getter(id self, SEL _cmd) {
Ivar ivar = class_getInstanceVariable(objc_getClass("PropertyTest"), "structDefault"); Ivar ivar = class_getInstanceVariable(objc_getClass("PropertyTest"), "structDefault");
return (struct YorkshireTeaStruct*)object_getIvar(self, ivar); return (__bridge struct YorkshireTeaStruct*)object_getIvar(self, ivar);
} }
void structDefault2Setter(id self, SEL _cmd, struct YorkshireTeaStruct* value) { void structDefault2Setter(id self, SEL _cmd, struct YorkshireTeaStruct* value) {
Ivar ivar = class_getInstanceVariable(objc_getClass("PropertyTest"), "structDefault"); Ivar ivar = class_getInstanceVariable(objc_getClass("PropertyTest"), "structDefault");
object_setIvar(self, ivar, (id)value); object_setIvar(self, ivar, (__bridge id)value);
} }
int main(void) int main(void)
Loading…
Cancel
Save