[docs] Add LICENSE.txt to the root of the mono-repo
[llvm-project.git] / clang / test / CodeGenObjC / objc2-ivar-assign.m
blob05a7b353cfeb4c9c9d2a29b4758df66160827355
1 // RUN: %clang_cc1 -fobjc-gc -emit-llvm -o %t %s
2 // RUN: grep objc_assign_ivar %t | count 6
4 // PR13820
5 // REQUIRES: LP64
7 @interface I @end
9 typedef I TI;
10 typedef I* TPI;
12 typedef id ID;
14 @interface MyClass {
17 @property id property;
18 @property I* propertyI;
20 @property TI* propertyTI;
22 @property TPI propertyTPI;
24 @property ID propertyID;
25 @end
27 @implementation MyClass
28         @synthesize property=_property;
29         @synthesize propertyI;
30         @synthesize propertyTI=_propertyTI;
31         @synthesize propertyTPI=_propertyTPI;
32          @synthesize propertyID = _propertyID;
33 @end
35 int main () {
36     MyClass *myObj;
37     myObj.property = 0;
38     myObj.propertyI = 0;
39     myObj.propertyTI = 0;
40     myObj.propertyTPI = 0;
41     myObj.propertyID = 0;
42     return 0;