diff options
author | Pavel Labath <labath@google.com> | 2018-05-25 10:49:11 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2018-05-25 10:49:11 +0000 |
commit | a2aad28f6d18b3d9590cd52d650a4598800ce298 (patch) | |
tree | bf69730e6670eabb7ae2bce1ece2b71dc4e6ad8a /lldb/lit/SymbolFile/DWARF/find-method.cpp | |
parent | c82f38214a279c70eb049eeafb831c73be558042 (diff) | |
download | bcm5719-llvm-a2aad28f6d18b3d9590cd52d650a4598800ce298.tar.gz bcm5719-llvm-a2aad28f6d18b3d9590cd52d650a4598800ce298.zip |
ManualDWARFIndex: Fix misclassification of methods in unions
Apple index was already treating them as methods. Not doing the same
seems like an omission.
llvm-svn: 333266
Diffstat (limited to 'lldb/lit/SymbolFile/DWARF/find-method.cpp')
-rw-r--r-- | lldb/lit/SymbolFile/DWARF/find-method.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/lldb/lit/SymbolFile/DWARF/find-method.cpp b/lldb/lit/SymbolFile/DWARF/find-method.cpp new file mode 100644 index 00000000000..740460124ea --- /dev/null +++ b/lldb/lit/SymbolFile/DWARF/find-method.cpp @@ -0,0 +1,31 @@ +// REQUIRES: lld + +// RUN: clang %s -g -c -o %t.o --target=x86_64-pc-linux +// RUN: ld.lld %t.o -o %t +// RUN: lldb-test symbols --name=foo --find=function --function-flags=method %t | \ +// RUN: FileCheck %s +// +// RUN: clang %s -g -c -o %t --target=x86_64-apple-macosx +// RUN: lldb-test symbols --name=foo --find=function --function-flags=method %t | \ +// RUN: FileCheck %s + +// CHECK-DAG: name = "A::foo()", mangled = "_ZN1A3fooEv" +// CHECK-DAG: name = "B::foo()", mangled = "_ZN1B3fooEv" +// CHECK-DAG: name = "C::foo()", mangled = "_ZN1C3fooEv" + +struct A { + void foo(); +}; +void A::foo() {} + +class B { + void foo(); +}; +void B::foo() {} + +union C { + void foo(); +}; +void C::foo() {} + +extern "C" void _start() {} |