mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 19:23:23 +01:00
3475d3dfe8
Starting in C++17, MSVC introduced a new mangling for function parameters that are themselves noexcept functions. This patch makes llvm-undname properly demangle them. Patch by Zachary Henkel Differential Revision: https://reviews.llvm.org/D55769 llvm-svn: 350656
26 lines
674 B
Plaintext
26 lines
674 B
Plaintext
; RUN: llvm-undname < %s | FileCheck %s
|
|
|
|
; CHECK-NOT: Invalid mangled name
|
|
|
|
?nochange@@YAXXZ
|
|
; CHECK: void __cdecl nochange(void)
|
|
|
|
?a@@YAXP6AHXZ@Z
|
|
; CHECK: void __cdecl a(int (__cdecl *)(void))
|
|
?a@@YAXP6AHX_E@Z
|
|
; CHECK: void __cdecl a(int (__cdecl *)(void) noexcept)
|
|
|
|
?b@@YAXP6AHXZ@Z
|
|
; CHECK: void __cdecl b(int (__cdecl *)(void))
|
|
|
|
?c@@YAXP6AHXZ@Z
|
|
; CHECK: void __cdecl c(int (__cdecl *)(void))
|
|
?c@@YAXP6AHX_E@Z
|
|
; CHECK: void __cdecl c(int (__cdecl *)(void) noexcept)
|
|
|
|
?ee@?$e@$$A6AXXZ@@EEAAXXZ
|
|
; CHECK: private: virtual void __cdecl e<void __cdecl(void)>::ee(void)
|
|
|
|
?ee@?$e@$$A6AXX_E@@EEAAXXZ
|
|
; CHECK: private: virtual void __cdecl e<void __cdecl(void) noexcept>::ee(void)
|