From: Paul Eggert <eggert@cs.ucla.edu> Date: Wed, 12 Aug 2020 18:27:48 +0000 (-0700) Subject: stdint: port intptr_t to more-recent MinGW X-Git-Tag: v1.0~3775 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=206d2710caf7265c86f5f23265ca14df28c091f8;p=gnulib.git stdint: port intptr_t to more-recent MinGW Problem reported by Eli Zaretskii in <https://bugs.gnu.org/36597#106>. * lib/stdint.in.h (intptr_t, uintptr_t): Do not define on MinGW, even if _INTPTR_T_DEFINED and _UINTPTR_T_DEFINED are not defined. Apparently those two macros were removed in mingwrt-3.22 dated 2016-07-14. --- diff --git a/ChangeLog b/ChangeLog index 986b882a69..20319c82a0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2020-08-12 Paul Eggert <eggert@cs.ucla.edu> + + stdint: port intptr_t to more-recent MinGW + Problem reported by Eli Zaretskii in <https://bugs.gnu.org/36597#106>. + * lib/stdint.in.h (intptr_t, uintptr_t): Do not define on MinGW, + even if _INTPTR_T_DEFINED and _UINTPTR_T_DEFINED are not defined. + Apparently those two macros were removed in mingwrt-3.22 + dated 2016-07-14. + 2020-08-12 Bruno Haible <bruno@clisp.org> thread-optim: Export function-like macros only. diff --git a/lib/stdint.in.h b/lib/stdint.in.h index 324f5e8b26..cbfb53b438 100644 --- a/lib/stdint.in.h +++ b/lib/stdint.in.h @@ -302,12 +302,11 @@ typedef gl_uint_fast32_t gl_uint_fast16_t; /* kLIBC's <stdint.h> defines _INTPTR_T_DECLARED and needs its own definitions of intptr_t and uintptr_t (which use int and unsigned) to avoid clashes with declarations of system functions like sbrk. - Similarly, mingw 5.22 <crtdefs.h> defines _INTPTR_T_DEFINED and - _UINTPTR_T_DEFINED and needs its own definitions of intptr_t and + Similarly, MinGW WSL-5.4.1 <stdint.h> needs its own intptr_t and uintptr_t to avoid conflicting declarations of system functions like _findclose in <io.h>. */ # if !((defined __KLIBC__ && defined _INTPTR_T_DECLARED) \ - || (defined __MINGW32__ && defined _INTPTR_T_DEFINED && defined _UINTPTR_T_DEFINED)) + || defined __MINGW32__) # undef intptr_t # undef uintptr_t # ifdef _WIN64