58 lines · plain
1// RUN: %clang_cc1 -x objective-c++ -fblocks -fms-extensions -rewrite-objc %s -o %t-rw.cpp2// RUN: %clang_cc1 -fsyntax-only -fblocks -Wno-address-of-temporary -D"Class=void*" -D"id=void*" -D"SEL=void*" -D"__declspec(X)=" %t-rw.cpp3 4extern "C" void *sel_registerName(const char *);5typedef unsigned long size_t;6 7typedef struct {8 unsigned long long x;9 unsigned long long y;10} myPoint;11 12typedef struct {13 unsigned long long x;14 unsigned long long y;15} allPoint;16 17@interface Obj18+ (myPoint)foo;19+ (myPoint)foo : (int)Arg1 : (double)fArg;20+ (allPoint)fee;21@end22 23@implementation Obj24+ (allPoint)fee {25 allPoint a;26 a.x = a.y = 3;27 28 return a;29}30+ (myPoint)foo {31 myPoint r;32 r.x = 1;33 r.y = 2;34 return r;35}36 37+ (myPoint)foo : (int)Arg1 : (double)fArg {38 myPoint r;39 return r;40}41@end42 43myPoint Ret_myPoint() {44 return [Obj foo];45}46 47allPoint Ret_allPoint() {48 return [Obj fee];49}50 51myPoint Ret_myPoint1(int i, double d) {52 return [Obj foo:i:d];53}54 55myPoint Ret_myPoint2() {56 return [Obj foo];57}58