On Mon, 1 Apr 2024, Pali Rohár wrote:

They are present in msvcrt.dll since Windows Vista.
---
mingw-w64-crt/lib-common/msvcrt.def.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mingw-w64-crt/lib-common/msvcrt.def.in 
b/mingw-w64-crt/lib-common/msvcrt.def.in
index 460a1bab097b..5b2f4ddb2f08 100644
--- a/mingw-w64-crt/lib-common/msvcrt.def.in
+++ b/mingw-w64-crt/lib-common/msvcrt.def.in
@@ -299,7 +299,7 @@ __ExceptionPtrToBool
?what@exception@@UBAPBDXZ
#endif

-#ifdef DEF_ARM32
+#if defined(DEF_ARM32) || defined(DEF_I386) || defined(DEF_X64)

I'd rather remove the ifdef altogether. If they're available on those three architectures, they're quite likely available on arm64 as well. And I just checked; the arm64 version of msvcrt.dll also does contain these symbols.

The reason for this discrepancy to begin with, was that most of these def files have started from dumps of different versions of msvcrt.dll; the arm32 dump was made from a much newer version that the other ones.

For arm64, we've not really done any bulk import from dumps at all. When arm64 became relevant, we instead unified the common similar bits from i386/x86_64/arm32 (leading to a shared file with these symbols only available for arm32, as that was what it looked like in the 3 separate dumps before that) and concluded that whatever is common/shared between them, also should exist similarly for arm64.

// Martin

_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to