Piotr Caban (@piotr) commented about dlls/vccorlib140/tests/vccorlib.c:
- {
HRESULT hr;const WCHAR *exp_winrt_name;const char *exp_rtti_mangled_name;const char *exp_rtti_name;/* The mangled RTTI name of the cxx_exception_type received by the exception handler/filter. */const char *exp_exception_rtti_mangled_name;- } test_cases[] = {
WINRT_EXCEPTIONS/* Generic exceptions */{E_HANDLE, L"Platform.COMException", ".?AVCOMException@Platform@@", "class Platform::COMException", EXCEPTION_RTTI_NAME(COM)},{0xdeadbeef, L"Platform.COMException", ".?AVCOMException@Platform@@", "class Platform::COMException", EXCEPTION_RTTI_NAME(COM)},- };
+#undef EXCEPTION_RTTI_NAME +#undef WINRT_EXCEPTION
- const ULONG_PTR base = sizeof(void *) == 8 ? (ULONG_PTR)hmod : 0;
base initialization doesn't match with rva's usage in C-runtime (see CXX_USE_RVA definition in dlls/msvcrt/cxx.h). I'm expecting it to not work on 32-bit Arm.