• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.
26template <typename T>
27struct BoxingTest {
28  static id box(T value) {
29    return @(value);
30  }
31};
32
33// CHECK: ObjCBoxedExpr{{.*}} '<dependent type>'{{$}}
34