1 | // RUN: %clang_cc1 -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc %s -o %t-rw.cpp |
2 | // RUN: %clang_cc1 -fsyntax-only -fblocks -Wno-address-of-temporary -D"Class=void*" -D"id=void*" -D"SEL=void*" -D"__declspec(X)=" %t-rw.cpp |
3 | |
4 | @protocol ROOT @end |
5 | |
6 | @protocol P1 @end |
7 | |
8 | @protocol P2<ROOT> @end |
9 | |
10 | @class NSObject; |
11 | |
12 | @protocol PROTO <P1, P2> |
13 | - (id) INST_METHOD; |
14 | + (id) CLASS_METHOD : (id)ARG; |
15 | @property id Prop_in_PROTO; |
16 | @optional |
17 | - (id) opt_instance_method; |
18 | + (id) opt_class_method; |
19 | @property (readonly, retain) NSObject *AnotherProperty; |
20 | @required |
21 | - (id) req; |
22 | @optional |
23 | - (id) X_opt_instance_method; |
24 | + (id) X_opt_class_method; |
25 | @end |
26 | |
27 | @interface INTF <PROTO, ROOT> |
28 | @end |
29 | |
30 | @implementation INTF |
31 | @end |
32 | |