; Test that the native PDB reader can enumerate pointer types. The output ; being checked against is golden output generated by llvm-pdbutil without ; the -native flag. Then we check that we generate the same output. ; RUN: llvm-pdbutil pretty -native -funcsigs %p/../Inputs/every-function.pdb \ ; RUN: | FileCheck -check-prefix=PRETTY %s ; RUN: llvm-pdbutil diadump -native -funcsigs %p/../Inputs/every-function.pdb \ ; RUN: | FileCheck -check-prefix=DUMP %s ; PRETTY: void __cdecl (void*, unsigned int) ; PRETTY-NEXT: void __cdecl (void*, unsigned __int64) ; PRETTY-NEXT: int __cdecl () ; PRETTY-NEXT: int () ; PRETTY-NEXT: int __fastcall () ; PRETTY-NEXT: int __vectorcall () ; PRETTY-NEXT: int __cdecl (int) ; PRETTY-NEXT: int __cdecl (int, char) ; PRETTY-NEXT: void __cdecl (Struct) ; PRETTY-NEXT: void (Struct::)() ; PRETTY-NEXT: int (Struct::)() ; PRETTY-NEXT: void (Struct::)() ; PRETTY-NEXT: void (Struct::)() ; PRETTY-NEXT: void (Struct::)() ; PRETTY-NEXT: void (Struct::)() ; PRETTY-NEXT: void __cdecl (const int) ; PRETTY-NEXT: void __cdecl (Struct) ; PRETTY-NEXT: void __cdecl (int*) ; PRETTY-NEXT: void __cdecl (Struct*) ; PRETTY-NEXT: void __cdecl (const int*) ; PRETTY-NEXT: void __cdecl (Struct*) ; PRETTY-NEXT: Struct __cdecl () ; PRETTY-NEXT: void (Derived::)(Derived*) ; PRETTY-NEXT: void (Derived::)(Derived&) ; PRETTY-NEXT: void (Derived::)() ; PRETTY-NEXT: void (Derived::)() ; PRETTY-NEXT: Derived& (Derived::)(Derived*) ; PRETTY-NEXT: Derived& (Derived::)(Derived&) ; PRETTY-NEXT: void (Derived::)() ; PRETTY-NEXT: void* (Derived::)(unsigned int) ; PRETTY-NEXT: void (__vc_attributes::event_sourceAttribute::)(__vc_attributes::event_sourceAttribute::type_e) ; PRETTY-NEXT: void (__vc_attributes::event_sourceAttribute::)() ; PRETTY-NEXT: void (__vc_attributes::helper_attributes::v1_alttypeAttribute::)(__vc_attributes::helper_attributes::v1_alttypeAttribute::type_e) ; PRETTY-NEXT: void (__vc_attributes::helper_attributes::usageAttribute::)(unsigned int) ; PRETTY-NEXT: void (__vc_attributes::threadingAttribute::)(__vc_attributes::threadingAttribute::threading_e) ; PRETTY-NEXT: void (__vc_attributes::threadingAttribute::)() ; PRETTY-NEXT: void (__vc_attributes::aggregatableAttribute::)(__vc_attributes::aggregatableAttribute::type_e) ; PRETTY-NEXT: void (__vc_attributes::aggregatableAttribute::)() ; PRETTY-NEXT: void (__vc_attributes::event_receiverAttribute::)(__vc_attributes::event_receiverAttribute::type_e, bool) ; PRETTY-NEXT: void (__vc_attributes::event_receiverAttribute::)(__vc_attributes::event_receiverAttribute::type_e) ; PRETTY-NEXT: void (__vc_attributes::event_receiverAttribute::)() ; PRETTY-NEXT: void (__vc_attributes::moduleAttribute::)(__vc_attributes::moduleAttribute::type_e, const char*, const char*, const char*, int, bool, const char*, int, const char*, const char*, int, bool, bool, const char*, const char*) ; PRETTY-NEXT: void (__vc_attributes::moduleAttribute::)(__vc_attributes::moduleAttribute::type_e) ; PRETTY-NEXT: void (__vc_attributes::moduleAttribute::)() ; PRETTY-NEXT: void (Base1::)() ; PRETTY-NEXT: void (Base1::)(Base1&) ; PRETTY-NEXT: void (Base1::)() ; PRETTY-NEXT: Base1& (Base1::)(Base1&) ; PRETTY-NEXT: void* (Base1::)(unsigned int) ; PRETTY-NEXT: void (Base2::)(Base2*) ; PRETTY-NEXT: void (Base2::)(Base2&) ; PRETTY-NEXT: void (Base2::)() ; PRETTY-NEXT: void (Base2::)() ; PRETTY-NEXT: Base2& (Base2::)(Base2*) ; PRETTY-NEXT: Base2& (Base2::)(Base2&) ; PRETTY-NEXT: void (Base2::)() ; PRETTY-NEXT: void* (Base2::)(unsigned int) ; PRETTY-NEXT: void __cdecl () ; DUMP: { ; DUMP-NEXT: symIndexId: 2 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 4 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 5 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 0 ; DUMP-NEXT: typeId: 6 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 7 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __stdcall ; DUMP-NEXT: count: 0 ; DUMP-NEXT: typeId: 6 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 8 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __fastcall ; DUMP-NEXT: count: 0 ; DUMP-NEXT: typeId: 6 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 9 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __vectorcall ; DUMP-NEXT: count: 0 ; DUMP-NEXT: typeId: 6 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 10 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 6 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 11 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 6 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 12 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 13 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 15 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 6 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 16 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 17 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 18 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 19 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 20 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 21 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 22 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 23 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 24 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 25 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 26 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 0 ; DUMP-NEXT: typeId: 14 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 1 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 27 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 1 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 29 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 1 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 30 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 1 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 31 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 4 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 32 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 33 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 34 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 33 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 35 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 36 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 37 ; DUMP-NEXT: thisAdjust: 4 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 38 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 40 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 41 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 43 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 45 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 47 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 48 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 50 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 51 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 3 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 53 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 54 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 55 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 16 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 57 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 58 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 59 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 61 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 62 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 63 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 64 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 65 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 37 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 66 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 1 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 68 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 1 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 69 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 1 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 1 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 70 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 4 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 71 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 72 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 73 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 72 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 74 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 1 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: thisAdjust: 0 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 75 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __thiscall ; DUMP-NEXT: count: 2 ; DUMP-NEXT: typeId: 37 ; DUMP-NEXT: thisAdjust: 4 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: } ; DUMP-NEXT: { ; DUMP-NEXT: symIndexId: 76 ; DUMP-NEXT: symTag: FunctionSig ; DUMP-NEXT: callingConvention: __cdecl ; DUMP-NEXT: count: 0 ; DUMP-NEXT: typeId: 3 ; DUMP-NEXT: constructor: 0 ; DUMP-NEXT: constType: 0 ; DUMP-NEXT: isConstructorVirtualBase: 0 ; DUMP-NEXT: isCxxReturnUdt: 0 ; DUMP-NEXT: unalignedType: 0 ; DUMP-NEXT: volatileType: 0 ; DUMP-NEXT: }