1*67e74705SXin Li// RUN: %clang_cc1 -triple x86_64-apple-darwin -debug-info-kind=standalone -emit-llvm %s -o - | FileCheck %s 2*67e74705SXin Li 3*67e74705SXin Listruct B { 4*67e74705SXin Li// CHECK: ![[B:[0-9]+]] ={{.*}}!DICompositeType(tag: DW_TAG_structure_type, name: "B" 5*67e74705SXin Li// CHECK-SAME: line: [[@LINE-2]], 6*67e74705SXin Li// CHECK-SAME: size: 8, align: 8, 7*67e74705SXin Li// CHECK-NOT: offset: 8*67e74705SXin Li// CHECK-NOT: DIFlagFwdDecl 9*67e74705SXin Li// CHECK-SAME: elements: ![[BMEMBERS:[0-9]+]] 10*67e74705SXin Li// CHECK-SAME: identifier: 11*67e74705SXin Li// CHECK: ![[BMEMBERS]] = !{![[BB:[0-9]+]]} 12*67e74705SXin Li B(struct A *); 13*67e74705SXin Li// CHECK: ![[BB]] = !DISubprogram(name: "B", scope: ![[B]] 14*67e74705SXin Li// CHECK-SAME: line: [[@LINE-2]], 15*67e74705SXin Li// CHECK-SAME: type: ![[TY:[0-9]+]], 16*67e74705SXin Li// CHECK: ![[TY]] = !DISubroutineType(types: ![[ARGS:[0-9]+]]) 17*67e74705SXin Li// CHECK: ![[ARGS]] = !{null, ![[THIS:[0-9]+]], !{{[^,]+}}} 18*67e74705SXin Li// CHECK: ![[THIS]] = !DIDerivedType(tag: DW_TAG_pointer_type, 19*67e74705SXin Li// CHECK-SAME: baseType: ![[B]] 20*67e74705SXin Li}; 21*67e74705SXin Li 22*67e74705SXin Listruct C { 23*67e74705SXin Li B b; 24*67e74705SXin Li C(struct A *); 25*67e74705SXin Li virtual ~C(); 26*67e74705SXin Li}; 27*67e74705SXin Li 28*67e74705SXin LiC::C(struct A *a) 29*67e74705SXin Li : b(a) { 30*67e74705SXin Li} 31