Piotr Caban : msvcp90: Added basic_ostream<char>::operator<<(function) implementation.
Alexandre Julliard
julliard at winehq.org
Fri Jun 15 13:34:39 CDT 2012
Module: wine
Branch: master
Commit: c2c9e9ef7be4b335592a866b9f26722d7f5df22e
URL: http://source.winehq.org/git/wine.git/?a=commit;h=c2c9e9ef7be4b335592a866b9f26722d7f5df22e
Author: Piotr Caban <piotr at codeweavers.com>
Date: Fri Jun 15 11:08:10 2012 +0200
msvcp90: Added basic_ostream<char>::operator<<(function) implementation.
---
dlls/msvcp90/ios.c | 33 +++++++++++++++++++++++++++++++++
dlls/msvcp90/msvcp90.spec | 12 ++++++------
2 files changed, 39 insertions(+), 6 deletions(-)
diff --git a/dlls/msvcp90/ios.c b/dlls/msvcp90/ios.c
index 12d319f..5232ecf 100644
--- a/dlls/msvcp90/ios.c
+++ b/dlls/msvcp90/ios.c
@@ -3984,6 +3984,39 @@ basic_ostream_char* __cdecl basic_ostream_char_print_bstr(basic_ostream_char *os
return ostr;
}
+/* ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAV01@AAV01@@Z at Z */
+/* ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAV01@AEAV01@@Z at Z */
+DEFINE_THISCALL_WRAPPER(basic_ostream_char_print_func, 8)
+basic_ostream_char* __thiscall basic_ostream_char_print_func(basic_ostream_char *this,
+ basic_ostream_char* (__cdecl *pfunc)(basic_ostream_char*))
+{
+ TRACE("(%p %p)\n", this, pfunc);
+ pfunc(this);
+ return this;
+}
+
+/* ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAV?$basic_ios at DU?$char_traits at D@std@@@1 at AAV21@@Z at Z */
+/* ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAV?$basic_ios at DU?$char_traits at D@std@@@1 at AEAV21@@Z at Z */
+DEFINE_THISCALL_WRAPPER(basic_ostream_char_print_func_basic_ios, 8)
+basic_ostream_char* __thiscall basic_ostream_char_print_func_basic_ios(basic_ostream_char *this,
+ basic_ios_char* (__cdecl *pfunc)(basic_ios_char*))
+{
+ TRACE("(%p %p)\n", this, pfunc);
+ pfunc(basic_ostream_char_get_basic_ios(this));
+ return this;
+}
+
+/* ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAVios_base@1 at AAV21@@Z at Z */
+/* ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAVios_base@1 at AEAV21@@Z at Z */
+DEFINE_THISCALL_WRAPPER(basic_ostream_char_print_func_ios_base, 8)
+basic_ostream_char* __thiscall basic_ostream_char_print_func_ios_base(
+ basic_ostream_char *this, ios_base* (__cdecl *pfunc)(ios_base*))
+{
+ TRACE("(%p %p)\n", this, pfunc);
+ pfunc(&basic_ostream_char_get_basic_ios(this)->base);
+ return this;
+}
+
/* Caution: basic_istream uses virtual inheritance. */
static inline basic_ios_char* basic_istream_char_get_basic_ios(basic_istream_char *this)
{
diff --git a/dlls/msvcp90/msvcp90.spec b/dlls/msvcp90/msvcp90.spec
index 84d9364..fb873b5 100644
--- a/dlls/msvcp90/msvcp90.spec
+++ b/dlls/msvcp90/msvcp90.spec
@@ -1592,12 +1592,12 @@
@ cdecl -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at N@Z(ptr double) basic_ostream_char_print_double
@ stub -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at O@Z
@ stub -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at O@Z
-@ stub -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAV01@AAV01@@Z at Z
-@ stub -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAV01@AEAV01@@Z at Z
-@ stub -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAV?$basic_ios at DU?$char_traits at D@std@@@1 at AAV21@@Z at Z
-@ stub -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAV?$basic_ios at DU?$char_traits at D@std@@@1 at AEAV21@@Z at Z
-@ stub -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAVios_base@1 at AAV21@@Z at Z
-@ stub -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAVios_base@1 at AEAV21@@Z at Z
+@ thiscall -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAV01@AAV01@@Z at Z(ptr ptr) basic_ostream_char_print_func
+@ cdecl -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAV01@AEAV01@@Z at Z(ptr ptr) basic_ostream_char_print_func
+@ thiscall -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAV?$basic_ios at DU?$char_traits at D@std@@@1 at AAV21@@Z at Z(ptr ptr) basic_ostream_char_print_func_basic_ios
+@ cdecl -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAV?$basic_ios at DU?$char_traits at D@std@@@1 at AEAV21@@Z at Z(ptr ptr) basic_ostream_char_print_func_basic_ios
+@ thiscall -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at P6AAAVios_base@1 at AAV21@@Z at Z(ptr ptr) basic_ostream_char_print_func_ios_base
+@ cdecl -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at P6AAEAVios_base@1 at AEAV21@@Z at Z(ptr ptr) basic_ostream_char_print_func_ios_base
@ thiscall -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at PAV?$basic_streambuf at DU?$char_traits at D@std@@@1@@Z(ptr ptr) basic_ostream_char_print_streambuf
@ cdecl -arch=win64 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QEAAAEAV01 at PEAV?$basic_streambuf at DU?$char_traits at D@std@@@1@@Z(ptr ptr) basic_ostream_char_print_streambuf
@ thiscall -arch=win32 ??6?$basic_ostream at DU?$char_traits at D@std@@@std@@QAEAAV01 at PBX@Z(ptr ptr) basic_ostream_char_print_ptr
More information about the wine-cvs
mailing list