llvm-project/clang/test/CodeGenObjC/objc2-ivar-assign.m

44 lines
756 B
Objective-C

// RUN: %clang_cc1 -fobjc-gc -emit-llvm -o %t %s
// RUN: grep objc_assign_ivar %t | count 6
// PR13820
// REQUIRES: LP64
@interface I @end
typedef I TI;
typedef I* TPI;
typedef id ID;
@interface MyClass {
}
@property id property;
@property I* propertyI;
@property TI* propertyTI;
@property TPI propertyTPI;
@property ID propertyID;
@end
@implementation MyClass
@synthesize property=_property;
@synthesize propertyI;
@synthesize propertyTI=_propertyTI;
@synthesize propertyTPI=_propertyTPI;
@synthesize propertyID = _propertyID;
@end
int main () {
MyClass *myObj;
myObj.property = 0;
myObj.propertyI = 0;
myObj.propertyTI = 0;
myObj.propertyTPI = 0;
myObj.propertyID = 0;
return 0;
}