Piotr Caban : msvcp90: Added basic_string::get_allocator implementation.
Alexandre Julliard
julliard at winehq.org
Tue Oct 18 12:56:27 CDT 2011
Module: wine
Branch: master
Commit: b0211b5b18b55e256394cea01c4253d907f3328a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=b0211b5b18b55e256394cea01c4253d907f3328a
Author: Piotr Caban <piotr at codeweavers.com>
Date: Tue Oct 18 11:13:42 2011 +0200
msvcp90: Added basic_string::get_allocator implementation.
---
dlls/msvcp90/msvcp90.spec | 8 ++++----
dlls/msvcp90/string.c | 24 ++++++++++++++++++++++++
2 files changed, 28 insertions(+), 4 deletions(-)
diff --git a/dlls/msvcp90/msvcp90.spec b/dlls/msvcp90/msvcp90.spec
index 4a41fed..33d5619 100644
--- a/dlls/msvcp90/msvcp90.spec
+++ b/dlls/msvcp90/msvcp90.spec
@@ -4099,12 +4099,12 @@
@ stub -arch=win64 ?get@?$num_get at _WV?$istreambuf_iterator at _WU?$char_traits at _W@std@@@std@@@std@@QEBA?AV?$istreambuf_iterator at _WU?$char_traits at _W@std@@@2 at V32@0AEAVios_base at 2@AEAHAEA_K at Z
@ stub -arch=win32 ?get@?$num_get at _WV?$istreambuf_iterator at _WU?$char_traits at _W@std@@@std@@@std@@QBE?AV?$istreambuf_iterator at _WU?$char_traits at _W@std@@@2 at V32@0AAVios_base at 2@AAHAA_N at Z
@ stub -arch=win64 ?get@?$num_get at _WV?$istreambuf_iterator at _WU?$char_traits at _W@std@@@std@@@std@@QEBA?AV?$istreambuf_iterator at _WU?$char_traits at _W@std@@@2 at V32@0AEAVios_base at 2@AEAHAEA_N at Z
-@ stub -arch=win32 ?get_allocator@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QBE?AV?$allocator at D@2 at XZ
-@ stub -arch=win64 ?get_allocator@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QEBA?AV?$allocator at D@2 at XZ
+@ thiscall -arch=win32 ?get_allocator@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QBE?AV?$allocator at D@2 at XZ(ptr) basic_string_char_get_allocator
+@ cdecl -arch=win64 ?get_allocator@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QEBA?AV?$allocator at D@2 at XZ(ptr) basic_string_char_get_allocator
@ stub -arch=win32 ?get_allocator@?$basic_string at GU?$char_traits at G@std@@V?$allocator at G@2@@std@@QBE?AV?$allocator at G@2 at XZ
@ stub -arch=win64 ?get_allocator@?$basic_string at GU?$char_traits at G@std@@V?$allocator at G@2@@std@@QEBA?AV?$allocator at G@2 at XZ
-@ stub -arch=win32 ?get_allocator@?$basic_string at _WU?$char_traits at _W@std@@V?$allocator at _W@2@@std@@QBE?AV?$allocator at _W@2 at XZ
-@ stub -arch=win64 ?get_allocator@?$basic_string at _WU?$char_traits at _W@std@@V?$allocator at _W@2@@std@@QEBA?AV?$allocator at _W@2 at XZ
+@ thiscall -arch=win32 ?get_allocator@?$basic_string at _WU?$char_traits at _W@std@@V?$allocator at _W@2@@std@@QBE?AV?$allocator at _W@2 at XZ(ptr) basic_string_wchar_get_allocator
+@ cdecl -arch=win64 ?get_allocator@?$basic_string at _WU?$char_traits at _W@std@@V?$allocator at _W@2@@std@@QEBA?AV?$allocator at _W@2 at XZ(ptr) basic_string_wchar_get_allocator
@ stub -arch=win32 ?get_date@?$time_get at DV?$istreambuf_iterator at DU?$char_traits at D@std@@@std@@@std@@QBE?AV?$istreambuf_iterator at DU?$char_traits at D@std@@@2 at V32@0AAVios_base at 2@AAHPAUtm@@@Z
@ stub -arch=win64 ?get_date@?$time_get at DV?$istreambuf_iterator at DU?$char_traits at D@std@@@std@@@std@@QEBA?AV?$istreambuf_iterator at DU?$char_traits at D@std@@@2 at V32@0AEAVios_base at 2@AEAHPEAUtm@@@Z
@ stub -arch=win32 ?get_date@?$time_get at GV?$istreambuf_iterator at GU?$char_traits at G@std@@@std@@@std@@QBE?AV?$istreambuf_iterator at GU?$char_traits at G@std@@@2 at V32@0AAVios_base at 2@AAHPAUtm@@@Z
diff --git a/dlls/msvcp90/string.c b/dlls/msvcp90/string.c
index e2595a7..c2aa0da 100644
--- a/dlls/msvcp90/string.c
+++ b/dlls/msvcp90/string.c
@@ -47,6 +47,10 @@ typedef struct {
MSVCP_size_t val;
} size_t_noverify;
+/* allocator class */
+typedef struct {
+} allocator;
+
/* char_traits<char> */
/* ?assign@?$char_traits at D@std@@SAXAADABD at Z */
/* ?assign@?$char_traits at D@std@@SAXAEADAEBD at Z */
@@ -643,6 +647,16 @@ MSVCP_size_t __cdecl MSVCP_basic_string_char_Pdif(String_iterator_char i1, Strin
return !i1.pos ? 0 : i1.pos-i2.pos;
}
+/* ?get_allocator@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QBE?AV?$allocator at D@2 at XZ */
+/* ?get_allocator@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QEBA?AV?$allocator at D@2 at XZ */
+DEFINE_THISCALL_WRAPPER_RETPTR(basic_string_char_get_allocator, 4)
+allocator __thiscall basic_string_char_get_allocator(const basic_string_char *this)
+{
+ allocator ret;
+ TRACE("%p\n", this);
+ return ret;
+}
+
/* ?erase@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QAEAAV12 at II@Z */
/* ?erase@?$basic_string at DU?$char_traits at D@std@@V?$allocator at D@2@@std@@QEAAAEAV12 at _K0@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_erase, 12)
@@ -2297,6 +2311,16 @@ MSVCP_size_t __cdecl MSVCP_basic_string_wchar_Pdif(String_iterator_wchar i1, Str
return !i1.pos ? 0 : i1.pos-i2.pos;
}
+/* ?get_allocator@?$basic_string at _WU?$char_traits at _W@std@@V?$allocator at _W@2@@std@@QBE?AV?$allocator at _W@2 at XZ */
+/* ?get_allocator@?$basic_string at _WU?$char_traits at _W@std@@V?$allocator at _W@2@@std@@QEBA?AV?$allocator at _W@2 at XZ */
+DEFINE_THISCALL_WRAPPER(basic_string_wchar_get_allocator, 4)
+allocator __thiscall basic_string_wchar_get_allocator(const basic_string_wchar *this)
+{
+ allocator ret;
+ TRACE("%p\n", this);
+ return ret;
+}
+
/* ?erase@?$basic_string at _WU?$char_traits at _W@std@@V?$allocator at _W@2@@std@@QAEAAV12 at II@Z */
/* ?erase@?$basic_string at _WU?$char_traits at _W@std@@V?$allocator at _W@2@@std@@QEAAAEAV12 at _K0@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_wchar_erase, 12)
More information about the wine-cvs
mailing list