Home | History | Annotate | Download | only in Rewriter
      1 // RUN: %clang_cc1 -x objective-c++ -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 // rdar://14932320
      4 
      5 extern "C" void *sel_registerName(const char *);
      6 typedef unsigned long size_t;
      7 
      8 typedef struct {
      9     unsigned long long x;
     10     unsigned long long y;
     11 } myPoint;
     12 
     13 typedef struct {
     14     unsigned long long x;
     15     unsigned long long y;
     16 } allPoint;
     17 
     18 @interface Obj
     19 + (myPoint)foo;
     20 + (myPoint)foo : (int)Arg1 : (double)fArg;
     21 + (allPoint)fee;
     22 @end
     23 
     24 @implementation Obj
     25 + (allPoint)fee {
     26     allPoint a;
     27     a.x = a.y = 3;
     28     
     29     return a;
     30 }
     31 + (myPoint)foo {
     32     myPoint r;
     33     r.x = 1;
     34     r.y = 2;
     35     return r;
     36 }
     37 
     38 + (myPoint)foo : (int)Arg1 : (double)fArg {
     39   myPoint r;
     40   return r;
     41 }
     42 @end
     43 
     44 myPoint Ret_myPoint() {
     45   return [Obj foo];
     46 }
     47 
     48 allPoint Ret_allPoint() {
     49   return [Obj fee];
     50 }
     51 
     52 myPoint Ret_myPoint1(int i, double d) {
     53   return [Obj foo:i:d];
     54 }
     55 
     56 myPoint Ret_myPoint2() {
     57   return [Obj foo];
     58 }
     59