Thread (1 message) 1 message, 1 author, 2016-06-15

Re: [PATCH 2/2] MSVC: VS2013 comes with inttypes.h

From: Junio C Hamano <hidden>
Date: 2016-06-15 23:09:05

Sven Strickroth [off-list ref] writes:
Reduce the number of defines which need to be managed within vanilal git.
Hmph.
Signed-off-by: Sven Strickroth <redacted>
---
I am not qualified to judge the correctness of the assertions this
change makes:

 * MSVC at or newer than version 1800 have PRIuMAX and PRId64
 * MSVC at or newer than version 1800 have {UINT,INT}MAX_{MIN,MAX}

and will wait for Windows folks to Ack.

Thanks.
quoted hunk
 compat/mingw.h                  | 2 +-
 compat/vcbuild/include/unistd.h | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/compat/mingw.h b/compat/mingw.h
index 6b6d695..5d7f0dd 100644
--- a/compat/mingw.h
+++ b/compat/mingw.h
@@ -415,7 +415,7 @@ int mingw_offset_1st_component(const char *path);
 extern void build_libgit_environment(void);
 extern const char *program_data_config(void);
 #define git_program_data_config program_data_config
-#ifndef __MINGW64_VERSION_MAJOR
+#if !defined(__MINGW64_VERSION_MAJOR) || !defined(_MSC_VER) || _MSC_VER < 1800
 #define PRIuMAX "I64u"
 #define PRId64 "I64d"
 #else
diff --git a/compat/vcbuild/include/unistd.h b/compat/vcbuild/include/unistd.h
index c65c2cd..b4b7b7c 100644
--- a/compat/vcbuild/include/unistd.h
+++ b/compat/vcbuild/include/unistd.h
@@ -45,11 +45,13 @@ typedef unsigned long long uintmax_t;
 
 typedef int64_t off64_t;
 
+#if !defined(_MSC_VER) || _MSC_VER < 1800
 #define INTMAX_MIN  _I64_MIN
 #define INTMAX_MAX  _I64_MAX
 #define UINTMAX_MAX _UI64_MAX
 
 #define UINT32_MAX 0xffffffff  /* 4294967295U */
+#endif
 
 #define STDIN_FILENO  0
 #define STDOUT_FILENO 1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help