Commit 2f01c452 authored by Piotr Caban's avatar Piotr Caban Committed by Alexandre Julliard

msvcp100: Remove unused thiscall functions.

parent f8350fc1
......@@ -98,8 +98,7 @@ void * __thiscall MSVCP_type_info_vector_dtor(type_info * _this, unsigned int fl
DEFINE_RTTI_DATA0( type_info, 0, ".?AVtype_info@@" );
DEFINE_THISCALL_WRAPPER(MSVCP_exception_ctor, 8)
exception* __thiscall MSVCP_exception_ctor(exception *this, const char **name)
static exception* MSVCP_exception_ctor(exception *this, const char **name)
{
TRACE("(%p %s)\n", this, *name);
......@@ -189,8 +188,7 @@ static const cxx_exception_type exception_cxx_type = {
/* bad_alloc class data */
typedef exception bad_alloc;
DEFINE_THISCALL_WRAPPER(MSVCP_bad_alloc_ctor, 8)
bad_alloc* __thiscall MSVCP_bad_alloc_ctor(bad_alloc *this, const char **name)
bad_alloc* MSVCP_bad_alloc_ctor(bad_alloc *this, const char **name)
{
TRACE("%p %s\n", this, *name);
MSVCP_exception_ctor(this, name);
......@@ -273,8 +271,7 @@ typedef struct _logic_error {
basic_string_char str;
} logic_error;
DEFINE_THISCALL_WRAPPER(MSVCP_logic_error_ctor, 8)
logic_error* __thiscall MSVCP_logic_error_ctor(
static logic_error* MSVCP_logic_error_ctor(
logic_error *this, const char **name)
{
TRACE("%p %s\n", this, *name);
......@@ -361,8 +358,7 @@ static const cxx_exception_type logic_error_cxx_type = {
/* length_error class data */
typedef logic_error length_error;
DEFINE_THISCALL_WRAPPER(MSVCP_length_error_ctor, 8)
length_error* __thiscall MSVCP_length_error_ctor(
static length_error* MSVCP_length_error_ctor(
length_error *this, const char **name)
{
TRACE("%p %s\n", this, *name);
......@@ -410,8 +406,7 @@ static const cxx_exception_type length_error_cxx_type = {
/* out_of_range class data */
typedef logic_error out_of_range;
DEFINE_THISCALL_WRAPPER(MSVCP_out_of_range_ctor, 8)
out_of_range* __thiscall MSVCP_out_of_range_ctor(
static out_of_range* MSVCP_out_of_range_ctor(
out_of_range *this, const char **name)
{
TRACE("%p %s\n", this, *name);
......@@ -459,8 +454,7 @@ static const cxx_exception_type out_of_range_cxx_type = {
/* invalid_argument class data */
typedef logic_error invalid_argument;
DEFINE_THISCALL_WRAPPER(MSVCP_invalid_argument_ctor, 8)
invalid_argument* __thiscall MSVCP_invalid_argument_ctor(
static invalid_argument* MSVCP_invalid_argument_ctor(
invalid_argument *this, const char **name)
{
TRACE("%p %s\n", this, *name);
......@@ -511,8 +505,7 @@ typedef struct {
basic_string_char str;
} runtime_error;
DEFINE_THISCALL_WRAPPER(MSVCP_runtime_error_ctor, 8)
runtime_error* __thiscall MSVCP_runtime_error_ctor(
static runtime_error* MSVCP_runtime_error_ctor(
runtime_error *this, const char **name)
{
TRACE("%p %s\n", this, *name);
......@@ -599,8 +592,7 @@ static const cxx_exception_type runtime_error_cxx_type = {
/* failure class data */
typedef runtime_error failure;
DEFINE_THISCALL_WRAPPER(MSVCP_failure_ctor, 8)
failure* __thiscall MSVCP_failure_ctor(
static failure* MSVCP_failure_ctor(
failure *this, const char **name)
{
TRACE("%p %s\n", this, *name);
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -41,7 +41,7 @@ char* __cdecl _Getmonths(void);
void* __cdecl _Gettnames(void);
unsigned int __cdecl ___lc_codepage_func(void);
LCID* __cdecl ___lc_handle_func(void);
const locale_facet* __thiscall locale__Getfacet(const locale*, MSVCP_size_t);
static const locale_facet* locale__Getfacet(const locale*, MSVCP_size_t);
typedef int category;
......@@ -207,7 +207,6 @@ typedef struct
} facets_elem;
static struct list lazy_facets = LIST_INIT(lazy_facets);
/* Not exported from msvcp90 */
/* ?facet_Register@facet@locale@std@@CAXPAV123@@Z */
/* ?facet_Register@facet@locale@std@@CAXPEAV123@@Z */
static void __cdecl locale_facet_register(locale_facet *add)
......@@ -223,16 +222,6 @@ static void __cdecl locale_facet_register(locale_facet *add)
}
/* Not exported from msvcp90 */
/* ?_Register@facet@locale@std@@QAEXXZ */
/* ?_Register@facet@locale@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(locale_facet__Register, 4)
void __thiscall locale_facet__Register(locale_facet *this)
{
TRACE("(%p)\n", this);
locale_facet_register(this);
}
/* Not exported from msvcp90 */
/* ??_7facet@locale@std@@6B@ */
extern const vtable_ptr MSVCP_locale_facet_vtable;
......@@ -439,14 +428,6 @@ _Locinfo* __thiscall _Locinfo_ctor_cat_cstr(_Locinfo *this, int category, const
return _Locinfo__Locinfo_ctor_cat_cstr(this, category, locstr);
}
/* ??0_Locinfo@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z */
/* ??0_Locinfo@std@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z */
DEFINE_THISCALL_WRAPPER(_Locinfo_ctor_bstr, 8)
_Locinfo* __thiscall _Locinfo_ctor_bstr(_Locinfo *this, const basic_string_char *locstr)
{
return _Locinfo__Locinfo_ctor_cat_cstr(this, 1/*FIXME*/, MSVCP_basic_string_char_c_str(locstr));
}
/* ?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@PBD@Z */
/* ?_Locinfo_ctor@_Locinfo@std@@SAXPEAV12@PEBD@Z */
_Locinfo* __cdecl _Locinfo__Locinfo_ctor_cstr(_Locinfo *locinfo, const char *locstr)
......@@ -685,17 +666,6 @@ const struct lconv* __thiscall _Locinfo__Getlconv(const _Locinfo *this)
return localeconv();
}
/* ?_Getname@_Locinfo@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
/* ?_Getname@_Locinfo@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
DEFINE_THISCALL_WRAPPER(_Locinfo__Getname, 8)
basic_string_char* __thiscall _Locinfo__Getname(const _Locinfo *this, basic_string_char *ret)
{
TRACE("(%p)\n", this);
MSVCP_basic_string_char_copy_ctor(ret, &this->newlocname);
return ret;
}
/* ?_Gettnames@_Locinfo@std@@QBE?AV_Timevec@2@XZ */
/* ?_Gettnames@_Locinfo@std@@QEBA?AV_Timevec@2@XZ */
DEFINE_THISCALL_WRAPPER(_Locinfo__Gettnames, 8)
......@@ -713,58 +683,9 @@ locale_id collate_char_id = {0};
/* ??_7?$collate@D@std@@6B@ */
extern const vtable_ptr MSVCP_collate_char_vtable;
/* ?_Init@?$collate@D@std@@IAEXABV_Locinfo@2@@Z */
/* ?_Init@?$collate@D@std@@IEAAXAEBV_Locinfo@2@@Z */
DEFINE_THISCALL_WRAPPER(collate_char__Init, 8)
void __thiscall collate_char__Init(collate *this, const _Locinfo *locinfo)
{
TRACE("(%p %p)\n", this, locinfo);
_Locinfo__Getcoll(locinfo, &this->coll);
}
/* ??0?$collate@D@std@@IAE@PBDI@Z */
/* ??0?$collate@D@std@@IEAA@PEBD_K@Z */
DEFINE_THISCALL_WRAPPER(collate_char_ctor_name, 12)
collate* __thiscall collate_char_ctor_name(collate *this, const char *name, MSVCP_size_t refs)
{
_Locinfo locinfo;
TRACE("(%p %s %lu)\n", this, name, refs);
locale_facet_ctor_refs(&this->facet, refs);
this->facet.vtable = &MSVCP_collate_char_vtable;
_Locinfo_ctor_cstr(&locinfo, name);
collate_char__Init(this, &locinfo);
_Locinfo_dtor(&locinfo);
return this;
}
/* ??0?$collate@D@std@@QAE@ABV_Locinfo@1@I@Z */
/* ??0?$collate@D@std@@QEAA@AEBV_Locinfo@1@_K@Z */
DEFINE_THISCALL_WRAPPER(collate_char_ctor_locinfo, 12)
collate* __thiscall collate_char_ctor_locinfo(collate *this, _Locinfo *locinfo, MSVCP_size_t refs)
{
TRACE("(%p %p %lu)\n", this, locinfo, refs);
locale_facet_ctor_refs(&this->facet, refs);
this->facet.vtable = &MSVCP_collate_char_vtable;
collate_char__Init(this, locinfo);
return this;
}
/* ??0?$collate@D@std@@QAE@I@Z */
/* ??0?$collate@D@std@@QEAA@_K@Z */
DEFINE_THISCALL_WRAPPER(collate_char_ctor_refs, 8)
collate* __thiscall collate_char_ctor_refs(collate *this, MSVCP_size_t refs)
{
return collate_char_ctor_name(this, "C", refs);
}
/* ??1?$collate@D@std@@MAE@XZ */
/* ??1?$collate@D@std@@MEAA@XZ */
DEFINE_THISCALL_WRAPPER(collate_char_dtor, 4)
void __thiscall collate_char_dtor(collate *this)
static void collate_char_dtor(collate *this)
{
TRACE("(%p)\n", this);
}
......@@ -789,14 +710,6 @@ collate* __thiscall collate_char_vector_dtor(collate *this, unsigned int flags)
return this;
}
/* ??_F?$collate@D@std@@QAEXXZ */
/* ??_F?$collate@D@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(collate_char_ctor, 4)
collate* __thiscall collate_char_ctor(collate *this)
{
return collate_char_ctor_name(this, "C", 0);
}
/* _Strcoll */
int __cdecl _Strcoll(const char *first1, const char *last1, const char *first2,
const char *last2, const _Collvec *coll)
......@@ -825,16 +738,6 @@ int __thiscall collate_char_do_compare(const collate *this, const char *first1,
return _Strcoll(first1, last1, first2, last2, &this->coll);
}
/* ?compare@?$collate@D@std@@QBEHPBD000@Z */
/* ?compare@?$collate@D@std@@QEBAHPEBD000@Z */
DEFINE_THISCALL_WRAPPER(collate_char_compare, 20)
int __thiscall collate_char_compare(const collate *this, const char *first1,
const char *last1, const char *first2, const char *last2)
{
TRACE("(%p %p %p %p %p)\n", this, first1, last1, first2, last2);
return call_collate_char_do_compare(this, first1, last1, first2, last2);
}
/* ?do_hash@?$collate@D@std@@MBEJPBD0@Z */
/* ?do_hash@?$collate@D@std@@MEBAJPEBD0@Z */
DEFINE_THISCALL_WRAPPER(collate_char_do_hash, 12)
......@@ -852,16 +755,6 @@ LONG __thiscall collate_char_do_hash(const collate *this,
return ret;
}
/* ?hash@?$collate@D@std@@QBEJPBD0@Z */
/* ?hash@?$collate@D@std@@QEBAJPEBD0@Z */
DEFINE_THISCALL_WRAPPER(collate_char_hash, 12)
LONG __thiscall collate_char_hash(const collate *this,
const char *first, const char *last)
{
TRACE("(%p %p %p)\n", this, first, last);
return call_collate_char_do_hash(this, first, last);
}
/* ?do_transform@?$collate@D@std@@MBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@PBD0@Z */
/* ?do_transform@?$collate@D@std@@MEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@PEBD0@Z */
DEFINE_THISCALL_WRAPPER(collate_char_do_transform, 16)
......@@ -872,16 +765,6 @@ basic_string_char* __thiscall collate_char_do_transform(const collate *this,
return ret;
}
/* ?transform@?$collate@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@PBD0@Z */
/* ?transform@?$collate@D@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@PEBD0@Z */
DEFINE_THISCALL_WRAPPER(collate_char_transform, 16)
basic_string_char* __thiscall collate_char_transform(const collate *this,
basic_string_char *ret, const char *first, const char *last)
{
FIXME("(%p %p %p) stub\n", this, first, last);
return ret;
}
/* ?id@?$collate@_W@std@@2V0locale@2@A */
locale_id collate_wchar_id = {0};
/* ?id@?$collate@G@std@@2V0locale@2@A */
......@@ -892,92 +775,11 @@ extern const vtable_ptr MSVCP_collate_wchar_vtable;
/* ??_7?$collate@G@std@@6B@ */
extern const vtable_ptr MSVCP_collate_short_vtable;
/* ?_Init@?$collate@_W@std@@IAEXABV_Locinfo@2@@Z */
/* ?_Init@?$collate@_W@std@@IEAAXAEBV_Locinfo@2@@Z */
/* ?_Init@?$collate@G@std@@IAEXABV_Locinfo@2@@Z */
/* ?_Init@?$collate@G@std@@IEAAXAEBV_Locinfo@2@@Z */
DEFINE_THISCALL_WRAPPER(collate_wchar__Init, 8)
void __thiscall collate_wchar__Init(collate *this, const _Locinfo *locinfo)
{
TRACE("(%p %p)\n", this, locinfo);
_Locinfo__Getcoll(locinfo, &this->coll);
}
/* ??0?$collate@_W@std@@IAE@PBDI@Z */
/* ??0?$collate@_W@std@@IEAA@PEBD_K@Z */
DEFINE_THISCALL_WRAPPER(collate_wchar_ctor_name, 12)
collate* __thiscall collate_wchar_ctor_name(collate *this, const char *name, MSVCP_size_t refs)
{
_Locinfo locinfo;
TRACE("(%p %s %lu)\n", this, name, refs);
locale_facet_ctor_refs(&this->facet, refs);
this->facet.vtable = &MSVCP_collate_wchar_vtable;
_Locinfo_ctor_cstr(&locinfo, name);
collate_wchar__Init(this, &locinfo);
_Locinfo_dtor(&locinfo);
return this;
}
/* ??0?$collate@G@std@@IAE@PBDI@Z */
/* ??0?$collate@G@std@@IEAA@PEBD_K@Z */
DEFINE_THISCALL_WRAPPER(collate_short_ctor_name, 12)
collate* __thiscall collate_short_ctor_name(collate *this, const char *name, MSVCP_size_t refs)
{
collate *ret = collate_wchar_ctor_name(this, name, refs);
ret->facet.vtable = &MSVCP_collate_short_vtable;
return ret;
}
/* ??0?$collate@_W@std@@QAE@ABV_Locinfo@1@I@Z */
/* ??0?$collate@_W@std@@QEAA@AEBV_Locinfo@1@_K@Z */
DEFINE_THISCALL_WRAPPER(collate_wchar_ctor_locinfo, 12)
collate* __thiscall collate_wchar_ctor_locinfo(collate *this, _Locinfo *locinfo, MSVCP_size_t refs)
{
TRACE("(%p %p %lu)\n", this, locinfo, refs);
locale_facet_ctor_refs(&this->facet, refs);
this->facet.vtable = &MSVCP_collate_wchar_vtable;
collate_wchar__Init(this, locinfo);
return this;
}
/* ??0?$collate@G@std@@QAE@ABV_Locinfo@1@I@Z */
/* ??0?$collate@G@std@@QEAA@AEBV_Locinfo@1@_K@Z */
DEFINE_THISCALL_WRAPPER(collate_short_ctor_locinfo, 12)
collate* __thiscall collate_short_ctor_locinfo(collate *this, _Locinfo *locinfo, MSVCP_size_t refs)
{
collate *ret = collate_wchar_ctor_locinfo(this, locinfo, refs);
ret->facet.vtable = &MSVCP_collate_short_vtable;
return ret;
}
/* ??0?$collate@_W@std@@QAE@I@Z */
/* ??0?$collate@_W@std@@QEAA@_K@Z */
DEFINE_THISCALL_WRAPPER(collate_wchar_ctor_refs, 8)
collate* __thiscall collate_wchar_ctor_refs(collate *this, MSVCP_size_t refs)
{
return collate_wchar_ctor_name(this, "C", refs);
}
/* ??0?$collate@G@std@@QAE@I@Z */
/* ??0?$collate@G@std@@QEAA@_K@Z */
DEFINE_THISCALL_WRAPPER(collate_short_ctor_refs, 8)
collate* __thiscall collate_short_ctor_refs(collate *this, MSVCP_size_t refs)
{
collate *ret = collate_wchar_ctor_refs(this, refs);
ret->facet.vtable = &MSVCP_collate_short_vtable;
return ret;
}
/* ??1?$collate@_W@std@@MAE@XZ */
/* ??1?$collate@_W@std@@MEAA@XZ */
/* ??1?$collate@G@std@@MAE@XZ */
/* ??1?$collate@G@std@@MEAA@XZ */
DEFINE_THISCALL_WRAPPER(collate_wchar_dtor, 4)
void __thiscall collate_wchar_dtor(collate *this)
static void collate_wchar_dtor(collate *this)
{
TRACE("(%p)\n", this);
}
......@@ -1002,24 +804,6 @@ collate* __thiscall collate_wchar_vector_dtor(collate *this, unsigned int flags)
return this;
}
/* ??_F?$collate@_W@std@@QAEXXZ */
/* ??_F?$collate@_W@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(collate_wchar_ctor, 4)
collate* __thiscall collate_wchar_ctor(collate *this)
{
return collate_wchar_ctor_name(this, "C", 0);
}
/* ??_F?$collate@G@std@@QAEXXZ */
/* ??_F?$collate@G@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(collate_short_ctor, 4)
collate* __thiscall collate_short_ctor(collate *this)
{
collate *ret = collate_wchar_ctor(this);
ret->facet.vtable = &MSVCP_collate_short_vtable;
return ret;
}
/* _Wcscoll */
int __cdecl _Wcscoll(const wchar_t *first1, const wchar_t *last1, const wchar_t *first2,
const wchar_t *last2, const _Collvec *coll)
......@@ -1050,18 +834,6 @@ int __thiscall collate_wchar_do_compare(const collate *this, const wchar_t *firs
return _Wcscoll(first1, last1, first2, last2, &this->coll);
}
/* ?compare@?$collate@_W@std@@QBEHPB_W000@Z */
/* ?compare@?$collate@_W@std@@QEBAHPEB_W000@Z */
/* ?compare@?$collate@G@std@@QBEHPBG000@Z */
/* ?compare@?$collate@G@std@@QEBAHPEBG000@Z */
DEFINE_THISCALL_WRAPPER(collate_wchar_compare, 20)
int __thiscall collate_wchar_compare(const collate *this, const wchar_t *first1,
const wchar_t *last1, const wchar_t *first2, const wchar_t *last2)
{
TRACE("(%p %p %p %p %p)\n", this, first1, last1, first2, last2);
return call_collate_wchar_do_compare(this, first1, last1, first2, last2);
}
/* ?do_hash@?$collate@_W@std@@MBEJPB_W0@Z */
/* ?do_hash@?$collate@_W@std@@MEBAJPEB_W0@Z */
/* ?do_hash@?$collate@G@std@@MBEJPBG0@Z */
......@@ -1081,18 +853,6 @@ LONG __thiscall collate_wchar_do_hash(const collate *this,
return ret;
}
/* ?hash@?$collate@_W@std@@QBEJPB_W0@Z */
/* ?hash@?$collate@_W@std@@QEBAJPEB_W0@Z */
/* ?hash@?$collate@G@std@@QBEJPBG0@Z */
/* ?hash@?$collate@G@std@@QEBAJPEBG0@Z */
DEFINE_THISCALL_WRAPPER(collate_wchar_hash, 12)
LONG __thiscall collate_wchar_hash(const collate *this,
const wchar_t *first, const wchar_t *last)
{
TRACE("(%p %p %p)\n", this, first, last);
return call_collate_wchar_do_hash(this, first, last);
}
/* ?do_transform@?$collate@_W@std@@MBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PB_W0@Z */
/* ?do_transform@?$collate@_W@std@@MEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PEB_W0@Z */
/* ?do_transform@?$collate@G@std@@MBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PBG0@Z */
......@@ -1105,18 +865,6 @@ basic_string_wchar* __thiscall collate_wchar_do_transform(const collate *this,
return ret;
}
/* ?transform@?$collate@_W@std@@QBE?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PB_W0@Z */
/* ?transform@?$collate@_W@std@@QEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@PEB_W0@Z */
/* ?transform@?$collate@G@std@@QBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PBG0@Z */
/* ?transform@?$collate@G@std@@QEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@PEBG0@Z */
DEFINE_THISCALL_WRAPPER(collate_wchar_transform, 16)
basic_string_wchar* __thiscall collate_wchar_transform(const collate *this,
basic_string_wchar *ret, const wchar_t *first, const wchar_t *last)
{
FIXME("(%p %p %p) stub\n", this, first, last);
return ret;
}
/* ??_7ctype_base@std@@6B@ */
extern const vtable_ptr MSVCP_ctype_base_vtable;
......@@ -1170,12 +918,6 @@ ctype_base* __thiscall ctype_base_vector_dtor(ctype_base *this, unsigned int fla
return this;
}
/* ?_Xran@ctype_base@std@@KAXXZ */
static void __cdecl ctype_base__Xran(void)
{
throw_exception(EXCEPTION_OUT_OF_RANGE, "out of range in ctype<T>");
}
/* ?id@?$ctype@D@std@@2V0locale@2@A */
locale_id ctype_char_id = {0};
/* ?table_size@?$ctype@D@std@@2IB */
......@@ -1305,17 +1047,6 @@ const char* __thiscall ctype_char_do_narrow(const ctype_char *this,
return last;
}
/* ?_Do_narrow_s@?$ctype@D@std@@MBEPBDPBD0DPADI@Z */
/* ?_Do_narrow_s@?$ctype@D@std@@MEBAPEBDPEBD0DPEAD_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_char__Do_narrow_s, 24)
const char* __thiscall ctype_char__Do_narrow_s(const ctype_char *this, const char *first,
const char *last, char unused, char *dest, MSVCP_size_t size)
{
TRACE("(%p %p %p %p %lu)\n", this, first, last, dest, size);
memcpy_s(dest, size, first, last-first);
return last;
}
/* ?narrow@?$ctype@D@std@@QBEDDD@Z */
/* ?narrow@?$ctype@D@std@@QEBADDD@Z */
DEFINE_THISCALL_WRAPPER(ctype_char_narrow_ch, 12)
......@@ -1335,16 +1066,6 @@ const char* __thiscall ctype_char_narrow(const ctype_char *this,
return call_ctype_char_do_narrow(this, first, last, dflt, dest);
}
/* ?_Narrow_s@?$ctype@D@std@@QBEPBDPBD0DPADI@Z */
/* ?_Narrow_s@?$ctype@D@std@@QEBAPEBDPEBD0DPEAD_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_char__Narrow_s, 24)
const char* __thiscall ctype_char__Narrow_s(const ctype_char *this, const char *first,
const char *last, char dflt, char *dest, MSVCP_size_t size)
{
TRACE("(%p %p %p %p %lu)\n", this, first, last, dest, size);
return ctype_char__Do_narrow_s(this, first, last, dflt, dest, size);
}
/* ?do_widen@?$ctype@D@std@@MBEDD@Z */
/* ?do_widen@?$ctype@D@std@@MEBADD@Z */
DEFINE_THISCALL_WRAPPER(ctype_char_do_widen_ch, 8)
......@@ -1370,17 +1091,6 @@ const char* __thiscall ctype_char_do_widen(const ctype_char *this,
return last;
}
/* ?_Do_widen_s@?$ctype@D@std@@MBEPBDPBD0PADI@Z */
/* ?_Do_widen_s@?$ctype@D@std@@MEBAPEBDPEBD0PEAD_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_char__Do_widen_s, 20)
const char* __thiscall ctype_char__Do_widen_s(const ctype_char *this,
const char *first, const char *last, char *dest, MSVCP_size_t size)
{
TRACE("(%p %p %p %p %lu)\n", this, first, last, dest, size);
memcpy_s(dest, size, first, last-first);
return last;
}
/* ?widen@?$ctype@D@std@@QBEDD@Z */
/* ?widen@?$ctype@D@std@@QEBADD@Z */
DEFINE_THISCALL_WRAPPER(ctype_char_widen_ch, 8)
......@@ -1400,16 +1110,6 @@ const char* __thiscall ctype_char_widen(const ctype_char *this,
return call_ctype_char_do_widen(this, first, last, dest);
}
/* ?_Widen_s@?$ctype@D@std@@QBEPBDPBD0PADI@Z */
/* ?_Widen_s@?$ctype@D@std@@QEBAPEBDPEBD0PEAD_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_char__Widen_s, 20)
const char* __thiscall ctype_char__Widen_s(const ctype_char *this,
const char *first, const char *last, char *dest, MSVCP_size_t size)
{
TRACE("(%p %p %p %p %lu)\n", this, first, last, dest, size);
return ctype_char__Do_widen_s(this, first, last, dest, size);
}
/* ?_Getcat@?$ctype@D@std@@SAIPAPBVfacet@locale@2@PBV42@@Z */
/* ?_Getcat@?$ctype@D@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z */
MSVCP_size_t __cdecl ctype_char__Getcat(const locale_facet **facet, const locale *loc)
......@@ -1679,15 +1379,6 @@ const char* __thiscall ctype_char_scan_not(const ctype_char *this, short mask, c
return first;
}
/* ?table@?$ctype@D@std@@IBEPBFXZ */
/* ?table@?$ctype@D@std@@IEBAPEBFXZ */
DEFINE_THISCALL_WRAPPER(ctype_char_table, 4)
const short* __thiscall ctype_char_table(const ctype_char *this)
{
TRACE("(%p)\n", this);
return this->ctype.table;
}
/* ?id@?$ctype@_W@std@@2V0locale@2@A */
locale_id ctype_wchar_id = {0};
/* ?id@?$ctype@G@std@@2V0locale@2@A */
......@@ -1762,25 +1453,6 @@ ctype_wchar* __thiscall ctype_short_ctor_refs(ctype_wchar *this, MSVCP_size_t re
return ret;
}
/* ??0?$ctype@G@std@@IAE@PBDI@Z */
/* ??0?$ctype@G@std@@IEAA@PEBD_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_short_ctor_name, 12)
ctype_wchar* __thiscall ctype_short_ctor_name(ctype_wchar *this,
const char *name, MSVCP_size_t refs)
{
_Locinfo locinfo;
TRACE("(%p %s %lu)\n", this, debugstr_a(name), refs);
ctype_base_ctor_refs(&this->base, refs);
this->base.facet.vtable = &MSVCP_ctype_short_vtable;
_Locinfo_ctor_cstr(&locinfo, name);
ctype_wchar__Init(this, &locinfo);
_Locinfo_dtor(&locinfo);
return this;
}
/* ??_F?$ctype@_W@std@@QAEXXZ */
/* ??_F?$ctype@_W@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(ctype_wchar_ctor, 4)
......@@ -1907,22 +1579,6 @@ const wchar_t* __thiscall ctype_wchar_do_narrow(const ctype_wchar *this,
return last;
}
/* ?_Do_narrow_s@?$ctype@_W@std@@MBEPB_WPB_W0DPADI@Z */
/* ?_Do_narrow_s@?$ctype@_W@std@@MEBAPEB_WPEB_W0DPEAD_K@Z */
/* ?_Do_narrow_s@?$ctype@G@std@@MBEPBGPBG0DPADI@Z */
/* ?_Do_narrow_s@?$ctype@G@std@@MEBAPEBGPEBG0DPEAD_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_wchar__Do_narrow_s, 24)
const wchar_t* __thiscall ctype_wchar__Do_narrow_s(const ctype_wchar *this,
const wchar_t *first, const wchar_t *last, char dflt, char *dest, MSVCP_size_t size)
{
TRACE("(%p %p %p %d %p %lu)\n", this, first, last, dflt, dest, size);
/* This function converts all multi-byte characters to dflt,
* thanks to it result size is known before converting */
if(last-first > size)
ctype_base__Xran();
return ctype_wchar_do_narrow(this, first, last, dflt, dest);
}
/* ?narrow@?$ctype@_W@std@@QBED_WD@Z */
/* ?narrow@?$ctype@_W@std@@QEBAD_WD@Z */
/* ?narrow@?$ctype@G@std@@QBEDGD@Z */
......@@ -1946,18 +1602,6 @@ const wchar_t* __thiscall ctype_wchar_narrow(const ctype_wchar *this,
return call_ctype_wchar_do_narrow(this, first, last, dflt, dest);
}
/* ?_Narrow_s@?$ctype@_W@std@@QBEPB_WPB_W0DPADI@Z */
/* ?_Narrow_s@?$ctype@_W@std@@QEBAPEB_WPEB_W0DPEAD_K@Z */
/* ?_Narrow_s@?$ctype@G@std@@QBEPBGPBG0DPADI@Z */
/* ?_Narrow_s@?$ctype@G@std@@QEBAPEBGPEBG0DPEAD_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_wchar__Narrow_s, 24)
const wchar_t* __thiscall ctype_wchar__Narrow_s(const ctype_wchar *this, const wchar_t *first,
const wchar_t *last, char dflt, char *dest, MSVCP_size_t size)
{
TRACE("(%p %p %p %d %p %lu)\n", this, first, last, dflt, dest, size);
return ctype_wchar__Do_narrow_s(this, first, last, dflt, dest, size);
}
/* _Mbrtowc */
int __cdecl _Mbrtowc(wchar_t *out, const char *in, MSVCP_size_t len, int *state, const _Cvtvec *cvt)
{
......@@ -2069,22 +1713,6 @@ const char* __thiscall ctype_wchar_do_widen(const ctype_wchar *this,
return last;
}
/* ?_Do_widen_s@?$ctype@_W@std@@MBEPBDPBD0PA_WI@Z */
/* ?_Do_widen_s@?$ctype@_W@std@@MEBAPEBDPEBD0PEA_W_K@Z */
/* ?_Do_widen_s@?$ctype@G@std@@MBEPBDPBD0PAGI@Z */
/* ?_Do_widen_s@?$ctype@G@std@@MEBAPEBDPEBD0PEAG_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_wchar__Do_widen_s, 20)
const char* __thiscall ctype_wchar__Do_widen_s(const ctype_wchar *this,
const char *first, const char *last, wchar_t *dest, MSVCP_size_t size)
{
TRACE("(%p %p %p %p %lu)\n", this, first, last, dest, size);
/* This function converts all multi-byte characters to WEOF,
* thanks to it result size is known before converting */
if(size < last-first)
ctype_base__Xran();
return ctype_wchar_do_widen(this, first, last, dest);
}
/* ?widen@?$ctype@_W@std@@QBE_WD@Z */
/* ?widen@?$ctype@_W@std@@QEBA_WD@Z */
/* ?widen@?$ctype@G@std@@QBEGD@Z */
......@@ -2108,18 +1736,6 @@ const char* __thiscall ctype_wchar_widen(const ctype_wchar *this,
return call_ctype_wchar_do_widen(this, first, last, dest);
}
/* ?_Widen_s@?$ctype@_W@std@@QBEPBDPBD0PA_WI@Z */
/* ?_Widen_s@?$ctype@_W@std@@QEBAPEBDPEBD0PEA_W_K@Z */
/* ?_Widen_s@?$ctype@G@std@@QBEPBDPBD0PAGI@Z */
/* ?_Widen_s@?$ctype@G@std@@QEBAPEBDPEBD0PEAG_K@Z */
DEFINE_THISCALL_WRAPPER(ctype_wchar__Widen_s, 20)
const char* __thiscall ctype_wchar__Widen_s(const ctype_wchar *this,
const char *first, const char *last, wchar_t *dest, MSVCP_size_t size)
{
TRACE("(%p %p %p %p %lu)\n", this, first, last, dest, size);
return ctype_wchar__Do_widen_s(this, first, last, dest, size);
}
/* ?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@PBV42@@Z */
/* ?_Getcat@?$ctype@_W@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z */
MSVCP_size_t __cdecl ctype_wchar__Getcat(const locale_facet **facet, const locale *loc)
......@@ -2871,21 +2487,6 @@ codecvt_wchar* __thiscall codecvt_short_ctor_refs(codecvt_wchar *this, MSVCP_siz
return this;
}
/* ??0?$codecvt@GDH@std@@IAE@PBDI@Z */
/* ??0?$codecvt@GDH@std@@IEAA@PEBD_K@Z */
DEFINE_THISCALL_WRAPPER(codecvt_short_ctor_name, 12)
codecvt_wchar* __thiscall codecvt_short_ctor_name(codecvt_wchar *this, const char *name, MSVCP_size_t refs)
{
_Locinfo locinfo;
TRACE("(%p %s %ld)\n", this, name, refs);
_Locinfo_ctor_cstr(&locinfo, name);
codecvt_short_ctor_locinfo(this, &locinfo, refs);
_Locinfo_dtor(&locinfo);
return this;
}
/* ??_F?$codecvt@_WDH@std@@QAEXXZ */
/* ??_F?$codecvt@_WDH@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(codecvt_wchar_ctor, 4)
......@@ -3251,8 +2852,7 @@ extern const vtable_ptr MSVCP_numpunct_char_vtable;
/* ?_Init@?$numpunct@D@std@@IAEXABV_Locinfo@2@_N@Z */
/* ?_Init@?$numpunct@D@std@@IEAAXAEBV_Locinfo@2@_N@Z */
DEFINE_THISCALL_WRAPPER(numpunct_char__Init, 12)
void __thiscall numpunct_char__Init(numpunct_char *this, const _Locinfo *locinfo, MSVCP_bool isdef)
static void numpunct_char__Init(numpunct_char *this, const _Locinfo *locinfo, MSVCP_bool isdef)
{
int len;
......@@ -3299,8 +2899,7 @@ void __thiscall numpunct_char__Init(numpunct_char *this, const _Locinfo *locinfo
/* ?_Tidy@?$numpunct@D@std@@AAEXXZ */
/* ?_Tidy@?$numpunct@D@std@@AEAAXXZ */
DEFINE_THISCALL_WRAPPER(numpunct_char__Tidy, 4)
void __thiscall numpunct_char__Tidy(numpunct_char *this)
static void numpunct_char__Tidy(numpunct_char *this)
{
TRACE("(%p)\n", this);
......@@ -3311,8 +2910,7 @@ void __thiscall numpunct_char__Tidy(numpunct_char *this)
/* ??0?$numpunct@D@std@@QAE@ABV_Locinfo@1@I_N@Z */
/* ??0?$numpunct@D@std@@QEAA@AEBV_Locinfo@1@_K_N@Z */
DEFINE_THISCALL_WRAPPER(numpunct_char_ctor_locinfo, 16)
numpunct_char* __thiscall numpunct_char_ctor_locinfo(numpunct_char *this,
static numpunct_char* numpunct_char_ctor_locinfo(numpunct_char *this,
const _Locinfo *locinfo, MSVCP_size_t refs, MSVCP_bool usedef)
{
TRACE("(%p %p %lu %d)\n", this, locinfo, refs, usedef);
......@@ -3324,8 +2922,7 @@ numpunct_char* __thiscall numpunct_char_ctor_locinfo(numpunct_char *this,
/* ??0?$numpunct@D@std@@IAE@PBDI_N@Z */
/* ??0?$numpunct@D@std@@IEAA@PEBD_K_N@Z */
DEFINE_THISCALL_WRAPPER(numpunct_char_ctor_name, 16)
numpunct_char* __thiscall numpunct_char_ctor_name(numpunct_char *this,
static numpunct_char* numpunct_char_ctor_name(numpunct_char *this,
const char *name, MSVCP_size_t refs, MSVCP_bool usedef)
{
_Locinfo locinfo;
......@@ -3340,27 +2937,9 @@ numpunct_char* __thiscall numpunct_char_ctor_name(numpunct_char *this,
return this;
}
/* ??0?$numpunct@D@std@@QAE@I@Z */
/* ??0?$numpunct@D@std@@QEAA@_K@Z */
DEFINE_THISCALL_WRAPPER(numpunct_char_ctor_refs, 8)
numpunct_char* __thiscall numpunct_char_ctor_refs(numpunct_char *this, MSVCP_size_t refs)
{
TRACE("(%p %lu)\n", this, refs);
return numpunct_char_ctor_name(this, "C", refs, FALSE);
}
/* ??_F?$numpunct@D@std@@QAEXXZ */
/* ??_F?$numpunct@D@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(numpunct_char_ctor, 4)
numpunct_char* __thiscall numpunct_char_ctor(numpunct_char *this)
{
return numpunct_char_ctor_refs(this, 0);
}
/* ??1?$numpunct@D@std@@MAE@XZ */
/* ??1?$numpunct@D@std@@MEAA@XZ */
DEFINE_THISCALL_WRAPPER(numpunct_char_dtor, 4)
void __thiscall numpunct_char_dtor(numpunct_char *this)
static void numpunct_char_dtor(numpunct_char *this)
{
TRACE("(%p)\n", this);
numpunct_char__Tidy(this);
......@@ -3447,8 +3026,7 @@ char __thiscall numpunct_char_do_decimal_point(const numpunct_char *this)
/* ?decimal_point@?$numpunct@D@std@@QBEDXZ */
/* ?decimal_point@?$numpunct@D@std@@QEBADXZ */
DEFINE_THISCALL_WRAPPER(numpunct_char_decimal_point, 4)
char __thiscall numpunct_char_decimal_point(const numpunct_char *this)
static char numpunct_char_decimal_point(const numpunct_char *this)
{
TRACE("(%p)\n", this);
return call_numpunct_char_do_decimal_point(this);
......@@ -3467,8 +3045,7 @@ char __thiscall numpunct_char_do_thousands_sep(const numpunct_char *this)
/* ?thousands_sep@?$numpunct@D@std@@QBEDXZ */
/* ?thousands_sep@?$numpunct@D@std@@QEBADXZ */
DEFINE_THISCALL_WRAPPER(numpunct_char_thousands_sep, 4)
char __thiscall numpunct_char_thousands_sep(const numpunct_char *this)
static char numpunct_char_thousands_sep(const numpunct_char *this)
{
TRACE("(%p)\n", this);
return call_numpunct_char_do_thousands_sep(this);
......@@ -3488,8 +3065,7 @@ basic_string_char* __thiscall numpunct_char_do_grouping(
/* ?grouping@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
/* ?grouping@?$numpunct@D@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
DEFINE_THISCALL_WRAPPER(numpunct_char_grouping, 8)
basic_string_char* __thiscall numpunct_char_grouping(const numpunct_char *this, basic_string_char *ret)
static basic_string_char* numpunct_char_grouping(const numpunct_char *this, basic_string_char *ret)
{
TRACE("(%p)\n", this);
return call_numpunct_char_do_grouping(this, ret);
......@@ -3509,8 +3085,7 @@ basic_string_char* __thiscall numpunct_char_do_falsename(
/* ?falsename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
/* ?falsename@?$numpunct@D@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
DEFINE_THISCALL_WRAPPER(numpunct_char_falsename, 8)
basic_string_char* __thiscall numpunct_char_falsename(const numpunct_char *this, basic_string_char *ret)
static basic_string_char* numpunct_char_falsename(const numpunct_char *this, basic_string_char *ret)
{
TRACE("(%p)\n", this);
return call_numpunct_char_do_falsename(this, ret);
......@@ -3530,8 +3105,7 @@ basic_string_char* __thiscall numpunct_char_do_truename(
/* ?truename@?$numpunct@D@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
/* ?truename@?$numpunct@D@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
DEFINE_THISCALL_WRAPPER(numpunct_char_truename, 8)
basic_string_char* __thiscall numpunct_char_truename(const numpunct_char *this, basic_string_char *ret)
static basic_string_char* numpunct_char_truename(const numpunct_char *this, basic_string_char *ret)
{
TRACE("(%p)\n", this);
return call_numpunct_char_do_truename(this, ret);
......@@ -3551,8 +3125,7 @@ extern const vtable_ptr MSVCP_numpunct_short_vtable;
/* ?_Init@?$numpunct@_W@std@@IEAAXAEBV_Locinfo@2@_N@Z */
/* ?_Init@?$numpunct@G@std@@IAEXABV_Locinfo@2@_N@Z */
/* ?_Init@?$numpunct@G@std@@IEAAXAEBV_Locinfo@2@_N@Z */
DEFINE_THISCALL_WRAPPER(numpunct_wchar__Init, 12)
void __thiscall numpunct_wchar__Init(numpunct_wchar *this,
static void numpunct_wchar__Init(numpunct_wchar *this,
const _Locinfo *locinfo, MSVCP_bool isdef)
{
const char *to_convert;
......@@ -3610,8 +3183,7 @@ void __thiscall numpunct_wchar__Init(numpunct_wchar *this,
/* ?_Tidy@?$numpunct@_W@std@@AEAAXXZ */
/* ?_Tidy@?$numpunct@G@std@@AAEXXZ */
/* ?_Tidy@?$numpunct@G@std@@AEAAXXZ */
DEFINE_THISCALL_WRAPPER(numpunct_wchar__Tidy, 4)
void __thiscall numpunct_wchar__Tidy(numpunct_wchar *this)
static void numpunct_wchar__Tidy(numpunct_wchar *this)
{
TRACE("(%p)\n", this);
......@@ -3622,8 +3194,7 @@ void __thiscall numpunct_wchar__Tidy(numpunct_wchar *this)
/* ??0?$numpunct@_W@std@@QAE@ABV_Locinfo@1@I_N@Z */
/* ??0?$numpunct@_W@std@@QEAA@AEBV_Locinfo@1@_K_N@Z */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_ctor_locinfo, 16)
numpunct_wchar* __thiscall numpunct_wchar_ctor_locinfo(numpunct_wchar *this,
static numpunct_wchar* numpunct_wchar_ctor_locinfo(numpunct_wchar *this,
const _Locinfo *locinfo, MSVCP_size_t refs, MSVCP_bool usedef)
{
TRACE("(%p %p %lu %d)\n", this, locinfo, refs, usedef);
......@@ -3635,8 +3206,7 @@ numpunct_wchar* __thiscall numpunct_wchar_ctor_locinfo(numpunct_wchar *this,
/* ??0?$numpunct@G@std@@QAE@ABV_Locinfo@1@I_N@Z */
/* ??0?$numpunct@G@std@@QEAA@AEBV_Locinfo@1@_K_N@Z */
DEFINE_THISCALL_WRAPPER(numpunct_short_ctor_locinfo, 16)
numpunct_wchar* __thiscall numpunct_short_ctor_locinfo(numpunct_wchar *this,
static numpunct_wchar* numpunct_short_ctor_locinfo(numpunct_wchar *this,
const _Locinfo *locinfo, MSVCP_size_t refs, MSVCP_bool usedef)
{
numpunct_wchar_ctor_locinfo(this, locinfo, refs, usedef);
......@@ -3646,8 +3216,7 @@ numpunct_wchar* __thiscall numpunct_short_ctor_locinfo(numpunct_wchar *this,
/* ??0?$numpunct@_W@std@@IAE@PBDI_N@Z */
/* ??0?$numpunct@_W@std@@IEAA@PEBD_K_N@Z */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_ctor_name, 16)
numpunct_wchar* __thiscall numpunct_wchar_ctor_name(numpunct_wchar *this,
static numpunct_wchar* numpunct_wchar_ctor_name(numpunct_wchar *this,
const char *name, MSVCP_size_t refs, MSVCP_bool usedef)
{
_Locinfo locinfo;
......@@ -3664,8 +3233,7 @@ numpunct_wchar* __thiscall numpunct_wchar_ctor_name(numpunct_wchar *this,
/* ??0?$numpunct@G@std@@IAE@PBDI_N@Z */
/* ??0?$numpunct@G@std@@IEAA@PEBD_K_N@Z */
DEFINE_THISCALL_WRAPPER(numpunct_short_ctor_name, 16)
numpunct_wchar* __thiscall numpunct_short_ctor_name(numpunct_wchar *this,
static numpunct_wchar* numpunct_short_ctor_name(numpunct_wchar *this,
const char *name, MSVCP_size_t refs, MSVCP_bool usedef)
{
numpunct_wchar_ctor_name(this, name, refs, usedef);
......@@ -3673,47 +3241,11 @@ numpunct_wchar* __thiscall numpunct_short_ctor_name(numpunct_wchar *this,
return this;
}
/* ??0?$numpunct@_W@std@@QAE@I@Z */
/* ??0?$numpunct@_W@std@@QEAA@_K@Z */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_ctor_refs, 8)
numpunct_wchar* __thiscall numpunct_wchar_ctor_refs(numpunct_wchar *this, MSVCP_size_t refs)
{
TRACE("(%p %lu)\n", this, refs);
return numpunct_wchar_ctor_name(this, "C", refs, FALSE);
}
/* ??0?$numpunct@G@std@@QAE@I@Z */
/* ??0?$numpunct@G@std@@QEAA@_K@Z */
DEFINE_THISCALL_WRAPPER(numpunct_short_ctor_refs, 8)
numpunct_wchar* __thiscall numpunct_short_ctor_refs(numpunct_wchar *this, MSVCP_size_t refs)
{
numpunct_wchar_ctor_refs(this, refs);
this->facet.vtable = &MSVCP_numpunct_short_vtable;
return this;
}
/* ??_F?$numpunct@_W@std@@QAEXXZ */
/* ??_F?$numpunct@_W@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_ctor, 4)
numpunct_wchar* __thiscall numpunct_wchar_ctor(numpunct_wchar *this)
{
return numpunct_wchar_ctor_refs(this, 0);
}
/* ??_F?$numpunct@G@std@@QAEXXZ */
/* ??_F?$numpunct@G@std@@QEAAXXZ */
DEFINE_THISCALL_WRAPPER(numpunct_short_ctor, 4)
numpunct_wchar* __thiscall numpunct_short_ctor(numpunct_wchar *this)
{
return numpunct_short_ctor_refs(this, 0);
}
/* ??1?$numpunct@_W@std@@MAE@XZ */
/* ??1?$numpunct@_W@std@@MEAA@XZ */
/* ??1?$numpunct@G@std@@MAE@XZ */
/* ??1?$numpunct@G@std@@MEAA@XZ */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_dtor, 4)
void __thiscall numpunct_wchar_dtor(numpunct_wchar *this)
static void numpunct_wchar_dtor(numpunct_wchar *this)
{
TRACE("(%p)\n", this);
numpunct_wchar__Tidy(this);
......@@ -3852,8 +3384,7 @@ wchar_t __thiscall numpunct_wchar_do_decimal_point(const numpunct_wchar *this)
/* ?decimal_point@?$numpunct@_W@std@@QEBA_WXZ */
/* ?decimal_point@?$numpunct@G@std@@QBEGXZ */
/* ?decimal_point@?$numpunct@G@std@@QEBAGXZ */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_decimal_point, 4)
wchar_t __thiscall numpunct_wchar_decimal_point(const numpunct_wchar *this)
static wchar_t numpunct_wchar_decimal_point(const numpunct_wchar *this)
{
TRACE("(%p)\n", this);
return call_numpunct_wchar_do_decimal_point(this);
......@@ -3876,8 +3407,7 @@ wchar_t __thiscall numpunct_wchar_do_thousands_sep(const numpunct_wchar *this)
/* ?thousands_sep@?$numpunct@_W@std@@QEBA_WXZ */
/* ?thousands_sep@?$numpunct@G@std@@QBEGXZ */
/* ?thousands_sep@?$numpunct@G@std@@QEBAGXZ */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_thousands_sep, 4)
wchar_t __thiscall numpunct_wchar_thousands_sep(const numpunct_wchar *this)
static wchar_t numpunct_wchar_thousands_sep(const numpunct_wchar *this)
{
TRACE("(%p)\n", this);
return call_numpunct_wchar_do_thousands_sep(this);
......@@ -3900,8 +3430,7 @@ basic_string_char* __thiscall numpunct_wchar_do_grouping(const numpunct_wchar *t
/* ?grouping@?$numpunct@_W@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
/* ?grouping@?$numpunct@G@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
/* ?grouping@?$numpunct@G@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_grouping, 8)
basic_string_char* __thiscall numpunct_wchar_grouping(const numpunct_wchar *this, basic_string_char *ret)
static basic_string_char* numpunct_wchar_grouping(const numpunct_wchar *this, basic_string_char *ret)
{
TRACE("(%p)\n", this);
return call_numpunct_wchar_do_grouping(this, ret);
......@@ -3924,8 +3453,7 @@ basic_string_wchar* __thiscall numpunct_wchar_do_falsename(const numpunct_wchar
/* ?falsename@?$numpunct@_W@std@@QEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@XZ */
/* ?falsename@?$numpunct@G@std@@QBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@XZ */
/* ?falsename@?$numpunct@G@std@@QEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@XZ */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_falsename, 8)
basic_string_wchar* __thiscall numpunct_wchar_falsename(const numpunct_wchar *this, basic_string_wchar *ret)
static basic_string_wchar* numpunct_wchar_falsename(const numpunct_wchar *this, basic_string_wchar *ret)
{
TRACE("(%p)\n", this);
return call_numpunct_wchar_do_falsename(this, ret);
......@@ -3948,8 +3476,7 @@ basic_string_wchar* __thiscall numpunct_wchar_do_truename(const numpunct_wchar *
/* ?truename@?$numpunct@_W@std@@QEBA?AV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@2@XZ */
/* ?truename@?$numpunct@G@std@@QBE?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@XZ */
/* ?truename@?$numpunct@G@std@@QEBA?AV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@2@XZ */
DEFINE_THISCALL_WRAPPER(numpunct_wchar_truename, 8)
basic_string_wchar* __thiscall numpunct_wchar_truename(const numpunct_wchar *this, basic_string_wchar *ret)
static basic_string_wchar* numpunct_wchar_truename(const numpunct_wchar *this, basic_string_wchar *ret)
{
TRACE("(%p)\n", this);
return call_numpunct_wchar_do_truename(this, ret);
......@@ -8055,8 +7582,7 @@ const vtable_ptr MSVCP_locale__Locimp_vtable[] = {
/* ??0locale@std@@AAE@PAV_Locimp@01@@Z */
/* ??0locale@std@@AEAA@PEAV_Locimp@01@@Z */
DEFINE_THISCALL_WRAPPER(locale_ctor_locimp, 8)
locale* __thiscall locale_ctor_locimp(locale *this, locale__Locimp *locimp)
static locale* locale_ctor_locimp(locale *this, locale__Locimp *locimp)
{
TRACE("(%p %p)\n", this, locimp);
/* Don't change locimp reference counter */
......@@ -8099,34 +7625,9 @@ locale__Locimp* __cdecl locale__Init(void)
return global_locale;
}
/* ??0locale@std@@QAE@ABV01@0H@Z */
/* ??0locale@std@@QEAA@AEBV01@0H@Z */
DEFINE_THISCALL_WRAPPER(locale_ctor_locale_locale, 16)
locale* __thiscall locale_ctor_locale_locale(locale *this, const locale *loc, const locale *other, category cat)
{
_Locinfo locinfo;
TRACE("(%p %p %p %d)\n", this, loc, other, cat);
this->ptr = MSVCRT_operator_new(sizeof(locale__Locimp));
if(!this->ptr) {
ERR("Out of memory\n");
throw_exception(EXCEPTION_BAD_ALLOC, NULL);
}
locale__Locimp_copy_ctor(this->ptr, loc->ptr);
_Locinfo_ctor_cat_cstr(&locinfo, loc->ptr->catmask, MSVCP_basic_string_char_c_str(&loc->ptr->name));
_Locinfo__Addcats(&locinfo, cat & other->ptr->catmask, MSVCP_basic_string_char_c_str(&other->ptr->name));
locale__Locimp__Makeloc(&locinfo, cat, this->ptr, other);
_Locinfo_dtor(&locinfo);
return this;
}
/* ??0locale@std@@QAE@ABV01@@Z */
/* ??0locale@std@@QEAA@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(locale_copy_ctor, 8)
locale* __thiscall locale_copy_ctor(locale *this, const locale *copy)
locale* locale_copy_ctor(locale *this, const locale *copy)
{
TRACE("(%p %p)\n", this, copy);
this->ptr = copy->ptr;
......@@ -8134,60 +7635,9 @@ locale* __thiscall locale_copy_ctor(locale *this, const locale *copy)
return this;
}
/* ??0locale@std@@QAE@ABV01@PBDH@Z */
/* ??0locale@std@@QEAA@AEBV01@PEBDH@Z */
DEFINE_THISCALL_WRAPPER(locale_ctor_locale_cstr, 16)
locale* __thiscall locale_ctor_locale_cstr(locale *this, const locale *loc, const char *locname, category cat)
{
FIXME("(%p %p %s %d) stub\n", this, loc, locname, cat);
return NULL;
}
/* ??0locale@std@@QAE@PBDH@Z */
/* ??0locale@std@@QEAA@PEBDH@Z */
DEFINE_THISCALL_WRAPPER(locale_ctor_cstr, 12)
locale* __thiscall locale_ctor_cstr(locale *this, const char *locname, category cat)
{
_Locinfo locinfo;
TRACE("(%p %s %d)\n", this, locname, cat);
this->ptr = MSVCRT_operator_new(sizeof(locale__Locimp));
if(!this->ptr) {
ERR("Out of memory\n");
throw_exception(EXCEPTION_BAD_ALLOC, NULL);
}
locale__Locimp_ctor(this->ptr);
locale__Init();
_Locinfo_ctor_cat_cstr(&locinfo, cat, locname);
if(!memcmp(MSVCP_basic_string_char_c_str(&locinfo.newlocname), "*", 2)) {
_Locinfo_dtor(&locinfo);
MSVCRT_operator_delete(this->ptr);
throw_exception(EXCEPTION_RUNTIME_ERROR, "bad locale name");
}
locale__Locimp__Makeloc(&locinfo, cat, this->ptr, NULL);
_Locinfo_dtor(&locinfo);
return this;
}
/* ??0locale@std@@QAE@W4_Uninitialized@1@@Z */
/* ??0locale@std@@QEAA@W4_Uninitialized@1@@Z */
DEFINE_THISCALL_WRAPPER(locale_ctor_uninitialized, 8)
locale* __thiscall locale_ctor_uninitialized(locale *this, int uninitialized)
{
TRACE("(%p)\n", this);
this->ptr = NULL;
return this;
}
/* ??0locale@std@@QAE@XZ */
/* ??0locale@std@@QEAA@XZ */
DEFINE_THISCALL_WRAPPER(locale_ctor, 4)
locale* __thiscall locale_ctor(locale *this)
locale* locale_ctor(locale *this)
{
TRACE("(%p)\n", this);
this->ptr = locale__Init();
......@@ -8197,93 +7647,24 @@ locale* __thiscall locale_ctor(locale *this)
/* ??1locale@std@@QAE@XZ */
/* ??1locale@std@@QEAA@XZ */
DEFINE_THISCALL_WRAPPER(locale_dtor, 4)
void __thiscall locale_dtor(locale *this)
void locale_dtor(locale *this)
{
TRACE("(%p)\n", this);
if(this->ptr)
locale__Locimp_dtor(this->ptr);
}
DEFINE_THISCALL_WRAPPER(locale_vector_dtor, 8)
locale* __thiscall locale_vector_dtor(locale *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_PTR i, *ptr = (INT_PTR *)this-1;
for(i=*ptr-1; i>=0; i--)
locale_dtor(this+i);
MSVCRT_operator_delete(ptr);
} else {
locale_dtor(this);
if(flags & 1)
MSVCRT_operator_delete(this);
}
return this;
}
/* ??4locale@std@@QAEAAV01@ABV01@@Z */
/* ??4locale@std@@QEAAAEAV01@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(locale_operator_assign, 8)
locale* __thiscall locale_operator_assign(locale *this, const locale *loc)
locale* locale_operator_assign(locale *this, const locale *loc)
{
FIXME("(%p %p) stub\n", this, loc);
return NULL;
}
/* ??8locale@std@@QBE_NABV01@@Z */
/* ??8locale@std@@QEBA_NAEBV01@@Z */
DEFINE_THISCALL_WRAPPER(locale_operator_equal, 8)
MSVCP_bool __thiscall locale_operator_equal(const locale *this, const locale *loc)
{
FIXME("(%p %p) stub\n", this, loc);
return 0;
}
/* ??9locale@std@@QBE_NABV01@@Z */
/* ??9locale@std@@QEBA_NAEBV01@@Z */
DEFINE_THISCALL_WRAPPER(locale_operator_not_equal, 8)
MSVCP_bool __thiscall locale_operator_not_equal(const locale *this, locale const *loc)
{
FIXME("(%p %p) stub\n", this, loc);
return 0;
}
/* ?_Addfac@locale@std@@QAEAAV12@PAVfacet@12@II@Z */
/* ?_Addfac@locale@std@@QEAAAEAV12@PEAVfacet@12@_K1@Z */
DEFINE_THISCALL_WRAPPER(locale__Addfac, 16)
locale* __thiscall locale__Addfac(locale *this, locale_facet *facet, MSVCP_size_t id, MSVCP_size_t catmask)
{
TRACE("(%p %p %lu %lu)\n", this, facet, id, catmask);
if(this->ptr->facet.refs > 1) {
locale__Locimp *new_ptr = MSVCRT_operator_new(sizeof(locale__Locimp));
if(!new_ptr) {
ERR("Out of memory\n");
throw_exception(EXCEPTION_BAD_ALLOC, NULL);
return NULL;
}
locale__Locimp_copy_ctor(new_ptr, this->ptr);
locale_facet__Decref(&this->ptr->facet);
this->ptr = new_ptr;
}
locale__Locimp__Addfac(this->ptr, facet, id);
if(catmask) {
MSVCP_basic_string_char_dtor(&this->ptr->name);
MSVCP_basic_string_char_ctor_cstr(&this->ptr->name, "*");
}
return this;
}
/* ?_Getfacet@locale@std@@QBEPBVfacet@12@I@Z */
/* ?_Getfacet@locale@std@@QEBAPEBVfacet@12@_K@Z */
DEFINE_THISCALL_WRAPPER(locale__Getfacet, 8)
const locale_facet* __thiscall locale__Getfacet(const locale *this, MSVCP_size_t id)
static const locale_facet* locale__Getfacet(const locale *this, MSVCP_size_t id)
{
locale_facet *fac;
......@@ -8337,16 +7718,6 @@ locale* __cdecl locale_empty(locale *ret)
return ret;
}
/* ?name@locale@std@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
/* ?name@locale@std@@QEBA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@XZ */
DEFINE_THISCALL_WRAPPER(locale_name, 8)
basic_string_char* __thiscall locale_name(const locale *this, basic_string_char *ret)
{
TRACE( "(%p)\n", this);
MSVCP_basic_string_char_copy_ctor(ret, &this->ptr->name);
return ret;
}
/* ?global@locale@std@@SA?AV12@ABV12@@Z */
/* ?global@locale@std@@SA?AV12@AEBV12@@Z */
locale* __cdecl locale_global(locale *ret, const locale *loc)
......
......@@ -801,15 +801,3 @@ BOOLEAN __cdecl std_numeric_limits_bool_signaling_NaN(void) { return 0; }
/* ?signaling_NaN@?$numeric_limits@_W@std@@SA_WXZ -> public: static wchar_t __cdecl std::numeric_limits<wchar_t>::signaling_NaN(void) */
WCHAR __cdecl std_numeric_limits_wchar_t_signaling_NaN(void) { return 0; }
/* ??4?$_Ctraits@M@std@@QAEAAV01@ABV01@@Z -> public: class std::_Ctraits<float> & __thiscall std::_Ctraits<float>::operator=(class std::_Ctraits<float> const &) */
/* ??4?$_Ctraits@M@std@@QEAAAEAV01@AEBV01@@Z -> public: class std::_Ctraits<float> & __ptr64 __cdecl std::_Ctraits<float>::operator=(class std::_Ctraits<float> const & __ptr64) __ptr64 */
/* ??4?$_Ctraits@N@std@@QAEAAV01@ABV01@@Z -> public: class std::_Ctraits<double> & __thiscall std::_Ctraits<double>::operator=(class std::_Ctraits<double> const &) */
/* ??4?$_Ctraits@N@std@@QEAAAEAV01@AEBV01@@Z -> public: class std::_Ctraits<double> & __ptr64 __cdecl std::_Ctraits<double>::operator=(class std::_Ctraits<double> const & __ptr64) __ptr64 */
/* ??4?$_Ctraits@O@std@@QAEAAV01@ABV01@@Z -> public: class std::_Ctraits<long double> & __thiscall std::_Ctraits<long double>::operator=(class std::_Ctraits<long double> const &) */
/* ??4?$_Ctraits@O@std@@QEAAAEAV01@AEBV01@@Z -> public: class std::_Ctraits<long double> & __ptr64 __cdecl std::_Ctraits<long double>::operator=(class std::_Ctraits<long double> const & __ptr64) __ptr64 */
DEFINE_THISCALL_WRAPPER( std_Ctraits_op_assign, 8 )
std_Ctraits * __thiscall std_Ctraits_op_assign( std_Ctraits *this, std_Ctraits *right )
{
return this;
}
......@@ -27,141 +27,29 @@
#include "winbase.h"
/* ?address@?$allocator@D@std@@QBEPADAAD@Z */
/* ?address@?$allocator@D@std@@QEBAPEADAEAD@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_address, 8)
char* __thiscall MSVCP_allocator_char_address(void *this, char *ptr)
{
return ptr;
}
/* ?address@?$allocator@D@std@@QBEPBDABD@Z */
/* ?address@?$allocator@D@std@@QEBAPEBDAEBD@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_const_address, 8)
const char* __thiscall MSVCP_allocator_char_const_address(void *this, const char *ptr)
{
return ptr;
}
/* ??0?$allocator@D@std@@QAE@XZ */
/* ??0?$allocator@D@std@@QEAA@XZ */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_ctor, 4)
void* __thiscall MSVCP_allocator_char_ctor(void *this)
{
return this;
}
/* ??0?$allocator@D@std@@QAE@ABV01@@Z */
/* ??0?$allocator@D@std@@QEAA@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_copy_ctor, 8)
void* __thiscall MSVCP_allocator_char_copy_ctor(void *this, const void *copy)
{
return this;
}
/* ??4?$allocator@D@std@@QAEAAV01@ABV01@@Z */
/* ??4?$allocator@D@std@@QEAAAEAV01@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_assign, 8)
void* __thiscall MSVCP_allocator_char_assign(void *this, const void *assign)
{
return this;
}
/* ?deallocate@?$allocator@D@std@@QAEXPADI@Z */
/* ?deallocate@?$allocator@D@std@@QEAAXPEAD_K@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_deallocate, 12)
void __thiscall MSVCP_allocator_char_deallocate(void *this, char *ptr, MSVCP_size_t size)
void MSVCP_allocator_char_deallocate(void *this, char *ptr, MSVCP_size_t size)
{
MSVCRT_operator_delete(ptr);
}
/* ?allocate@?$allocator@D@std@@QAEPADI@Z */
/* ?allocate@?$allocator@D@std@@QEAAPEAD_K@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_allocate, 8)
char* __thiscall MSVCP_allocator_char_allocate(void *this, MSVCP_size_t count)
char* MSVCP_allocator_char_allocate(void *this, MSVCP_size_t count)
{
return MSVCRT_operator_new(count);
}
/* ?allocate@?$allocator@D@std@@QAEPADIPBX@Z */
/* ?allocate@?$allocator@D@std@@QEAAPEAD_KPEBX@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_allocate_hint, 12)
char* __thiscall MSVCP_allocator_char_allocate_hint(void *this,
MSVCP_size_t count, const void *hint)
{
/* Native ignores hint */
return MSVCP_allocator_char_allocate(this, count);
}
/* ?construct@?$allocator@D@std@@QAEXPADABD@Z */
/* ?construct@?$allocator@D@std@@QEAAXPEADAEBD@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_construct, 12)
void __thiscall MSVCP_allocator_char_construct(void *this, char *ptr, const char *val)
{
*ptr = *val;
}
/* ?destroy@?$allocator@D@std@@QAEXPAD@Z */
/* ?destroy@?$allocator@D@std@@QEAAXPEAD@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_destroy, 8)
void __thiscall MSVCP_allocator_char_destroy(void *this, char *ptr)
{
}
/* ?max_size@?$allocator@D@std@@QBEIXZ */
/* ?max_size@?$allocator@D@std@@QEBA_KXZ */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_max_size, 4)
MSVCP_size_t __thiscall MSVCP_allocator_char_max_size(void *this)
MSVCP_size_t MSVCP_allocator_char_max_size(void *this)
{
return UINT_MAX/sizeof(char);
}
/* allocator<wchar_t> */
/* ?address@?$allocator@_W@std@@QBEPA_WAA_W@Z */
/* ?address@?$allocator@_W@std@@QEBAPEA_WAEA_W@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_address, 8)
wchar_t* __thiscall MSVCP_allocator_wchar_address(void *this, wchar_t *ptr)
{
return ptr;
}
/* ?address@?$allocator@_W@std@@QBEPB_WAB_W@Z */
/* ?address@?$allocator@_W@std@@QEBAPEB_WAEB_W@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_const_address, 8)
const wchar_t* __thiscall MSVCP_allocator_wchar_const_address(void *this, const wchar_t *ptr)
{
return ptr;
}
/* ??0?$allocator@_W@std@@QAE@XZ */
/* ??0?$allocator@_W@std@@QEAA@XZ */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_ctor, 4)
void* __thiscall MSVCP_allocator_wchar_ctor(void *this)
{
return this;
}
/* ??0?$allocator@_W@std@@QAE@ABV01@@Z */
/* ??0?$allocator@_W@std@@QEAA@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_copy_ctor, 8)
void* __thiscall MSVCP_allocator_wchar_copy_ctor(void *this, void *copy)
{
return this;
}
/* ??4?$allocator@_W@std@@QAEAAV01@ABV01@@Z */
/* ??4?$allocator@_W@std@@QEAAAEAV01@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_assign, 8)
void* __thiscall MSVCP_allocator_wchar_assign(void *this, void *assign)
{
return this;
}
/* ?deallocate@?$allocator@_W@std@@QAEXPA_WI@Z */
/* ?deallocate@?$allocator@_W@std@@QEAAXPEA_W_K@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_deallocate, 12)
void __thiscall MSVCP_allocator_wchar_deallocate(void *this,
void MSVCP_allocator_wchar_deallocate(void *this,
wchar_t *ptr, MSVCP_size_t size)
{
MSVCRT_operator_delete(ptr);
......@@ -169,8 +57,7 @@ void __thiscall MSVCP_allocator_wchar_deallocate(void *this,
/* ?allocate@?$allocator@_W@std@@QAEPA_WI@Z */
/* ?allocate@?$allocator@_W@std@@QEAAPEA_W_K@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_allocate, 8)
wchar_t* __thiscall MSVCP_allocator_wchar_allocate(void *this, MSVCP_size_t count)
wchar_t* MSVCP_allocator_wchar_allocate(void *this, MSVCP_size_t count)
{
if(UINT_MAX/count < sizeof(wchar_t)) {
throw_exception(EXCEPTION_BAD_ALLOC, NULL);
......@@ -180,159 +67,9 @@ wchar_t* __thiscall MSVCP_allocator_wchar_allocate(void *this, MSVCP_size_t coun
return MSVCRT_operator_new(count * sizeof(wchar_t));
}
/* ?allocate@?$allocator@_W@std@@QAEPA_WIPBX@Z */
/* ?allocate@?$allocator@_W@std@@QEAAPEA_W_KPEBX@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_allocate_hint, 12)
wchar_t* __thiscall MSVCP_allocator_wchar_allocate_hint(void *this,
MSVCP_size_t count, const void *hint)
{
return MSVCP_allocator_wchar_allocate(this, count);
}
/* ?construct@?$allocator@_W@std@@QAEXPA_WAB_W@Z */
/* ?construct@?$allocator@_W@std@@QEAAXPEA_WAEB_W@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_construct, 12)
void __thiscall MSVCP_allocator_wchar_construct(void *this,
wchar_t *ptr, const wchar_t *val)
{
*ptr = *val;
}
/* ?destroy@?$allocator@_W@std@@QAEXPA_W@Z */
/* ?destroy@?$allocator@_W@std@@QEAAXPEA_W@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_destroy, 8)
void __thiscall MSVCP_allocator_wchar_destroy(void *this, char *ptr)
{
}
/* ?max_size@?$allocator@_W@std@@QBEIXZ */
/* ?max_size@?$allocator@_W@std@@QEBA_KXZ */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_max_size, 4)
MSVCP_size_t __thiscall MSVCP_allocator_wchar_max_size(void *this)
MSVCP_size_t MSVCP_allocator_wchar_max_size(void *this)
{
return UINT_MAX/sizeof(wchar_t);
}
/* allocator<unsigned short> */
/* ?address@?$allocator@G@std@@QBEPAGAAG@Z */
/* ?address@?$allocator@G@std@@QEBAPEAGAEAG@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_address, 8)
unsigned short* __thiscall MSVCP_allocator_short_address(
void *this, unsigned short *ptr)
{
return ptr;
}
/* ?address@?$allocator@G@std@@QBEPBGABG@Z */
/* ?address@?$allocator@G@std@@QEBAPEBGAEBG@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_const_address, 8)
const unsigned short* __thiscall MSVCP_allocator_short_const_address(
void *this, const unsigned short *ptr)
{
return ptr;
}
/* ??0?$allocator@G@std@@QAE@XZ */
/* ??0?$allocator@G@std@@QEAA@XZ */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_ctor, 4)
void* __thiscall MSVCP_allocator_short_ctor(void *this)
{
return this;
}
/* ??0?$allocator@G@std@@QAE@ABV01@@Z */
/* ??0?$allocator@G@std@@QEAA@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_copy_ctor, 8)
void* __thiscall MSVCP_allocator_short_copy_ctor(void *this, void *copy)
{
return this;
}
/* ??4?$allocator@G@std@@QAEAAV01@ABV01@@Z */
/* ??4?$allocator@G@std@@QEAAAEAV01@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_assign, 8)
void* __thiscall MSVCP_allocator_short_assign(void *this, void *assign)
{
return this;
}
/* ?deallocate@?$allocator@G@std@@QAEXPAGI@Z */
/* ?deallocate@?$allocator@G@std@@QEAAXPEAG_K@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_deallocate, 12)
void __thiscall MSVCP_allocator_short_deallocate(void *this,
unsigned short *ptr, MSVCP_size_t size)
{
MSVCRT_operator_delete(ptr);
}
/* ?allocate@?$allocator@G@std@@QAEPAGI@Z */
/* ?allocate@?$allocator@G@std@@QEAAPEAG_K@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_allocate, 8)
unsigned short* __thiscall MSVCP_allocator_short_allocate(
void *this, MSVCP_size_t count)
{
if(UINT_MAX/count < sizeof(unsigned short)) {
throw_exception(EXCEPTION_BAD_ALLOC, NULL);
return NULL;
}
return MSVCRT_operator_new(count * sizeof(unsigned short));
}
/* ?allocate@?$allocator@G@std@@QAEPAGIPBX@Z */
/* ?allocate@?$allocator@G@std@@QEAAPEAG_KPEBX@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_allocate_hint, 12)
unsigned short* __thiscall MSVCP_allocator_short_allocate_hint(
void *this, MSVCP_size_t count, const void *hint)
{
return MSVCP_allocator_short_allocate(this, count);
}
/* ?construct@?$allocator@G@std@@QAEXPAGABG@Z */
/* ?construct@?$allocator@G@std@@QEAAXPEAGAEBG@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_construct, 12)
void __thiscall MSVCP_allocator_short_construct(void *this,
unsigned short *ptr, unsigned short *val)
{
*ptr = *val;
}
/* ?destroy@?$allocator@G@std@@QAEXPAG@Z */
/* ?destroy@?$allocator@G@std@@QEAAXPEAG@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_destroy, 8)
void __thiscall MSVCP_allocator_short_destroy(void *this, MSVCP_size_t *ptr)
{
}
/* ?max_size@?$allocator@G@std@@QBEIXZ */
/* ?max_size@?$allocator@G@std@@QEBA_KXZ */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_max_size, 4)
MSVCP_size_t __thiscall MSVCP_allocator_short_max_size(void *this)
{
return UINT_MAX/sizeof(unsigned short);
}
/* allocator<void> */
/* ??0?$allocator@X@std@@QAE@XZ */
/* ??0?$allocator@X@std@@QEAA@XZ */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_void_ctor, 4)
void* __thiscall MSVCP_allocator_void_ctor(void *this)
{
return this;
}
/* ??0?$allocator@X@std@@QAE@ABV01@@Z */
/* ??0?$allocator@X@std@@QEAA@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_void_copy_ctor, 8)
void* __thiscall MSVCP_allocator_void_copy_ctor(void *this, void *copy)
{
return this;
}
/* ??4?$allocator@X@std@@QAEAAV01@ABV01@@Z */
/* ??4?$allocator@X@std@@QEAAAEAV01@AEBV01@@Z */
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_void_assign, 8)
void* __thiscall MSVCP_allocator_void_assign(void *this, void *assign)
{
return this;
}
......@@ -48,15 +48,13 @@ typedef struct
MSVCP_size_t res;
} basic_string_char;
basic_string_char* __thiscall MSVCP_basic_string_char_ctor(basic_string_char*);
basic_string_char* __stdcall MSVCP_basic_string_char_ctor_cstr(basic_string_char*, const char*);
basic_string_char* __thiscall MSVCP_basic_string_char_ctor_cstr_len(basic_string_char*, const char*, MSVCP_size_t);
basic_string_char* __stdcall MSVCP_basic_string_char_copy_ctor(basic_string_char*, const basic_string_char*);
void __stdcall MSVCP_basic_string_char_dtor(basic_string_char*);
const char* __stdcall MSVCP_basic_string_char_c_str(const basic_string_char*);
void __thiscall MSVCP_basic_string_char_clear(basic_string_char*);
basic_string_char* __thiscall MSVCP_basic_string_char_append_ch(basic_string_char*, char);
MSVCP_size_t __thiscall MSVCP_basic_string_char_length(const basic_string_char*);
basic_string_char* MSVCP_basic_string_char_ctor(basic_string_char*);
basic_string_char* MSVCP_basic_string_char_ctor_cstr(basic_string_char*, const char*);
basic_string_char* MSVCP_basic_string_char_ctor_cstr_len(basic_string_char*, const char*, MSVCP_size_t);
basic_string_char* MSVCP_basic_string_char_copy_ctor(basic_string_char*, const basic_string_char*);
void MSVCP_basic_string_char_dtor(basic_string_char*);
const char* MSVCP_basic_string_char_c_str(const basic_string_char*);
MSVCP_size_t MSVCP_basic_string_char_length(const basic_string_char*);
#define BUF_SIZE_WCHAR 8
typedef struct
......@@ -70,21 +68,19 @@ typedef struct
MSVCP_size_t res;
} basic_string_wchar;
basic_string_wchar* __thiscall MSVCP_basic_string_wchar_ctor(basic_string_wchar*);
basic_string_wchar* __stdcall MSVCP_basic_string_wchar_ctor_cstr(basic_string_wchar*, const wchar_t*);
basic_string_wchar* __thiscall MSVCP_basic_string_wchar_ctor_cstr_len(basic_string_wchar*, const wchar_t*, MSVCP_size_t);
void __thiscall MSVCP_basic_string_wchar_dtor(basic_string_wchar*);
const wchar_t* __thiscall MSVCP_basic_string_wchar_c_str(const basic_string_wchar*);
void __thiscall MSVCP_basic_string_wchar_clear(basic_string_wchar*);
basic_string_wchar* __thiscall MSVCP_basic_string_wchar_append_ch(basic_string_wchar*, wchar_t);
MSVCP_size_t __thiscall MSVCP_basic_string_wchar_length(const basic_string_wchar*);
char* __stdcall MSVCP_allocator_char_allocate(void*, MSVCP_size_t);
void __stdcall MSVCP_allocator_char_deallocate(void*, char*, MSVCP_size_t);
MSVCP_size_t __stdcall MSVCP_allocator_char_max_size(void*);
wchar_t* __stdcall MSVCP_allocator_wchar_allocate(void*, MSVCP_size_t);
void __stdcall MSVCP_allocator_wchar_deallocate(void*, wchar_t*, MSVCP_size_t);
MSVCP_size_t __stdcall MSVCP_allocator_wchar_max_size(void*);
basic_string_wchar* MSVCP_basic_string_wchar_ctor(basic_string_wchar*);
basic_string_wchar* MSVCP_basic_string_wchar_ctor_cstr(basic_string_wchar*, const wchar_t*);
basic_string_wchar* MSVCP_basic_string_wchar_ctor_cstr_len(basic_string_wchar*, const wchar_t*, MSVCP_size_t);
void MSVCP_basic_string_wchar_dtor(basic_string_wchar*);
const wchar_t* MSVCP_basic_string_wchar_c_str(const basic_string_wchar*);
MSVCP_size_t MSVCP_basic_string_wchar_length(const basic_string_wchar*);
char* MSVCP_allocator_char_allocate(void*, MSVCP_size_t);
void MSVCP_allocator_char_deallocate(void*, char*, MSVCP_size_t);
MSVCP_size_t MSVCP_allocator_char_max_size(void*);
wchar_t* MSVCP_allocator_wchar_allocate(void*, MSVCP_size_t);
void MSVCP_allocator_wchar_deallocate(void*, wchar_t*, MSVCP_size_t);
MSVCP_size_t MSVCP_allocator_wchar_max_size(void*);
/* class locale::facet */
typedef struct {
......@@ -173,10 +169,10 @@ typedef struct
struct _locale__Locimp *ptr;
} locale;
locale* __thiscall locale_ctor(locale*);
locale* __thiscall locale_copy_ctor(locale*, const locale*);
locale* __thiscall locale_operator_assign(locale*, const locale*);
void __thiscall locale_dtor(locale*);
locale* locale_ctor(locale*);
locale* locale_copy_ctor(locale*, const locale*);
locale* locale_operator_assign(locale*, const locale*);
void locale_dtor(locale*);
void free_locale(void);
codecvt_char* codecvt_char_use_facet(const locale*);
codecvt_wchar* codecvt_wchar_use_facet(const locale*);
......
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment