150
|
1 // RUN: %clang_cc1 -emit-llvm -o %t %s
|
|
2
|
|
3 @interface Object
|
|
4 - (id)new;
|
|
5 @end
|
|
6
|
|
7 @interface ReadOnly : Object
|
|
8 {
|
|
9 int _object;
|
|
10 int _Anotherobject;
|
|
11 }
|
|
12 @property(readonly) int object;
|
|
13 @property(readonly) int Anotherobject;
|
|
14 @end
|
|
15
|
|
16 @interface ReadOnly ()
|
|
17 @property(readwrite) int object;
|
|
18 @property(readwrite, setter = myAnotherobjectSetter:) int Anotherobject;
|
|
19 @end
|
|
20
|
|
21 @implementation ReadOnly
|
|
22 @synthesize object = _object;
|
|
23 @synthesize Anotherobject = _Anotherobject;
|
|
24 - (void) myAnotherobjectSetter : (int)val {
|
|
25 _Anotherobject = val;
|
|
26 }
|
|
27 @end
|
|
28
|
|
29 int main(int argc, char **argv) {
|
|
30 ReadOnly *test = [ReadOnly new];
|
|
31 test.object = 12345;
|
|
32 test.Anotherobject = 200;
|
|
33 return test.object - 12345 + test.Anotherobject - 200;
|
|
34 }
|
|
35
|