diff options
| -rw-r--r-- | clang/test/CodeGenCXX/mangle-ms.cpp | 4 | ||||
| -rw-r--r-- | llvm/test/Demangle/ms-mangle.test | 10 |
2 files changed, 12 insertions, 2 deletions
diff --git a/clang/test/CodeGenCXX/mangle-ms.cpp b/clang/test/CodeGenCXX/mangle-ms.cpp index 75ca3af8250..4bb376df428 100644 --- a/clang/test/CodeGenCXX/mangle-ms.cpp +++ b/clang/test/CodeGenCXX/mangle-ms.cpp @@ -120,6 +120,10 @@ FunT FunArr[10][20]; int (__stdcall *j)(signed char, unsigned char); // CHECK-DAG: @"?j@@3P6GHCE@ZA" +const char foo2::*m; +// CHECK-DAG: @"?m@@3PRfoo@@DR1@" +// X64-DAG: @"?m@@3PERfoo@@DER1@" + const volatile char foo2::*k; // CHECK-DAG: @"?k@@3PTfoo@@DT1@" // X64-DAG: @"?k@@3PETfoo@@DET1@" diff --git a/llvm/test/Demangle/ms-mangle.test b/llvm/test/Demangle/ms-mangle.test index cd65d8306a1..e7badeee642 100644 --- a/llvm/test/Demangle/ms-mangle.test +++ b/llvm/test/Demangle/ms-mangle.test @@ -103,6 +103,12 @@ ?funptr@@YAP6AHXZXZ ; CHECK: int (__cdecl * __cdecl funptr(void))(void) +?m@@3PRfoo@@DR1@ +; CHECK: char const foo::*m + +?m@@3PERfoo@@DER1@ +; CHECK: char const foo::*m + ?k@@3PTfoo@@DT1@ ; CHECK: char const volatile foo::*k @@ -393,5 +399,5 @@ ??0?$L@V?$H@PAH@PR26029@@@PR26029@@QAE@XZ ; CHECK: __thiscall PR26029::L<class PR26029::H<int *>>::L<class PR26029::H<int *>>(void) -; ??$emplace_back@ABH@?$vector@HV?$allocator@H@std@@@std@@QAE?A?<decltype-auto>@@ABH@Z -<decltype-auto> __thiscall std::vector<int, class std::allocator<int>>::emplace_back<int const &>(int const &)
\ No newline at end of file +??$emplace_back@ABH@?$vector@HV?$allocator@H@std@@@std@@QAE?A?<decltype-auto>@@ABH@Z +; CHECK: <decltype-auto> __thiscall std::vector<int, class std::allocator<int>>::emplace_back<int const &>(int const &) |

