From 52d01c2f52c462d29ae0fdfa44c3cae129148a6d Mon Sep 17 00:00:00 2001 From: Andrew Dunstan Date: Wed, 27 Apr 2011 10:09:23 -0400 Subject: [PATCH] Force use of "%I64d" format for 64 bit ints on MinGW. Both this and "%lld" work, but the compiler's format checking doesn't like "%lld", so we get all sorts of spurious warnings. --- src/include/port/win32.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/include/port/win32.h b/src/include/port/win32.h index 34f40041298..8863bb300cd 100644 --- a/src/include/port/win32.h +++ b/src/include/port/win32.h @@ -88,6 +88,19 @@ #define PGDLLEXPORT #endif +/* + * MinGW compilers accept both "%I64d" and "%lld" for 64 bit ints, + * but whine about the latter, so force the former, regardless of what + * configure found. + */ +#if __GNUC__ +#ifdef INT64_FORMAT +#undef INT64_FORMAT +#undef UINT64_FORMAT +#endif +#define INT64_FORMAT "%I64d" +#define UINT64_FORMAT "%I64u" +#endif /* * IPC defines -- 2.30.2