diff --git a/libcxx/src/support/runtime/exception_pointer_msvc.ipp b/libcxx/src/support/runtime/exception_pointer_msvc.ipp index 3102d1ee93db2..4b877deeec7bc 100644 --- a/libcxx/src/support/runtime/exception_pointer_msvc.ipp +++ b/libcxx/src/support/runtime/exception_pointer_msvc.ipp @@ -141,7 +141,7 @@ void __copy_exception_object(void* __dest, const void* __src, const CatchableTyp #if _EH_RELATIVE_TYPEINFO const auto __copy_func = reinterpret_cast(__throw_image_base + __type->copyFunction); #else // _EH_RELATIVE_TYPEINFO - const auto __copy_func = __type->copyFunction; + const auto __copy_func = reinterpret_cast(__type->copyFunction); #endif // _EH_RELATIVE_TYPEINFO const auto __adjusted = __AdjustPointer(const_cast(__src), __type->thisDisplacement); @@ -204,7 +204,8 @@ struct alignas(__STDCPP_DEFAULT_NEW_ALIGNMENT__) __exception_ptr_normal final : __call_member_function_0(__cpp_eh_record.params.pExceptionObject, reinterpret_cast(__throw_info->pmfnUnwind + __throw_image_base)); #else // _EH_RELATIVE_TYPEINFO - __call_member_function_0(__cpp_eh_record.params.pExceptionObject, __throw_info->pmfnUnwind); + __call_member_function_0(__cpp_eh_record.params.pExceptionObject, + reinterpret_cast(__throw_info->pmfnUnwind)); #endif // _EH_RELATIVE_TYPEINFO } else if (__type->properties & CT_IsWinRTHandle) { const auto* __unknown = *static_cast(__cpp_eh_record.params.pExceptionObject);