From 59b2639e39ec15475947797840954cb0e90cc025 Mon Sep 17 00:00:00 2001 From: Piotr Caban Date: Thu, 15 Dec 2011 10:17:28 +0100 Subject: [PATCH] msvcp90: Added collate class stub. --- dlls/msvcp90/locale.c | 109 ++++++++++++++++++++++++++++++++++++++++++++++ dlls/msvcp90/msvcp90.spec | 56 ++++++++++++------------ 2 files changed, 137 insertions(+), 28 deletions(-) diff --git a/dlls/msvcp90/locale.c b/dlls/msvcp90/locale.c index 6408db31422..03b325dff67 100644 --- a/dlls/msvcp90/locale.c +++ b/dlls/msvcp90/locale.c @@ -410,9 +410,13 @@ basic_string_char __thiscall collate_char_transform(const collate *this, /* ?id@?$collate@_W@std@@2V0locale@2@A */ locale_id collate_wchar_id = {0}; +/* ?id@?$collate@G@std@@2V0locale@2@A */ +locale_id collate_short_id = {0}; /* ??_7?$collate@_W@std@@6B@ */ extern const vtable_ptr MSVCP_collate_wchar_vtable; +/* ??_7?$collate@G@std@@6B@ */ +extern const vtable_ptr MSVCP_collate_short_vtable; /* ??0?$collate@_W@std@@IAE@PBDI@Z */ /* ??0?$collate@_W@std@@IEAA@PEBD_K@Z */ @@ -424,6 +428,16 @@ collate* __thiscall collate_wchar_ctor_name(collate *this, const char *name, MSV return NULL; } +/* ??0?$collate@G@std@@IAE@PBDI@Z */ +/* ??0?$collate@G@std@@IEAA@PEBD_K@Z */ +DEFINE_THISCALL_WRAPPER(collate_short_ctor_name, 12) +collate* __thiscall collate_short_ctor_name(collate *this, const char *name, MSVCP_size_t refs) +{ + collate *ret = collate_wchar_ctor_name(this, name, refs); + ret->facet.vtable = &MSVCP_collate_short_vtable; + return ret; +} + /* ??0?$collate@_W@std@@QAE@ABV_Locinfo@1@I@Z */ /* ??0?$collate@_W@std@@QEAA@AEBV_Locinfo@1@_K@Z */ DEFINE_THISCALL_WRAPPER(collate_wchar_ctor_locinfo, 12) @@ -434,6 +448,16 @@ collate* __thiscall collate_wchar_ctor_locinfo(collate *this, _Locinfo *locinfo, return NULL; } +/* ??0?$collate@G@std@@QAE@ABV_Locinfo@1@I@Z */ +/* ??0?$collate@G@std@@QEAA@AEBV_Locinfo@1@_K@Z */ +DEFINE_THISCALL_WRAPPER(collate_short_ctor_locinfo, 12) +collate* __thiscall collate_short_ctor_locinfo(collate *this, _Locinfo *locinfo, MSVCP_size_t refs) +{ + collate *ret = collate_wchar_ctor_locinfo(this, locinfo, refs); + ret->facet.vtable = &MSVCP_collate_short_vtable; + return ret; +} + /* ??0?$collate@_W@std@@QAE@I@Z */ /* ??0?$collate@_W@std@@QEAA@_K@Z */ DEFINE_THISCALL_WRAPPER(collate_wchar_ctor_refs, 8) @@ -444,8 +468,20 @@ collate* __thiscall collate_wchar_ctor_refs(collate *this, MSVCP_size_t refs) return NULL; } +/* ??0?$collate@G@std@@QAE@I@Z */ +/* ??0?$collate@G@std@@QEAA@_K@Z */ +DEFINE_THISCALL_WRAPPER(collate_short_ctor_refs, 8) +collate* __thiscall collate_short_ctor_refs(collate *this, MSVCP_size_t refs) +{ + collate *ret = collate_wchar_ctor_refs(this, refs); + ret->facet.vtable = &MSVCP_collate_short_vtable; + return ret; +} + /* ??1?$collate@_W@std@@MAE@XZ */ /* ??1?$collate@_W@std@@MEAA@XZ */ +/* ??1?$collate@G@std@@MAE@XZ */ +/* ??1?$collate@G@std@@MEAA@XZ */ DEFINE_THISCALL_WRAPPER(collate_wchar_dtor, 4) void __thiscall collate_wchar_dtor(collate *this) { @@ -472,6 +508,12 @@ collate* __thiscall MSVCP_collate_wchar_vector_dtor(collate *this, unsigned int return this; } +DEFINE_THISCALL_WRAPPER(MSVCP_collate_short_vector_dtor, 8) +collate* __thiscall MSVCP_collate_short_vector_dtor(collate *this, unsigned int flags) +{ + return MSVCP_collate_wchar_vector_dtor(this, flags); +} + /* ??_F?$collate@_W@std@@QAEXXZ */ /* ??_F?$collate@_W@std@@QEAAXXZ */ DEFINE_THISCALL_WRAPPER(collate_wchar_ctor, 4) @@ -482,8 +524,20 @@ collate* __thiscall collate_wchar_ctor(collate *this) return NULL; } +/* ??_F?$collate@G@std@@QAEXXZ */ +/* ??_F?$collate@G@std@@QEAAXXZ */ +DEFINE_THISCALL_WRAPPER(collate_short_ctor, 4) +collate* __thiscall collate_short_ctor(collate *this) +{ + collate *ret = collate_wchar_ctor(this); + ret->facet.vtable = &MSVCP_collate_short_vtable; + return ret; +} + /* ?_Getcat@?$collate@_W@std@@SAIPAPBVfacet@locale@2@PBV42@@Z */ /* ?_Getcat@?$collate@_W@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z */ +/* ?_Getcat@?$collate@G@std@@SAIPAPBVfacet@locale@2@PBV42@@Z */ +/* ?_Getcat@?$collate@G@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z */ MSVCP_size_t __cdecl collate_wchar__Getcat(const locale_facet **facet, const locale_facet *loc) { FIXME("(%p %p) stub\n", facet, loc); @@ -492,6 +546,8 @@ MSVCP_size_t __cdecl collate_wchar__Getcat(const locale_facet **facet, const loc /* ?_Init@?$collate@_W@std@@IAEXABV_Locinfo@2@@Z */ /* ?_Init@?$collate@_W@std@@IEAAXAEBV_Locinfo@2@@Z */ +/* ?_Init@?$collate@G@std@@IAEXABV_Locinfo@2@@Z */ +/* ?_Init@?$collate@G@std@@IEAAXAEBV_Locinfo@2@@Z */ DEFINE_THISCALL_WRAPPER(collate_wchar__Init, 8) void __thiscall collate_wchar__Init(collate *this, const _Locinfo *locinfo) { @@ -500,6 +556,8 @@ void __thiscall collate_wchar__Init(collate *this, const _Locinfo *locinfo) /* ?do_compare@?$collate@_W@std@@MBEHPB_W000@Z */ /* ?do_compare@?$collate@_W@std@@MEBAHPEB_W000@Z */ +/* ?do_compare@?$collate@G@std@@MBEHPBG000@Z */ +/* ?do_compare@?$collate@G@std@@MEBAHPEBG000@Z */ DEFINE_THISCALL_WRAPPER(collate_wchar_do_compare, 20) int __thiscall collate_wchar_do_compare(const collate *this, const wchar_t *first1, const wchar_t *last1, const wchar_t *first2, const wchar_t *last2) @@ -510,6 +568,8 @@ int __thiscall collate_wchar_do_compare(const collate *this, const wchar_t *firs /* ?compare@?$collate@_W@std@@QBEHPB_W000@Z */ /* ?compare@?$collate@_W@std@@QEBAHPEB_W000@Z */ +/* ?compare@?$collate@G@std@@QBEHPBG000@Z */ +/* ?compare@?$collate@G@std@@QEBAHPEBG000@Z */ DEFINE_THISCALL_WRAPPER(collate_wchar_compare, 20) int __thiscall collate_wchar_compare(const collate *this, const wchar_t *first1, const wchar_t *last1, const wchar_t *first2, const wchar_t *last2) @@ -520,6 +580,8 @@ int __thiscall collate_wchar_compare(const collate *this, const wchar_t *first1, /* ?do_hash@?$collate@_W@std@@MBEJPB_W0@Z */ /* ?do_hash@?$collate@_W@std@@MEBAJPEB_W0@Z */ +/* ?do_hash@?$collate@G@std@@MBEJPBG0@Z */ +/* ?do_hash@?$collate@G@std@@MEBAJPEBG0@Z */ DEFINE_THISCALL_WRAPPER(collate_wchar_do_hash, 12) LONG __thiscall collate_wchar_do_hash(const collate *this, const wchar_t *first, const wchar_t *last) @@ -530,6 +592,8 @@ LONG __thiscall collate_wchar_do_hash(const collate *this, /* ?hash@?$collate@_W@std@@QBEJPB_W0@Z */ /* ?hash@?$collate@_W@std@@QEBAJPEB_W0@Z */ +/* ?hash@?$collate@G@std@@QBEJPBG0@Z */ +/* ?hash@?$collate@G@std@@QEBAJPEBG0@Z */ DEFINE_THISCALL_WRAPPER(collate_wchar_hash, 12) LONG __thiscall collate_wchar_hash(const collate *this, const wchar_t *first, const wchar_t *last) @@ -540,6 +604,8 @@ LONG __thiscall collate_wchar_hash(const collate *this, /* ?do_transform@?$collate@_W@std@@MBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PB_W0@Z */ /* ?do_transform@?$collate@_W@std@@MEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PEB_W0@Z */ +/* ?do_transform@?$collate@G@std@@MBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PBG0@Z */ +/* ?do_transform@?$collate@G@std@@MEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PEBG0@Z */ DEFINE_THISCALL_WRAPPER_RETPTR(collate_wchar_do_transform, 12) basic_string_wchar __thiscall collate_wchar_do_transform(const collate *this, const wchar_t *first, const wchar_t *last) @@ -551,6 +617,8 @@ basic_string_wchar __thiscall collate_wchar_do_transform(const collate *this, /* ?transform@?$collate@_W@std@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PB_W0@Z */ /* ?transform@?$collate@_W@std@@QEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PEB_W0@Z */ +/* ?transform@?$collate@G@std@@QBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PBG0@Z */ +/* ?transform@?$collate@G@std@@QEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PEBG0@Z */ DEFINE_THISCALL_WRAPPER_RETPTR(collate_wchar_transform, 12) basic_string_wchar __thiscall collate_wchar_transform(const collate *this, const wchar_t *first, const wchar_t *last) @@ -1420,6 +1488,43 @@ const rtti_object_locator collate_wchar_rtti = { &collate_wchar_hierarchy }; +static const type_info collate_short_type_info = { + &MSVCP_collate_short_vtable, + NULL, + ".?AV?$collate@G@std@@" +}; + +static const rtti_base_descriptor collate_short_rtti_base_descriptor = { + &collate_short_type_info, + 1, + { 0, -1, 0}, + 64 +}; + +static const rtti_base_array collate_short_rtti_base_array = { + { + &collate_short_rtti_base_descriptor, + &locale_facet_rtti_base_descriptor, + NULL, + NULL + } +}; + +static const rtti_object_hierarchy collate_short_hierarchy = { + 0, + 0, + 2, + &collate_short_rtti_base_array +}; + +const rtti_object_locator collate_short_rtti = { + 0, + 0, + 0, + &collate_short_type_info, + &collate_short_hierarchy +}; + #ifndef __GNUC__ void __asm_dummy_vtables(void) { #endif @@ -1431,6 +1536,10 @@ void __asm_dummy_vtables(void) { VTABLE_ADD_FUNC(collate_wchar_do_compare) VTABLE_ADD_FUNC(collate_wchar_do_transform) VTABLE_ADD_FUNC(collate_wchar_do_hash)); + __ASM_VTABLE(collate_short, + VTABLE_ADD_FUNC(collate_wchar_do_compare) + VTABLE_ADD_FUNC(collate_wchar_do_transform) + VTABLE_ADD_FUNC(collate_wchar_do_hash)); #ifndef __GNUC__ } #endif diff --git a/dlls/msvcp90/msvcp90.spec b/dlls/msvcp90/msvcp90.spec index c323ea7c7a6..0608d9a7d92 100644 --- a/dlls/msvcp90/msvcp90.spec +++ b/dlls/msvcp90/msvcp90.spec @@ -854,12 +854,12 @@ @ cdecl -arch=win64 ??0?$collate@D@std@@QEAA@AEBV_Locinfo@1@_K@Z(ptr ptr long) collate_char_ctor_locinfo @ thiscall -arch=win32 ??0?$collate@D@std@@QAE@I@Z(ptr long) collate_char_ctor_refs @ cdecl -arch=win64 ??0?$collate@D@std@@QEAA@_K@Z(ptr long) collate_char_ctor_refs -@ stub -arch=win32 ??0?$collate@G@std@@IAE@PBDI@Z -@ stub -arch=win64 ??0?$collate@G@std@@IEAA@PEBD_K@Z -@ stub -arch=win32 ??0?$collate@G@std@@QAE@ABV_Locinfo@1@I@Z -@ stub -arch=win64 ??0?$collate@G@std@@QEAA@AEBV_Locinfo@1@_K@Z -@ stub -arch=win32 ??0?$collate@G@std@@QAE@I@Z -@ stub -arch=win64 ??0?$collate@G@std@@QEAA@_K@Z +@ thiscall -arch=win32 ??0?$collate@G@std@@IAE@PBDI@Z(ptr str long) collate_char_ctor_name +@ cdecl -arch=win64 ??0?$collate@G@std@@IEAA@PEBD_K@Z(ptr str long) collate_char_ctor_name +@ thiscall -arch=win32 ??0?$collate@G@std@@QAE@ABV_Locinfo@1@I@Z(ptr ptr long) collate_char_ctor_locinfo +@ cdecl -arch=win64 ??0?$collate@G@std@@QEAA@AEBV_Locinfo@1@_K@Z(ptr ptr long) collate_char_ctor_locinfo +@ thiscall -arch=win32 ??0?$collate@G@std@@QAE@I@Z(ptr long) collate_char_ctor_refs +@ cdecl -arch=win64 ??0?$collate@G@std@@QEAA@_K@Z(ptr long) collate_char_ctor_refs @ thiscall -arch=win32 ??0?$collate@_W@std@@IAE@PBDI@Z(ptr str long) collate_wchar_ctor_name @ cdecl -arch=win64 ??0?$collate@_W@std@@IEAA@PEBD_K@Z(ptr str long) collate_wchar_ctor_name @ thiscall -arch=win32 ??0?$collate@_W@std@@QAE@ABV_Locinfo@1@I@Z(ptr ptr long) collate_wchar_ctor_locinfo @@ -1238,8 +1238,8 @@ @ stub -arch=win64 ??1?$codecvt@_WDH@std@@MEAA@XZ @ thiscall -arch=win32 ??1?$collate@D@std@@MAE@XZ(ptr) collate_char_dtor @ cdecl -arch=win64 ??1?$collate@D@std@@MEAA@XZ(ptr) collate_char_dtor -@ stub -arch=win32 ??1?$collate@G@std@@MAE@XZ -@ stub -arch=win64 ??1?$collate@G@std@@MEAA@XZ +@ thiscall -arch=win32 ??1?$collate@G@std@@MAE@XZ(ptr) collate_wchar_dtor +@ cdecl -arch=win64 ??1?$collate@G@std@@MEAA@XZ(ptr) collate_wchar_dtor @ thiscall -arch=win32 ??1?$collate@_W@std@@MAE@XZ(ptr) collate_wchar_dtor @ cdecl -arch=win64 ??1?$collate@_W@std@@MEAA@XZ(ptr) collate_wchar_dtor @ stub -arch=win32 ??1?$ctype@D@std@@MAE@XZ @@ -1822,7 +1822,7 @@ # extern ??_7?$codecvt@GDH@std@@6B@ # extern ??_7?$codecvt@_WDH@std@@6B@ @ extern ??_7?$collate@D@std@@6B@ MSVCP_collate_char_vtable -# extern ??_7?$collate@G@std@@6B@ +@ extern ??_7?$collate@G@std@@6B@ MSVCP_collate_short_vtable @ extern ??_7?$collate@_W@std@@6B@ MSVCP_collate_wchar_vtable # extern ??_7?$ctype@D@std@@6B@ # extern ??_7?$ctype@G@std@@6B@ @@ -1999,8 +1999,8 @@ @ stub -arch=win64 ??_F?$codecvt@_WDH@std@@QEAAXXZ @ thiscall -arch=win32 ??_F?$collate@D@std@@QAEXXZ(ptr) collate_char_ctor @ cdecl -arch=win64 ??_F?$collate@D@std@@QEAAXXZ(ptr) collate_char_ctor -@ stub -arch=win32 ??_F?$collate@G@std@@QAEXXZ -@ stub -arch=win64 ??_F?$collate@G@std@@QEAAXXZ +@ thiscall -arch=win32 ??_F?$collate@G@std@@QAEXXZ(ptr) collate_char_ctor +@ cdecl -arch=win64 ??_F?$collate@G@std@@QEAAXXZ(ptr) collate_char_ctor @ thiscall -arch=win32 ??_F?$collate@_W@std@@QAEXXZ(ptr) collate_wchar_ctor @ cdecl -arch=win64 ??_F?$collate@_W@std@@QEAAXXZ(ptr) collate_wchar_ctor @ stub -arch=win32 ??_F?$complex@M@std@@QAEXXZ @@ -2229,8 +2229,8 @@ @ stub -arch=win64 ?_Getcat@?$codecvt@_WDH@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z @ cdecl -arch=win32 ?_Getcat@?$collate@D@std@@SAIPAPBVfacet@locale@2@PBV42@@Z(ptr ptr) collate_char__Getcat @ cdecl -arch=win64 ?_Getcat@?$collate@D@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z(ptr ptr) collate_char__Getcat -@ stub -arch=win32 ?_Getcat@?$collate@G@std@@SAIPAPBVfacet@locale@2@PBV42@@Z -@ stub -arch=win64 ?_Getcat@?$collate@G@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z +@ cdecl -arch=win32 ?_Getcat@?$collate@G@std@@SAIPAPBVfacet@locale@2@PBV42@@Z(ptr ptr) collate_wchar__Getcat +@ cdecl -arch=win64 ?_Getcat@?$collate@G@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z(ptr ptr) collate_wchar__Getcat @ cdecl -arch=win32 ?_Getcat@?$collate@_W@std@@SAIPAPBVfacet@locale@2@PBV42@@Z(ptr ptr) collate_wchar__Getcat @ cdecl -arch=win64 ?_Getcat@?$collate@_W@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z(ptr ptr) collate_wchar__Getcat @ stub -arch=win32 ?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@PBV42@@Z @@ -2466,8 +2466,8 @@ @ stub -arch=win64 ?_Init@?$codecvt@_WDH@std@@IEAAXAEBV_Locinfo@2@@Z @ thiscall -arch=win32 ?_Init@?$collate@D@std@@IAEXABV_Locinfo@2@@Z(ptr ptr) collate_char__Init @ cdecl -arch=win64 ?_Init@?$collate@D@std@@IEAAXAEBV_Locinfo@2@@Z(ptr ptr) collate_char__Init -@ stub -arch=win32 ?_Init@?$collate@G@std@@IAEXABV_Locinfo@2@@Z -@ stub -arch=win64 ?_Init@?$collate@G@std@@IEAAXAEBV_Locinfo@2@@Z +@ thiscall -arch=win32 ?_Init@?$collate@G@std@@IAEXABV_Locinfo@2@@Z(ptr ptr) collate_wchar__Init +@ cdecl -arch=win64 ?_Init@?$collate@G@std@@IEAAXAEBV_Locinfo@2@@Z(ptr ptr) collate_wchar__Init @ thiscall -arch=win32 ?_Init@?$collate@_W@std@@IAEXABV_Locinfo@2@@Z(ptr ptr) collate_wchar__Init @ cdecl -arch=win64 ?_Init@?$collate@_W@std@@IEAAXAEBV_Locinfo@2@@Z(ptr ptr) collate_wchar__Init @ stub -arch=win32 ?_Init@?$ctype@D@std@@IAEXABV_Locinfo@2@@Z @@ -3158,8 +3158,8 @@ @ cdecl -arch=win64 ?compare@?$char_traits@_W@std@@SAHPEB_W0_K@Z(ptr ptr long) MSVCP_char_traits_wchar_compare @ thiscall -arch=win32 ?compare@?$collate@D@std@@QBEHPBD000@Z(ptr ptr ptr ptr ptr) collate_char_compare @ cdecl -arch=win64 ?compare@?$collate@D@std@@QEBAHPEBD000@Z(ptr ptr ptr ptr ptr) collate_char_compare -@ stub -arch=win32 ?compare@?$collate@G@std@@QBEHPBG000@Z -@ stub -arch=win64 ?compare@?$collate@G@std@@QEBAHPEBG000@Z +@ thiscall -arch=win32 ?compare@?$collate@G@std@@QBEHPBG000@Z(ptr ptr ptr ptr ptr) collate_wchar_compare +@ cdecl -arch=win64 ?compare@?$collate@G@std@@QEBAHPEBG000@Z(ptr ptr ptr ptr ptr) collate_wchar_compare @ thiscall -arch=win32 ?compare@?$collate@_W@std@@QBEHPB_W000@Z(ptr ptr ptr ptr ptr) collate_wchar_compare @ cdecl -arch=win64 ?compare@?$collate@_W@std@@QEBAHPEB_W000@Z(ptr ptr ptr ptr ptr) collate_wchar_compare @ thiscall -arch=win32 ?construct@?$allocator@D@std@@QAEXPADABD@Z(ptr ptr ptr) MSVCP_allocator_char_construct @@ -3298,8 +3298,8 @@ @ stub -arch=win64 ?do_close@?$messages@_W@std@@MEBAXH@Z @ thiscall -arch=win32 ?do_compare@?$collate@D@std@@MBEHPBD000@Z(ptr ptr ptr ptr ptr) collate_char_do_compare @ cdecl -arch=win64 ?do_compare@?$collate@D@std@@MEBAHPEBD000@Z(ptr ptr ptr ptr ptr) collate_char_do_compare -@ stub -arch=win32 ?do_compare@?$collate@G@std@@MBEHPBG000@Z -@ stub -arch=win64 ?do_compare@?$collate@G@std@@MEBAHPEBG000@Z +@ thiscall -arch=win32 ?do_compare@?$collate@G@std@@MBEHPBG000@Z(ptr ptr ptr ptr ptr) collate_wchar_do_compare +@ cdecl -arch=win64 ?do_compare@?$collate@G@std@@MEBAHPEBG000@Z(ptr ptr ptr ptr ptr) collate_wchar_do_compare @ thiscall -arch=win32 ?do_compare@?$collate@_W@std@@MBEHPB_W000@Z(ptr ptr ptr ptr ptr) collate_wchar_do_compare @ cdecl -arch=win64 ?do_compare@?$collate@_W@std@@MEBAHPEB_W000@Z(ptr ptr ptr ptr ptr) collate_wchar_do_compare @ stub -arch=win32 ?do_curr_symbol@?$_Mpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ @@ -3468,8 +3468,8 @@ @ stub -arch=win64 ?do_grouping@?$numpunct@_W@std@@MEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ @ thiscall -arch=win32 ?do_hash@?$collate@D@std@@MBEJPBD0@Z(ptr ptr ptr) collate_char_do_hash @ cdecl -arch=win64 ?do_hash@?$collate@D@std@@MEBAJPEBD0@Z(ptr ptr ptr) collate_char_do_hash -@ stub -arch=win32 ?do_hash@?$collate@G@std@@MBEJPBG0@Z -@ stub -arch=win64 ?do_hash@?$collate@G@std@@MEBAJPEBG0@Z +@ thiscall -arch=win32 ?do_hash@?$collate@G@std@@MBEJPBG0@Z(ptr ptr ptr) collate_wchar_do_hash +@ cdecl -arch=win64 ?do_hash@?$collate@G@std@@MEBAJPEBG0@Z(ptr ptr ptr) collate_wchar_do_hash @ thiscall -arch=win32 ?do_hash@?$collate@_W@std@@MBEJPB_W0@Z(ptr ptr ptr) collate_wchar_do_hash @ cdecl -arch=win64 ?do_hash@?$collate@_W@std@@MEBAJPEB_W0@Z(ptr ptr ptr) collate_wchar_do_hash @ stub -arch=win32 ?do_in@?$codecvt@DDH@std@@MBEHAAHPBD1AAPBDPAD3AAPAD@Z @@ -3658,8 +3658,8 @@ @ stub -arch=win64 ?do_toupper@?$ctype@_W@std@@MEBA_W_W@Z @ thiscall -arch=win32 ?do_transform@?$collate@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@PBD0@Z(ptr ptr ptr ptr) collate_char_do_transform @ cdecl -arch=win64 ?do_transform@?$collate@D@std@@MEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@PEBD0@Z(ptr ptr ptr ptr) collate_char_do_transform -@ stub -arch=win32 ?do_transform@?$collate@G@std@@MBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PBG0@Z -@ stub -arch=win64 ?do_transform@?$collate@G@std@@MEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PEBG0@Z +@ thiscall -arch=win32 ?do_transform@?$collate@G@std@@MBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PBG0@Z(ptr ptr ptr ptr) collate_wchar_do_transform +@ cdecl -arch=win64 ?do_transform@?$collate@G@std@@MEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PEBG0@Z(ptr ptr ptr ptr) collate_wchar_do_transform @ thiscall -arch=win32 ?do_transform@?$collate@_W@std@@MBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PB_W0@Z(ptr ptr ptr ptr) collate_wchar_do_transform @ cdecl -arch=win64 ?do_transform@?$collate@_W@std@@MEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PEB_W0@Z(ptr ptr ptr ptr) collate_wchar_do_transform @ stub -arch=win32 ?do_truename@?$numpunct@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ @@ -4189,15 +4189,15 @@ @ extern ?has_signaling_NaN@_Num_float_base@std@@2_NB std_Num_float_base_has_signaling_NaN @ thiscall -arch=win32 ?hash@?$collate@D@std@@QBEJPBD0@Z(ptr ptr ptr) collate_char_hash @ cdecl -arch=win64 ?hash@?$collate@D@std@@QEBAJPEBD0@Z(ptr ptr ptr) collate_char_hash -@ stub -arch=win32 ?hash@?$collate@G@std@@QBEJPBG0@Z -@ stub -arch=win64 ?hash@?$collate@G@std@@QEBAJPEBG0@Z +@ thiscall -arch=win32 ?hash@?$collate@G@std@@QBEJPBG0@Z(ptr ptr ptr) collate_wchar_hash +@ cdecl -arch=win64 ?hash@?$collate@G@std@@QEBAJPEBG0@Z(ptr ptr ptr) collate_wchar_hash @ thiscall -arch=win32 ?hash@?$collate@_W@std@@QBEJPB_W0@Z(ptr ptr ptr) collate_wchar_hash @ cdecl -arch=win64 ?hash@?$collate@_W@std@@QEBAJPEB_W0@Z(ptr ptr ptr) collate_wchar_hash # extern ?id@?$codecvt@DDH@std@@2V0locale@2@A # extern ?id@?$codecvt@GDH@std@@2V0locale@2@A # extern ?id@?$codecvt@_WDH@std@@2V0locale@2@A @ extern ?id@?$collate@D@std@@2V0locale@2@A collate_char_id -# extern ?id@?$collate@G@std@@2V0locale@2@A +@ extern ?id@?$collate@G@std@@2V0locale@2@A collate_short_id @ extern ?id@?$collate@_W@std@@2V0locale@2@A collate_wchar_id # extern ?id@?$ctype@D@std@@2V0locale@2@A # extern ?id@?$ctype@G@std@@2V0locale@2@A @@ -5616,8 +5616,8 @@ @ stub -arch=win64 ?toupper@?$ctype@_W@std@@QEBA_W_W@Z @ thiscall -arch=win32 ?transform@?$collate@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@PBD0@Z(ptr ptr ptr ptr) collate_char_transform @ cdecl -arch=win64 ?transform@?$collate@D@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@PEBD0@Z(ptr ptr ptr ptr) collate_char_transform -@ stub -arch=win32 ?transform@?$collate@G@std@@QBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PBG0@Z -@ stub -arch=win64 ?transform@?$collate@G@std@@QEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PEBG0@Z +@ thiscall -arch=win32 ?transform@?$collate@G@std@@QBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PBG0@Z(ptr ptr ptr ptr) collate_wchar_transform +@ cdecl -arch=win64 ?transform@?$collate@G@std@@QEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PEBG0@Z(ptr ptr ptr ptr) collate_wchar_transform @ thiscall -arch=win32 ?transform@?$collate@_W@std@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PB_W0@Z(ptr ptr ptr ptr) collate_wchar_transform @ cdecl -arch=win64 ?transform@?$collate@_W@std@@QEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PEB_W0@Z(ptr ptr ptr ptr) collate_wchar_transform @ extern ?traps@_Num_base@std@@2_NB std_Num_base_traps -- 2.11.4.GIT