diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2015-05-27 18:47:56 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2015-05-27 18:47:56 +0000 |
| commit | 5e20cdd81c44a443562a09007668ffdf76c455af (patch) | |
| tree | dbbd4047878da71c1a706e26ce05b4e7791b14cc /test/CodeGenCXX/linetable-virtual-variadic.cpp | |
| parent | d5f23b0b7528b5c3caed1ba14f897cc4aaa9e3c3 (diff) | |
Notes
Diffstat (limited to 'test/CodeGenCXX/linetable-virtual-variadic.cpp')
| -rw-r--r-- | test/CodeGenCXX/linetable-virtual-variadic.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/test/CodeGenCXX/linetable-virtual-variadic.cpp b/test/CodeGenCXX/linetable-virtual-variadic.cpp new file mode 100644 index 000000000000..c16c5e354b5c --- /dev/null +++ b/test/CodeGenCXX/linetable-virtual-variadic.cpp @@ -0,0 +1,23 @@ +// RUN: %clang_cc1 -triple x86_64-apple-darwin -emit-llvm -gline-tables-only %s -o - | FileCheck %s +// Crasher for PR22929. +class Base { + virtual void VariadicFunction(...); +}; + +class Derived : public virtual Base { + virtual void VariadicFunction(...); +}; + +void Derived::VariadicFunction(...) { } + +// CHECK-LABEL: define void @_ZN7Derived16VariadicFunctionEz( +// CHECK: ret void, !dbg ![[LOC:[0-9]+]] +// CHECK-LABEL: define void @_ZT{{.+}}N7Derived16VariadicFunctionEz( +// CHECK: ret void, !dbg ![[LOC:[0-9]+]] +// +// CHECK: !llvm.dbg.cu = !{![[CU:[0-9]+]]} +// +// CHECK: ![[CU]] = !DICompileUnit({{.*}} subprograms: ![[SPs:[0-9]+]] +// CHECK: ![[SPs]] = !{![[SP:[0-9]+]]} +// CHECK: ![[SP]] = !DISubprogram(name: "VariadicFunction",{{.*}} function: {{[^:]+}} @_ZN7Derived16VariadicFunctionEz +// CHECK: ![[LOC]] = !DILocation({{.*}}scope: ![[SP]]) |
