59 lines
1 KiB
Text
59 lines
1 KiB
Text
|
// RUN: %clang_cc1 -x objective-c++ -fblocks -fms-extensions -rewrite-objc %s -o %t-rw.cpp
|
||
|
// 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
|
||
|
// rdar://14932320
|
||
|
|
||
|
extern "C" void *sel_registerName(const char *);
|
||
|
typedef unsigned long size_t;
|
||
|
|
||
|
typedef struct {
|
||
|
unsigned long long x;
|
||
|
unsigned long long y;
|
||
|
} myPoint;
|
||
|
|
||
|
typedef struct {
|
||
|
unsigned long long x;
|
||
|
unsigned long long y;
|
||
|
} allPoint;
|
||
|
|
||
|
@interface Obj
|
||
|
+ (myPoint)foo;
|
||
|
+ (myPoint)foo : (int)Arg1 : (double)fArg;
|
||
|
+ (allPoint)fee;
|
||
|
@end
|
||
|
|
||
|
@implementation Obj
|
||
|
+ (allPoint)fee {
|
||
|
allPoint a;
|
||
|
a.x = a.y = 3;
|
||
|
|
||
|
return a;
|
||
|
}
|
||
|
+ (myPoint)foo {
|
||
|
myPoint r;
|
||
|
r.x = 1;
|
||
|
r.y = 2;
|
||
|
return r;
|
||
|
}
|
||
|
|
||
|
+ (myPoint)foo : (int)Arg1 : (double)fArg {
|
||
|
myPoint r;
|
||
|
return r;
|
||
|
}
|
||
|
@end
|
||
|
|
||
|
myPoint Ret_myPoint() {
|
||
|
return [Obj foo];
|
||
|
}
|
||
|
|
||
|
allPoint Ret_allPoint() {
|
||
|
return [Obj fee];
|
||
|
}
|
||
|
|
||
|
myPoint Ret_myPoint1(int i, double d) {
|
||
|
return [Obj foo:i:d];
|
||
|
}
|
||
|
|
||
|
myPoint Ret_myPoint2() {
|
||
|
return [Obj foo];
|
||
|
}
|