llvm-project/clang/test/CodeGenCXX/debug-info-inlined.cpp
Nikita Popov 532dc62b90 [OpaquePtrs][Clang] Add -no-opaque-pointers to tests (NFC)
This adds -no-opaque-pointers to clang tests whose output will
change when opaque pointers are enabled by default. This is
intended to be part of the migration approach described in
https://discourse.llvm.org/t/enabling-opaque-pointers-by-default/61322/9.

The patch has been produced by replacing %clang_cc1 with
%clang_cc1 -no-opaque-pointers for tests that fail with opaque
pointers enabled. Worth noting that this doesn't cover all tests,
there's a remaining ~40 tests not using %clang_cc1 that will need
a followup change.

Differential Revision: https://reviews.llvm.org/D123115
2022-04-07 12:09:47 +02:00

30 lines
739 B
C++

// RUN: %clang_cc1 -no-opaque-pointers -emit-llvm -triple i686-pc-windows-msvc19.0.24213 -gcodeview -debug-info-kind=limited -std=c++14 %s -o - | FileCheck %s
// PR33997.
struct WithDtor {
~WithDtor();
};
struct Base {
Base(WithDtor);
};
class Forward : Base {
using Base::Base;
};
class A : Forward {
A();
};
class B : Forward {
B();
};
A::A() : Forward(WithDtor()) {}
B::B() : Forward(WithDtor()) {}
// CHECK: define{{.*}}A
// CHECK-NOT: {{ ret }}
// CHECK: store %class.Forward* %
// CHECK-SAME: %class.Forward** %
// CHECK-SAME: !dbg ![[INL:[0-9]+]]
// CHECK: ![[INL]] = !DILocation(line: 10, column: 15, scope: ![[SP:[0-9]+]], inlinedAt:
// CHECK: ![[SP]] = distinct !DISubprogram(name: "Base", {{.*}} DISPFlagDefinition