[2/4] msvcirt: Add implementation of streambuf buffer getters

Iván Matellanes matellanesivan at gmail.com
Sun Jun 7 13:54:58 CDT 2015


---
 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 b320a82..7414e71 100644
--- a/dlls/msvcirt/msvcirt.c
+++ b/dlls/msvcirt/msvcirt.c
@@ -190,6 +190,24 @@ int __thiscall streambuf_allocate(streambuf *this)
     return CALL_VTBL_FUNC(this, 40, int, (streambuf*), (this));
 }
 
+/* ?base at streambuf@@IBEPADXZ */
+/* ?base at streambuf@@IEBAPEADXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_base, 4)
+char* __thiscall streambuf_base(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->base;
+}
+
+/* ?blen at streambuf@@IBEHXZ */
+/* ?blen at streambuf@@IEBAHXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_blen, 4)
+int __thiscall streambuf_blen(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->ebuf - this->base;
+}
+
 /* ?doallocate at streambuf@@MAEHXZ */
 /* ?doallocate at streambuf@@MEAAHXZ */
 DEFINE_THISCALL_WRAPPER(streambuf_doallocate, 4)
@@ -206,6 +224,51 @@ int __thiscall streambuf_doallocate(streambuf *this)
     return 1;
 }
 
+/* ?eback at streambuf@@IBEPADXZ */
+/* ?eback at streambuf@@IEBAPEADXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_eback, 4)
+char* __thiscall streambuf_eback(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->eback;
+}
+
+/* ?ebuf at streambuf@@IBEPADXZ */
+/* ?ebuf at streambuf@@IEBAPEADXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_ebuf, 4)
+char* __thiscall streambuf_ebuf(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->ebuf;
+}
+
+/* ?egptr at streambuf@@IBEPADXZ */
+/* ?egptr at streambuf@@IEBAPEADXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_egptr, 4)
+char* __thiscall streambuf_egptr(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->egptr;
+}
+
+/* ?epptr at streambuf@@IBEPADXZ */
+/* ?epptr at streambuf@@IEBAPEADXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_epptr, 4)
+char* __thiscall streambuf_epptr(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->epptr;
+}
+
+/* ?gptr at streambuf@@IBEPADXZ */
+/* ?gptr at streambuf@@IEBAPEADXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_gptr, 4)
+char* __thiscall streambuf_gptr(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->gptr;
+}
+
 /* Unexported */
 DEFINE_THISCALL_WRAPPER(streambuf_overflow, 8)
 int __thiscall streambuf_overflow(streambuf *this, int c)
@@ -222,6 +285,24 @@ int __thiscall streambuf_pbackfail(streambuf *this, int c)
     return 0;
 }
 
+/* ?pbase at streambuf@@IBEPADXZ */
+/* ?pbase at streambuf@@IEBAPEADXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_pbase, 4)
+char* __thiscall streambuf_pbase(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->pbase;
+}
+
+/* ?pptr at streambuf@@IBEPADXZ */
+/* ?pptr at streambuf@@IEBAPEADXZ */
+DEFINE_THISCALL_WRAPPER(streambuf_pptr, 4)
+char* __thiscall streambuf_pptr(const streambuf *this)
+{
+    TRACE("(%p)\n", this);
+    return this->pptr;
+}
+
 /* ?seekoff at streambuf@@UAEJJW4seek_dir at ios@@H at Z */
 /* ?seekoff at streambuf@@UEAAJJW4seek_dir at ios@@H at Z */
 DEFINE_THISCALL_WRAPPER(streambuf_seekoff, 16)
diff --git a/dlls/msvcirt/msvcirt.spec b/dlls/msvcirt/msvcirt.spec
index f987dfd..9ab9adf 100644
--- a/dlls/msvcirt/msvcirt.spec
+++ b/dlls/msvcirt/msvcirt.spec
@@ -412,13 +412,13 @@
 @ stub -arch=win64 ?attach at ofstream@@QEAAXH at Z
 @ stub -arch=win32 ?bad at ios@@QBEHXZ  # int __thiscall ios::bad(void)const 
 @ stub -arch=win64 ?bad at ios@@QEBAHXZ
