msvcrt: Use a __thiscall macro where appropriate to make the calling convention clearer.
This commit is contained in:
parent
c6423058db
commit
14072676a6
|
@ -43,6 +43,7 @@ typedef struct {
|
|||
|
||||
#define THISCALL(func) __thiscall_ ## func
|
||||
#define THISCALL_NAME(func) __ASM_NAME("__thiscall_" #func)
|
||||
#define __thiscall __stdcall
|
||||
#define DEFINE_THISCALL_WRAPPER(func,args) \
|
||||
extern void THISCALL(func)(void); \
|
||||
__ASM_GLOBAL_FUNC(__thiscall_ ## func, \
|
||||
|
@ -54,6 +55,7 @@ typedef struct {
|
|||
|
||||
#define THISCALL(func) func
|
||||
#define THISCALL_NAME(func) __ASM_NAME(#func)
|
||||
#define __thiscall __cdecl
|
||||
#define DEFINE_THISCALL_WRAPPER(func,args) /* nothing */
|
||||
|
||||
#endif /* __i386__ */
|
||||
|
@ -63,7 +65,7 @@ typedef struct {
|
|||
* class ios & __thiscall ios::-ios<<(void)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCIRT_ios_sl_void,4)
|
||||
void * __stdcall MSVCIRT_ios_sl_void(class_ios * _this)
|
||||
void * __thiscall MSVCIRT_ios_sl_void(class_ios * _this)
|
||||
{
|
||||
FIXME("(%p) stub\n", _this);
|
||||
return _this;
|
||||
|
@ -74,7 +76,7 @@ void * __stdcall MSVCIRT_ios_sl_void(class_ios * _this)
|
|||
* class ostream & __thiscall ostrstream::ostrstream<<(void)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCIRT_ostrstream_sl_void,4)
|
||||
void * __stdcall MSVCIRT_ostrstream_sl_void(class_ostream * _this)
|
||||
void * __thiscall MSVCIRT_ostrstream_sl_void(class_ostream * _this)
|
||||
{
|
||||
FIXME("(%p) stub\n", _this);
|
||||
return _this;
|
||||
|
@ -85,7 +87,7 @@ void * __stdcall MSVCIRT_ostrstream_sl_void(class_ostream * _this)
|
|||
* class ostream & __thiscall ostream::operator<<(unsigned char)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCIRT_operator_sl_uchar,8)
|
||||
void * __stdcall MSVCIRT_operator_sl_uchar(class_ostream * _this, unsigned char ch)
|
||||
void * __thiscall MSVCIRT_operator_sl_uchar(class_ostream * _this, unsigned char ch)
|
||||
{
|
||||
FIXME("(%p)->(%c) stub\n", _this, ch);
|
||||
return _this;
|
||||
|
@ -96,7 +98,7 @@ void * __stdcall MSVCIRT_operator_sl_uchar(class_ostream * _this, unsigned char
|
|||
* class ostream & __thiscall ostream::operator<<(int)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCIRT_operator_sl_int,8)
|
||||
void * __stdcall MSVCIRT_operator_sl_int(class_ostream * _this, int integer)
|
||||
void * __thiscall MSVCIRT_operator_sl_int(class_ostream * _this, int integer)
|
||||
{
|
||||
FIXME("(%p)->(%d) stub\n", _this, integer);
|
||||
return _this;
|
||||
|
@ -107,7 +109,7 @@ void * __stdcall MSVCIRT_operator_sl_int(class_ostream * _this, int integer)
|
|||
* class ostream & __thiscall ostream::operator<<(char const *)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCIRT_operator_sl_pchar,8)
|
||||
void * __stdcall MSVCIRT_operator_sl_pchar(class_ostream * _this, const char * string)
|
||||
void * __thiscall MSVCIRT_operator_sl_pchar(class_ostream * _this, const char * string)
|
||||
{
|
||||
FIXME("(%p)->(%s) stub\n", _this, debugstr_a(string));
|
||||
return _this;
|
||||
|
@ -118,7 +120,7 @@ void * __stdcall MSVCIRT_operator_sl_pchar(class_ostream * _this, const char * s
|
|||
* class ostream & __thiscall ostream::operator<<(class ostream & (__cdecl*)(class ostream &))
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCIRT_operator_sl_callback,8)
|
||||
void * __stdcall MSVCIRT_operator_sl_callback(class_ostream * _this, class_ostream * (__cdecl*func)(class_ostream*))
|
||||
void * __thiscall MSVCIRT_operator_sl_callback(class_ostream * _this, class_ostream * (__cdecl*func)(class_ostream*))
|
||||
{
|
||||
TRACE("%p, %p\n", _this, func);
|
||||
return func(_this);
|
||||
|
@ -149,7 +151,7 @@ void * CDECL MSVCIRT_ends(class_ostream * _this)
|
|||
* class strstreambuf & __thiscall strstreambuf::str(class strstreambuf &)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCIRT_str_sl_void,4)
|
||||
char * __stdcall MSVCIRT_str_sl_void(class_strstreambuf * _this)
|
||||
char * __thiscall MSVCIRT_str_sl_void(class_strstreambuf * _this)
|
||||
{
|
||||
FIXME("(%p)->() stub\n", _this);
|
||||
return 0;
|
||||
|
|
|
@ -112,7 +112,7 @@ static type_info exception_type_info = {
|
|||
};
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_exception_ctor, 8)
|
||||
exception* __stdcall MSVCP_exception_ctor(exception *this, const char **name)
|
||||
exception* __thiscall MSVCP_exception_ctor(exception *this, const char **name)
|
||||
{
|
||||
TRACE("(%p %s)\n", this, *name);
|
||||
|
||||
|
@ -130,7 +130,7 @@ exception* __stdcall MSVCP_exception_ctor(exception *this, const char **name)
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_exception_copy_ctor,8)
|
||||
exception* __stdcall MSVCP_exception_copy_ctor(exception *this, const exception *rhs)
|
||||
exception* __thiscall MSVCP_exception_copy_ctor(exception *this, const exception *rhs)
|
||||
{
|
||||
TRACE("(%p,%p)\n", this, rhs);
|
||||
|
||||
|
@ -145,7 +145,7 @@ exception* __stdcall MSVCP_exception_copy_ctor(exception *this, const exception
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_exception_dtor,4)
|
||||
void __stdcall MSVCP_exception_dtor(exception *this)
|
||||
void __thiscall MSVCP_exception_dtor(exception *this)
|
||||
{
|
||||
TRACE("(%p)\n", this);
|
||||
this->vtable = exception_type_info.vtable;
|
||||
|
@ -194,7 +194,7 @@ void set_exception_vtable(void)
|
|||
typedef exception bad_alloc;
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_bad_alloc_ctor, 8)
|
||||
bad_alloc* __stdcall MSVCP_bad_alloc_ctor(bad_alloc *this, const char **name)
|
||||
bad_alloc* __thiscall MSVCP_bad_alloc_ctor(bad_alloc *this, const char **name)
|
||||
{
|
||||
TRACE("%p %s\n", this, *name);
|
||||
MSVCP_exception_ctor(this, name);
|
||||
|
@ -203,7 +203,7 @@ bad_alloc* __stdcall MSVCP_bad_alloc_ctor(bad_alloc *this, const char **name)
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_bad_alloc_copy_ctor, 8)
|
||||
bad_alloc* __stdcall MSVCP_bad_alloc_copy_ctor(bad_alloc *this, const bad_alloc *rhs)
|
||||
bad_alloc* __thiscall MSVCP_bad_alloc_copy_ctor(bad_alloc *this, const bad_alloc *rhs)
|
||||
{
|
||||
TRACE("%p %p\n", this, rhs);
|
||||
MSVCP_exception_copy_ctor(this, rhs);
|
||||
|
@ -212,14 +212,14 @@ bad_alloc* __stdcall MSVCP_bad_alloc_copy_ctor(bad_alloc *this, const bad_alloc
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_bad_alloc_dtor, 4)
|
||||
void __stdcall MSVCP_bad_alloc_dtor(bad_alloc *this)
|
||||
void __thiscall MSVCP_bad_alloc_dtor(bad_alloc *this)
|
||||
{
|
||||
TRACE("%p\n", this);
|
||||
MSVCP_exception_dtor(this);
|
||||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_bad_alloc_vector_dtor, 8)
|
||||
void * __stdcall MSVCP_bad_alloc_vector_dtor(bad_alloc *this, unsigned int flags)
|
||||
void * __thiscall MSVCP_bad_alloc_vector_dtor(bad_alloc *this, unsigned int flags)
|
||||
{
|
||||
TRACE("%p %x\n", this, flags);
|
||||
if(flags & 2) {
|
||||
|
@ -239,7 +239,7 @@ void * __stdcall MSVCP_bad_alloc_vector_dtor(bad_alloc *this, unsigned int flags
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_what_exception,4)
|
||||
const char* __stdcall MSVCP_what_exception(exception * this)
|
||||
const char* __thiscall MSVCP_what_exception(exception * this)
|
||||
{
|
||||
TRACE("(%p) returning %s\n", this, this->name);
|
||||
return this->name ? this->name : "Unknown exception";
|
||||
|
@ -312,7 +312,7 @@ typedef struct _logic_error {
|
|||
} logic_error;
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_logic_error_ctor, 8)
|
||||
logic_error* __stdcall MSVCP_logic_error_ctor(
|
||||
logic_error* __thiscall MSVCP_logic_error_ctor(
|
||||
logic_error *this, const char **name)
|
||||
{
|
||||
TRACE("%p %s\n", this, *name);
|
||||
|
@ -324,7 +324,7 @@ logic_error* __stdcall MSVCP_logic_error_ctor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_logic_error_copy_ctor, 8)
|
||||
logic_error* __stdcall MSVCP_logic_error_copy_ctor(
|
||||
logic_error* __thiscall MSVCP_logic_error_copy_ctor(
|
||||
logic_error *this, logic_error *rhs)
|
||||
{
|
||||
TRACE("%p %p\n", this, rhs);
|
||||
|
@ -335,7 +335,7 @@ logic_error* __stdcall MSVCP_logic_error_copy_ctor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_logic_error_dtor, 4)
|
||||
void __stdcall MSVCP_logic_error_dtor(logic_error *this)
|
||||
void __thiscall MSVCP_logic_error_dtor(logic_error *this)
|
||||
{
|
||||
TRACE("%p\n", this);
|
||||
MSVCP_exception_dtor(&this->e);
|
||||
|
@ -343,7 +343,7 @@ void __stdcall MSVCP_logic_error_dtor(logic_error *this)
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_logic_error_vector_dtor, 8)
|
||||
void* __stdcall MSVCP_logic_error_vector_dtor(
|
||||
void* __thiscall MSVCP_logic_error_vector_dtor(
|
||||
logic_error *this, unsigned int flags)
|
||||
{
|
||||
TRACE("%p %x\n", this, flags);
|
||||
|
@ -364,7 +364,7 @@ void* __stdcall MSVCP_logic_error_vector_dtor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_logic_error_what, 4)
|
||||
const char* __stdcall MSVCP_logic_error_what(logic_error *this)
|
||||
const char* __thiscall MSVCP_logic_error_what(logic_error *this)
|
||||
{
|
||||
TRACE("%p\n", this);
|
||||
return MSVCP_basic_string_char_c_str(&this->str);
|
||||
|
@ -434,7 +434,7 @@ static const cxx_exception_type logic_error_cxx_type = {
|
|||
typedef logic_error length_error;
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_length_error_ctor, 8)
|
||||
length_error* __stdcall MSVCP_length_error_ctor(
|
||||
length_error* __thiscall MSVCP_length_error_ctor(
|
||||
length_error *this, const char **name)
|
||||
{
|
||||
TRACE("%p %s\n", this, *name);
|
||||
|
@ -444,7 +444,7 @@ length_error* __stdcall MSVCP_length_error_ctor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_length_error_copy_ctor, 8)
|
||||
length_error* __stdcall MSVCP_length_error_copy_ctor(
|
||||
length_error* __thiscall MSVCP_length_error_copy_ctor(
|
||||
length_error *this, length_error *rhs)
|
||||
{
|
||||
TRACE("%p %p\n", this, rhs);
|
||||
|
@ -454,7 +454,7 @@ length_error* __stdcall MSVCP_length_error_copy_ctor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_length_error_vector_dtor, 8)
|
||||
void* __stdcall MSVCP_length_error_vector_dtor(
|
||||
void* __thiscall MSVCP_length_error_vector_dtor(
|
||||
length_error *this, unsigned int flags)
|
||||
{
|
||||
TRACE("%p %x\n", this, flags);
|
||||
|
@ -525,7 +525,7 @@ static const cxx_exception_type length_error_cxx_type = {
|
|||
typedef logic_error out_of_range;
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_out_of_range_ctor, 8)
|
||||
out_of_range* __stdcall MSVCP_out_of_range_ctor(
|
||||
out_of_range* __thiscall MSVCP_out_of_range_ctor(
|
||||
out_of_range *this, const char **name)
|
||||
{
|
||||
TRACE("%p %s\n", this, *name);
|
||||
|
@ -535,7 +535,7 @@ out_of_range* __stdcall MSVCP_out_of_range_ctor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_out_of_range_copy_ctor, 8)
|
||||
out_of_range* __stdcall MSVCP_out_of_range_copy_ctor(
|
||||
out_of_range* __thiscall MSVCP_out_of_range_copy_ctor(
|
||||
out_of_range *this, out_of_range *rhs)
|
||||
{
|
||||
TRACE("%p %p\n", this, rhs);
|
||||
|
@ -545,7 +545,7 @@ out_of_range* __stdcall MSVCP_out_of_range_copy_ctor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_out_of_range_vector_dtor, 8)
|
||||
void* __stdcall MSVCP_out_of_range_vector_dtor(
|
||||
void* __thiscall MSVCP_out_of_range_vector_dtor(
|
||||
out_of_range *this, unsigned int flags)
|
||||
{
|
||||
TRACE("%p %x\n", this, flags);
|
||||
|
@ -616,7 +616,7 @@ static const cxx_exception_type out_of_range_cxx_type = {
|
|||
typedef logic_error invalid_argument;
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_invalid_argument_ctor, 8)
|
||||
invalid_argument* __stdcall MSVCP_invalid_argument_ctor(
|
||||
invalid_argument* __thiscall MSVCP_invalid_argument_ctor(
|
||||
invalid_argument *this, const char **name)
|
||||
{
|
||||
TRACE("%p %s\n", this, *name);
|
||||
|
@ -626,7 +626,7 @@ invalid_argument* __stdcall MSVCP_invalid_argument_ctor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_invalid_argument_copy_ctor, 8)
|
||||
invalid_argument* __stdcall MSVCP_invalid_argument_copy_ctor(
|
||||
invalid_argument* __thiscall MSVCP_invalid_argument_copy_ctor(
|
||||
invalid_argument *this, invalid_argument *rhs)
|
||||
{
|
||||
TRACE("%p %p\n", this, rhs);
|
||||
|
@ -636,7 +636,7 @@ invalid_argument* __stdcall MSVCP_invalid_argument_copy_ctor(
|
|||
}
|
||||
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_invalid_argument_vector_dtor, 8)
|
||||
void* __stdcall MSVCP_invalid_argument_vector_dtor(
|
||||
void* __thiscall MSVCP_invalid_argument_vector_dtor(
|
||||
invalid_argument *this, unsigned int flags)
|
||||
{
|
||||
TRACE("%p %x\n", this, flags);
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
/* ?address@?$allocator@D@std@@QBEPADAAD@Z */
|
||||
/* ?address@?$allocator@D@std@@QEBAPEADAEAD@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_address, 8)
|
||||
char* __stdcall MSVCP_allocator_char_address(void *this, char *ptr)
|
||||
char* __thiscall MSVCP_allocator_char_address(void *this, char *ptr)
|
||||
{
|
||||
return ptr;
|
||||
}
|
||||
|
@ -38,7 +38,7 @@ char* __stdcall MSVCP_allocator_char_address(void *this, char *ptr)
|
|||
/* ?address@?$allocator@D@std@@QBEPBDABD@Z */
|
||||
/* ?address@?$allocator@D@std@@QEBAPEBDAEBD@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_const_address, 8)
|
||||
const char* __stdcall MSVCP_allocator_char_const_address(void *this, const char *ptr)
|
||||
const char* __thiscall MSVCP_allocator_char_const_address(void *this, const char *ptr)
|
||||
{
|
||||
return ptr;
|
||||
}
|
||||
|
@ -46,7 +46,7 @@ const char* __stdcall MSVCP_allocator_char_const_address(void *this, const char
|
|||
/* ??0?$allocator@D@std@@QAE@XZ */
|
||||
/* ??0?$allocator@D@std@@QEAA@XZ */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_ctor, 4)
|
||||
void* __stdcall MSVCP_allocator_char_ctor(void *this)
|
||||
void* __thiscall MSVCP_allocator_char_ctor(void *this)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -54,7 +54,7 @@ void* __stdcall MSVCP_allocator_char_ctor(void *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* __stdcall MSVCP_allocator_char_copy_ctor(void *this, void *copy)
|
||||
void* __thiscall MSVCP_allocator_char_copy_ctor(void *this, void *copy)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -62,7 +62,7 @@ void* __stdcall MSVCP_allocator_char_copy_ctor(void *this, void *copy)
|
|||
/* ??4?$allocator@D@std@@QAEAAV01@ABV01@@Z */
|
||||
/* ??4?$allocator@D@std@@QEAAAEAV01@AEBV01@@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_assign, 8);
|
||||
void* __stdcall MSVCP_allocator_char_assign(void *this, void *assign)
|
||||
void* __thiscall MSVCP_allocator_char_assign(void *this, void *assign)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -70,7 +70,7 @@ void* __stdcall MSVCP_allocator_char_assign(void *this, void *assign)
|
|||
/* ?deallocate@?$allocator@D@std@@QAEXPADI@Z */
|
||||
/* ?deallocate@?$allocator@D@std@@QEAAXPEAD_K@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_deallocate, 12);
|
||||
void __stdcall MSVCP_allocator_char_deallocate(void *this, char *ptr, size_t size)
|
||||
void __thiscall MSVCP_allocator_char_deallocate(void *this, char *ptr, size_t size)
|
||||
{
|
||||
MSVCRT_operator_delete(ptr);
|
||||
}
|
||||
|
@ -78,7 +78,7 @@ void __stdcall MSVCP_allocator_char_deallocate(void *this, char *ptr, size_t siz
|
|||
/* ?allocate@?$allocator@D@std@@QAEPADI@Z */
|
||||
/* ?allocate@?$allocator@D@std@@QEAAPEAD_K@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_allocate, 8);
|
||||
char* __stdcall MSVCP_allocator_char_allocate(void *this, size_t count)
|
||||
char* __thiscall MSVCP_allocator_char_allocate(void *this, size_t count)
|
||||
{
|
||||
return MSVCRT_operator_new(sizeof(char[count]));
|
||||
}
|
||||
|
@ -86,7 +86,7 @@ char* __stdcall MSVCP_allocator_char_allocate(void *this, size_t count)
|
|||
/* ?allocate@?$allocator@D@std@@QAEPADIPBX@Z */
|
||||
/* ?allocate@?$allocator@D@std@@QEAAPEAD_KPEBX@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_allocate_hint, 12);
|
||||
char* __stdcall MSVCP_allocator_char_allocate_hint(void *this,
|
||||
char* __thiscall MSVCP_allocator_char_allocate_hint(void *this,
|
||||
size_t count, const void *hint)
|
||||
{
|
||||
/* Native ignores hint */
|
||||
|
@ -96,7 +96,7 @@ char* __stdcall MSVCP_allocator_char_allocate_hint(void *this,
|
|||
/* ?construct@?$allocator@D@std@@QAEXPADABD@Z */
|
||||
/* ?construct@?$allocator@D@std@@QEAAXPEADAEBD@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_construct, 12);
|
||||
void __stdcall MSVCP_allocator_char_construct(void *this, char *ptr, const char *val)
|
||||
void __thiscall MSVCP_allocator_char_construct(void *this, char *ptr, const char *val)
|
||||
{
|
||||
*ptr = *val;
|
||||
}
|
||||
|
@ -104,14 +104,14 @@ void __stdcall MSVCP_allocator_char_construct(void *this, char *ptr, const char
|
|||
/* ?destroy@?$allocator@D@std@@QAEXPAD@Z */
|
||||
/* ?destroy@?$allocator@D@std@@QEAAXPEAD@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_char_destroy, 8);
|
||||
void __stdcall MSVCP_allocator_char_destroy(void *this, char *ptr)
|
||||
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);
|
||||
size_t __stdcall MSVCP_allocator_char_max_size(void *this)
|
||||
size_t __thiscall MSVCP_allocator_char_max_size(void *this)
|
||||
{
|
||||
return UINT_MAX/sizeof(char);
|
||||
}
|
||||
|
@ -121,7 +121,7 @@ size_t __stdcall MSVCP_allocator_char_max_size(void *this)
|
|||
/* ?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* __stdcall MSVCP_allocator_wchar_address(void *this, wchar_t *ptr)
|
||||
wchar_t* __thiscall MSVCP_allocator_wchar_address(void *this, wchar_t *ptr)
|
||||
{
|
||||
return ptr;
|
||||
}
|
||||
|
@ -129,7 +129,7 @@ wchar_t* __stdcall MSVCP_allocator_wchar_address(void *this, wchar_t *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* __stdcall MSVCP_allocator_wchar_const_address(void *this, const wchar_t *ptr)
|
||||
const wchar_t* __thiscall MSVCP_allocator_wchar_const_address(void *this, const wchar_t *ptr)
|
||||
{
|
||||
return ptr;
|
||||
}
|
||||
|
@ -137,7 +137,7 @@ const wchar_t* __stdcall MSVCP_allocator_wchar_const_address(void *this, const w
|
|||
/* ??0?$allocator@_W@std@@QAE@XZ */
|
||||
/* ??0?$allocator@_W@std@@QEAA@XZ */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_ctor, 4)
|
||||
void* __stdcall MSVCP_allocator_wchar_ctor(void *this)
|
||||
void* __thiscall MSVCP_allocator_wchar_ctor(void *this)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -145,7 +145,7 @@ void* __stdcall MSVCP_allocator_wchar_ctor(void *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* __stdcall MSVCP_allocator_wchar_copy_ctor(void *this, void *copy)
|
||||
void* __thiscall MSVCP_allocator_wchar_copy_ctor(void *this, void *copy)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -153,7 +153,7 @@ void* __stdcall MSVCP_allocator_wchar_copy_ctor(void *this, void *copy)
|
|||
/* ??4?$allocator@_W@std@@QAEAAV01@ABV01@@Z */
|
||||
/* ??4?$allocator@_W@std@@QEAAAEAV01@AEBV01@@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_assign, 8)
|
||||
void* __stdcall MSVCP_allocator_wchar_assign(void *this, void *assign)
|
||||
void* __thiscall MSVCP_allocator_wchar_assign(void *this, void *assign)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -161,7 +161,7 @@ void* __stdcall MSVCP_allocator_wchar_assign(void *this, void *assign)
|
|||
/* ?deallocate@?$allocator@_W@std@@QAEXPA_WI@Z */
|
||||
/* ?deallocate@?$allocator@_W@std@@QEAAXPEA_W_K@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_deallocate, 12)
|
||||
void __stdcall MSVCP_allocator_wchar_deallocate(void *this,
|
||||
void __thiscall MSVCP_allocator_wchar_deallocate(void *this,
|
||||
wchar_t *ptr, size_t size)
|
||||
{
|
||||
MSVCRT_operator_delete(ptr);
|
||||
|
@ -170,7 +170,7 @@ void __stdcall 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* __stdcall MSVCP_allocator_wchar_allocate(void *this, size_t count)
|
||||
wchar_t* __thiscall MSVCP_allocator_wchar_allocate(void *this, size_t count)
|
||||
{
|
||||
if(UINT_MAX/count < sizeof(wchar_t)) {
|
||||
throw_exception(EXCEPTION_BAD_ALLOC, NULL);
|
||||
|
@ -183,7 +183,7 @@ wchar_t* __stdcall MSVCP_allocator_wchar_allocate(void *this, size_t count)
|
|||
/* ?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* __stdcall MSVCP_allocator_wchar_allocate_hint(void *this,
|
||||
wchar_t* __thiscall MSVCP_allocator_wchar_allocate_hint(void *this,
|
||||
size_t count, const void *hint)
|
||||
{
|
||||
return MSVCP_allocator_wchar_allocate(this, count);
|
||||
|
@ -192,7 +192,7 @@ wchar_t* __stdcall MSVCP_allocator_wchar_allocate_hint(void *this,
|
|||
/* ?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 __stdcall MSVCP_allocator_wchar_construct(void *this,
|
||||
void __thiscall MSVCP_allocator_wchar_construct(void *this,
|
||||
wchar_t *ptr, const wchar_t *val)
|
||||
{
|
||||
*ptr = *val;
|
||||
|
@ -201,14 +201,14 @@ void __stdcall MSVCP_allocator_wchar_construct(void *this,
|
|||
/* ?destroy@?$allocator@_W@std@@QAEXPA_W@Z */
|
||||
/* ?destroy@?$allocator@_W@std@@QEAAXPEA_W@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_wchar_destroy, 8)
|
||||
void __stdcall MSVCP_allocator_wchar_destroy(void *this, char *ptr)
|
||||
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)
|
||||
size_t __stdcall MSVCP_allocator_wchar_max_size(void *this)
|
||||
size_t __thiscall MSVCP_allocator_wchar_max_size(void *this)
|
||||
{
|
||||
return UINT_MAX/sizeof(wchar_t);
|
||||
}
|
||||
|
@ -217,7 +217,7 @@ size_t __stdcall MSVCP_allocator_wchar_max_size(void *this)
|
|||
/* ?address@?$allocator@G@std@@QBEPAGAAG@Z */
|
||||
/* ?address@?$allocator@G@std@@QEBAPEAGAEAG@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_address, 8)
|
||||
unsigned short* __stdcall MSVCP_allocator_short_address(
|
||||
unsigned short* __thiscall MSVCP_allocator_short_address(
|
||||
void *this, unsigned short *ptr)
|
||||
{
|
||||
return ptr;
|
||||
|
@ -226,7 +226,7 @@ unsigned short* __stdcall MSVCP_allocator_short_address(
|
|||
/* ?address@?$allocator@G@std@@QBEPBGABG@Z */
|
||||
/* ?address@?$allocator@G@std@@QEBAPEBGAEBG@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_const_address, 8)
|
||||
const unsigned short* __stdcall MSVCP_allocator_short_const_address(
|
||||
const unsigned short* __thiscall MSVCP_allocator_short_const_address(
|
||||
void *this, const unsigned short *ptr)
|
||||
{
|
||||
return ptr;
|
||||
|
@ -235,7 +235,7 @@ const unsigned short* __stdcall MSVCP_allocator_short_const_address(
|
|||
/* ??0?$allocator@G@std@@QAE@XZ */
|
||||
/* ??0?$allocator@G@std@@QEAA@XZ */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_ctor, 4)
|
||||
void* __stdcall MSVCP_allocator_short_ctor(void *this)
|
||||
void* __thiscall MSVCP_allocator_short_ctor(void *this)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -243,7 +243,7 @@ void* __stdcall MSVCP_allocator_short_ctor(void *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* __stdcall MSVCP_allocator_short_copy_ctor(void *this, void *copy)
|
||||
void* __thiscall MSVCP_allocator_short_copy_ctor(void *this, void *copy)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -251,7 +251,7 @@ void* __stdcall MSVCP_allocator_short_copy_ctor(void *this, void *copy)
|
|||
/* ??4?$allocator@G@std@@QAEAAV01@ABV01@@Z */
|
||||
/* ??4?$allocator@G@std@@QEAAAEAV01@AEBV01@@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_assign, 8)
|
||||
void* __stdcall MSVCP_allocator_short_assign(void *this, void *assign)
|
||||
void* __thiscall MSVCP_allocator_short_assign(void *this, void *assign)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -259,7 +259,7 @@ void* __stdcall MSVCP_allocator_short_assign(void *this, void *assign)
|
|||
/* ?deallocate@?$allocator@G@std@@QAEXPAGI@Z */
|
||||
/* ?deallocate@?$allocator@G@std@@QEAAXPEAG_K@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_deallocate, 12)
|
||||
void __stdcall MSVCP_allocator_short_deallocate(void *this,
|
||||
void __thiscall MSVCP_allocator_short_deallocate(void *this,
|
||||
unsigned short *ptr, size_t size)
|
||||
{
|
||||
MSVCRT_operator_delete(ptr);
|
||||
|
@ -268,7 +268,7 @@ void __stdcall MSVCP_allocator_short_deallocate(void *this,
|
|||
/* ?allocate@?$allocator@G@std@@QAEPAGI@Z */
|
||||
/* ?allocate@?$allocator@G@std@@QEAAPEAG_K@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_allocate, 8)
|
||||
unsigned short* __stdcall MSVCP_allocator_short_allocate(
|
||||
unsigned short* __thiscall MSVCP_allocator_short_allocate(
|
||||
void *this, size_t count)
|
||||
{
|
||||
if(UINT_MAX/count < sizeof(unsigned short)) {
|
||||
|
@ -282,7 +282,7 @@ unsigned short* __stdcall MSVCP_allocator_short_allocate(
|
|||
/* ?allocate@?$allocator@G@std@@QAEPAGIPBX@Z */
|
||||
/* ?allocate@?$allocator@G@std@@QEAAPEAG_KPEBX@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_allocate_hint, 12)
|
||||
unsigned short* __stdcall MSVCP_allocator_short_allocate_hint(
|
||||
unsigned short* __thiscall MSVCP_allocator_short_allocate_hint(
|
||||
void *this, size_t count, const void *hint)
|
||||
{
|
||||
return MSVCP_allocator_short_allocate(this, count);
|
||||
|
@ -291,7 +291,7 @@ unsigned short* __stdcall MSVCP_allocator_short_allocate_hint(
|
|||
/* ?construct@?$allocator@G@std@@QAEXPAGABG@Z */
|
||||
/* ?construct@?$allocator@G@std@@QEAAXPEAGAEBG@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_construct, 12)
|
||||
void __stdcall MSVCP_allocator_short_construct(void *this,
|
||||
void __thiscall MSVCP_allocator_short_construct(void *this,
|
||||
unsigned short *ptr, unsigned short *val)
|
||||
{
|
||||
*ptr = *val;
|
||||
|
@ -300,14 +300,14 @@ void __stdcall MSVCP_allocator_short_construct(void *this,
|
|||
/* ?destroy@?$allocator@G@std@@QAEXPAG@Z */
|
||||
/* ?destroy@?$allocator@G@std@@QEAAXPEAG@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_short_destroy, 8)
|
||||
void __stdcall MSVCP_allocator_short_destroy(void *this, size_t *ptr)
|
||||
void __thiscall MSVCP_allocator_short_destroy(void *this, 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)
|
||||
size_t __stdcall MSVCP_allocator_short_max_size(void *this)
|
||||
size_t __thiscall MSVCP_allocator_short_max_size(void *this)
|
||||
{
|
||||
return UINT_MAX/sizeof(unsigned short);
|
||||
}
|
||||
|
@ -316,7 +316,7 @@ size_t __stdcall MSVCP_allocator_short_max_size(void *this)
|
|||
/* ??0?$allocator@X@std@@QAE@XZ */
|
||||
/* ??0?$allocator@X@std@@QEAA@XZ */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_void_ctor, 4);
|
||||
void* __stdcall MSVCP_allocator_void_ctor(void *this)
|
||||
void* __thiscall MSVCP_allocator_void_ctor(void *this)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -324,7 +324,7 @@ void* __stdcall MSVCP_allocator_void_ctor(void *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* __stdcall MSVCP_allocator_void_copy_ctor(void *this, void *copy)
|
||||
void* __thiscall MSVCP_allocator_void_copy_ctor(void *this, void *copy)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
@ -332,7 +332,7 @@ void* __stdcall MSVCP_allocator_void_copy_ctor(void *this, void *copy)
|
|||
/* ??4?$allocator@X@std@@QAEAAV01@ABV01@@Z */
|
||||
/* ??4?$allocator@X@std@@QEAAAEAV01@AEBV01@@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_allocator_void_assign, 8);
|
||||
void* __stdcall MSVCP_allocator_void_assign(void *this, void *assign)
|
||||
void* __thiscall MSVCP_allocator_void_assign(void *this, void *assign)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
|
|
|
@ -32,6 +32,7 @@ extern void (__cdecl *MSVCRT_operator_delete)(void*);
|
|||
|
||||
#define THISCALL(func) __thiscall_ ## func
|
||||
#define THISCALL_NAME(func) __ASM_NAME("__thiscall_" #func)
|
||||
#define __thiscall __stdcall
|
||||
#define DEFINE_THISCALL_WRAPPER(func,args) \
|
||||
extern void THISCALL(func)(void); \
|
||||
__ASM_GLOBAL_FUNC(__thiscall_ ## func, \
|
||||
|
@ -43,6 +44,7 @@ extern void (__cdecl *MSVCRT_operator_delete)(void*);
|
|||
|
||||
#define THISCALL(func) func
|
||||
#define THISCALL_NAME(func) __ASM_NAME(#func)
|
||||
#define __thiscall __cdecl
|
||||
#define DEFINE_THISCALL_WRAPPER(func,args) /* nothing */
|
||||
|
||||
#endif /* __i386__ */
|
||||
|
|
|
@ -592,7 +592,7 @@ static MSVCP_BOOL basic_string_char_grow(
|
|||
/* ?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@II@Z */
|
||||
/* ?erase@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAAEAV12@_K0@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_erase, 12)
|
||||
basic_string_char* __stdcall MSVCP_basic_string_char_erase(
|
||||
basic_string_char* __thiscall MSVCP_basic_string_char_erase(
|
||||
basic_string_char *this, size_t pos, size_t len)
|
||||
{
|
||||
TRACE("%p %d %d\n", this, pos, len);
|
||||
|
@ -618,7 +618,7 @@ basic_string_char* __stdcall MSVCP_basic_string_char_erase(
|
|||
/* ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z */
|
||||
/* ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAAEAV12@AEBV12@_K1@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_assign_substr, 16)
|
||||
basic_string_char* __stdcall MSVCP_basic_string_char_assign_substr(
|
||||
basic_string_char* __thiscall MSVCP_basic_string_char_assign_substr(
|
||||
basic_string_char *this, const basic_string_char *assign,
|
||||
size_t pos, size_t len)
|
||||
{
|
||||
|
@ -647,7 +647,7 @@ basic_string_char* __stdcall MSVCP_basic_string_char_assign_substr(
|
|||
/* ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@@Z */
|
||||
/* ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAAEAV12@AEBV12@@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_assign, 8)
|
||||
basic_string_char* __stdcall MSVCP_basic_string_char_assign(
|
||||
basic_string_char* __thiscall MSVCP_basic_string_char_assign(
|
||||
basic_string_char *this, const basic_string_char *assign)
|
||||
{
|
||||
return MSVCP_basic_string_char_assign_substr(this, assign,
|
||||
|
@ -657,7 +657,7 @@ basic_string_char* __stdcall MSVCP_basic_string_char_assign(
|
|||
/* ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z */
|
||||
/* ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAAEAV12@PEBD_K@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_assign_cstr_len, 12)
|
||||
basic_string_char* __stdcall MSVCP_basic_string_char_assign_cstr_len(
|
||||
basic_string_char* __thiscall MSVCP_basic_string_char_assign_cstr_len(
|
||||
basic_string_char *this, const char *str, size_t len)
|
||||
{
|
||||
TRACE("%p %s %d\n", this, debugstr_a(str), len);
|
||||
|
@ -677,7 +677,7 @@ basic_string_char* __stdcall MSVCP_basic_string_char_assign_cstr_len(
|
|||
/* ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z */
|
||||
/* ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAAAEAV12@PEBD@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_assign_cstr, 8)
|
||||
basic_string_char* __stdcall MSVCP_basic_string_char_assign_cstr(
|
||||
basic_string_char* __thiscall MSVCP_basic_string_char_assign_cstr(
|
||||
basic_string_char *this, const char *str)
|
||||
{
|
||||
return MSVCP_basic_string_char_assign_cstr_len(this, str,
|
||||
|
@ -687,7 +687,7 @@ basic_string_char* __stdcall MSVCP_basic_string_char_assign_cstr(
|
|||
/* ?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QBEPBDXZ */
|
||||
/* ?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEBAPEBDXZ */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_c_str, 4)
|
||||
const char* __stdcall MSVCP_basic_string_char_c_str(basic_string_char *this)
|
||||
const char* __thiscall MSVCP_basic_string_char_c_str(basic_string_char *this)
|
||||
{
|
||||
TRACE("%p\n", this);
|
||||
return basic_string_char_const_ptr(this);
|
||||
|
@ -696,7 +696,7 @@ const char* __stdcall MSVCP_basic_string_char_c_str(basic_string_char *this)
|
|||
/* ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ */
|
||||
/* ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAA@XZ */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_ctor, 4)
|
||||
basic_string_char* __stdcall MSVCP_basic_string_char_ctor(basic_string_char *this)
|
||||
basic_string_char* __thiscall MSVCP_basic_string_char_ctor(basic_string_char *this)
|
||||
{
|
||||
TRACE("%p\n", this);
|
||||
|
||||
|
@ -707,7 +707,7 @@ basic_string_char* __stdcall MSVCP_basic_string_char_ctor(basic_string_char *thi
|
|||
/* ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z */
|
||||
/* ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAA@AEBV01@@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_copy_ctor, 8)
|
||||
basic_string_char* __stdcall MSVCP_basic_string_char_copy_ctor(
|
||||
basic_string_char* __thiscall MSVCP_basic_string_char_copy_ctor(
|
||||
basic_string_char *this, const basic_string_char *copy)
|
||||
{
|
||||
TRACE("%p %p\n", this, copy);
|
||||
|
@ -720,7 +720,7 @@ basic_string_char* __stdcall MSVCP_basic_string_char_copy_ctor(
|
|||
/* ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z */
|
||||
/* ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAA@PEBD@Z */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_ctor_cstr, 8)
|
||||
basic_string_char* __stdcall MSVCP_basic_string_char_ctor_cstr(
|
||||
basic_string_char* __thiscall MSVCP_basic_string_char_ctor_cstr(
|
||||
basic_string_char *this, const char *str)
|
||||
{
|
||||
TRACE("%p %s\n", this, debugstr_a(str));
|
||||
|
@ -733,7 +733,7 @@ basic_string_char* __stdcall MSVCP_basic_string_char_ctor_cstr(
|
|||
/* ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ */
|
||||
/* ??1?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QEAA@XZ */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCP_basic_string_char_dtor, 4)
|
||||
void __stdcall MSVCP_basic_string_char_dtor(basic_string_char *this)
|
||||
void __thiscall MSVCP_basic_string_char_dtor(basic_string_char *this)
|
||||
{
|
||||
TRACE("%p\n", this);
|
||||
basic_string_char_tidy(this, TRUE, 0);
|
||||
|
|
|
@ -73,6 +73,7 @@ typedef struct _rtti_object_locator
|
|||
|
||||
#define THISCALL(func) __thiscall_ ## func
|
||||
#define THISCALL_NAME(func) __ASM_NAME("__thiscall_" #func)
|
||||
#define __thiscall __stdcall
|
||||
#define DEFINE_THISCALL_WRAPPER(func,args) \
|
||||
extern void THISCALL(func)(void); \
|
||||
__ASM_GLOBAL_FUNC(__thiscall_ ## func, \
|
||||
|
@ -84,6 +85,7 @@ typedef struct _rtti_object_locator
|
|||
|
||||
#define THISCALL(func) func
|
||||
#define THISCALL_NAME(func) __ASM_NAME(#func)
|
||||
#define __thiscall __cdecl
|
||||
#define DEFINE_THISCALL_WRAPPER(func,args) /* nothing */
|
||||
|
||||
#endif /* __i386__ */
|
||||
|
@ -152,7 +154,7 @@ static void EXCEPTION_ctor(exception *_this, const char** name)
|
|||
* ??0exception@@QAE@ABQBD@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_exception_ctor,8)
|
||||
exception * __stdcall MSVCRT_exception_ctor(exception * _this, const char ** name)
|
||||
exception * __thiscall MSVCRT_exception_ctor(exception * _this, const char ** name)
|
||||
{
|
||||
TRACE("(%p,%s)\n", _this, *name);
|
||||
EXCEPTION_ctor(_this, name);
|
||||
|
@ -163,7 +165,7 @@ exception * __stdcall MSVCRT_exception_ctor(exception * _this, const char ** nam
|
|||
* ??0exception@@QAE@ABQBDH@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_exception_ctor_noalloc,12)
|
||||
exception * __stdcall MSVCRT_exception_ctor_noalloc(exception * _this, char ** name, int noalloc)
|
||||
exception * __thiscall MSVCRT_exception_ctor_noalloc(exception * _this, char ** name, int noalloc)
|
||||
{
|
||||
TRACE("(%p,%s)\n", _this, *name);
|
||||
_this->vtable = &MSVCRT_exception_vtable;
|
||||
|
@ -176,7 +178,7 @@ exception * __stdcall MSVCRT_exception_ctor_noalloc(exception * _this, char ** n
|
|||
* ??0exception@@QAE@ABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_exception_copy_ctor,8)
|
||||
exception * __stdcall MSVCRT_exception_copy_ctor(exception * _this, const exception * rhs)
|
||||
exception * __thiscall MSVCRT_exception_copy_ctor(exception * _this, const exception * rhs)
|
||||
{
|
||||
TRACE("(%p,%p)\n", _this, rhs);
|
||||
|
||||
|
@ -196,7 +198,7 @@ exception * __stdcall MSVCRT_exception_copy_ctor(exception * _this, const except
|
|||
* ??0exception@@QAE@XZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_exception_default_ctor,4)
|
||||
exception * __stdcall MSVCRT_exception_default_ctor(exception * _this)
|
||||
exception * __thiscall MSVCRT_exception_default_ctor(exception * _this)
|
||||
{
|
||||
static const char* empty = NULL;
|
||||
|
||||
|
@ -209,7 +211,7 @@ exception * __stdcall MSVCRT_exception_default_ctor(exception * _this)
|
|||
* ??1exception@@UAE@XZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_exception_dtor,4)
|
||||
void __stdcall MSVCRT_exception_dtor(exception * _this)
|
||||
void __thiscall MSVCRT_exception_dtor(exception * _this)
|
||||
{
|
||||
TRACE("(%p)\n", _this);
|
||||
_this->vtable = &MSVCRT_exception_vtable;
|
||||
|
@ -220,7 +222,7 @@ void __stdcall MSVCRT_exception_dtor(exception * _this)
|
|||
* ??4exception@@QAEAAV0@ABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_exception_opequals,8)
|
||||
exception * __stdcall MSVCRT_exception_opequals(exception * _this, const exception * rhs)
|
||||
exception * __thiscall MSVCRT_exception_opequals(exception * _this, const exception * rhs)
|
||||
{
|
||||
TRACE("(%p %p)\n", _this, rhs);
|
||||
if (_this != rhs)
|
||||
|
@ -236,7 +238,7 @@ exception * __stdcall MSVCRT_exception_opequals(exception * _this, const excepti
|
|||
* ??_Eexception@@UAEPAXI@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_exception_vector_dtor,8)
|
||||
void * __stdcall MSVCRT_exception_vector_dtor(exception * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT_exception_vector_dtor(exception * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
if (flags & 2)
|
||||
|
@ -259,7 +261,7 @@ void * __stdcall MSVCRT_exception_vector_dtor(exception * _this, unsigned int fl
|
|||
* ??_Gexception@@UAEPAXI@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_exception_scalar_dtor,8)
|
||||
void * __stdcall MSVCRT_exception_scalar_dtor(exception * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT_exception_scalar_dtor(exception * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
MSVCRT_exception_dtor(_this);
|
||||
|
@ -271,7 +273,7 @@ void * __stdcall MSVCRT_exception_scalar_dtor(exception * _this, unsigned int fl
|
|||
* ?what@exception@@UBEPBDXZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_what_exception,4)
|
||||
const char * __stdcall MSVCRT_what_exception(exception * _this)
|
||||
const char * __thiscall MSVCRT_what_exception(exception * _this)
|
||||
{
|
||||
TRACE("(%p) returning %s\n", _this, _this->name);
|
||||
return _this->name ? _this->name : "Unknown exception";
|
||||
|
@ -281,7 +283,7 @@ const char * __stdcall MSVCRT_what_exception(exception * _this)
|
|||
* ??0bad_typeid@@QAE@ABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_typeid_copy_ctor,8)
|
||||
bad_typeid * __stdcall MSVCRT_bad_typeid_copy_ctor(bad_typeid * _this, const bad_typeid * rhs)
|
||||
bad_typeid * __thiscall MSVCRT_bad_typeid_copy_ctor(bad_typeid * _this, const bad_typeid * rhs)
|
||||
{
|
||||
TRACE("(%p %p)\n", _this, rhs);
|
||||
MSVCRT_exception_copy_ctor(_this, rhs);
|
||||
|
@ -293,7 +295,7 @@ bad_typeid * __stdcall MSVCRT_bad_typeid_copy_ctor(bad_typeid * _this, const bad
|
|||
* ??0bad_typeid@@QAE@PBD@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_typeid_ctor,8)
|
||||
bad_typeid * __stdcall MSVCRT_bad_typeid_ctor(bad_typeid * _this, const char * name)
|
||||
bad_typeid * __thiscall MSVCRT_bad_typeid_ctor(bad_typeid * _this, const char * name)
|
||||
{
|
||||
TRACE("(%p %s)\n", _this, name);
|
||||
EXCEPTION_ctor(_this, &name);
|
||||
|
@ -305,7 +307,7 @@ bad_typeid * __stdcall MSVCRT_bad_typeid_ctor(bad_typeid * _this, const char * n
|
|||
* ??_Fbad_typeid@@QAEXXZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_typeid_default_ctor,4)
|
||||
bad_typeid * __stdcall MSVCRT_bad_typeid_default_ctor(bad_typeid * _this)
|
||||
bad_typeid * __thiscall MSVCRT_bad_typeid_default_ctor(bad_typeid * _this)
|
||||
{
|
||||
return MSVCRT_bad_typeid_ctor( _this, "bad typeid" );
|
||||
}
|
||||
|
@ -314,7 +316,7 @@ bad_typeid * __stdcall MSVCRT_bad_typeid_default_ctor(bad_typeid * _this)
|
|||
* ??1bad_typeid@@UAE@XZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_typeid_dtor,4)
|
||||
void __stdcall MSVCRT_bad_typeid_dtor(bad_typeid * _this)
|
||||
void __thiscall MSVCRT_bad_typeid_dtor(bad_typeid * _this)
|
||||
{
|
||||
TRACE("(%p)\n", _this);
|
||||
MSVCRT_exception_dtor(_this);
|
||||
|
@ -324,7 +326,7 @@ void __stdcall MSVCRT_bad_typeid_dtor(bad_typeid * _this)
|
|||
* ??4bad_typeid@@QAEAAV0@ABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_typeid_opequals,8)
|
||||
bad_typeid * __stdcall MSVCRT_bad_typeid_opequals(bad_typeid * _this, const bad_typeid * rhs)
|
||||
bad_typeid * __thiscall MSVCRT_bad_typeid_opequals(bad_typeid * _this, const bad_typeid * rhs)
|
||||
{
|
||||
TRACE("(%p %p)\n", _this, rhs);
|
||||
MSVCRT_exception_opequals(_this, rhs);
|
||||
|
@ -335,7 +337,7 @@ bad_typeid * __stdcall MSVCRT_bad_typeid_opequals(bad_typeid * _this, const bad_
|
|||
* ??_Ebad_typeid@@UAEPAXI@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_typeid_vector_dtor,8)
|
||||
void * __stdcall MSVCRT_bad_typeid_vector_dtor(bad_typeid * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT_bad_typeid_vector_dtor(bad_typeid * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
if (flags & 2)
|
||||
|
@ -358,7 +360,7 @@ void * __stdcall MSVCRT_bad_typeid_vector_dtor(bad_typeid * _this, unsigned int
|
|||
* ??_Gbad_typeid@@UAEPAXI@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_typeid_scalar_dtor,8)
|
||||
void * __stdcall MSVCRT_bad_typeid_scalar_dtor(bad_typeid * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT_bad_typeid_scalar_dtor(bad_typeid * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
MSVCRT_bad_typeid_dtor(_this);
|
||||
|
@ -370,7 +372,7 @@ void * __stdcall MSVCRT_bad_typeid_scalar_dtor(bad_typeid * _this, unsigned int
|
|||
* ??0__non_rtti_object@@QAE@ABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT___non_rtti_object_copy_ctor,8)
|
||||
__non_rtti_object * __stdcall MSVCRT___non_rtti_object_copy_ctor(__non_rtti_object * _this,
|
||||
__non_rtti_object * __thiscall MSVCRT___non_rtti_object_copy_ctor(__non_rtti_object * _this,
|
||||
const __non_rtti_object * rhs)
|
||||
{
|
||||
TRACE("(%p %p)\n", _this, rhs);
|
||||
|
@ -383,7 +385,7 @@ __non_rtti_object * __stdcall MSVCRT___non_rtti_object_copy_ctor(__non_rtti_obje
|
|||
* ??0__non_rtti_object@@QAE@PBD@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT___non_rtti_object_ctor,8)
|
||||
__non_rtti_object * __stdcall MSVCRT___non_rtti_object_ctor(__non_rtti_object * _this,
|
||||
__non_rtti_object * __thiscall MSVCRT___non_rtti_object_ctor(__non_rtti_object * _this,
|
||||
const char * name)
|
||||
{
|
||||
TRACE("(%p %s)\n", _this, name);
|
||||
|
@ -396,7 +398,7 @@ __non_rtti_object * __stdcall MSVCRT___non_rtti_object_ctor(__non_rtti_object *
|
|||
* ??1__non_rtti_object@@UAE@XZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT___non_rtti_object_dtor,4)
|
||||
void __stdcall MSVCRT___non_rtti_object_dtor(__non_rtti_object * _this)
|
||||
void __thiscall MSVCRT___non_rtti_object_dtor(__non_rtti_object * _this)
|
||||
{
|
||||
TRACE("(%p)\n", _this);
|
||||
MSVCRT_bad_typeid_dtor(_this);
|
||||
|
@ -406,7 +408,7 @@ void __stdcall MSVCRT___non_rtti_object_dtor(__non_rtti_object * _this)
|
|||
* ??4__non_rtti_object@@QAEAAV0@ABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT___non_rtti_object_opequals,8)
|
||||
__non_rtti_object * __stdcall MSVCRT___non_rtti_object_opequals(__non_rtti_object * _this,
|
||||
__non_rtti_object * __thiscall MSVCRT___non_rtti_object_opequals(__non_rtti_object * _this,
|
||||
const __non_rtti_object *rhs)
|
||||
{
|
||||
TRACE("(%p %p)\n", _this, rhs);
|
||||
|
@ -418,7 +420,7 @@ __non_rtti_object * __stdcall MSVCRT___non_rtti_object_opequals(__non_rtti_objec
|
|||
* ??_E__non_rtti_object@@UAEPAXI@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT___non_rtti_object_vector_dtor,8)
|
||||
void * __stdcall MSVCRT___non_rtti_object_vector_dtor(__non_rtti_object * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT___non_rtti_object_vector_dtor(__non_rtti_object * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
if (flags & 2)
|
||||
|
@ -441,7 +443,7 @@ void * __stdcall MSVCRT___non_rtti_object_vector_dtor(__non_rtti_object * _this,
|
|||
* ??_G__non_rtti_object@@UAEPAXI@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT___non_rtti_object_scalar_dtor,8)
|
||||
void * __stdcall MSVCRT___non_rtti_object_scalar_dtor(__non_rtti_object * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT___non_rtti_object_scalar_dtor(__non_rtti_object * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
MSVCRT___non_rtti_object_dtor(_this);
|
||||
|
@ -454,7 +456,7 @@ void * __stdcall MSVCRT___non_rtti_object_scalar_dtor(__non_rtti_object * _this,
|
|||
* ??0bad_cast@@QAE@ABQBD@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_cast_ctor,8)
|
||||
bad_cast * __stdcall MSVCRT_bad_cast_ctor(bad_cast * _this, const char ** name)
|
||||
bad_cast * __thiscall MSVCRT_bad_cast_ctor(bad_cast * _this, const char ** name)
|
||||
{
|
||||
TRACE("(%p %s)\n", _this, *name);
|
||||
EXCEPTION_ctor(_this, name);
|
||||
|
@ -466,7 +468,7 @@ bad_cast * __stdcall MSVCRT_bad_cast_ctor(bad_cast * _this, const char ** name)
|
|||
* ??0bad_cast@@QAE@ABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_cast_copy_ctor,8)
|
||||
bad_cast * __stdcall MSVCRT_bad_cast_copy_ctor(bad_cast * _this, const bad_cast * rhs)
|
||||
bad_cast * __thiscall MSVCRT_bad_cast_copy_ctor(bad_cast * _this, const bad_cast * rhs)
|
||||
{
|
||||
TRACE("(%p %p)\n", _this, rhs);
|
||||
MSVCRT_exception_copy_ctor(_this, rhs);
|
||||
|
@ -478,7 +480,7 @@ bad_cast * __stdcall MSVCRT_bad_cast_copy_ctor(bad_cast * _this, const bad_cast
|
|||
* ??0bad_cast@@QAE@PBD@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_cast_ctor_charptr,8)
|
||||
bad_cast * __stdcall MSVCRT_bad_cast_ctor_charptr(bad_cast * _this, const char * name)
|
||||
bad_cast * __thiscall MSVCRT_bad_cast_ctor_charptr(bad_cast * _this, const char * name)
|
||||
{
|
||||
TRACE("(%p %s)\n", _this, name);
|
||||
EXCEPTION_ctor(_this, &name);
|
||||
|
@ -490,7 +492,7 @@ bad_cast * __stdcall MSVCRT_bad_cast_ctor_charptr(bad_cast * _this, const char *
|
|||
* ??_Fbad_cast@@QAEXXZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_cast_default_ctor,4)
|
||||
bad_cast * __stdcall MSVCRT_bad_cast_default_ctor(bad_cast * _this)
|
||||
bad_cast * __thiscall MSVCRT_bad_cast_default_ctor(bad_cast * _this)
|
||||
{
|
||||
return MSVCRT_bad_cast_ctor_charptr( _this, "bad cast" );
|
||||
}
|
||||
|
@ -499,7 +501,7 @@ bad_cast * __stdcall MSVCRT_bad_cast_default_ctor(bad_cast * _this)
|
|||
* ??1bad_cast@@UAE@XZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_cast_dtor,4)
|
||||
void __stdcall MSVCRT_bad_cast_dtor(bad_cast * _this)
|
||||
void __thiscall MSVCRT_bad_cast_dtor(bad_cast * _this)
|
||||
{
|
||||
TRACE("(%p)\n", _this);
|
||||
MSVCRT_exception_dtor(_this);
|
||||
|
@ -509,7 +511,7 @@ void __stdcall MSVCRT_bad_cast_dtor(bad_cast * _this)
|
|||
* ??4bad_cast@@QAEAAV0@ABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_cast_opequals,8)
|
||||
bad_cast * __stdcall MSVCRT_bad_cast_opequals(bad_cast * _this, const bad_cast * rhs)
|
||||
bad_cast * __thiscall MSVCRT_bad_cast_opequals(bad_cast * _this, const bad_cast * rhs)
|
||||
{
|
||||
TRACE("(%p %p)\n", _this, rhs);
|
||||
MSVCRT_exception_opequals(_this, rhs);
|
||||
|
@ -520,7 +522,7 @@ bad_cast * __stdcall MSVCRT_bad_cast_opequals(bad_cast * _this, const bad_cast *
|
|||
* ??_Ebad_cast@@UAEPAXI@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_cast_vector_dtor,8)
|
||||
void * __stdcall MSVCRT_bad_cast_vector_dtor(bad_cast * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT_bad_cast_vector_dtor(bad_cast * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
if (flags & 2)
|
||||
|
@ -543,7 +545,7 @@ void * __stdcall MSVCRT_bad_cast_vector_dtor(bad_cast * _this, unsigned int flag
|
|||
* ??_Gbad_cast@@UAEPAXI@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_bad_cast_scalar_dtor,8)
|
||||
void * __stdcall MSVCRT_bad_cast_scalar_dtor(bad_cast * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT_bad_cast_scalar_dtor(bad_cast * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
MSVCRT_bad_cast_dtor(_this);
|
||||
|
@ -555,7 +557,7 @@ void * __stdcall MSVCRT_bad_cast_scalar_dtor(bad_cast * _this, unsigned int flag
|
|||
* ??8type_info@@QBEHABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_type_info_opequals_equals,8)
|
||||
int __stdcall MSVCRT_type_info_opequals_equals(type_info * _this, const type_info * rhs)
|
||||
int __thiscall MSVCRT_type_info_opequals_equals(type_info * _this, const type_info * rhs)
|
||||
{
|
||||
int ret = !strcmp(_this->mangled + 1, rhs->mangled + 1);
|
||||
TRACE("(%p %p) returning %d\n", _this, rhs, ret);
|
||||
|
@ -566,7 +568,7 @@ int __stdcall MSVCRT_type_info_opequals_equals(type_info * _this, const type_inf
|
|||
* ??9type_info@@QBEHABV0@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_type_info_opnot_equals,8)
|
||||
int __stdcall MSVCRT_type_info_opnot_equals(type_info * _this, const type_info * rhs)
|
||||
int __thiscall MSVCRT_type_info_opnot_equals(type_info * _this, const type_info * rhs)
|
||||
{
|
||||
int ret = !!strcmp(_this->mangled + 1, rhs->mangled + 1);
|
||||
TRACE("(%p %p) returning %d\n", _this, rhs, ret);
|
||||
|
@ -577,7 +579,7 @@ int __stdcall MSVCRT_type_info_opnot_equals(type_info * _this, const type_info *
|
|||
* ?before@type_info@@QBEHABV1@@Z (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_type_info_before,8)
|
||||
int __stdcall MSVCRT_type_info_before(type_info * _this, const type_info * rhs)
|
||||
int __thiscall MSVCRT_type_info_before(type_info * _this, const type_info * rhs)
|
||||
{
|
||||
int ret = strcmp(_this->mangled + 1, rhs->mangled + 1) < 0;
|
||||
TRACE("(%p %p) returning %d\n", _this, rhs, ret);
|
||||
|
@ -588,7 +590,7 @@ int __stdcall MSVCRT_type_info_before(type_info * _this, const type_info * rhs)
|
|||
* ??1type_info@@UAE@XZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_type_info_dtor,4)
|
||||
void __stdcall MSVCRT_type_info_dtor(type_info * _this)
|
||||
void __thiscall MSVCRT_type_info_dtor(type_info * _this)
|
||||
{
|
||||
TRACE("(%p)\n", _this);
|
||||
MSVCRT_free(_this->name);
|
||||
|
@ -598,7 +600,7 @@ void __stdcall MSVCRT_type_info_dtor(type_info * _this)
|
|||
* ?name@type_info@@QBEPBDXZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_type_info_name,4)
|
||||
const char * __stdcall MSVCRT_type_info_name(type_info * _this)
|
||||
const char * __thiscall MSVCRT_type_info_name(type_info * _this)
|
||||
{
|
||||
if (!_this->name)
|
||||
{
|
||||
|
@ -639,7 +641,7 @@ const char * __stdcall MSVCRT_type_info_name(type_info * _this)
|
|||
* ?raw_name@type_info@@QBEPBDXZ (MSVCRT.@)
|
||||
*/
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_type_info_raw_name,4)
|
||||
const char * __stdcall MSVCRT_type_info_raw_name(type_info * _this)
|
||||
const char * __thiscall MSVCRT_type_info_raw_name(type_info * _this)
|
||||
{
|
||||
TRACE("(%p) returning %s\n", _this, _this->mangled);
|
||||
return _this->mangled;
|
||||
|
@ -647,7 +649,7 @@ const char * __stdcall MSVCRT_type_info_raw_name(type_info * _this)
|
|||
|
||||
/* Unexported */
|
||||
DEFINE_THISCALL_WRAPPER(MSVCRT_type_info_vector_dtor,8)
|
||||
void * __stdcall MSVCRT_type_info_vector_dtor(type_info * _this, unsigned int flags)
|
||||
void * __thiscall MSVCRT_type_info_vector_dtor(type_info * _this, unsigned int flags)
|
||||
{
|
||||
TRACE("(%p %x)\n", _this, flags);
|
||||
if (flags & 2)
|
||||
|
|
Loading…
Reference in New Issue