From 43b9cb71801186b23feac97ffc4f73e09d356e2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Matellanes?= Date: Mon, 8 Jun 2015 21:26:28 +0200 Subject: [PATCH] msvcirt: Add implementation of streambuf buffer getters. --- dlls/msvcirt/msvcirt.c | 81 +++++++++++++++++++++++++++++++++++++ dlls/msvcirt/msvcirt.spec | 36 ++++++++--------- dlls/msvcrt20/msvcrt20.spec | 36 ++++++++--------- dlls/msvcrt40/msvcrt40.spec | 36 ++++++++--------- 4 files changed, 135 insertions(+), 54 deletions(-) diff --git a/dlls/msvcirt/msvcirt.c b/dlls/msvcirt/msvcirt.c index 507ed1132ce..72146998a5d 100644 --- a/dlls/msvcirt/msvcirt.c +++ b/dlls/msvcirt/msvcirt.c @@ -207,6 +207,87 @@ int __thiscall streambuf_allocate(streambuf *this) return call_streambuf_doallocate(this); } +/* ?base@streambuf@@IBEPADXZ */ +/* ?base@streambuf@@IEBAPEADXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_base, 4) +char* __thiscall streambuf_base(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->base; +} + +/* ?blen@streambuf@@IBEHXZ */ +/* ?blen@streambuf@@IEBAHXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_blen, 4) +int __thiscall streambuf_blen(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->ebuf - this->base; +} + +/* ?eback@streambuf@@IBEPADXZ */ +/* ?eback@streambuf@@IEBAPEADXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_eback, 4) +char* __thiscall streambuf_eback(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->eback; +} + +/* ?ebuf@streambuf@@IBEPADXZ */ +/* ?ebuf@streambuf@@IEBAPEADXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_ebuf, 4) +char* __thiscall streambuf_ebuf(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->ebuf; +} + +/* ?egptr@streambuf@@IBEPADXZ */ +/* ?egptr@streambuf@@IEBAPEADXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_egptr, 4) +char* __thiscall streambuf_egptr(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->egptr; +} + +/* ?epptr@streambuf@@IBEPADXZ */ +/* ?epptr@streambuf@@IEBAPEADXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_epptr, 4) +char* __thiscall streambuf_epptr(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->epptr; +} + +/* ?gptr@streambuf@@IBEPADXZ */ +/* ?gptr@streambuf@@IEBAPEADXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_gptr, 4) +char* __thiscall streambuf_gptr(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->gptr; +} + +/* ?pbase@streambuf@@IBEPADXZ */ +/* ?pbase@streambuf@@IEBAPEADXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_pbase, 4) +char* __thiscall streambuf_pbase(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->pbase; +} + +/* ?pptr@streambuf@@IBEPADXZ */ +/* ?pptr@streambuf@@IEBAPEADXZ */ +DEFINE_THISCALL_WRAPPER(streambuf_pptr, 4) +char* __thiscall streambuf_pptr(const streambuf *this) +{ + TRACE("(%p)\n", this); + return this->pptr; +} + /* Unexported */ DEFINE_THISCALL_WRAPPER(streambuf_overflow, 8) int __thiscall streambuf_overflow(streambuf *this, int c) diff --git a/dlls/msvcirt/msvcirt.spec b/dlls/msvcirt/msvcirt.spec index f987dfd7194..9ab9adfd944 100644 --- a/dlls/msvcirt/msvcirt.spec +++ b/dlls/msvcirt/msvcirt.spec @@ -412,13 +412,13 @@ @ stub -arch=win64 ?attach@ofstream@@QEAAXH@Z @ stub -arch=win32 ?bad@ios@@QBEHXZ # int __thiscall ios::bad(void)const @ stub -arch=win64 ?bad@ios@@QEBAHXZ -@ stub -arch=win32 ?base@streambuf@@IBEPADXZ # char * __thiscall streambuf::base(void)const -@ stub -arch=win64 ?base@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?base@streambuf@@IBEPADXZ(ptr) streambuf_base +@ cdecl -arch=win64 ?base@streambuf@@IEBAPEADXZ(ptr) streambuf_base # @ extern ?basefield@ios@@2JB # static long const ios::basefield # @ extern ?binary@filebuf@@2HB # static int const filebuf::binary @ stub ?bitalloc@ios@@SAJXZ # static long __cdecl ios::bitalloc(void) -@ stub -arch=win32 ?blen@streambuf@@IBEHXZ # int __thiscall streambuf::blen(void)const -@ stub -arch=win64 ?blen@streambuf@@IEBAHXZ +@ thiscall -arch=win32 ?blen@streambuf@@IBEHXZ(ptr) streambuf_blen +@ cdecl -arch=win64 ?blen@streambuf@@IEBAHXZ(ptr) streambuf_blen @ stub ?cerr@@3Vostream_withassign@@A # class ostream_withassign cerr @ stub ?cin@@3Vistream_withassign@@A # class istream_withassign cin @ stub -arch=win32 ?clear@ios@@QAEXH@Z # void __thiscall ios::clear(int) @@ -451,20 +451,20 @@ @ stub -arch=win64 ?doallocate@strstreambuf@@MEAAHXZ @ stub -arch=win32 ?eatwhite@istream@@QAEXXZ # void __thiscall istream::eatwhite(void) @ stub -arch=win64 ?eatwhite@istream@@QEAAXXZ -@ stub -arch=win32 ?eback@streambuf@@IBEPADXZ # char * __thiscall streambuf::eback(void)const -@ stub -arch=win64 ?eback@streambuf@@IEBAPEADXZ -@ stub -arch=win32 ?ebuf@streambuf@@IBEPADXZ # char * __thiscall streambuf::ebuf(void)const -@ stub -arch=win64 ?ebuf@streambuf@@IEBAPEADXZ -@ stub -arch=win32 ?egptr@streambuf@@IBEPADXZ # char * __thiscall streambuf::egptr(void)const -@ stub -arch=win64 ?egptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?eback@streambuf@@IBEPADXZ(ptr) streambuf_eback +@ cdecl -arch=win64 ?eback@streambuf@@IEBAPEADXZ(ptr) streambuf_eback +@ thiscall -arch=win32 ?ebuf@streambuf@@IBEPADXZ(ptr) streambuf_ebuf +@ cdecl -arch=win64 ?ebuf@streambuf@@IEBAPEADXZ(ptr) streambuf_ebuf +@ thiscall -arch=win32 ?egptr@streambuf@@IBEPADXZ(ptr) streambuf_egptr +@ cdecl -arch=win64 ?egptr@streambuf@@IEBAPEADXZ(ptr) streambuf_egptr @ cdecl -arch=win32 ?endl@@YAAAVostream@@AAV1@@Z(ptr) MSVCIRT_endl # class ostream & __cdecl endl(class ostream &) @ cdecl -arch=win64 ?endl@@YAAEAVostream@@AEAV1@@Z(ptr) MSVCIRT_endl @ cdecl -arch=win32 ?ends@@YAAAVostream@@AAV1@@Z(ptr) MSVCIRT_ends # class ostream & __cdecl ends(class ostream &) @ cdecl -arch=win64 ?ends@@YAAEAVostream@@AEAV1@@Z(ptr) MSVCIRT_ends @ stub -arch=win32 ?eof@ios@@QBEHXZ # int __thiscall ios::eof(void)const @ stub -arch=win64 ?eof@ios@@QEBAHXZ -@ stub -arch=win32 ?epptr@streambuf@@IBEPADXZ # char * __thiscall streambuf::epptr(void)const -@ stub -arch=win64 ?epptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?epptr@streambuf@@IBEPADXZ(ptr) streambuf_epptr +@ cdecl -arch=win64 ?epptr@streambuf@@IEBAPEADXZ(ptr) streambuf_epptr # @ extern ?fLockcInit@ios@@0HA # static int ios::fLockcInit @ stub -arch=win32 ?fail@ios@@QBEHXZ # int __thiscall ios::fail(void)const @ stub -arch=win64 ?fail@ios@@QEBAHXZ @@ -525,8 +525,8 @@ @ stub -arch=win64 ?getline@istream@@QEAAAEAV1@PEAEHD@Z @ stub -arch=win32 ?good@ios@@QBEHXZ # int __thiscall ios::good(void)const @ stub -arch=win64 ?good@ios@@QEBAHXZ -@ stub -arch=win32 ?gptr@streambuf@@IBEPADXZ # char * __thiscall streambuf::gptr(void)const -@ stub -arch=win64 ?gptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?gptr@streambuf@@IBEPADXZ(ptr) streambuf_gptr +@ cdecl -arch=win64 ?gptr@streambuf@@IEBAPEADXZ(ptr) streambuf_gptr @ stub -arch=win32 ?hex@@YAAAVios@@AAV1@@Z # class ios & __cdecl hex(class ios &) @ stub -arch=win64 ?hex@@YAAEAVios@@AEAV1@@Z @ stub -arch=win32 ?ignore@istream@@QAEAAV1@HH@Z # class istream & __thiscall istream::ignore(int,int) @@ -587,8 +587,8 @@ @ stub -arch=win64 ?pbackfail@stdiobuf@@UEAAHH@Z @ thiscall -arch=win32 ?pbackfail@streambuf@@UAEHH@Z(ptr long) streambuf_pbackfail @ cdecl -arch=win64 ?pbackfail@streambuf@@UEAAHH@Z(ptr long) streambuf_pbackfail -@ stub -arch=win32 ?pbase@streambuf@@IBEPADXZ # char * __thiscall streambuf::pbase(void)const -@ stub -arch=win64 ?pbase@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?pbase@streambuf@@IBEPADXZ(ptr) streambuf_pbase +@ cdecl -arch=win64 ?pbase@streambuf@@IEBAPEADXZ(ptr) streambuf_pbase @ stub -arch=win32 ?pbump@streambuf@@IAEXH@Z # void __thiscall streambuf::pbump(int) @ stub -arch=win64 ?pbump@streambuf@@IEAAXH@Z @ stub -arch=win32 ?pcount@ostrstream@@QBEHXZ # int __thiscall ostrstream::pcount(void)const @@ -597,8 +597,8 @@ @ stub -arch=win64 ?pcount@strstream@@QEBAHXZ @ stub -arch=win32 ?peek@istream@@QAEHXZ # int __thiscall istream::peek(void) @ stub -arch=win64 ?peek@istream@@QEAAHXZ -@ stub -arch=win32 ?pptr@streambuf@@IBEPADXZ # char * __thiscall streambuf::pptr(void)const -@ stub -arch=win64 ?pptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?pptr@streambuf@@IBEPADXZ(ptr) streambuf_pptr +@ cdecl -arch=win64 ?pptr@streambuf@@IEBAPEADXZ(ptr) streambuf_pptr @ stub -arch=win32 ?precision@ios@@QAEHH@Z # int __thiscall ios::precision(int) @ stub -arch=win64 ?precision@ios@@QEAAHH@Z @ stub -arch=win32 ?precision@ios@@QBEHXZ # int __thiscall ios::precision(void)const diff --git a/dlls/msvcrt20/msvcrt20.spec b/dlls/msvcrt20/msvcrt20.spec index 195cdf1acb0..36dffbd8be8 100644 --- a/dlls/msvcrt20/msvcrt20.spec +++ b/dlls/msvcrt20/msvcrt20.spec @@ -400,13 +400,13 @@ @ stub -arch=win64 ?attach@ofstream@@QEAAXH@Z @ stub -arch=win32 ?bad@ios@@QBEHXZ @ stub -arch=win64 ?bad@ios@@QEBAHXZ -@ stub -arch=win32 ?base@streambuf@@IBEPADXZ -@ stub -arch=win64 ?base@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?base@streambuf@@IBEPADXZ(ptr) msvcirt.?base@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?base@streambuf@@IEBAPEADXZ(ptr) msvcirt.?base@streambuf@@IEBAPEADXZ # @ extern ?basefield@ios@@2JB # @ extern ?binary@filebuf@@2HB @ stub ?bitalloc@ios@@SAJXZ -@ stub -arch=win32 ?blen@streambuf@@IBEHXZ -@ stub -arch=win64 ?blen@streambuf@@IEBAHXZ +@ thiscall -arch=win32 ?blen@streambuf@@IBEHXZ(ptr) msvcirt.?blen@streambuf@@IBEHXZ +@ cdecl -arch=win64 ?blen@streambuf@@IEBAHXZ(ptr) msvcirt.?blen@streambuf@@IEBAHXZ @ stub ?cerr@@3Vostream_withassign@@A @ stub ?cin@@3Vistream_withassign@@A @ stub -arch=win32 ?clear@ios@@QAEXH@Z @@ -439,20 +439,20 @@ @ stub -arch=win64 ?doallocate@strstreambuf@@MEAAHXZ @ stub -arch=win32 ?eatwhite@istream@@QAEXXZ @ stub -arch=win64 ?eatwhite@istream@@QEAAXXZ -@ stub -arch=win32 ?eback@streambuf@@IBEPADXZ -@ stub -arch=win64 ?eback@streambuf@@IEBAPEADXZ -@ stub -arch=win32 ?ebuf@streambuf@@IBEPADXZ -@ stub -arch=win64 ?ebuf@streambuf@@IEBAPEADXZ -@ stub -arch=win32 ?egptr@streambuf@@IBEPADXZ -@ stub -arch=win64 ?egptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?eback@streambuf@@IBEPADXZ(ptr) msvcirt.?eback@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?eback@streambuf@@IEBAPEADXZ(ptr) msvcirt.?eback@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?ebuf@streambuf@@IBEPADXZ(ptr) msvcirt.?ebuf@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?ebuf@streambuf@@IEBAPEADXZ(ptr) msvcirt.?ebuf@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?egptr@streambuf@@IBEPADXZ(ptr) msvcirt.?egptr@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?egptr@streambuf@@IEBAPEADXZ(ptr) msvcirt.?egptr@streambuf@@IEBAPEADXZ @ cdecl -arch=win32 ?endl@@YAAAVostream@@AAV1@@Z(ptr) msvcirt.?endl@@YAAAVostream@@AAV1@@Z @ cdecl -arch=win64 ?endl@@YAAEAVostream@@AEAV1@@Z(ptr) msvcirt.?endl@@YAAEAVostream@@AEAV1@@Z @ cdecl -arch=win32 ?ends@@YAAAVostream@@AAV1@@Z(ptr) msvcirt.?ends@@YAAAVostream@@AAV1@@Z @ cdecl -arch=win64 ?ends@@YAAEAVostream@@AEAV1@@Z(ptr) msvcirt.?ends@@YAAEAVostream@@AEAV1@@Z @ stub -arch=win32 ?eof@ios@@QBEHXZ @ stub -arch=win64 ?eof@ios@@QEBAHXZ -@ stub -arch=win32 ?epptr@streambuf@@IBEPADXZ -@ stub -arch=win64 ?epptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?epptr@streambuf@@IBEPADXZ(ptr) msvcirt.?epptr@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?epptr@streambuf@@IEBAPEADXZ(ptr) msvcirt.?epptr@streambuf@@IEBAPEADXZ # @ extern ?fLockcInit@ios@@0HA @ stub -arch=win32 ?fail@ios@@QBEHXZ @ stub -arch=win64 ?fail@ios@@QEBAHXZ @@ -511,8 +511,8 @@ @ stub -arch=win64 ?getline@istream@@QEAAAEAV1@PEAEHD@Z @ stub -arch=win32 ?good@ios@@QBEHXZ @ stub -arch=win64 ?good@ios@@QEBAHXZ -@ stub -arch=win32 ?gptr@streambuf@@IBEPADXZ -@ stub -arch=win64 ?gptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?gptr@streambuf@@IBEPADXZ(ptr) msvcirt.?gptr@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?gptr@streambuf@@IEBAPEADXZ(ptr) msvcirt.?gptr@streambuf@@IEBAPEADXZ @ stub -arch=win32 ?hex@@YAAAVios@@AAV1@@Z @ stub -arch=win64 ?hex@@YAAEAVios@@AEAV1@@Z @ stub -arch=win32 ?ignore@istream@@QAEAAV1@HH@Z @@ -573,8 +573,8 @@ @ stub -arch=win64 ?pbackfail@stdiobuf@@UEAAHH@Z @ thiscall -arch=win32 ?pbackfail@streambuf@@UAEHH@Z(ptr long) msvcirt.?pbackfail@streambuf@@UAEHH@Z @ cdecl -arch=win64 ?pbackfail@streambuf@@UEAAHH@Z(ptr long) msvcirt.?pbackfail@streambuf@@UEAAHH@Z -@ stub -arch=win32 ?pbase@streambuf@@IBEPADXZ -@ stub -arch=win64 ?pbase@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?pbase@streambuf@@IBEPADXZ(ptr) msvcirt.?pbase@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?pbase@streambuf@@IEBAPEADXZ(ptr) msvcirt.?pbase@streambuf@@IEBAPEADXZ @ stub -arch=win32 ?pbump@streambuf@@IAEXH@Z @ stub -arch=win64 ?pbump@streambuf@@IEAAXH@Z @ stub -arch=win32 ?pcount@ostrstream@@QBEHXZ @@ -583,8 +583,8 @@ @ stub -arch=win64 ?pcount@strstream@@QEBAHXZ @ stub -arch=win32 ?peek@istream@@QAEHXZ @ stub -arch=win64 ?peek@istream@@QEAAHXZ -@ stub -arch=win32 ?pptr@streambuf@@IBEPADXZ -@ stub -arch=win64 ?pptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?pptr@streambuf@@IBEPADXZ(ptr) msvcirt.?pptr@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?pptr@streambuf@@IEBAPEADXZ(ptr) msvcirt.?pptr@streambuf@@IEBAPEADXZ @ stub -arch=win32 ?precision@ios@@QAEHH@Z @ stub -arch=win64 ?precision@ios@@QEAAHH@Z @ stub -arch=win32 ?precision@ios@@QBEHXZ diff --git a/dlls/msvcrt40/msvcrt40.spec b/dlls/msvcrt40/msvcrt40.spec index 0042f174abb..4ae2ff41d3e 100644 --- a/dlls/msvcrt40/msvcrt40.spec +++ b/dlls/msvcrt40/msvcrt40.spec @@ -463,15 +463,15 @@ @ stub -arch=win64 ?attach@ofstream@@QEAAXH@Z @ stub -arch=win32 ?bad@ios@@QBEHXZ @ stub -arch=win64 ?bad@ios@@QEBAHXZ -@ stub -arch=win32 ?base@streambuf@@IBEPADXZ -@ stub -arch=win64 ?base@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?base@streambuf@@IBEPADXZ(ptr) msvcirt.?base@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?base@streambuf@@IEBAPEADXZ(ptr) msvcirt.?base@streambuf@@IEBAPEADXZ # @ extern ?basefield@ios@@2JB @ thiscall -arch=i386 ?before@type_info@@QBEHABV1@@Z(ptr ptr) msvcrt.?before@type_info@@QBEHABV1@@Z @ cdecl -arch=win64 ?before@type_info@@QEBAHAEBV1@@Z(ptr ptr) msvcrt.?before@type_info@@QEBAHAEBV1@@Z # @ extern ?binary@filebuf@@2HB @ stub ?bitalloc@ios@@SAJXZ -@ stub -arch=win32 ?blen@streambuf@@IBEHXZ -@ stub -arch=win64 ?blen@streambuf@@IEBAHXZ +@ thiscall -arch=win32 ?blen@streambuf@@IBEHXZ(ptr) msvcirt.?blen@streambuf@@IBEHXZ +@ cdecl -arch=win64 ?blen@streambuf@@IEBAHXZ(ptr) msvcirt.?blen@streambuf@@IEBAHXZ @ stub ?cerr@@3Vostream_withassign@@A @ stub ?cin@@3Vistream_withassign@@A @ stub -arch=win32 ?clear@ios@@QAEXH@Z @@ -504,20 +504,20 @@ @ stub -arch=win64 ?doallocate@strstreambuf@@MEAAHXZ @ stub -arch=win32 ?eatwhite@istream@@QAEXXZ @ stub -arch=win64 ?eatwhite@istream@@QEAAXXZ -@ stub -arch=win32 ?eback@streambuf@@IBEPADXZ -@ stub -arch=win64 ?eback@streambuf@@IEBAPEADXZ -@ stub -arch=win32 ?ebuf@streambuf@@IBEPADXZ -@ stub -arch=win64 ?ebuf@streambuf@@IEBAPEADXZ -@ stub -arch=win32 ?egptr@streambuf@@IBEPADXZ -@ stub -arch=win64 ?egptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?eback@streambuf@@IBEPADXZ(ptr) msvcirt.?eback@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?eback@streambuf@@IEBAPEADXZ(ptr) msvcirt.?eback@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?ebuf@streambuf@@IBEPADXZ(ptr) msvcirt.?ebuf@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?ebuf@streambuf@@IEBAPEADXZ(ptr) msvcirt.?ebuf@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?egptr@streambuf@@IBEPADXZ(ptr) msvcirt.?egptr@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?egptr@streambuf@@IEBAPEADXZ(ptr) msvcirt.?egptr@streambuf@@IEBAPEADXZ @ cdecl -arch=win32 ?endl@@YAAAVostream@@AAV1@@Z(ptr) msvcirt.?endl@@YAAAVostream@@AAV1@@Z @ cdecl -arch=win64 ?endl@@YAAEAVostream@@AEAV1@@Z(ptr) msvcirt.?endl@@YAAEAVostream@@AEAV1@@Z @ cdecl -arch=win32 ?ends@@YAAAVostream@@AAV1@@Z(ptr) msvcirt.?ends@@YAAAVostream@@AAV1@@Z @ cdecl -arch=win64 ?ends@@YAAEAVostream@@AEAV1@@Z(ptr) msvcirt.?ends@@YAAEAVostream@@AEAV1@@Z @ stub -arch=win32 ?eof@ios@@QBEHXZ @ stub -arch=win64 ?eof@ios@@QEBAHXZ -@ stub -arch=win32 ?epptr@streambuf@@IBEPADXZ -@ stub -arch=win64 ?epptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?epptr@streambuf@@IBEPADXZ(ptr) msvcirt.?epptr@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?epptr@streambuf@@IEBAPEADXZ(ptr) msvcirt.?epptr@streambuf@@IEBAPEADXZ # @ extern ?fLockcInit@ios@@0HA @ stub -arch=win32 ?fail@ios@@QBEHXZ @ stub -arch=win64 ?fail@ios@@QEBAHXZ @@ -578,8 +578,8 @@ @ stub -arch=win64 ?getline@istream@@QEAAAEAV1@PEAEHD@Z @ stub -arch=win32 ?good@ios@@QBEHXZ @ stub -arch=win64 ?good@ios@@QEBAHXZ -@ stub -arch=win32 ?gptr@streambuf@@IBEPADXZ -@ stub -arch=win64 ?gptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?gptr@streambuf@@IBEPADXZ(ptr) msvcirt.?gptr@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?gptr@streambuf@@IEBAPEADXZ(ptr) msvcirt.?gptr@streambuf@@IEBAPEADXZ @ stub -arch=win32 ?hex@@YAAAVios@@AAV1@@Z @ stub -arch=win64 ?hex@@YAAEAVios@@AEAV1@@Z @ stub -arch=win32 ?ignore@istream@@QAEAAV1@HH@Z @@ -642,8 +642,8 @@ @ stub -arch=win64 ?pbackfail@stdiobuf@@UEAAHH@Z @ thiscall -arch=win32 ?pbackfail@streambuf@@UAEHH@Z(ptr long) msvcirt.?pbackfail@streambuf@@UAEHH@Z @ cdecl -arch=win64 ?pbackfail@streambuf@@UEAAHH@Z(ptr long) msvcirt.?pbackfail@streambuf@@UEAAHH@Z -@ stub -arch=win32 ?pbase@streambuf@@IBEPADXZ -@ stub -arch=win64 ?pbase@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?pbase@streambuf@@IBEPADXZ(ptr) msvcirt.?pbase@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?pbase@streambuf@@IEBAPEADXZ(ptr) msvcirt.?pbase@streambuf@@IEBAPEADXZ @ stub -arch=win32 ?pbump@streambuf@@IAEXH@Z @ stub -arch=win64 ?pbump@streambuf@@IEAAXH@Z @ stub -arch=win32 ?pcount@ostrstream@@QBEHXZ @@ -652,8 +652,8 @@ @ stub -arch=win64 ?pcount@strstream@@QEBAHXZ @ stub -arch=win32 ?peek@istream@@QAEHXZ @ stub -arch=win64 ?peek@istream@@QEAAHXZ -@ stub -arch=win32 ?pptr@streambuf@@IBEPADXZ -@ stub -arch=win64 ?pptr@streambuf@@IEBAPEADXZ +@ thiscall -arch=win32 ?pptr@streambuf@@IBEPADXZ(ptr) msvcirt.?pptr@streambuf@@IBEPADXZ +@ cdecl -arch=win64 ?pptr@streambuf@@IEBAPEADXZ(ptr) msvcirt.?pptr@streambuf@@IEBAPEADXZ @ stub -arch=win32 ?precision@ios@@QAEHH@Z @ stub -arch=win64 ?precision@ios@@QEAAHH@Z @ stub -arch=win32 ?precision@ios@@QBEHXZ