-@ stub -arch=win32 ?base at streambuf@@IBEPADXZ  # char * __thiscall streambuf::base(void)const 
-@ stub -arch=win64 ?base at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?base at streambuf@@IBEPADXZ(ptr) streambuf_base
+@ cdecl -arch=win64 ?base at streambuf@@IEBAPEADXZ(ptr) streambuf_base
 # @ extern ?basefield at ios@@2JB  # static long const ios::basefield
 # @ extern ?binary at filebuf@@2HB  # static int const filebuf::binary
 @ stub ?bitalloc at ios@@SAJXZ  # static long __cdecl ios::bitalloc(void)
-@ stub -arch=win32 ?blen at streambuf@@IBEHXZ  # int __thiscall streambuf::blen(void)const 
-@ stub -arch=win64 ?blen at streambuf@@IEBAHXZ
+@ thiscall -arch=win32 ?blen at streambuf@@IBEHXZ(ptr) streambuf_blen
+@ cdecl -arch=win64 ?blen at 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 at ios@@QAEXH at Z  # void __thiscall ios::clear(int)
@@ -451,20 +451,20 @@
 @ stub -arch=win64 ?doallocate at strstreambuf@@MEAAHXZ
 @ stub -arch=win32 ?eatwhite at istream@@QAEXXZ  # void __thiscall istream::eatwhite(void)
 @ stub -arch=win64 ?eatwhite at istream@@QEAAXXZ
-@ stub -arch=win32 ?eback at streambuf@@IBEPADXZ  # char * __thiscall streambuf::eback(void)const 
-@ stub -arch=win64 ?eback at streambuf@@IEBAPEADXZ
-@ stub -arch=win32 ?ebuf at streambuf@@IBEPADXZ  # char * __thiscall streambuf::ebuf(void)const 
-@ stub -arch=win64 ?ebuf at streambuf@@IEBAPEADXZ
-@ stub -arch=win32 ?egptr at streambuf@@IBEPADXZ  # char * __thiscall streambuf::egptr(void)const 
-@ stub -arch=win64 ?egptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?eback at streambuf@@IBEPADXZ(ptr) streambuf_eback
+@ cdecl -arch=win64 ?eback at streambuf@@IEBAPEADXZ(ptr) streambuf_eback
+@ thiscall -arch=win32 ?ebuf at streambuf@@IBEPADXZ(ptr) streambuf_ebuf
+@ cdecl -arch=win64 ?ebuf at streambuf@@IEBAPEADXZ(ptr) streambuf_ebuf
+@ thiscall -arch=win32 ?egptr at streambuf@@IBEPADXZ(ptr) streambuf_egptr
+@ cdecl -arch=win64 ?egptr at 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 at ios@@QBEHXZ  # int __thiscall ios::eof(void)const 
 @ stub -arch=win64 ?eof at ios@@QEBAHXZ
-@ stub -arch=win32 ?epptr at streambuf@@IBEPADXZ  # char * __thiscall streambuf::epptr(void)const 
-@ stub -arch=win64 ?epptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?epptr at streambuf@@IBEPADXZ(ptr) streambuf_epptr
+@ cdecl -arch=win64 ?epptr at streambuf@@IEBAPEADXZ(ptr) streambuf_epptr
 # @ extern ?fLockcInit at ios@@0HA  # static int ios::fLockcInit
 @ stub -arch=win32 ?fail at ios@@QBEHXZ  # int __thiscall ios::fail(void)const 
 @ stub -arch=win64 ?fail at ios@@QEBAHXZ
