|  | ; 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) |