msvcr80: Update exceptions RTTI data to reflect it's part of std namespace.
This commit is contained in:
parent
ee14105afd
commit
1be4654842
|
@ -226,7 +226,7 @@
|
|||
@ extern ??_7__non_rtti_object@std@@6B@ MSVCRT___non_rtti_object_vtable
|
||||
@ extern ??_7bad_cast@std@@6B@ MSVCRT_bad_cast_vtable
|
||||
@ extern ??_7bad_typeid@std@@6B@ MSVCRT_bad_typeid_vtable
|
||||
@ extern ??_7exception@@6B@ MSVCRT_exception_vtable
|
||||
@ extern ??_7exception@@6B@ MSVCRT_exception_old_vtable
|
||||
@ extern ??_7exception@std@@6B@ MSVCRT_exception_vtable
|
||||
@ stub -arch=win32 ??_F?$_SpinWait@$00@details@Concurrency@@QAEXXZ
|
||||
@ stub -arch=win64 ??_F?$_SpinWait@$00@details@Concurrency@@QEAAXXZ
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
@ extern ??_7__non_rtti_object@std@@6B@ MSVCRT___non_rtti_object_vtable
|
||||
@ extern ??_7bad_cast@std@@6B@ MSVCRT_bad_cast_vtable
|
||||
@ extern ??_7bad_typeid@std@@6B@ MSVCRT_bad_typeid_vtable
|
||||
@ extern ??_7exception@@6B@ MSVCRT_exception_vtable
|
||||
@ extern ??_7exception@@6B@ MSVCRT_exception_old_vtable
|
||||
@ extern ??_7exception@std@@6B@ MSVCRT_exception_vtable
|
||||
@ thiscall -arch=i386 ??_Fbad_cast@std@@QAEXXZ(ptr) MSVCRT_bad_cast_default_ctor
|
||||
@ cdecl -arch=win64 ??_Fbad_cast@std@@QEAAXXZ(ptr) MSVCRT_bad_cast_default_ctor
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
@ extern ??_7__non_rtti_object@std@@6B@ MSVCRT___non_rtti_object_vtable
|
||||
@ extern ??_7bad_cast@std@@6B@ MSVCRT_bad_cast_vtable
|
||||
@ extern ??_7bad_typeid@std@@6B@ MSVCRT_bad_typeid_vtable
|
||||
@ extern ??_7exception@@6B@ MSVCRT_exception_vtable
|
||||
@ extern ??_7exception@@6B@ MSVCRT_exception_old_vtable
|
||||
@ extern ??_7exception@std@@6B@ MSVCRT_exception_vtable
|
||||
@ thiscall -arch=i386 ??_Fbad_cast@std@@QAEXXZ(ptr) MSVCRT_bad_cast_default_ctor
|
||||
@ cdecl -arch=win64 ??_Fbad_cast@std@@QEAAXXZ(ptr) MSVCRT_bad_cast_default_ctor
|
||||
|
|
|
@ -658,6 +658,11 @@ __ASM_VTABLE(type_info,
|
|||
__ASM_VTABLE(exception,
|
||||
VTABLE_ADD_FUNC(MSVCRT_exception_vector_dtor)
|
||||
VTABLE_ADD_FUNC(MSVCRT_what_exception));
|
||||
#if _MSVCR_VER >= 80
|
||||
__ASM_VTABLE(exception_old,
|
||||
VTABLE_ADD_FUNC(MSVCRT_exception_vector_dtor)
|
||||
VTABLE_ADD_FUNC(MSVCRT_what_exception));
|
||||
#endif
|
||||
__ASM_VTABLE(bad_typeid,
|
||||
VTABLE_ADD_FUNC(MSVCRT_bad_typeid_vector_dtor)
|
||||
VTABLE_ADD_FUNC(MSVCRT_what_exception));
|
||||
|
@ -673,10 +678,18 @@ __ASM_VTABLE(__non_rtti_object,
|
|||
#endif
|
||||
|
||||
DEFINE_RTTI_DATA0( type_info, 0, ".?AVtype_info@@" )
|
||||
#if _MSVCR_VER >= 80
|
||||
DEFINE_RTTI_DATA0( exception, 0, ".?AVexception@std@@" )
|
||||
DEFINE_RTTI_DATA0( exception_old, 0, ".?AVexception@@" )
|
||||
DEFINE_RTTI_DATA1( bad_typeid, 0, &exception_rtti_base_descriptor, ".?AVbad_typeid@std@@" )
|
||||
DEFINE_RTTI_DATA1( bad_cast, 0, &exception_rtti_base_descriptor, ".?AVbad_cast@std@@" )
|
||||
DEFINE_RTTI_DATA2( __non_rtti_object, 0, &bad_typeid_rtti_base_descriptor, &exception_rtti_base_descriptor, ".?AV__non_rtti_object@std@@" )
|
||||
#else
|
||||
DEFINE_RTTI_DATA0( exception, 0, ".?AVexception@@" )
|
||||
DEFINE_RTTI_DATA1( bad_typeid, 0, &exception_rtti_base_descriptor, ".?AVbad_typeid@@" )
|
||||
DEFINE_RTTI_DATA1( bad_cast, 0, &exception_rtti_base_descriptor, ".?AVbad_cast@@" )
|
||||
DEFINE_RTTI_DATA2( __non_rtti_object, 0, &bad_typeid_rtti_base_descriptor, &exception_rtti_base_descriptor, ".?AV__non_rtti_object@@" )
|
||||
#endif
|
||||
|
||||
DEFINE_EXCEPTION_TYPE_INFO( exception, 0, NULL, NULL )
|
||||
DEFINE_EXCEPTION_TYPE_INFO( bad_typeid, 1, &exception_cxx_type_info, NULL )
|
||||
|
@ -688,6 +701,9 @@ void msvcrt_init_exception(void *base)
|
|||
#ifdef __x86_64__
|
||||
init_type_info_rtti(base);
|
||||
init_exception_rtti(base);
|
||||
#if _MSVCR_VER >= 80
|
||||
init_exception_old_rtti(base);
|
||||
#endif
|
||||
init_bad_typeid_rtti(base);
|
||||
init_bad_cast_rtti(base);
|
||||
init___non_rtti_object_rtti(base);
|
||||
|
|
Loading…
Reference in New Issue