@@ -525,8 +525,8 @@
 @ stub -arch=win64 ?getline at istream@@QEAAAEAV1 at PEAEHD@Z
 @ stub -arch=win32 ?good at ios@@QBEHXZ  # int __thiscall ios::good(void)const 
 @ stub -arch=win64 ?good at ios@@QEBAHXZ
-@ stub -arch=win32 ?gptr at streambuf@@IBEPADXZ  # char * __thiscall streambuf::gptr(void)const 
-@ stub -arch=win64 ?gptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?gptr at streambuf@@IBEPADXZ(ptr) streambuf_gptr
+@ cdecl -arch=win64 ?gptr at 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 at istream@@QAEAAV1 at HH@Z  # class istream & __thiscall istream::ignore(int,int)
@@ -587,8 +587,8 @@
 @ stub -arch=win64 ?pbackfail at stdiobuf@@UEAAHH at Z
 @ thiscall -arch=win32 ?pbackfail at streambuf@@UAEHH at Z(ptr long) streambuf_pbackfail
 @ cdecl -arch=win64 ?pbackfail at streambuf@@UEAAHH at Z(ptr long) streambuf_pbackfail
-@ stub -arch=win32 ?pbase at streambuf@@IBEPADXZ  # char * __thiscall streambuf::pbase(void)const 
-@ stub -arch=win64 ?pbase at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?pbase at streambuf@@IBEPADXZ(ptr) streambuf_pbase
+@ cdecl -arch=win64 ?pbase at streambuf@@IEBAPEADXZ(ptr) streambuf_pbase
 @ stub -arch=win32 ?pbump at streambuf@@IAEXH at Z  # void __thiscall streambuf::pbump(int)
 @ stub -arch=win64 ?pbump at streambuf@@IEAAXH at Z
 @ stub -arch=win32 ?pcount at ostrstream@@QBEHXZ  # int __thiscall ostrstream::pcount(void)const 
@@ -597,8 +597,8 @@
 @ stub -arch=win64 ?pcount at strstream@@QEBAHXZ
 @ stub -arch=win32 ?peek at istream@@QAEHXZ  # int __thiscall istream::peek(void)
 @ stub -arch=win64 ?peek at istream@@QEAAHXZ
-@ stub -arch=win32 ?pptr at streambuf@@IBEPADXZ  # char * __thiscall streambuf::pptr(void)const 
-@ stub -arch=win64 ?pptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?pptr at streambuf@@IBEPADXZ(ptr) streambuf_pptr
+@ cdecl -arch=win64 ?pptr at streambuf@@IEBAPEADXZ(ptr) streambuf_pptr
 @ stub -arch=win32 ?precision at ios@@QAEHH at Z  # int __thiscall ios::precision(int)
 @ stub -arch=win64 ?precision at ios@@QEAAHH at Z
 @ stub -arch=win32 ?precision at ios@@QBEHXZ  # int __thiscall ios::precision(void)const 
diff --git a/dlls/msvcrt20/msvcrt20.spec b/dlls/msvcrt20/msvcrt20.spec
index 195cdf1..36dffbd 100644
--- a/dlls/msvcrt20/msvcrt20.spec
+++ b/dlls/msvcrt20/msvcrt20.spec
@@ -400,13 +400,13 @@
 @ stub -arch=win64 ?attach at ofstream@@QEAAXH at Z
 @ stub -arch=win32 ?bad at ios@@QBEHXZ
 @ stub -arch=win64 ?bad at ios@@QEBAHXZ
-@ stub -arch=win32 ?base at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?base at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?base at streambuf@@IBEPADXZ(ptr) msvcirt.?base at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?base at streambuf@@IEBAPEADXZ(ptr) msvcirt.?base at streambuf@@IEBAPEADXZ
 # @ extern ?basefield at ios@@2JB
 # @ extern ?binary at filebuf@@2HB
 @ stub ?bitalloc at ios@@SAJXZ
