Piotr Caban : msvcp90: Added basic_ostream<char>::operator<<(function) implementation.
Module: wine Branch: master Commit: c2c9e9ef7be4b335592a866b9f26722d7f5df22e URL: http://source.winehq.org/git/wine.git/?a=commit;h=c2c9e9ef7be4b335592a866b9f... Author: Piotr Caban <piotr(a)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(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAV01@AAV01@@Z(a)Z */ +/* ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAV01@AEAV01@@Z(a)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(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAV?$basic_ios(a)DU?$char_traits(a)D@std@@@1(a)AAV21@@Z(a)Z */ +/* ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAV?$basic_ios(a)DU?$char_traits(a)D@std@@@1(a)AEAV21@@Z(a)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(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAVios_base@1(a)AAV21@@Z(a)Z */ +/* ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAVios_base@1(a)AEAV21@@Z(a)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(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)N@Z(ptr double) basic_ostream_char_print_double @ stub -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)O@Z @ stub -arch=win64 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)O@Z -@ stub -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAV01@AAV01@@Z(a)Z -@ stub -arch=win64 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAV01@AEAV01@@Z(a)Z -@ stub -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAV?$basic_ios(a)DU?$char_traits(a)D@std@@@1(a)AAV21@@Z(a)Z -@ stub -arch=win64 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAV?$basic_ios(a)DU?$char_traits(a)D@std@@@1(a)AEAV21@@Z(a)Z -@ stub -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAVios_base@1(a)AAV21@@Z(a)Z -@ stub -arch=win64 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAVios_base@1(a)AEAV21@@Z(a)Z +@ thiscall -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAV01@AAV01@@Z(a)Z(ptr ptr) basic_ostream_char_print_func +@ cdecl -arch=win64 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAV01@AEAV01@@Z(a)Z(ptr ptr) basic_ostream_char_print_func +@ thiscall -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAV?$basic_ios(a)DU?$char_traits(a)D@std@@@1(a)AAV21@@Z(a)Z(ptr ptr) basic_ostream_char_print_func_basic_ios +@ cdecl -arch=win64 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAV?$basic_ios(a)DU?$char_traits(a)D@std@@@1(a)AEAV21@@Z(a)Z(ptr ptr) basic_ostream_char_print_func_basic_ios +@ thiscall -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)P6AAAVios_base@1(a)AAV21@@Z(a)Z(ptr ptr) basic_ostream_char_print_func_ios_base +@ cdecl -arch=win64 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)P6AAEAVios_base@1(a)AEAV21@@Z(a)Z(ptr ptr) basic_ostream_char_print_func_ios_base @ thiscall -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)PAV?$basic_streambuf(a)DU?$char_traits(a)D@std@@@1@@Z(ptr ptr) basic_ostream_char_print_streambuf @ cdecl -arch=win64 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QEAAAEAV01(a)PEAV?$basic_streambuf(a)DU?$char_traits(a)D@std@@@1@@Z(ptr ptr) basic_ostream_char_print_streambuf @ thiscall -arch=win32 ??6?$basic_ostream(a)DU?$char_traits(a)D@std@@@std@@QAEAAV01(a)PBX@Z(ptr ptr) basic_ostream_char_print_ptr
participants (1)
-
Alexandre Julliard