postgres.git / summary / log / commit / refs
commit 52d01c2f52c462d29ae0fdfa44c3cae129148a6d
Author: Andrew Dunstan <andrew@dunslane.net>
Date: Wed Apr 27 14:09:23 2011 +0000
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
[parent: c43d0791ac5f]