-@ stub -arch=win32 ?blen at streambuf@@IBEHXZ
-@ stub -arch=win64 ?blen at streambuf@@IEBAHXZ
+@ thiscall -arch=win32 ?blen at streambuf@@IBEHXZ(ptr) msvcirt.?blen at streambuf@@IBEHXZ
+@ cdecl -arch=win64 ?blen at streambuf@@IEBAHXZ(ptr) msvcirt.?blen at streambuf@@IEBAHXZ
 @ stub ?cerr@@3Vostream_withassign@@A
 @ stub ?cin@@3Vistream_withassign@@A
 @ stub -arch=win32 ?clear at ios@@QAEXH at Z
@@ -439,20 +439,20 @@
 @ stub -arch=win64 ?doallocate at strstreambuf@@MEAAHXZ
 @ stub -arch=win32 ?eatwhite at istream@@QAEXXZ
 @ stub -arch=win64 ?eatwhite at istream@@QEAAXXZ
-@ stub -arch=win32 ?eback at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?eback at streambuf@@IEBAPEADXZ
-@ stub -arch=win32 ?ebuf at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?ebuf at streambuf@@IEBAPEADXZ
-@ stub -arch=win32 ?egptr at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?egptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?eback at streambuf@@IBEPADXZ(ptr) msvcirt.?eback at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?eback at streambuf@@IEBAPEADXZ(ptr) msvcirt.?eback at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?ebuf at streambuf@@IBEPADXZ(ptr) msvcirt.?ebuf at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?ebuf at streambuf@@IEBAPEADXZ(ptr) msvcirt.?ebuf at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?egptr at streambuf@@IBEPADXZ(ptr) msvcirt.?egptr at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?egptr at streambuf@@IEBAPEADXZ(ptr) msvcirt.?egptr at 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 at ios@@QBEHXZ
 @ stub -arch=win64 ?eof at ios@@QEBAHXZ
-@ stub -arch=win32 ?epptr at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?epptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?epptr at streambuf@@IBEPADXZ(ptr) msvcirt.?epptr at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?epptr at streambuf@@IEBAPEADXZ(ptr) msvcirt.?epptr at streambuf@@IEBAPEADXZ
 # @ extern ?fLockcInit at ios@@0HA
 @ stub -arch=win32 ?fail at ios@@QBEHXZ
 @ stub -arch=win64 ?fail at ios@@QEBAHXZ
@@ -511,8 +511,8 @@
 @ stub -arch=win64 ?getline at istream@@QEAAAEAV1 at PEAEHD@Z
 @ stub -arch=win32 ?good at ios@@QBEHXZ
 @ stub -arch=win64 ?good at ios@@QEBAHXZ
-@ stub -arch=win32 ?gptr at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?gptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?gptr at streambuf@@IBEPADXZ(ptr) msvcirt.?gptr at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?gptr at streambuf@@IEBAPEADXZ(ptr) msvcirt.?gptr at streambuf@@IEBAPEADXZ
 @ stub -arch=win32 ?hex@@YAAAVios@@AAV1@@Z
 @ stub -arch=win64 ?hex@@YAAEAVios@@AEAV1@@Z
 @ stub -arch=win32 ?ignore at istream@@QAEAAV1 at HH@Z
@@ -573,8 +573,8 @@
 @ stub -arch=win64 ?pbackfail at stdiobuf@@UEAAHH at Z
 @ thiscall -arch=win32 ?pbackfail at streambuf@@UAEHH at Z(ptr long) msvcirt.?pbackfail at streambuf@@UAEHH at Z
 @ cdecl -arch=win64 ?pbackfail at streambuf@@UEAAHH at Z(ptr long) msvcirt.?pbackfail at streambuf@@UEAAHH at Z
