]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/AST/ast-dump-decl.mm
Vendor import of clang trunk r351319 (just before the release_80 branch
[FreeBSD/FreeBSD.git] / test / AST / ast-dump-decl.mm
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>'{{$}}