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