-@ stub -arch=win32 ?pbase at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?pbase at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?pbase at streambuf@@IBEPADXZ(ptr) msvcirt.?pbase at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?pbase at streambuf@@IEBAPEADXZ(ptr) msvcirt.?pbase at streambuf@@IEBAPEADXZ
 @ stub -arch=win32 ?pbump at streambuf@@IAEXH at Z
 @ stub -arch=win64 ?pbump at streambuf@@IEAAXH at Z
 @ stub -arch=win32 ?pcount at ostrstream@@QBEHXZ
@@ -583,8 +583,8 @@
 @ stub -arch=win64 ?pcount at strstream@@QEBAHXZ
 @ stub -arch=win32 ?peek at istream@@QAEHXZ
 @ stub -arch=win64 ?peek at istream@@QEAAHXZ
-@ stub -arch=win32 ?pptr at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?pptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?pptr at streambuf@@IBEPADXZ(ptr) msvcirt.?pptr at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?pptr at streambuf@@IEBAPEADXZ(ptr) msvcirt.?pptr at streambuf@@IEBAPEADXZ
 @ stub -arch=win32 ?precision at ios@@QAEHH at Z
 @ stub -arch=win64 ?precision at ios@@QEAAHH at Z
 @ stub -arch=win32 ?precision at ios@@QBEHXZ
diff --git a/dlls/msvcrt40/msvcrt40.spec b/dlls/msvcrt40/msvcrt40.spec
index 0042f17..4ae2ff4 100644
--- a/dlls/msvcrt40/msvcrt40.spec
+++ b/dlls/msvcrt40/msvcrt40.spec
@@ -463,15 +463,15 @@
 @ stub -arch=win64 ?attach at ofstream@@QEAAXH at Z
 @ stub -arch=win32 ?bad at ios@@QBEHXZ
 @ stub -arch=win64 ?bad at ios@@QEBAHXZ
-@ stub -arch=win32 ?base at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?base at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?base at streambuf@@IBEPADXZ(ptr) msvcirt.?base at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?base at streambuf@@IEBAPEADXZ(ptr) msvcirt.?base at streambuf@@IEBAPEADXZ
 # @ extern ?basefield at ios@@2JB
 @ thiscall -arch=i386 ?before at type_info@@QBEHABV1@@Z(ptr ptr) msvcrt.?before at type_info@@QBEHABV1@@Z
 @ cdecl -arch=win64 ?before at type_info@@QEBAHAEBV1@@Z(ptr ptr) msvcrt.?before at type_info@@QEBAHAEBV1@@Z
 # @ extern ?binary at filebuf@@2HB
 @ stub ?bitalloc at ios@@SAJXZ
-@ stub -arch=win32 ?blen at streambuf@@IBEHXZ
-@ stub -arch=win64 ?blen at streambuf@@IEBAHXZ
+@ thiscall -arch=win32 ?blen at streambuf@@IBEHXZ(ptr) msvcirt.?blen at streambuf@@IBEHXZ
+@ cdecl -arch=win64 ?blen at streambuf@@IEBAHXZ(ptr) msvcirt.?blen at streambuf@@IEBAHXZ
 @ stub ?cerr@@3Vostream_withassign@@A
 @ stub ?cin@@3Vistream_withassign@@A
 @ stub -arch=win32 ?clear at ios@@QAEXH at Z
@@ -504,20 +504,20 @@
 @ stub -arch=win64 ?doallocate at strstreambuf@@MEAAHXZ
 @ stub -arch=win32 ?eatwhite at istream@@QAEXXZ
 @ stub -arch=win64 ?eatwhite at istream@@QEAAXXZ
-@ stub -arch=win32 ?eback at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?eback at streambuf@@IEBAPEADXZ
-@ stub -arch=win32 ?ebuf at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?ebuf at streambuf@@IEBAPEADXZ
-@ stub -arch=win32 ?egptr at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?egptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?eback at streambuf@@IBEPADXZ(ptr) msvcirt.?eback at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?eback at streambuf@@IEBAPEADXZ(ptr) msvcirt.?eback at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?ebuf at streambuf@@IBEPADXZ(ptr) msvcirt.?ebuf at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?ebuf at streambuf@@IEBAPEADXZ(ptr) msvcirt.?ebuf at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?egptr at streambuf@@IBEPADXZ(ptr) msvcirt.?egptr at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?egptr at streambuf@@IEBAPEADXZ(ptr) msvcirt.?egptr at 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 at ios@@QBEHXZ
 @ stub -arch=win64 ?eof at ios@@QEBAHXZ
