From aa36e44c05380386b583c62f6596b92098cb9ad1 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Sun, 11 Feb 2024 19:34:13 +0900 Subject: [PATCH] Win32: Define `HAVE_INTTYPES_H` Suppress redefinition warnings, inttypes.h has been provided as well as stdint.h since `_MSC_VER` 1600 (= Visual C++ 10.0 = Visual Studio 2010). ``` C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\ucrt\inttypes.h(123): warning C4005: 'PRIdPTR': macro redefinition D:\a\ruby\ruby\src\include\ruby/backward/2/inttypes.h(51): note: see previous definition of 'PRIdPTR' C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\ucrt\inttypes.h(142): warning C4005: 'PRIiPTR': macro redefinition D:\a\ruby\ruby\src\include\ruby/backward/2/inttypes.h(52): note: see previous definition of 'PRIiPTR' C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\ucrt\inttypes.h(161): warning C4005: 'PRIoPTR': macro redefinition D:\a\ruby\ruby\src\include\ruby/backward/2/inttypes.h(53): note: see previous definition of 'PRIoPTR' C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\ucrt\inttypes.h(180): warning C4005: 'PRIuPTR': macro redefinition D:\a\ruby\ruby\src\include\ruby/backward/2/inttypes.h(54): note: see previous definition of 'PRIuPTR' C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\ucrt\inttypes.h(199): warning C4005: 'PRIxPTR': macro redefinition D:\a\ruby\ruby\src\include\ruby/backward/2/inttypes.h(55): note: see previous definition of 'PRIxPTR' C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\ucrt\inttypes.h(218): warning C4005: 'PRIXPTR': macro redefinition D:\a\ruby\ruby\src\include\ruby/backward/2/inttypes.h(56): note: see previous definition of 'PRIXPTR' ``` --- win32/Makefile.sub | 1 + 1 file changed, 1 insertion(+) diff --git a/win32/Makefile.sub b/win32/Makefile.sub index 3d4bbc87e8..009c640536 100644 --- a/win32/Makefile.sub +++ b/win32/Makefile.sub @@ -760,6 +760,7 @@ $(CONFIG_H): $(MKFILES) $(srcdir)/win32/Makefile.sub $(win_srcdir)/Makefile.sub #define HAVE_STRUCT_TIMESPEC !endif !if $(MSC_VER) >= 1600 +#define HAVE_INTTYPES_H 1 #define HAVE_STDINT_H 1 !else #define int8_t signed char