; RUN: llvm-undname < %s | FileCheck %s

; CHECK-NOT: Invalid mangled name

?f1@@YAXPBD0@Z
; CHECK: void __cdecl f1(char const *, char const *)

?f2@@YAXPBDPAD@Z
; CHECK: void __cdecl f2(char const *, char *)

?f3@@YAXHPBD0@Z
; CHECK: void __cdecl f3(int, char const *, char const *)

?f4@@YAPBDPBD0@Z
; CHECK: char const * __cdecl f4(char const *, char const *)

?f5@@YAXPBDIDPBX0I@Z
; CHECK: void __cdecl f5(char const *, unsigned int, char, void const *, char const *, unsigned int)

?f6@@YAX_N0@Z
; CHECK: void __cdecl f6(bool, bool)

?f7@@YAXHPAHH0_N1PA_N@Z
; CHECK: void __cdecl f7(int, int *, int, int *, bool, bool, bool *)

; FIXME: tests for more than 10 types?

?g1@@YAXUS@@@Z
; CHECK: void __cdecl g1(struct S)

?g2@@YAXUS@@0@Z
; CHECK: void __cdecl g2(struct S, struct S)

?g3@@YAXUS@@0PAU1@1@Z
; CHECK: void __cdecl g3(struct S, struct S, struct S *, struct S *)

?g4@@YAXPBDPAUS@@01@Z
; CHECK: void __cdecl g4(char const *, struct S *, char const *, struct S *)

?mbb@S@@QAEX_N0@Z
; CHECK: void __thiscall S::mbb(bool, bool)

?h1@@YAXPBD0P6AXXZ1@Z
; CHECK: void __cdecl h1(char const *, char const *, void (__cdecl *)(void), void (__cdecl *)(void))

?h2@@YAXP6AXPAX@Z0@Z
; CHECK: void __cdecl h2(void (__cdecl *)(void *), void *)

?h3@@YAP6APAHPAH0@ZP6APAH00@Z10@Z
; CHECK: int * (__cdecl * __cdecl h3(int * (__cdecl *)(int *, int *), int * (__cdecl *)(int *, int *), int *))(int *, int *)

?foo@0@YAXXZ
; CHECK: void __cdecl foo::foo(void)
