blob: af768007212b0f559f0293030ce00a4437db9350 [file] [log] [blame]
John McCalld1e40d52011-10-02 01:16:38 +00001// RUN: %clang_cc1 -fobjc-gc -emit-llvm -o %t %s
Daniel Dunbar4fcfde42009-11-08 01:45:36 +00002// RUN: grep objc_assign_ivar %t | count 6
Fariborz Jahanian8fc85c42009-09-06 19:44:57 +00003
4@interface I @end
5
6typedef I TI;
7typedef I* TPI;
8
9typedef id ID;
10
11@interface MyClass {
12}
13
14@property id property;
15@property I* propertyI;
16
17@property TI* propertyTI;
18
19@property TPI propertyTPI;
20
21@property ID propertyID;
22@end
23
24@implementation MyClass
25 @synthesize property=_property;
26 @synthesize propertyI;
27 @synthesize propertyTI=_propertyTI;
28 @synthesize propertyTPI=_propertyTPI;
29 @synthesize propertyID = _propertyID;
30@end
31
32int main () {
33 MyClass *myObj;
34 myObj.property = 0;
35 myObj.propertyI = 0;
36 myObj.propertyTI = 0;
37 myObj.propertyTPI = 0;
38 myObj.propertyID = 0;
39 return 0;
40}