add opensuse toolchain support, patch by Ismail Donmez!
[clang/stm8.git] / test / Rewriter / rewrite-elaborated-type.mm
blob9867b4d6de1ee081692d08f4f96376b2a67a2d34
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 -Wno-address-of-temporary -D_Bool=bool -D"id=void*" -D"SEL=void*" -D"__declspec(X)=" %t-rw.cpp
3 // radar 8143056
5 typedef struct objc_class *Class;
6 typedef unsigned NSPointerFunctionsOptions;
7 extern "C" id NSClassFromObject(id object);
8 void *sel_registerName(const char *);
10 struct NSSlice {
11   int i1;
14 @interface NSConcretePointerFunctions {
15   @public
16     struct NSSlice slice;
18 - (bool)initializeSlice:(struct NSSlice *)slicep withOptions:(NSPointerFunctionsOptions)options;
19 @end
21 @implementation NSConcretePointerFunctions
22 - (id)initWithOptions:(NSPointerFunctionsOptions)options {
23       if (![NSClassFromObject(self) initializeSlice:&slice withOptions:options])
24         return 0;
25       return self;
26   }
27 - (bool)initializeSlice:(struct NSSlice *)slicep withOptions:(NSPointerFunctionsOptions)options {
28     return 0;
29   }
30 @end
32 @implementation I1
33 + (struct s1 *) f0 {
34   return 0;
36 @end