From 10bb7191cb20e2f6ea272a5a2fe4b9777700f5d9 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Thu, 20 Nov 2025 17:30:35 +0100 Subject: [PATCH] gh-141784: Fix _remote_debugging_module.c compilation on 32-bit Linux (#141796) Include Python.h before system headers to make sure that _remote_debugging_module.c uses the same types (ABI) than Python. (cherry picked from commit 722f4bb8c9c6b32a7221e4813058cbb5c3989c10) --- ...-11-20-17-01-05.gh-issue-141784.LkYI2n.rst | 4 ++++ Modules/_remote_debugging_module.c | 19 +++++++++++-------- 2 files changed, 15 insertions(+), 8 deletions(-) create mode 100644 Misc/NEWS.d/next/Build/2025-11-20-17-01-05.gh-issue-141784.LkYI2n.rst diff --git a/Misc/NEWS.d/next/Build/2025-11-20-17-01-05.gh-issue-141784.LkYI2n.rst b/Misc/NEWS.d/next/Build/2025-11-20-17-01-05.gh-issue-141784.LkYI2n.rst new file mode 100644 index 00000000000000..f20d84094162ac --- /dev/null +++ b/Misc/NEWS.d/next/Build/2025-11-20-17-01-05.gh-issue-141784.LkYI2n.rst @@ -0,0 +1,4 @@ +Fix ``_remote_debugging_module.c`` compilation on 32-bit Linux. Include +Python.h before system headers to make sure that +``_remote_debugging_module.c`` uses the same types (ABI) than Python. Patch +by Victor Stinner. diff --git a/Modules/_remote_debugging_module.c b/Modules/_remote_debugging_module.c index f34f25a1338542..b46538b76df16e 100644 --- a/Modules/_remote_debugging_module.c +++ b/Modules/_remote_debugging_module.c @@ -11,14 +11,6 @@ * HEADERS AND INCLUDES * ============================================================================ */ -#include -#include -#include -#include -#include -#include -#include - #ifndef Py_BUILD_CORE_BUILTIN # define Py_BUILD_CORE_MODULE 1 #endif @@ -30,6 +22,17 @@ #include // Py_TAG_BITS #include "../Python/remote_debug.h" +// gh-141784: Python.h header must be included first, before system headers. +// Otherwise, some types such as ino_t can be defined differently, causing ABI +// issues. +#include +#include +#include +#include +#include +#include +#include + #ifndef HAVE_PROCESS_VM_READV # define HAVE_PROCESS_VM_READV 0 #endif