-@ stub -arch=win32 ?epptr at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?epptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?epptr at streambuf@@IBEPADXZ(ptr) msvcirt.?epptr at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?epptr at streambuf@@IEBAPEADXZ(ptr) msvcirt.?epptr at streambuf@@IEBAPEADXZ
 # @ extern ?fLockcInit at ios@@0HA
 @ stub -arch=win32 ?fail at ios@@QBEHXZ
 @ stub -arch=win64 ?fail at ios@@QEBAHXZ
@@ -578,8 +578,8 @@
 @ stub -arch=win64 ?getline at istream@@QEAAAEAV1 at PEAEHD@Z
 @ stub -arch=win32 ?good at ios@@QBEHXZ
 @ stub -arch=win64 ?good at ios@@QEBAHXZ
-@ stub -arch=win32 ?gptr at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?gptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?gptr at streambuf@@IBEPADXZ(ptr) msvcirt.?gptr at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?gptr at streambuf@@IEBAPEADXZ(ptr) msvcirt.?gptr at streambuf@@IEBAPEADXZ
 @ stub -arch=win32 ?hex@@YAAAVios@@AAV1@@Z
 @ stub -arch=win64 ?hex@@YAAEAVios@@AEAV1@@Z
 @ stub -arch=win32 ?ignore at istream@@QAEAAV1 at HH@Z
@@ -642,8 +642,8 @@
 @ stub -arch=win64 ?pbackfail at stdiobuf@@UEAAHH at Z
 @ thiscall -arch=win32 ?pbackfail at streambuf@@UAEHH at Z(ptr long) msvcirt.?pbackfail at streambuf@@UAEHH at Z
 @ cdecl -arch=win64 ?pbackfail at streambuf@@UEAAHH at Z(ptr long) msvcirt.?pbackfail at streambuf@@UEAAHH at Z
-@ stub -arch=win32 ?pbase at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?pbase at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?pbase at streambuf@@IBEPADXZ(ptr) msvcirt.?pbase at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?pbase at streambuf@@IEBAPEADXZ(ptr) msvcirt.?pbase at streambuf@@IEBAPEADXZ
 @ stub -arch=win32 ?pbump at streambuf@@IAEXH at Z
 @ stub -arch=win64 ?pbump at streambuf@@IEAAXH at Z
 @ stub -arch=win32 ?pcount at ostrstream@@QBEHXZ
@@ -652,8 +652,8 @@
 @ stub -arch=win64 ?pcount at strstream@@QEBAHXZ
 @ stub -arch=win32 ?peek at istream@@QAEHXZ
 @ stub -arch=win64 ?peek at istream@@QEAAHXZ
-@ stub -arch=win32 ?pptr at streambuf@@IBEPADXZ
-@ stub -arch=win64 ?pptr at streambuf@@IEBAPEADXZ
+@ thiscall -arch=win32 ?pptr at streambuf@@IBEPADXZ(ptr) msvcirt.?pptr at streambuf@@IBEPADXZ
+@ cdecl -arch=win64 ?pptr at streambuf@@IEBAPEADXZ(ptr) msvcirt.?pptr at streambuf@@IEBAPEADXZ
 @ stub -arch=win32 ?precision at ios@@QAEHH at Z
 @ stub -arch=win64 ?precision at ios@@QEAAHH at Z
 @ stub -arch=win32 ?precision at ios@@QBEHXZ
-- 
2.1.4




More information about the wine-patches mailing list