[AMDGPU][AsmParser][NFC] Get rid of custom default operand handlers.
[llvm-project.git] / clang / test / Rewriter / rewrite-nested-property-in-blocks.mm
blobde34ac827069f7a60b48ace8f9ee99577b18f12b
1 // RUN: %clang_cc1 -triple i686-pc-windows -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc -fobjc-runtime=macosx-fragile-10.5 %s -o %t-rw.cpp
2 // RUN: %clang_cc1 -triple i686-pc-windows -fsyntax-only -fms-extensions -Wno-address-of-temporary -Did="void *" -D"SEL=void*" -D"__declspec(X)=" %t-rw.cpp
3 // RUN: %clang_cc1 -triple i686-pc-windows -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc %s -o %t-modern-rw.cpp
4 // RUN: %clang_cc1 -triple i686-pc-windows -fsyntax-only -fms-extensions -Wno-address-of-temporary -Did="void *" -D"SEL=void*" -D"__declspec(X)=" %t-modern-rw.cpp
5 // radar 8608293
7 typedef unsigned long size_t;
8 void *sel_registerName(const char *);
10 extern "C" void nowarn(id);
12 extern "C" void noblockwarn(void (^)());
14 @interface INTFOFPROP 
15 @property (readwrite, retain) INTFOFPROP *outer;
16 @property (readwrite, retain) id inner;
17 @end
19 @interface NSSet
20 - (NSSet *)objectsPassingTest:(char (^)(id obj, char *stop))predicate ;
21 @end
23 @interface INTF
24 - (NSSet *)Meth;
25 @end
27 @implementation INTF
29 - (NSSet *)Meth
31     NSSet *aces;
33     noblockwarn(^() {
34         INTFOFPROP *ace;
35         nowarn(ace.outer.inner);
36         noblockwarn(^() {
37           INTFOFPROP *ace;
38           nowarn(ace.outer.inner);
39         });
40     });
42     noblockwarn(^() {
43         INTFOFPROP *ace;
44         nowarn(ace.outer.inner);
45     });
47 return [aces objectsPassingTest:^(id obj, char *stop)
48     {
49         INTFOFPROP *ace = (INTFOFPROP *)obj;
50         nowarn(ace.outer.inner);
51         return (char)0;
52     }];
55 @end