1*67e74705SXin Li // RUN: %clang_cc1 -emit-llvm -debug-info-kind=standalone -triple x86_64-apple-darwin %s -o - | FileCheck %s 2*67e74705SXin Li // RUN: %clang_cc1 -emit-llvm -debug-info-kind=standalone -triple amd64-unknown-freebsd %s -o - | FileCheck %s 3*67e74705SXin Li // 4*67e74705SXin Li // This tests that the "emit debug info for a C++ class only in the 5*67e74705SXin Li // module that has its vtable" optimization is disabled by default on 6*67e74705SXin Li // Darwin and FreeBSD. 7*67e74705SXin Li // 8*67e74705SXin Li // CHECK: !DIDerivedType(tag: DW_TAG_member, name: "lost" 9*67e74705SXin Li class A 10*67e74705SXin Li { 11*67e74705SXin Li virtual bool f() = 0; 12*67e74705SXin Li int lost; 13*67e74705SXin Li }; 14*67e74705SXin Li 15*67e74705SXin Li class B : public A 16*67e74705SXin Li { 17*67e74705SXin Li B *g(); 18*67e74705SXin Li }; 19*67e74705SXin Li g()20*67e74705SXin LiB *B::g() { 21*67e74705SXin Li return this; 22*67e74705SXin Li } 23