<div dir="rtl"><div dir="ltr"><div dir="ltr">On Windows, typeids are different between DLLs and EXEs, so comparing type_info* will work for typeids from the same compiled file but fail for typeids from a DLL and an executable. Among other things, exceptions are not caught by handlers since can_catch() returns false.</div>

<div dir="ltr"><br></div><div dir="ltr">Defining _LIBCXX_DYNAMIC_FALLBACK does not help since can_catch() calls is_equal() with use_strcmp=false so the string names are not compared.</div><div dir="ltr"><br></div><div>This patch compares typeids first (cheap) and only they are different calls strcmp.</div>

<div dir="ltr"><br></div><div dir="ltr">If libcxxabi with Visual C++ has the same problem, __MINGW32__ should be replaced with _WIN32 in both locations.</div><div dir="ltr"><br></div><div>Yaron</div><div><br></div></div>
</div>