[docs] Add LICENSE.txt to the root of the mono-repo
[llvm-project.git] / clang / test / CodeGenObjC / auto-property-synthesize-protocol.m
blobe0c54894849a5fc7297831ad97ad7fcebc01ba15
1 // RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm  %s -o - | FileCheck %s
2 // rdar://10907410
4 @protocol P
5 @optional
6 @property int auto_opt_window;
7 @property int no_auto_opt_window;
8 @end
10 @interface I<P>
11 @property int auto_opt_window;
12 @end
14 @implementation I
15 @end
17 @protocol P1
18 @property int auto_req_window;
19 @property int no_auto_req_window; // expected-note {{property declared here}}
20 @end
22 @interface I1<P1>
23 @property int auto_req_window;
24 @end
26 @implementation I1 // expected-warning {{auto property synthesis will not synthesize property declared in a protocol}}
27 @end
29 // CHECK: define internal i32 @"\01-[I auto_opt_window]"(
30 // CHECK: define internal void @"\01-[I setAuto_opt_window:]"(
31 // CHECK: define internal i32 @"\01-[I1 auto_req_window]"(
32 // CHECK: define internal void @"\01-[I1 setAuto_req_window:]"(
34 // CHECK-NOT: define internal i32 @"\01-[I1 no_auto_opt_window]"(
35 // CHECK-NOT: define internal void @"\01-[I1 setNo_auto_opt_window:]"(
36 // CHECK-NOT: define internal i32 @"\01-[I no_auto_req_window]"(
37 // CHECK-NOT: define internal void @"\01-[I setNo_auto_req_window:]"(