summaryrefslogtreecommitdiffstats
path: root/src/Globals.h
diff options
context:
space:
mode:
authorMattes D <github@xoft.cz>2014-07-01 15:07:12 +0200
committerMattes D <github@xoft.cz>2014-07-01 15:07:12 +0200
commit9d843405b282937f9ee70e6ad066ce65a23a02a5 (patch)
treed7ad93182d00f62766e75fa7611d273dd4ff3d34 /src/Globals.h
parentAdded a missing endline. (diff)
parentMerge pull request #1140 from mc-server/FixMingw (diff)
downloadcuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.gz
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.bz2
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.lz
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.xz
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.zst
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.zip
Diffstat (limited to 'src/Globals.h')
-rw-r--r--src/Globals.h21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/Globals.h b/src/Globals.h
index c5768facf..0c11429bd 100644
--- a/src/Globals.h
+++ b/src/Globals.h
@@ -71,9 +71,24 @@
#define FORMATSTRING(formatIndex, va_argsIndex) __attribute__((format (printf, formatIndex, va_argsIndex)))
- #define SIZE_T_FMT "%zu"
- #define SIZE_T_FMT_PRECISION(x) "%" #x "zu"
- #define SIZE_T_FMT_HEX "%zx"
+ #if defined(_WIN32)
+ // We're compiling on MinGW, which uses an old MSVCRT library that has no support for size_t printfing.
+ // We need direct size formats:
+ #if defined(_WIN64)
+ #define SIZE_T_FMT "%I64u"
+ #define SIZE_T_FMT_PRECISION(x) "%" #x "I64u"
+ #define SIZE_T_FMT_HEX "%I64x"
+ #else
+ #define SIZE_T_FMT "%u"
+ #define SIZE_T_FMT_PRECISION(x) "%" #x "u"
+ #define SIZE_T_FMT_HEX "%x"
+ #endif
+ #else
+ // We're compiling on Linux, so we can use libc's size_t printf format:
+ #define SIZE_T_FMT "%zu"
+ #define SIZE_T_FMT_PRECISION(x) "%" #x "zu"
+ #define SIZE_T_FMT_HEX "%zx"
+ #endif
#define NORETURN __attribute((__noreturn__))