Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
9f9a4a18
Commit
9f9a4a18
authored
Jun 12, 2012
by
Piotr Caban
Committed by
Alexandre Julliard
Jun 12, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msvcp90: Added basic_filebuf<char> implementation.
parent
65db238d
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
653 additions
and
68 deletions
+653
-68
ios.c
dlls/msvcp90/ios.c
+575
-1
locale.c
dlls/msvcp90/locale.c
+1
-16
msvcp90.h
dlls/msvcp90/msvcp90.h
+26
-0
msvcp90.spec
dlls/msvcp90/msvcp90.spec
+51
-51
No files found.
dlls/msvcp90/ios.c
View file @
9f9a4a18
...
...
@@ -21,6 +21,7 @@
#include <stdarg.h>
#include <stdio.h>
#include <limits.h>
#include <share.h>
#include "msvcp90.h"
#include "windef.h"
...
...
@@ -69,7 +70,7 @@ typedef enum {
OPENMODE_trunc
=
0x10
,
OPENMODE__Nocreate
=
0x40
,
OPENMODE__Noreplace
=
0x80
,
OPENMODE_bin
ra
y
=
0x20
,
OPENMODE_bin
ar
y
=
0x20
,
OPENMODE_mask
=
0xff
}
IOSB_openmode
;
...
...
@@ -166,6 +167,22 @@ typedef struct {
locale
*
loc
;
}
basic_streambuf_wchar
;
typedef
enum
{
INITFL_new
=
0
,
INITFL_open
=
1
,
INITFL_close
=
2
}
basic_filebuf__Initfl
;
typedef
struct
{
basic_streambuf_char
base
;
codecvt_char
*
cvt
;
char
putback
;
MSVCP_bool
wrotesome
;
int
state
;
MSVCP_bool
close
;
FILE
*
file
;
}
basic_filebuf_char
;
typedef
struct
{
ios_base
base
;
basic_streambuf_char
*
strbuf
;
...
...
@@ -225,6 +242,9 @@ extern const vtable_ptr MSVCP_basic_streambuf_wchar_vtable;
/* ??_7?$basic_streambuf@GU?$char_traits@G@std@@@std@@6B@ */
extern
const
vtable_ptr
MSVCP_basic_streambuf_short_vtable
;
/* ??_7?$basic_filebuf@DU?$char_traits@D@std@@@std@@6B@ */
extern
const
vtable_ptr
MSVCP_basic_filebuf_char_vtable
;
/* ??_8?$basic_ostream@DU?$char_traits@D@std@@@std@@7B@ */
const
int
basic_ostream_char_vbtable
[]
=
{
0
,
sizeof
(
basic_ostream_char
)};
/* ??_7?$basic_ostream@DU?$char_traits@D@std@@@std@@6B@ */
...
...
@@ -249,6 +269,8 @@ DEFINE_RTTI_DATA(basic_streambuf_wchar, 0, 0, NULL, NULL, NULL,
".?AV?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@"
);
DEFINE_RTTI_DATA
(
basic_streambuf_short
,
0
,
0
,
NULL
,
NULL
,
NULL
,
".?AV?$basic_streambuf@GU?$char_traits@G@std@@@std@@"
);
DEFINE_RTTI_DATA
(
basic_filebuf_char
,
0
,
1
,
&
basic_streambuf_char_rtti_base_descriptor
,
NULL
,
NULL
,
".?AV?$basic_filebuf@DU?$char_traits@D@std@@@std@@"
);
DEFINE_RTTI_DATA
(
basic_ostream_char
,
sizeof
(
basic_ostream_char
),
3
,
&
basic_ios_char_rtti_base_descriptor
,
&
ios_base_rtti_base_descriptor
,
&
iosb_rtti_base_descriptor
,
".?AV?$basic_ostream@DU?$char_traits@D@std@@@std@@"
);
...
...
@@ -306,6 +328,20 @@ void __asm_dummy_vtables(void) {
VTABLE_ADD_FUNC
(
basic_streambuf_wchar_setbuf
)
VTABLE_ADD_FUNC
(
basic_streambuf_wchar_sync
)
VTABLE_ADD_FUNC
(
basic_streambuf_wchar_imbue
));
__ASM_VTABLE
(
basic_filebuf_char
,
VTABLE_ADD_FUNC
(
basic_filebuf_char_overflow
)
VTABLE_ADD_FUNC
(
basic_filebuf_char_pbackfail
)
VTABLE_ADD_FUNC
(
basic_streambuf_char_showmanyc
)
VTABLE_ADD_FUNC
(
basic_filebuf_char_underflow
)
VTABLE_ADD_FUNC
(
basic_filebuf_char_uflow
)
VTABLE_ADD_FUNC
(
basic_streambuf_char_xsgetn
)
VTABLE_ADD_FUNC
(
basic_streambuf_char__Xsgetn_s
)
VTABLE_ADD_FUNC
(
basic_streambuf_char_xsputn
)
VTABLE_ADD_FUNC
(
basic_filebuf_char_seekoff
)
VTABLE_ADD_FUNC
(
basic_filebuf_char_seekpos
)
VTABLE_ADD_FUNC
(
basic_filebuf_char_setbuf
)
VTABLE_ADD_FUNC
(
basic_filebuf_char_sync
)
VTABLE_ADD_FUNC
(
basic_filebuf_char_imbue
));
__ASM_VTABLE
(
basic_ostream_char
,
""
);
__ASM_VTABLE
(
basic_istream_char
,
""
);
#ifndef __GNUC__
...
...
@@ -1813,6 +1849,544 @@ streamsize __thiscall basic_streambuf_wchar_sputn(basic_streambuf_wchar *this, c
return
call_basic_streambuf_wchar_xsputn
(
this
,
ptr
,
count
);
}
/* ?_Stinit@?1??_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@23@@Z@4HA */
/* ?_Stinit@?1??_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAU_iobuf@@W4_Initfl@23@@Z@4HA */
int
basic_filebuf_char__Init__Stinit
=
0
;
/* ?_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@12@@Z */
/* ?_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAU_iobuf@@W4_Initfl@12@@Z */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char__Init
,
12
)
void
__thiscall
basic_filebuf_char__Init
(
basic_filebuf_char
*
this
,
FILE
*
file
,
basic_filebuf__Initfl
which
)
{
TRACE
(
"(%p %p %d)
\n
"
,
this
,
file
,
which
);
this
->
cvt
=
NULL
;
this
->
wrotesome
=
FALSE
;
this
->
state
=
basic_filebuf_char__Init__Stinit
;
this
->
close
=
(
which
==
INITFL_open
);
this
->
file
=
file
;
basic_streambuf_char__Init_empty
(
&
this
->
base
);
if
(
file
)
basic_streambuf_char__Init
(
&
this
->
base
,
&
file
->
_base
,
&
file
->
_ptr
,
&
file
->
_cnt
,
&
file
->
_base
,
&
file
->
_ptr
,
&
file
->
_cnt
);
}
/* ?_Initcvt@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAV?$codecvt@DDH@2@@Z */
/* ?_Initcvt@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAV?$codecvt@DDH@2@@Z */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char__Initcvt
,
8
)
void
__thiscall
basic_filebuf_char__Initcvt
(
basic_filebuf_char
*
this
,
codecvt_char
*
cvt
)
{
TRACE
(
"(%p %p)
\n
"
,
this
,
cvt
);
if
(
codecvt_base_always_noconv
(
&
cvt
->
base
))
{
this
->
cvt
=
NULL
;
}
else
{
basic_streambuf_char__Init_empty
(
&
this
->
base
);
this
->
cvt
=
cvt
;
}
}
/* ?_Endwrite@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAE_NXZ */
/* ?_Endwrite@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAA_NXZ */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char__Endwrite
,
4
)
MSVCP_bool
__thiscall
basic_filebuf_char__Endwrite
(
basic_filebuf_char
*
this
)
{
TRACE
(
"(%p)
\n
"
,
this
);
if
(
!
this
->
wrotesome
||
!
this
->
cvt
)
return
TRUE
;
if
(
call_basic_streambuf_char_overflow
(
&
this
->
base
,
EOF
)
==
EOF
)
return
FALSE
;
while
(
1
)
{
/* TODO: check if we need a dynamic buffer here */
char
buf
[
128
];
char
*
next
;
int
ret
;
ret
=
codecvt_char_unshift
(
this
->
cvt
,
&
this
->
state
,
buf
,
buf
+
sizeof
(
buf
),
&
next
);
switch
(
ret
)
{
case
CODECVT_ok
:
this
->
wrotesome
=
FALSE
;
/* fall through */
case
CODECVT_partial
:
if
(
!
fwrite
(
buf
,
next
-
buf
,
1
,
this
->
file
))
return
FALSE
;
if
(
this
->
wrotesome
)
break
;
/* fall through */
case
CODECVT_noconv
:
if
(
call_basic_streambuf_char_overflow
(
&
this
->
base
,
EOF
)
==
EOF
)
return
FALSE
;
return
TRUE
;
default
:
return
FALSE
;
}
}
}
/* ?close@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@XZ */
/* ?close@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@XZ */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_close
,
4
)
basic_filebuf_char
*
__thiscall
basic_filebuf_char_close
(
basic_filebuf_char
*
this
)
{
basic_filebuf_char
*
ret
=
this
;
TRACE
(
"(%p)
\n
"
,
this
);
if
(
!
this
->
file
)
return
NULL
;
/* TODO: handle exceptions */
if
(
!
basic_filebuf_char__Endwrite
(
this
))
ret
=
NULL
;
if
(
!
fclose
(
this
->
file
))
ret
=
NULL
;
basic_filebuf_char__Init
(
this
,
NULL
,
INITFL_close
);
return
ret
;
}
/* ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAE@PAU_iobuf@@@Z */
/* ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAA@PEAU_iobuf@@@Z */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_ctor_file
,
8
)
basic_filebuf_char
*
__thiscall
basic_filebuf_char_ctor_file
(
basic_filebuf_char
*
this
,
FILE
*
file
)
{
TRACE
(
"(%p %p)
\n
"
,
this
,
file
);
basic_streambuf_char_ctor
(
&
this
->
base
);
this
->
base
.
vtable
=
&
MSVCP_basic_filebuf_char_vtable
;
basic_filebuf_char__Init
(
this
,
file
,
INITFL_new
);
return
this
;
}
/* ??_F?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEXXZ */
/* ??_F?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_ctor
,
4
)
basic_filebuf_char
*
__thiscall
basic_filebuf_char_ctor
(
basic_filebuf_char
*
this
)
{
return
basic_filebuf_char_ctor_file
(
this
,
NULL
);
}
/* ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAE@W4_Uninitialized@1@@Z */
/* ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAA@W4_Uninitialized@1@@Z */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_ctor_uninitialized
,
8
)
basic_filebuf_char
*
__thiscall
basic_filebuf_char_ctor_uninitialized
(
basic_filebuf_char
*
this
,
int
uninitialized
)
{
TRACE
(
"(%p %d)
\n
"
,
this
,
uninitialized
);
basic_streambuf_char_ctor
(
&
this
->
base
);
this
->
base
.
vtable
=
&
MSVCP_basic_filebuf_char_vtable
;
return
this
;
}
/* ??1?$basic_filebuf@DU?$char_traits@D@std@@@std@@UAE@XZ */
/* ??1?$basic_filebuf@DU?$char_traits@D@std@@@std@@UEAA@XZ */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_dtor
,
4
)
void
__thiscall
basic_filebuf_char_dtor
(
basic_filebuf_char
*
this
)
{
TRACE
(
"(%p)
\n
"
,
this
);
if
(
this
->
close
)
basic_filebuf_char_close
(
this
);
basic_streambuf_char_dtor
(
&
this
->
base
);
}
DEFINE_THISCALL_WRAPPER
(
MSVCP_basic_filebuf_char_vector_dtor
,
8
)
basic_filebuf_char
*
__thiscall
MSVCP_basic_filebuf_char_vector_dtor
(
basic_filebuf_char
*
this
,
unsigned
int
flags
)
{
TRACE
(
"(%p %x)
\n
"
,
this
,
flags
);
if
(
flags
&
2
)
{
/* we have an array, with the number of elements stored before the first object */
int
i
,
*
ptr
=
(
int
*
)
this
-
1
;
for
(
i
=*
ptr
-
1
;
i
>=
0
;
i
--
)
basic_filebuf_char_dtor
(
this
+
i
);
MSVCRT_operator_delete
(
ptr
);
}
else
{
basic_filebuf_char_dtor
(
this
);
if
(
flags
&
1
)
MSVCRT_operator_delete
(
this
);
}
return
this
;
}
/* ?is_open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QBE_NXZ */
/* ?is_open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEBA_NXZ */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_is_open
,
4
)
MSVCP_bool
__thiscall
basic_filebuf_char_is_open
(
const
basic_filebuf_char
*
this
)
{
TRACE
(
"(%p)
\n
"
,
this
);
return
this
->
file
!=
NULL
;
}
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PB_WHH@Z */
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEB_WHH@Z */
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBGHH@Z */
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBGHH@Z */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_open_wchar
,
16
)
basic_filebuf_char
*
__thiscall
basic_filebuf_char_open_wchar
(
basic_filebuf_char
*
this
,
const
wchar_t
*
name
,
int
mode
,
int
prot
)
{
static
const
wchar_t
rW
[]
=
{
'r'
,
0
};
static
const
struct
{
int
mode
;
const
wchar_t
str
[
4
];
const
wchar_t
str_bin
[
4
];
}
str_mode
[]
=
{
{
OPENMODE_out
,
{
'w'
,
0
},
{
'w'
,
'b'
,
0
}},
{
OPENMODE_out
|
OPENMODE_app
,
{
'a'
,
0
},
{
'a'
,
'b'
,
0
}},
{
OPENMODE_app
,
{
'a'
,
0
},
{
'a'
,
'b'
,
0
}},
{
OPENMODE_out
|
OPENMODE_trunc
,
{
'w'
,
0
},
{
'w'
,
'b'
,
0
}},
{
OPENMODE_in
,
{
'r'
,
0
},
{
'r'
,
'b'
,
0
}},
{
OPENMODE_in
|
OPENMODE_out
,
{
'r'
,
'+'
,
0
},
{
'r'
,
'+'
,
'b'
,
0
}},
{
OPENMODE_in
|
OPENMODE_out
|
OPENMODE_trunc
,
{
'w'
,
'+'
,
0
},
{
'w'
,
'+'
,
'b'
,
0
}},
{
OPENMODE_in
|
OPENMODE_out
|
OPENMODE_app
,
{
'a'
,
'+'
,
0
},
{
'a'
,
'+'
,
'b'
,
0
}},
{
OPENMODE_in
|
OPENMODE_app
,
{
'a'
,
'+'
,
0
},
{
'a'
,
'+'
,
'b'
,
0
}}
};
int
real_mode
=
mode
&
~
(
OPENMODE_ate
|
OPENMODE__Nocreate
|
OPENMODE__Noreplace
|
OPENMODE_binary
);
int
mode_idx
;
FILE
*
f
=
NULL
;
TRACE
(
"(%p %s %d %d)
\n
"
,
this
,
debugstr_w
(
name
),
mode
,
prot
);
if
(
basic_filebuf_char_is_open
(
this
))
return
NULL
;
for
(
mode_idx
=
0
;
mode_idx
<
sizeof
(
str_mode
)
/
sizeof
(
str_mode
[
0
]);
mode_idx
++
)
if
(
str_mode
[
mode_idx
].
mode
==
real_mode
)
break
;
if
(
mode_idx
==
sizeof
(
str_mode
)
/
sizeof
(
str_mode
[
0
]))
return
NULL
;
if
((
mode
&
OPENMODE__Nocreate
)
&&
!
(
f
=
_wfopen
(
name
,
rW
)))
return
NULL
;
else
if
(
f
)
fclose
(
f
);
if
((
mode
&
OPENMODE__Noreplace
)
&&
(
mode
&
(
OPENMODE_out
|
OPENMODE_app
))
&&
(
f
=
_wfopen
(
name
,
rW
)))
{
fclose
(
f
);
return
NULL
;
}
f
=
_wfsopen
(
name
,
(
mode
&
OPENMODE_binary
)
?
str_mode
[
mode_idx
].
str_bin
:
str_mode
[
mode_idx
].
str
,
prot
);
if
(
!
f
)
return
NULL
;
if
((
mode
&
OPENMODE_ate
)
&&
fseek
(
f
,
0
,
SEEK_END
))
{
fclose
(
f
);
return
NULL
;
}
basic_filebuf_char__Init
(
this
,
f
,
INITFL_open
);
basic_filebuf_char__Initcvt
(
this
,
codecvt_char_use_facet
(
this
->
base
.
loc
));
return
this
;
}
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PB_WI@Z */
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEB_WI@Z */
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBGI@Z */
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBGI@Z */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_open_wchar_mode
,
12
)
basic_filebuf_char
*
__thiscall
basic_filebuf_char_open_wchar_mode
(
basic_filebuf_char
*
this
,
const
wchar_t
*
name
,
unsigned
int
mode
)
{
return
basic_filebuf_char_open_wchar
(
this
,
name
,
mode
,
SH_DENYNO
);
}
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBDHH@Z */
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBDHH@Z */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_open
,
16
)
basic_filebuf_char
*
__thiscall
basic_filebuf_char_open
(
basic_filebuf_char
*
this
,
const
char
*
name
,
int
mode
,
int
prot
)
{
wchar_t
nameW
[
FILENAME_MAX
];
TRACE
(
"(%p %s %d %d)
\n
"
,
this
,
name
,
mode
,
prot
);
if
(
mbstowcs_s
(
NULL
,
nameW
,
FILENAME_MAX
,
name
,
FILENAME_MAX
-
1
)
!=
0
)
return
NULL
;
return
basic_filebuf_char_open_wchar
(
this
,
nameW
,
mode
,
prot
);
}
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBDI@Z */
/* ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBDI@Z */
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_open_mode
,
12
)
basic_filebuf_char
*
__thiscall
basic_filebuf_char_open_mode
(
basic_filebuf_char
*
this
,
const
char
*
name
,
unsigned
int
mode
)
{
return
basic_filebuf_char_open
(
this
,
name
,
mode
,
SH_DENYNO
);
}
/* ?overflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHH@Z */
/* ?overflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHH@Z */
#define call_basic_filebuf_char_overflow(this, c) CALL_VTBL_FUNC(this, 4, \
int, (basic_filebuf_char*, int), (this, c))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_overflow
,
8
)
int
__thiscall
basic_filebuf_char_overflow
(
basic_filebuf_char
*
this
,
int
c
)
{
char
buf
[
8
],
*
dyn_buf
;
char
ch
=
c
,
*
to_next
;
const
char
*
from_next
;
int
ret
,
max_size
;
TRACE
(
"(%p %d)
\n
"
,
this
,
c
);
if
(
!
basic_filebuf_char_is_open
(
this
))
return
EOF
;
if
(
c
==
EOF
)
return
!
c
;
if
(
!
this
->
cvt
)
return
fwrite
(
&
ch
,
sizeof
(
char
),
1
,
this
->
file
)
?
c
:
EOF
;
from_next
=
&
ch
;
do
{
ret
=
codecvt_char_out
(
this
->
cvt
,
&
this
->
state
,
from_next
,
&
ch
+
1
,
&
from_next
,
buf
,
buf
+
sizeof
(
buf
),
&
to_next
);
switch
(
ret
)
{
case
CODECVT_partial
:
if
(
to_next
==
buf
)
break
;
/* fall through */
case
CODECVT_ok
:
if
(
!
fwrite
(
buf
,
to_next
-
buf
,
1
,
this
->
file
))
return
EOF
;
if
(
ret
==
CODECVT_partial
)
continue
;
return
c
;
case
CODECVT_noconv
:
return
fwrite
(
&
ch
,
sizeof
(
char
),
1
,
this
->
file
)
?
c
:
EOF
;
default
:
return
EOF
;
}
}
while
(
0
);
max_size
=
codecvt_base_max_length
(
&
this
->
cvt
->
base
);
dyn_buf
=
malloc
(
max_size
);
if
(
!
dyn_buf
)
return
EOF
;
ret
=
codecvt_char_out
(
this
->
cvt
,
&
this
->
state
,
from_next
,
&
ch
+
1
,
&
from_next
,
dyn_buf
,
dyn_buf
+
max_size
,
&
to_next
);
switch
(
ret
)
{
case
CODECVT_ok
:
ret
=
fwrite
(
dyn_buf
,
to_next
-
dyn_buf
,
1
,
this
->
file
);
free
(
dyn_buf
);
return
ret
?
c
:
EOF
;
case
CODECVT_partial
:
ERR
(
"buffer should be big enough to store all output
\n
"
);
/* fall through */
default
:
free
(
dyn_buf
);
return
EOF
;
}
}
/* ?pbackfail@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHH@Z */
/* ?pbackfail@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHH@Z */
#define call_basic_filebuf_char_pbackfail(this, c) CALL_VTBL_FUNC(this, 8, \
int, (basic_filebuf_char*, int), (this, c))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_pbackfail
,
8
)
int
__thiscall
basic_filebuf_char_pbackfail
(
basic_filebuf_char
*
this
,
int
c
)
{
TRACE
(
"(%p %d)
\n
"
,
this
,
c
);
if
(
!
basic_filebuf_char_is_open
(
this
))
return
EOF
;
if
(
basic_streambuf_char_gptr
(
&
this
->
base
)
>
basic_streambuf_char_eback
(
&
this
->
base
)
&&
(
c
==
EOF
||
basic_streambuf_char_gptr
(
&
this
->
base
)[
-
1
]
==
(
char
)
c
))
{
basic_streambuf_char__Gndec
(
&
this
->
base
);
return
c
==
EOF
?
!
c
:
c
;
}
else
if
(
c
!=
EOF
&&
!
this
->
cvt
)
{
return
ungetc
(
c
,
this
->
file
);
}
return
EOF
;
}
/* ?uflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ */
/* ?uflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ */
#define call_basic_filebuf_char_uflow(this) CALL_VTBL_FUNC(this, 20, \
int, (basic_filebuf_char*), (this))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_uflow
,
4
)
int
__thiscall
basic_filebuf_char_uflow
(
basic_filebuf_char
*
this
)
{
char
ch
,
buf
[
128
],
*
to_next
;
const
char
*
buf_next
;
int
c
,
i
;
TRACE
(
"(%p)
\n
"
,
this
);
if
(
!
basic_filebuf_char_is_open
(
this
))
return
EOF
;
if
(
basic_streambuf_char_gptr
(
&
this
->
base
)
<
basic_streambuf_char_egptr
(
&
this
->
base
))
return
*
basic_streambuf_char__Gninc
(
&
this
->
base
);
c
=
fgetc
(
this
->
file
);
if
(
!
this
->
cvt
||
!
c
)
return
c
;
buf_next
=
buf
;
for
(
i
=
0
;
i
<
sizeof
(
buf
)
/
sizeof
(
char
);
i
++
)
{
buf
[
i
]
=
c
;
switch
(
codecvt_char_in
(
this
->
cvt
,
&
this
->
state
,
buf_next
,
buf
+
i
+
1
,
&
buf_next
,
&
ch
,
&
ch
+
1
,
&
to_next
))
{
case
CODECVT_partial
:
case
CODECVT_ok
:
if
(
to_next
==
&
ch
)
{
c
=
fgetc
(
this
->
file
);
if
(
!
c
)
return
EOF
;
continue
;
}
for
(
i
--
;
i
>=
buf_next
-
buf
;
i
--
)
ungetc
(
buf
[
i
],
this
->
file
);
return
ch
;
case
CODECVT_noconv
:
return
buf
[
0
];
default
:
return
EOF
;
}
}
FIXME
(
"buffer is to small
\n
"
);
return
EOF
;
}
/* ?underflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ */
/* ?underflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ */
#define call_basic_filebuf_char_underflow(this) CALL_VTBL_FUNC(this, 16, \
int, (basic_filebuf_char*), (this))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_underflow
,
4
)
int
__thiscall
basic_filebuf_char_underflow
(
basic_filebuf_char
*
this
)
{
int
ret
;
TRACE
(
"(%p)
\n
"
,
this
);
if
(
basic_streambuf_char_gptr
(
&
this
->
base
)
<
basic_streambuf_char_egptr
(
&
this
->
base
))
return
*
basic_streambuf_char_gptr
(
&
this
->
base
);
ret
=
call_basic_filebuf_char_uflow
(
this
);
if
(
ret
)
ret
=
call_basic_filebuf_char_pbackfail
(
this
,
ret
);
return
ret
;
}
/* ?seekoff@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAE?AV?$fpos@H@2@JHH@Z */
/* ?seekoff@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAA?AV?$fpos@H@2@_JHH@Z */
#define call_basic_filebuf_char_seekoff(this, ret, off, way, mode) CALL_VTBL_FUNC(this, 36, \
fpos_int*, (basic_filebuf_char*, fpos_int*, streamoff, int, int), (this, ret, off, way, mode))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_seekoff
,
20
)
fpos_int
*
__thiscall
basic_filebuf_char_seekoff
(
basic_filebuf_char
*
this
,
fpos_int
*
ret
,
streamoff
off
,
int
way
,
int
mode
)
{
fpos_t
pos
;
TRACE
(
"(%p %p %ld %d %d)
\n
"
,
this
,
ret
,
off
,
way
,
mode
);
if
(
!
basic_filebuf_char_is_open
(
this
)
||
!
basic_filebuf_char__Endwrite
(
this
)
||
fseek
(
this
->
file
,
off
,
way
))
{
ret
->
off
=
0
;
ret
->
pos
=
-
1
;
ret
->
state
=
0
;
return
ret
;
}
fgetpos
(
this
->
file
,
&
pos
);
ret
->
off
=
0
;
ret
->
pos
=
pos
;
ret
->
state
=
this
->
state
;
return
ret
;
}
/* ?seekpos@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAE?AV?$fpos@H@2@V32@H@Z */
/* ?seekpos@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAA?AV?$fpos@H@2@V32@H@Z */
#define call_basic_filebuf_char_seekpos(this, ret, pos, mode) CALL_VTBL_FUNC(this, 40, \
fpos_int*, (basic_filebuf_char*, fpos_int*, fpos_int, mode), (this, ret, pos, mode))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_seekpos
,
36
)
fpos_int
*
__thiscall
basic_filebuf_char_seekpos
(
basic_filebuf_char
*
this
,
fpos_int
*
ret
,
fpos_int
pos
,
int
mode
)
{
fpos_t
fpos
;
TRACE
(
"(%p %p %s %d)
\n
"
,
this
,
ret
,
debugstr_fpos_int
(
&
pos
),
mode
);
if
(
!
basic_filebuf_char_is_open
(
this
)
||
!
basic_filebuf_char__Endwrite
(
this
)
||
fseek
(
this
->
file
,
(
LONG
)
pos
.
pos
,
SEEK_SET
)
||
(
pos
.
off
&&
fseek
(
this
->
file
,
pos
.
off
,
SEEK_CUR
)))
{
ret
->
off
=
0
;
ret
->
pos
=
-
1
;
ret
->
state
=
0
;
return
ret
;
}
fgetpos
(
this
->
file
,
&
fpos
);
ret
->
off
=
0
;
ret
->
pos
=
fpos
;
ret
->
state
=
this
->
state
;
return
ret
;
}
/* ?setbuf@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEPAV?$basic_streambuf@DU?$char_traits@D@std@@@2@PADH@Z */
/* ?setbuf@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@PEAD_J@Z */
#define call_basic_filebuf_char_setbuf(this, buf, count) CALL_VTBL_FUNC(this, 44, \
basic_streambuf_char*, (basic_filebuf_char*, char*, streamsize), (this, buf, count))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_setbuf
,
12
)
basic_streambuf_char
*
__thiscall
basic_filebuf_char_setbuf
(
basic_filebuf_char
*
this
,
char
*
buf
,
streamsize
count
)
{
TRACE
(
"(%p %p %ld)
\n
"
,
this
,
buf
,
count
);
if
(
!
basic_filebuf_char_is_open
(
this
))
return
NULL
;
if
(
setvbuf
(
this
->
file
,
buf
,
(
buf
==
NULL
&&
count
==
0
)
?
_IONBF
:
_IOFBF
,
count
))
return
NULL
;
basic_filebuf_char__Init
(
this
,
this
->
file
,
INITFL_open
);
return
&
this
->
base
;
}
/* ?sync@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ */
/* ?sync@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ */
#define call_basic_filebuf_char_sync(this) CALL_VTBL_FUNC(this, 48, \
int, (basic_filebuf_char*), (this))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_sync
,
4
)
int
__thiscall
basic_filebuf_char_sync
(
basic_filebuf_char
*
this
)
{
TRACE
(
"(%p)
\n
"
,
this
);
if
(
!
basic_filebuf_char_is_open
(
this
))
return
0
;
if
(
call_basic_filebuf_char_overflow
(
this
,
EOF
)
==
EOF
)
return
0
;
return
fflush
(
this
->
file
);
}
/* ?imbue@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEXABVlocale@2@@Z */
/* ?imbue@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAXAEBVlocale@2@@Z */
#define call_basic_filebuf_char_imbue(this, loc) CALL_VTBL_FUNC(this, 52, \
void, (basic_filebuf_char*, const locale*), (this, loc))
DEFINE_THISCALL_WRAPPER
(
basic_filebuf_char_imbue
,
8
)
void
__thiscall
basic_filebuf_char_imbue
(
basic_filebuf_char
*
this
,
const
locale
*
loc
)
{
TRACE
(
"(%p %p)
\n
"
,
this
,
loc
);
basic_filebuf_char__Initcvt
(
this
,
codecvt_char_use_facet
(
loc
));
}
/* ??0ios_base@std@@IAE@XZ */
/* ??0ios_base@std@@IEAA@XZ */
DEFINE_THISCALL_WRAPPER
(
ios_base_ctor
,
4
)
...
...
dlls/msvcp90/locale.c
View file @
9f9a4a18
...
...
@@ -105,21 +105,6 @@ typedef struct {
_Cvtvec
cvt
;
}
ctype_wchar
;
typedef
enum
{
CODECVT_ok
=
0
,
CODECVT_partial
=
1
,
CODECVT_error
=
2
,
CODECVT_noconv
=
3
}
codecvt_base_result
;
typedef
struct
{
locale_facet
facet
;
}
codecvt_base
;
typedef
struct
{
codecvt_base
base
;
}
codecvt_char
;
typedef
struct
{
locale_facet
facet
;
const
char
*
grouping
;
...
...
@@ -2674,7 +2659,7 @@ MSVCP_size_t __cdecl codecvt_char__Getcat(const locale_facet **facet, const loca
return
LC_CTYPE
;
}
codecvt_char
*
codecvt_char_use_facet
(
locale
*
loc
)
codecvt_char
*
codecvt_char_use_facet
(
const
locale
*
loc
)
{
static
codecvt_char
*
obj
=
NULL
;
...
...
dlls/msvcp90/msvcp90.h
View file @
9f9a4a18
...
...
@@ -263,6 +263,31 @@ typedef struct {
MSVCP_size_t
refs
;
}
locale_facet
;
typedef
enum
{
CODECVT_ok
=
0
,
CODECVT_partial
=
1
,
CODECVT_error
=
2
,
CODECVT_noconv
=
3
}
codecvt_base_result
;
/* class codecvt_base */
typedef
struct
{
locale_facet
facet
;
}
codecvt_base
;
/* class codecvt<char> */
typedef
struct
{
codecvt_base
base
;
}
codecvt_char
;
MSVCP_bool
__thiscall
codecvt_base_always_noconv
(
const
codecvt_base
*
);
int
__thiscall
codecvt_char_unshift
(
const
codecvt_char
*
,
int
*
,
char
*
,
char
*
,
char
**
);
int
__thiscall
codecvt_char_out
(
const
codecvt_char
*
,
int
*
,
const
char
*
,
const
char
*
,
const
char
**
,
char
*
,
char
*
,
char
**
);
int
__thiscall
codecvt_char_in
(
const
codecvt_char
*
,
int
*
,
const
char
*
,
const
char
*
,
const
char
**
,
char
*
,
char
*
,
char
**
);
int
__thiscall
codecvt_base_max_length
(
const
codecvt_base
*
);
/* class locale */
typedef
struct
{
...
...
@@ -274,6 +299,7 @@ locale* __thiscall locale_copy_ctor(locale*, const locale*);
locale
*
__thiscall
locale_operator_assign
(
locale
*
,
const
locale
*
);
void
__thiscall
locale_dtor
(
locale
*
);
void
free_locale
(
void
);
codecvt_char
*
codecvt_char_use_facet
(
const
locale
*
);
/* class _Lockit */
typedef
struct
{
...
...
dlls/msvcp90/msvcp90.spec
View file @
9f9a4a18
...
...
@@ -546,10 +546,10 @@
@ cdecl -arch=win64 ??0?$allocator@_W@std@@QEAA@AEBV01@@Z(ptr ptr) MSVCP_allocator_wchar_copy_ctor
@ thiscall -arch=win32 ??0?$allocator@_W@std@@QAE@XZ(ptr) MSVCP_allocator_wchar_ctor
@ cdecl -arch=win64 ??0?$allocator@_W@std@@QEAA@XZ(ptr) MSVCP_allocator_wchar_ctor
@
stub -arch=win32 ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAE@PAU_iobuf@@@Z
@
stub -arch=win64 ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAA@PEAU_iobuf@@@Z
@
stub -arch=win32 ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAE@W4_Uninitialized@1@@Z
@
stub -arch=win64 ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAA@W4_Uninitialized@1@@Z
@
thiscall -arch=win32 ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAE@PAU_iobuf@@@Z(ptr ptr) basic_filebuf_char_ctor_file
@
cdecl -arch=win64 ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAA@PEAU_iobuf@@@Z(ptr ptr) basic_filebuf_char_ctor_file
@
thiscall -arch=win32 ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAE@W4_Uninitialized@1@@Z(ptr long) basic_filebuf_char_ctor_uninitialized
@
cdecl -arch=win64 ??0?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAA@W4_Uninitialized@1@@Z(ptr long) basic_filebuf_char_ctor_uninitialized
@ stub -arch=win32 ??0?$basic_filebuf@GU?$char_traits@G@std@@@std@@QAE@PAU_iobuf@@@Z
@ stub -arch=win64 ??0?$basic_filebuf@GU?$char_traits@G@std@@@std@@QEAA@PEAU_iobuf@@@Z
@ stub -arch=win32 ??0?$basic_filebuf@GU?$char_traits@G@std@@@std@@QAE@W4_Uninitialized@1@@Z
...
...
@@ -1146,8 +1146,8 @@
@ stub -arch=win64 ??1?$_Mpunct@G@std@@MEAA@XZ
@ stub -arch=win32 ??1?$_Mpunct@_W@std@@MAE@XZ
@ stub -arch=win64 ??1?$_Mpunct@_W@std@@MEAA@XZ
@
stub -arch=win32 ??1?$basic_filebuf@DU?$char_traits@D@std@@@std@@UAE@XZ
@
stub -arch=win64 ??1?$basic_filebuf@DU?$char_traits@D@std@@@std@@UEAA@XZ
@
thiscall -arch=win32 ??1?$basic_filebuf@DU?$char_traits@D@std@@@std@@UAE@XZ(ptr) basic_filebuf_char_dtor
@
cdecl -arch=win64 ??1?$basic_filebuf@DU?$char_traits@D@std@@@std@@UEAA@XZ(ptr) basic_filebuf_char_dtor
@ stub -arch=win32 ??1?$basic_filebuf@GU?$char_traits@G@std@@@std@@UAE@XZ
@ stub -arch=win64 ??1?$basic_filebuf@GU?$char_traits@G@std@@@std@@UEAA@XZ
@ stub -arch=win32 ??1?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@UAE@XZ
...
...
@@ -1779,7 +1779,7 @@
# extern ??_7?$_Mpunct@D@std@@6B@
# extern ??_7?$_Mpunct@G@std@@6B@
# extern ??_7?$_Mpunct@_W@std@@6B@
# extern ??_7?$basic_filebuf@DU?$char_traits@D@std@@@std@@6B@
@ extern ??_7?$basic_filebuf@DU?$char_traits@D@std@@@std@@6B@ MSVCP_basic_filebuf_char_vtable
# extern ??_7?$basic_filebuf@GU?$char_traits@G@std@@@std@@6B@
# extern ??_7?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@6B@
# extern ??_7?$basic_fstream@DU?$char_traits@D@std@@@std@@6B@
...
...
@@ -1961,8 +1961,8 @@
@ cdecl -arch=win64 ??_F?$_String_val@GV?$allocator@G@std@@@std@@QEAAXXZ(ptr) _String_val_ctor
@ thiscall -arch=win32 ??_F?$_String_val@_WV?$allocator@_W@std@@@std@@QAEXXZ(ptr) _String_val_ctor
@ cdecl -arch=win64 ??_F?$_String_val@_WV?$allocator@_W@std@@@std@@QEAAXXZ(ptr) _String_val_ctor
@
stub -arch=win32 ??_F?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEXXZ
@
stub -arch=win64 ??_F?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAXXZ
@
thiscall -arch=win32 ??_F?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEXXZ(ptr) basic_filebuf_char_ctor
@
cdecl -arch=win64 ??_F?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAXXZ(ptr) basic_filebuf_char_ctor
@ stub -arch=win32 ??_F?$basic_filebuf@GU?$char_traits@G@std@@@std@@QAEXXZ
@ stub -arch=win64 ??_F?$basic_filebuf@GU?$char_traits@G@std@@@std@@QEAAXXZ
@ stub -arch=win32 ??_F?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@QAEXXZ
...
...
@@ -2180,8 +2180,8 @@
@ cdecl -arch=win64 ?_Dowiden@?$ctype@G@std@@IEBAGD@Z(ptr long) ctype_wchar__Dowiden
@ thiscall -arch=win32 ?_Dowiden@?$ctype@_W@std@@IBE_WD@Z(ptr long) ctype_wchar__Dowiden
@ cdecl -arch=win64 ?_Dowiden@?$ctype@_W@std@@IEBA_WD@Z(ptr long) ctype_wchar__Dowiden
@
stub -arch=win32 ?_Endwrite@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAE_NXZ
@
stub -arch=win64 ?_Endwrite@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAA_NXZ
@
thiscall -arch=win32 ?_Endwrite@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAE_NXZ(ptr) basic_filebuf_char__Endwrite
@
cdecl -arch=win64 ?_Endwrite@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAA_NXZ(ptr) basic_filebuf_char__Endwrite
@ stub -arch=win32 ?_Endwrite@?$basic_filebuf@GU?$char_traits@G@std@@@std@@IAE_NXZ
@ stub -arch=win64 ?_Endwrite@?$basic_filebuf@GU?$char_traits@G@std@@@std@@IEAA_NXZ
@ stub -arch=win32 ?_Endwrite@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@IAE_NXZ
...
...
@@ -2434,8 +2434,8 @@
@ stub -arch=win64 ?_Init@?$_Mpunct@G@std@@IEAAXAEBV_Locinfo@2@_N@Z
@ stub -arch=win32 ?_Init@?$_Mpunct@_W@std@@IAEXABV_Locinfo@2@_N@Z
@ stub -arch=win64 ?_Init@?$_Mpunct@_W@std@@IEAAXAEBV_Locinfo@2@_N@Z
@
stub -arch=win32 ?_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@12@@Z
@
stub -arch=win64 ?_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAU_iobuf@@W4_Initfl@12@@Z
@
thiscall -arch=win32 ?_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@12@@Z(ptr ptr long) basic_filebuf_char__Init
@
cdecl -arch=win64 ?_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAU_iobuf@@W4_Initfl@12@@Z(ptr ptr long) basic_filebuf_char__Init
@ stub -arch=win32 ?_Init@?$basic_filebuf@GU?$char_traits@G@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@12@@Z
@ stub -arch=win64 ?_Init@?$basic_filebuf@GU?$char_traits@G@std@@@std@@IEAAXPEAU_iobuf@@W4_Initfl@12@@Z
@ stub -arch=win32 ?_Init@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@12@@Z
...
...
@@ -2543,8 +2543,8 @@
@ stub -arch=win64 ?_Init_locks_ctor@_Init_locks@std@@CAXPEAV12@@Z
@ stub -arch=win32 ?_Init_locks_dtor@_Init_locks@std@@CAXPAV12@@Z
@ stub -arch=win64 ?_Init_locks_dtor@_Init_locks@std@@CAXPEAV12@@Z
@
stub -arch=win32 ?_Initcvt@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAV?$codecvt@DDH@2@@Z
@
stub -arch=win64 ?_Initcvt@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAV?$codecvt@DDH@2@@Z
@
thiscall -arch=win32 ?_Initcvt@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAV?$codecvt@DDH@2@@Z(ptr ptr) basic_filebuf_char__Initcvt
@
cdecl -arch=win64 ?_Initcvt@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAV?$codecvt@DDH@2@@Z(ptr ptr) basic_filebuf_char__Initcvt
@ stub -arch=win32 ?_Initcvt@?$basic_filebuf@GU?$char_traits@G@std@@@std@@IAEXPAV?$codecvt@GDH@2@@Z
@ stub -arch=win64 ?_Initcvt@?$basic_filebuf@GU?$char_traits@G@std@@@std@@IEAAXPEAV?$codecvt@GDH@2@@Z
@ stub -arch=win32 ?_Initcvt@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@IAEXPAV?$codecvt@_WDH@2@@Z
...
...
@@ -2791,8 +2791,8 @@
@ stub ?_Sinh@?$_Ctraits@M@std@@SAMMM@Z
@ stub ?_Sinh@?$_Ctraits@N@std@@SANNN@Z
@ stub ?_Sinh@?$_Ctraits@O@std@@SAOOO@Z
# extern -arch=win32 ?_Stinit@?1??_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@23@@Z@4HA
# extern -arch=win64 ?_Stinit@?1??_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAU_iobuf@@W4_Initfl@23@@Z@4HA
@ extern -arch=win32 ?_Stinit@?1??_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@23@@Z@4HA basic_filebuf_char__Init__Stinit
@ extern -arch=win64 ?_Stinit@?1??_Init@?$basic_filebuf@DU?$char_traits@D@std@@@std@@IEAAXPEAU_iobuf@@W4_Initfl@23@@Z@4HA basic_filebuf_char__Init__Stinit
# extern -arch=win32 ?_Stinit@?1??_Init@?$basic_filebuf@GU?$char_traits@G@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@23@@Z@4HA
# extern -arch=win64 ?_Stinit@?1??_Init@?$basic_filebuf@GU?$char_traits@G@std@@@std@@IEAAXPEAU_iobuf@@W4_Initfl@23@@Z@4HA
# extern -arch=win32 ?_Stinit@?1??_Init@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@IAEXPAU_iobuf@@W4_Initfl@23@@Z@4HA
...
...
@@ -3084,8 +3084,8 @@
@ thiscall -arch=win32 ?clear@ios_base@std@@QAEXI@Z(ptr long) ios_base_clear_unsigned
@ cdecl -arch=win64 ?clear@ios_base@std@@QEAAXI@Z(ptr long) ios_base_clear_unsigned
# extern ?clog@std@@3V?$basic_ostream@DU?$char_traits@D@std@@@1@A
@
stub -arch=win32 ?close@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@XZ
@
stub -arch=win64 ?close@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@XZ
@
thiscall -arch=win32 ?close@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@XZ(ptr) basic_filebuf_char_close
@
cdecl -arch=win64 ?close@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@XZ(ptr) basic_filebuf_char_close
@ stub -arch=win32 ?close@?$basic_filebuf@GU?$char_traits@G@std@@@std@@QAEPAV12@XZ
@ stub -arch=win64 ?close@?$basic_filebuf@GU?$char_traits@G@std@@@std@@QEAAPEAV12@XZ
@ stub -arch=win32 ?close@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@QAEPAV12@XZ
...
...
@@ -4250,8 +4250,8 @@
@ stub -arch=win64 ?imag@?$_Complex_base@OU_C_ldouble_complex@@@std@@QEAAOAEBO@Z
@ stub -arch=win32 ?imag@?$_Complex_base@OU_C_ldouble_complex@@@std@@QBEOXZ
@ stub -arch=win64 ?imag@?$_Complex_base@OU_C_ldouble_complex@@@std@@QEBAOXZ
@
stub -arch=win32 ?imbue@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEXABVlocale@2@@Z
@
stub -arch=win64 ?imbue@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAXAEBVlocale@2@@Z
@
thiscall -arch=win32 ?imbue@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEXABVlocale@2@@Z(ptr ptr) basic_filebuf_char_imbue
@
cdecl -arch=win64 ?imbue@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAXAEBVlocale@2@@Z(ptr ptr) basic_filebuf_char_imbue
@ stub -arch=win32 ?imbue@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAEXABVlocale@2@@Z
@ stub -arch=win64 ?imbue@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAAXAEBVlocale@2@@Z
@ stub -arch=win32 ?imbue@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAEXABVlocale@2@@Z
...
...
@@ -4403,8 +4403,8 @@
@ extern ?is_modulo@_Num_base@std@@2_NB std_Num_base_is_modulo
@ extern ?is_modulo@_Num_float_base@std@@2_NB std_Num_float_base_is_modulo
@ extern ?is_modulo@_Num_int_base@std@@2_NB std_Num_int_base_is_modulo
@
stub -arch=win32 ?is_open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QBE_NXZ
@
stub -arch=win64 ?is_open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEBA_NXZ
@
thiscall -arch=win32 ?is_open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QBE_NXZ(ptr) basic_filebuf_char_is_open
@
cdecl -arch=win64 ?is_open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEBA_NXZ(ptr) basic_filebuf_char_is_open
@ stub -arch=win32 ?is_open@?$basic_filebuf@GU?$char_traits@G@std@@@std@@QBE_NXZ
@ stub -arch=win64 ?is_open@?$basic_filebuf@GU?$char_traits@G@std@@@std@@QEBA_NXZ
@ stub -arch=win32 ?is_open@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@QBE_NXZ
...
...
@@ -4595,18 +4595,18 @@
@ extern -arch=win64 ?npos@?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@2_KB MSVCP_basic_string_wchar_npos
@ extern -arch=win32 ?npos@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@2IB MSVCP_basic_string_wchar_npos
@ extern -arch=win64 ?npos@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@2_KB MSVCP_basic_string_wchar_npos
@
stub -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBDHH@Z
@
stub -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBDHH@Z
@
stub -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBDI@Z
@
stub -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBDI@Z
@
stub -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBGHH@Z
@
stub -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBGHH@Z
@
stub -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBGI@Z
@
stub -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBGI@Z
@
stub -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PB_WHH@Z
@
stub -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEB_WHH@Z
@
stub -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PB_WI@Z
@
stub -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEB_WI@Z
@
thiscall -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBDHH@Z(ptr str long long) basic_filebuf_char_open
@
cdecl -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBDHH@Z(ptr str long long) basic_filebuf_char_open
@
thiscall -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBDI@Z(ptr str long) basic_filebuf_char_open_mode
@
cdecl -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBDI@Z(ptr str long) basic_filebuf_char_open_mode
@
thiscall -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBGHH@Z(ptr wstr long long) basic_filebuf_char_open_wchar
@
cdecl -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBGHH@Z(ptr wstr long long) basic_filebuf_char_open_wchar
@
thiscall -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PBGI@Z(ptr wstr long) basic_filebuf_char_open_wchar_mode
@
cdecl -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEBGI@Z(ptr wstr long) basic_filebuf_char_open_wchar_mode
@
thiscall -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PB_WHH@Z(ptr wstr long long) basic_filebuf_char_open_wchar
@
cdecl -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEB_WHH@Z(ptr wstr long long) basic_filebuf_char_open_wchar
@
thiscall -arch=win32 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QAEPAV12@PB_WI@Z(ptr wstr long) basic_filebuf_char_open_wchar_mode
@
cdecl -arch=win64 ?open@?$basic_filebuf@DU?$char_traits@D@std@@@std@@QEAAPEAV12@PEB_WI@Z(ptr wstr long) basic_filebuf_char_open_wchar_mode
@ stub -arch=win32 ?open@?$basic_filebuf@GU?$char_traits@G@std@@@std@@QAEPAV12@PBDHH@Z
@ stub -arch=win64 ?open@?$basic_filebuf@GU?$char_traits@G@std@@@std@@QEAAPEAV12@PEBDHH@Z
@ stub -arch=win32 ?open@?$basic_filebuf@GU?$char_traits@G@std@@@std@@QAEPAV12@PBDI@Z
...
...
@@ -4763,8 +4763,8 @@
@ stub -arch=win64 ?out@?$codecvt@GDH@std@@QEBAHAEAHPEBG1AEAPEBGPEAD3AEAPEAD@Z
@ stub -arch=win32 ?out@?$codecvt@_WDH@std@@QBEHAAHPB_W1AAPB_WPAD3AAPAD@Z
@ stub -arch=win64 ?out@?$codecvt@_WDH@std@@QEBAHAEAHPEB_W1AEAPEB_WPEAD3AEAPEAD@Z
@
stub -arch=win32 ?overflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHH@Z
@
stub -arch=win64 ?overflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHH@Z
@
thiscall -arch=win32 ?overflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHH@Z(ptr long) basic_filebuf_char_overflow
@
cdecl -arch=win64 ?overflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHH@Z(ptr long) basic_filebuf_char_overflow
@ stub -arch=win32 ?overflow@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAEGG@Z
@ stub -arch=win64 ?overflow@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAAGG@Z
@ stub -arch=win32 ?overflow@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAEGG@Z
...
...
@@ -4783,8 +4783,8 @@
@ stub -arch=win64 ?overflow@?$basic_stringbuf@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@MEAAGG@Z
@ stub -arch=win32 ?overflow@strstreambuf@std@@MAEHH@Z
@ stub -arch=win64 ?overflow@strstreambuf@std@@MEAAHH@Z
@
stub -arch=win32 ?pbackfail@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHH@Z
@
stub -arch=win64 ?pbackfail@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHH@Z
@
thiscall -arch=win32 ?pbackfail@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHH@Z(ptr long) basic_filebuf_char_pbackfail
@
cdecl -arch=win64 ?pbackfail@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHH@Z(ptr long) basic_filebuf_char_pbackfail
@ stub -arch=win32 ?pbackfail@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAEGG@Z
@ stub -arch=win64 ?pbackfail@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAAGG@Z
@ stub -arch=win32 ?pbackfail@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAEGG@Z
...
...
@@ -5258,8 +5258,8 @@
@ stub -arch=win64 ?seekg@?$basic_istream@_WU?$char_traits@_W@std@@@std@@QEAAAEAV12@V?$fpos@H@2@@Z
@ stub -arch=win32 ?seekg@?$basic_istream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@V?$fpos@H@2@@Z
@ stub -arch=win64 ?seekg@?$basic_istream@_WU?$char_traits@_W@std@@@std@@QEAAAEAV12@_JH@Z
@
stub -arch=win32 ?seekoff@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAE?AV?$fpos@H@2@JHH@Z
@
stub -arch=win64 ?seekoff@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAA?AV?$fpos@H@2@_JHH@Z
@
thiscall -arch=win32 ?seekoff@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAE?AV?$fpos@H@2@JHH@Z(ptr ptr long long long) basic_filebuf_char_seekoff
@
cdecl -arch=win64 ?seekoff@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAA?AV?$fpos@H@2@_JHH@Z(ptr ptr long long long) basic_filebuf_char_seekoff
@ stub -arch=win32 ?seekoff@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAE?AV?$fpos@H@2@JHH@Z
@ stub -arch=win64 ?seekoff@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAA?AV?$fpos@H@2@_JHH@Z
@ stub -arch=win32 ?seekoff@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAE?AV?$fpos@H@2@JHH@Z
...
...
@@ -5290,8 +5290,8 @@
@ stub -arch=win64 ?seekp@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QEAAAEAV12@V?$fpos@H@2@@Z
@ stub -arch=win32 ?seekp@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@V?$fpos@H@2@@Z
@ stub -arch=win64 ?seekp@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QEAAAEAV12@_JH@Z
@
stub -arch=win32 ?seekpos@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAE?AV?$fpos@H@2@V32@H@Z
@
stub -arch=win64 ?seekpos@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAA?AV?$fpos@H@2@V32@H@Z
@
thiscall -arch=win32 ?seekpos@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAE?AV?$fpos@H@2@V32@H@Z(ptr ptr long long int64 long long long) basic_filebuf_char_seekpos
@
cdecl -arch=win64 ?seekpos@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAA?AV?$fpos@H@2@V32@H@Z(ptr ptr ptr long) basic_filebuf_char_seekpos
@ stub -arch=win32 ?seekpos@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAE?AV?$fpos@H@2@V32@H@Z
@ stub -arch=win64 ?seekpos@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAA?AV?$fpos@H@2@V32@H@Z
@ stub -arch=win32 ?seekpos@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAE?AV?$fpos@H@2@V32@H@Z
...
...
@@ -5313,8 +5313,8 @@
@ cdecl ?set_new_handler@std@@YAP6AXXZH@Z(long) set_new_handler_reset
@ cdecl ?set_new_handler@std@@YAP6AXXZP6AXXZ@Z(ptr) set_new_handler
@ stub ?setbase@std@@YA?AU?$_Smanip@H@1@H@Z
@
stub -arch=win32 ?setbuf@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEPAV?$basic_streambuf@DU?$char_traits@D@std@@@2@PADH@Z
@
stub -arch=win64 ?setbuf@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@PEAD_J@Z
@
thiscall -arch=win32 ?setbuf@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEPAV?$basic_streambuf@DU?$char_traits@D@std@@@2@PADH@Z(ptr ptr long) basic_filebuf_char_setbuf
@
cdecl -arch=win64 ?setbuf@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAPEAV?$basic_streambuf@DU?$char_traits@D@std@@@2@PEAD_J@Z(ptr ptr long) basic_filebuf_char_setbuf
@ stub -arch=win32 ?setbuf@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAEPAV?$basic_streambuf@GU?$char_traits@G@std@@@2@PAGH@Z
@ stub -arch=win64 ?setbuf@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAAPEAV?$basic_streambuf@GU?$char_traits@G@std@@@2@PEAG_J@Z
@ stub -arch=win32 ?setbuf@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAEPAV?$basic_streambuf@_WU?$char_traits@_W@std@@@2@PA_WH@Z
...
...
@@ -5514,8 +5514,8 @@
@ cdecl -arch=win64 ?swap@?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QEAAXAEAV12@@Z(ptr ptr) MSVCP_basic_string_wchar_swap
@ thiscall -arch=win32 ?swap@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QAEXAAV12@@Z(ptr ptr) MSVCP_basic_string_wchar_swap
@ cdecl -arch=win64 ?swap@?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@QEAAXAEAV12@@Z(ptr ptr) MSVCP_basic_string_wchar_swap
@
stub -arch=win32 ?sync@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ
@
stub -arch=win64 ?sync@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ
@
thiscall -arch=win32 ?sync@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ(ptr) basic_filebuf_char_sync
@
cdecl -arch=win64 ?sync@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ(ptr) basic_filebuf_char_sync
@ stub -arch=win32 ?sync@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAEHXZ
@ stub -arch=win64 ?sync@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAAHXZ
@ stub -arch=win32 ?sync@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAEHXZ
...
...
@@ -5628,8 +5628,8 @@
@ cdecl -arch=win64 ?truename@?$numpunct@G@std@@QEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@XZ(ptr ptr) numpunct_wchar_truename
@ thiscall -arch=win32 ?truename@?$numpunct@_W@std@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@XZ(ptr ptr) numpunct_wchar_truename
@ cdecl -arch=win64 ?truename@?$numpunct@_W@std@@QEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@XZ(ptr ptr) numpunct_wchar_truename
@
stub -arch=win32 ?uflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ
@
stub -arch=win64 ?uflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ
@
thiscall -arch=win32 ?uflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ(ptr) basic_filebuf_char_uflow
@
cdecl -arch=win64 ?uflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ(ptr) basic_filebuf_char_uflow
@ stub -arch=win32 ?uflow@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAEGXZ
@ stub -arch=win64 ?uflow@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAAGXZ
@ stub -arch=win32 ?uflow@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAEGXZ
...
...
@@ -5641,8 +5641,8 @@
@ thiscall -arch=win32 ?uflow@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MAEGXZ(ptr) basic_streambuf_wchar_uflow
@ cdecl -arch=win64 ?uflow@?$basic_streambuf@_WU?$char_traits@_W@std@@@std@@MEAAGXZ(ptr) basic_streambuf_wchar_uflow
@ cdecl ?uncaught_exception@std@@YA_NXZ() msvcrt.__uncaught_exception
@
stub -arch=win32 ?underflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ
@
stub -arch=win64 ?underflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ
@
thiscall -arch=win32 ?underflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MAEHXZ(ptr) basic_filebuf_char_underflow
@
cdecl -arch=win64 ?underflow@?$basic_filebuf@DU?$char_traits@D@std@@@std@@MEAAHXZ(ptr) basic_filebuf_char_underflow
@ stub -arch=win32 ?underflow@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MAEGXZ
@ stub -arch=win64 ?underflow@?$basic_filebuf@GU?$char_traits@G@std@@@std@@MEAAGXZ
@ stub -arch=win32 ?underflow@?$basic_filebuf@_WU?$char_traits@_W@std@@@std@@MAEGXZ
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment