Home | History | Annotate | Download | only in Misc
      1 // RUN: %clang_cc1 -Wno-unused -fblocks -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
      2 
      3 @interface A
      4 @end
      5 
      6 @interface TestObjCImplementation : A
      7 @end
      8 
      9 @implementation TestObjCImplementation : A {
     10   struct X {
     11     int i;
     12   } X;
     13 }
     14 - (void) foo {
     15 }
     16 @end
     17 // CHECK:      ObjCImplementationDecl{{.*}} TestObjCImplementation
     18 // CHECK-NEXT:   super ObjCInterface{{.*}} 'A'
     19 // CHECK-NEXT:   ObjCInterface{{.*}} 'TestObjCImplementation'
     20 // CHECK-NEXT:   CXXCtorInitializer{{.*}} 'X'
     21 // CHECK-NEXT:     CXXConstructExpr
     22 // CHECK-NEXT:   ObjCIvarDecl{{.*}} X
     23 // CHECK-NEXT:   ObjCMethodDecl{{.*}} foo
     24 
     25 // @() boxing expressions.
     26 template <typename T>
     27 struct BoxingTest {
     28   static id box(T value) {
     29     return @(value);
     30   }
     31 };
     32 
     33 // CHECK: ObjCBoxedExpr{{.*}} '<dependent type>'{{$}}
     34