From: Piotr Caban Subject: [v2] msvcp110: Add _Facet_base_vtable export Message-Id: <3cde2a1e-03f3-16bc-2155-a00de14cb2e6@codeweavers.com> Date: Tue, 27 Dec 2016 14:23:49 +0100 v2: - fixed 64-bit compilation Signed-off-by: Piotr Caban --- dlls/msvcp110/msvcp110.spec | 2 +- dlls/msvcp120/msvcp120.spec | 2 +- dlls/msvcp120_app/msvcp120_app.spec | 2 +- dlls/msvcp140/msvcp140.spec | 2 +- dlls/msvcp90/locale.c | 8 +++++++- 5 files changed, 11 insertions(+), 5 deletions(-) diff --git a/dlls/msvcp110/msvcp110.spec b/dlls/msvcp110/msvcp110.spec index e890257..b09a1d4 100644 --- a/dlls/msvcp110/msvcp110.spec +++ b/dlls/msvcp110/msvcp110.spec @@ -949,7 +949,7 @@ @ extern ??_7?$time_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ MSVCP_time_put_char_vtable @ extern ??_7?$time_put@GV?$ostreambuf_iterator@GU?$char_traits@G@std@@@std@@@std@@6B@ MSVCP_time_put_short_vtable @ extern ??_7?$time_put@_WV?$ostreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@6B@ MSVCP_time_put_wchar_vtable -# extern ??_7_Facet_base@std@@6B@ +@ extern ??_7_Facet_base@std@@6B@ MSVCP__Facet_base_vtable @ extern ??_7_Locimp@locale@std@@6B@ MSVCP_locale__Locimp_vtable @ extern ??_7_Pad@std@@6B@ MSVCP__Pad_vtable @ extern ??_7codecvt_base@std@@6B@ MSVCP_codecvt_base_vtable diff --git a/dlls/msvcp120/msvcp120.spec b/dlls/msvcp120/msvcp120.spec index 33812b9..863ead9 100644 --- a/dlls/msvcp120/msvcp120.spec +++ b/dlls/msvcp120/msvcp120.spec @@ -949,7 +949,7 @@ @ extern ??_7?$time_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ MSVCP_time_put_char_vtable @ extern ??_7?$time_put@GV?$ostreambuf_iterator@GU?$char_traits@G@std@@@std@@@std@@6B@ MSVCP_time_put_short_vtable @ extern ??_7?$time_put@_WV?$ostreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@6B@ MSVCP_time_put_wchar_vtable -# extern ??_7_Facet_base@std@@6B@ +@ extern ??_7_Facet_base@std@@6B@ MSVCP__Facet_base_vtable @ extern ??_7_Locimp@locale@std@@6B@ MSVCP_locale__Locimp_vtable @ extern ??_7_Pad@std@@6B@ MSVCP__Pad_vtable @ extern ??_7codecvt_base@std@@6B@ MSVCP_codecvt_base_vtable diff --git a/dlls/msvcp120_app/msvcp120_app.spec b/dlls/msvcp120_app/msvcp120_app.spec index 265d2be..438cddb 100644 --- a/dlls/msvcp120_app/msvcp120_app.spec +++ b/dlls/msvcp120_app/msvcp120_app.spec @@ -949,7 +949,7 @@ @ extern ??_7?$time_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ msvcp120.??_7?$time_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ @ extern ??_7?$time_put@GV?$ostreambuf_iterator@GU?$char_traits@G@std@@@std@@@std@@6B@ msvcp120.??_7?$time_put@GV?$ostreambuf_iterator@GU?$char_traits@G@std@@@std@@@std@@6B@ @ extern ??_7?$time_put@_WV?$ostreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@6B@ msvcp120.??_7?$time_put@_WV?$ostreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@6B@ -# extern ??_7_Facet_base@std@@6B@ +@ extern ??_7_Facet_base@std@@6B@ msvcp120.??_7_Facet_base@std@@6B@ @ extern ??_7_Locimp@locale@std@@6B@ msvcp120.??_7_Locimp@locale@std@@6B@ @ extern ??_7_Pad@std@@6B@ msvcp120.??_7_Pad@std@@6B@ @ extern ??_7codecvt_base@std@@6B@ msvcp120.??_7codecvt_base@std@@6B@ diff --git a/dlls/msvcp140/msvcp140.spec b/dlls/msvcp140/msvcp140.spec index 36e2cad..fb3d709 100644 --- a/dlls/msvcp140/msvcp140.spec +++ b/dlls/msvcp140/msvcp140.spec @@ -954,7 +954,7 @@ @ extern ??_7?$time_put@DV?$ostreambuf_iterator@DU?$char_traits@D@std@@@std@@@std@@6B@ MSVCP_time_put_char_vtable @ extern ??_7?$time_put@GV?$ostreambuf_iterator@GU?$char_traits@G@std@@@std@@@std@@6B@ MSVCP_time_put_short_vtable @ extern ??_7?$time_put@_WV?$ostreambuf_iterator@_WU?$char_traits@_W@std@@@std@@@std@@6B@ MSVCP_time_put_wchar_vtable -# extern ??_7_Facet_base@std@@6B@ +@ extern ??_7_Facet_base@std@@6B@ MSVCP__Facet_base_vtable @ extern ??_7_Locimp@locale@std@@6B@ MSVCP_locale__Locimp_vtable @ extern ??_7codecvt_base@std@@6B@ MSVCP_codecvt_base_vtable @ extern ??_7ctype_base@std@@6B@ MSVCP_ctype_base_vtable diff --git a/dlls/msvcp90/locale.c b/dlls/msvcp90/locale.c index fe5bd33..d2fce47 100644 --- a/dlls/msvcp90/locale.c +++ b/dlls/msvcp90/locale.c @@ -11224,7 +11224,7 @@ size_t __cdecl wcsrtombs(char *dst, const wchar_t **pstr, size_t n, mbstate_t *s } #endif - +DEFINE_RTTI_DATA0(_Facet_base, 0, ".?AV_Facet_base@std@@") DEFINE_RTTI_DATA0(locale_facet, 0, ".?AVfacet@locale@std@@") DEFINE_RTTI_DATA1(locale__Locimp, 0, &locale_facet_rtti_base_descriptor, ".?AV_Locimp@locale@std@@") DEFINE_RTTI_DATA1(collate_char, 0, &locale_facet_rtti_base_descriptor, ".?AV?$collate@D@std@@") @@ -11262,6 +11262,11 @@ DEFINE_RTTI_DATA2(time_get_char, 0, &time_base_rtti_base_descriptor, &locale_fac #ifndef __GNUC__ void __asm_dummy_vtables(void) { #endif + __ASM_VTABLE(_Facet_base, + VTABLE_ADD_FUNC(locale_facet_vector_dtor) + VTABLE_ADD_FUNC(locale_facet__Incref) + VTABLE_ADD_FUNC(locale_facet__Incref) + ); __ASM_VTABLE(locale_facet, VTABLE_ADD_FUNC(locale_facet_vector_dtor) #if _MSVCP_VER >= 110 @@ -11608,6 +11613,7 @@ void __asm_dummy_vtables(void) { void init_locale(void *base) { #ifdef __x86_64__ + init__Facet_base_rtti(base); init_locale_facet_rtti(base); init_locale__Locimp_rtti(base); init_collate_char_rtti(base);