From 5de4798e17ec548d486eb22fd6d3faca16222dce Mon Sep 17 00:00:00 2001 From: Jared Hance Date: Mon, 10 Nov 2025 21:58:36 +0000 Subject: [PATCH 1/3] Improve error message for librt abi mismatch --- mypyc/lib-rt/librt_internal.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mypyc/lib-rt/librt_internal.h b/mypyc/lib-rt/librt_internal.h index 329a0fd68c11..2d43c0f82275 100644 --- a/mypyc/lib-rt/librt_internal.h +++ b/mypyc/lib-rt/librt_internal.h @@ -64,7 +64,12 @@ import_librt_internal(void) return -1; memcpy(NativeInternal_API, capsule, sizeof(NativeInternal_API)); if (NativeInternal_ABI_Version() != LIBRT_INTERNAL_ABI_VERSION) { - PyErr_SetString(PyExc_ValueError, "ABI version conflict for librt.internal"); + char err[64]; + snprintf(err, sizeof(err), "ABI version conflict for librt.internal, expected %d, found %d", + LIBRT_INTERNAL_ABI_VERSION, + NativeInternal_ABI_Version(), + ); + PyErr_SetString(PyExc_ValueError, err); return -1; } return 0; From 84b5abe215f140ed98851a78660837202ce8ab3a Mon Sep 17 00:00:00 2001 From: Jared Hance Date: Mon, 10 Nov 2025 22:05:56 +0000 Subject: [PATCH 2/3] C does not appreciate trailing commas. --- mypyc/lib-rt/librt_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mypyc/lib-rt/librt_internal.h b/mypyc/lib-rt/librt_internal.h index 2d43c0f82275..c187714bc59f 100644 --- a/mypyc/lib-rt/librt_internal.h +++ b/mypyc/lib-rt/librt_internal.h @@ -67,7 +67,7 @@ import_librt_internal(void) char err[64]; snprintf(err, sizeof(err), "ABI version conflict for librt.internal, expected %d, found %d", LIBRT_INTERNAL_ABI_VERSION, - NativeInternal_ABI_Version(), + NativeInternal_ABI_Version() ); PyErr_SetString(PyExc_ValueError, err); return -1; From 6242305dfa18a3e4509fab5df1c507a8897f4003 Mon Sep 17 00:00:00 2001 From: Jared Hance Date: Mon, 10 Nov 2025 22:20:14 +0000 Subject: [PATCH 3/3] 128 --- mypyc/lib-rt/librt_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mypyc/lib-rt/librt_internal.h b/mypyc/lib-rt/librt_internal.h index c187714bc59f..bef9e196d2c1 100644 --- a/mypyc/lib-rt/librt_internal.h +++ b/mypyc/lib-rt/librt_internal.h @@ -64,7 +64,7 @@ import_librt_internal(void) return -1; memcpy(NativeInternal_API, capsule, sizeof(NativeInternal_API)); if (NativeInternal_ABI_Version() != LIBRT_INTERNAL_ABI_VERSION) { - char err[64]; + char err[128]; snprintf(err, sizeof(err), "ABI version conflict for librt.internal, expected %d, found %d", LIBRT_INTERNAL_ABI_VERSION, NativeInternal_ABI_Version()