aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2014-02-23 09:03:32 +0100
committerWladimir J. van der Laan <laanwj@gmail.com>2014-02-23 09:04:07 +0100
commit4fd082ded7af28929e909843eba5c801fe755257 (patch)
tree0b8afc58eee4c67c8aa4888681644fad07cbd878
parent0f0a70623d089b25fb368e6aedcedccd100b3b20 (diff)
parentd5f1e727a8896eec237acbbe4023685eb6b74881 (diff)
Merge pull request #3729
d5f1e72 Don't use PRIx64 formatting derives from inttypes.h (Wladimir J. van der Laan)
-rw-r--r--src/alert.cpp1
-rw-r--r--src/db.cpp1
-rw-r--r--src/init.cpp1
-rw-r--r--src/main.cpp1
-rw-r--r--src/net.h1
-rw-r--r--src/rpcnet.cpp2
-rw-r--r--src/util.h27
-rw-r--r--src/wallet.cpp2
-rw-r--r--src/walletdb.cpp2
9 files changed, 19 insertions, 19 deletions
diff --git a/src/alert.cpp b/src/alert.cpp
index 4dd3716e80..4429ecadce 100644
--- a/src/alert.cpp
+++ b/src/alert.cpp
@@ -11,7 +11,6 @@
#include "util.h"
#include <algorithm>
-#include <inttypes.h>
#include <map>
#include <boost/algorithm/string/classification.hpp>
diff --git a/src/db.cpp b/src/db.cpp
index 592512c947..591d4ed477 100644
--- a/src/db.cpp
+++ b/src/db.cpp
@@ -10,7 +10,6 @@
#include "protocol.h"
#include "util.h"
-#include <inttypes.h>
#include <stdint.h>
#ifndef WIN32
diff --git a/src/init.cpp b/src/init.cpp
index c05ed4356c..4cc04f5205 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -24,7 +24,6 @@
#include "walletdb.h"
#endif
-#include <inttypes.h>
#include <stdint.h>
#ifndef WIN32
diff --git a/src/main.cpp b/src/main.cpp
index f46375aa94..4c98345d68 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -17,7 +17,6 @@
#include "ui_interface.h"
#include "util.h"
-#include <inttypes.h>
#include <sstream>
#include <boost/algorithm/string/replace.hpp>
diff --git a/src/net.h b/src/net.h
index 8995f70da4..da590f89e1 100644
--- a/src/net.h
+++ b/src/net.h
@@ -18,7 +18,6 @@
#include "util.h"
#include <deque>
-#include <inttypes.h>
#include <stdint.h>
#ifndef WIN32
diff --git a/src/rpcnet.cpp b/src/rpcnet.cpp
index b764349338..738b966b8a 100644
--- a/src/rpcnet.cpp
+++ b/src/rpcnet.cpp
@@ -15,8 +15,6 @@
#include "wallet.h" // for getinfo
#endif
-#include <inttypes.h>
-
#include <boost/foreach.hpp>
#include "json/json_spirit_value.h"
diff --git a/src/util.h b/src/util.h
index 6f7627e090..6ef93021fd 100644
--- a/src/util.h
+++ b/src/util.h
@@ -16,7 +16,6 @@
#include <cstdio>
#include <exception>
-#include <inttypes.h>
#include <map>
#include <stdarg.h>
#include <stdint.h>
@@ -45,13 +44,25 @@ static const int64_t CENT = 1000000;
#define UEND(a) ((unsigned char*)&((&(a))[1]))
#define ARRAYLEN(array) (sizeof(array)/sizeof((array)[0]))
-/* Format characters for (s)size_t and ptrdiff_t (C99 standard) */
-#define PRIszx "zx"
-#define PRIszu "zu"
-#define PRIszd "zd"
-#define PRIpdx "tx"
-#define PRIpdu "tu"
-#define PRIpdd "td"
+/* Format characters for (s)size_t, ptrdiff_t, uint64_t.
+ *
+ * As the tinyformat-based formatting system is type-safe, no special format
+ * characters are really needed to specify sizes. Tinyformat can support
+ * (ignores) the C99 prefixes such as "ll" but chokes on MSVC's inttypes
+ * defines prefixes such as "I64X". So don't include inttypes.h and define our
+ * own for compatibility.
+ * If you get a warning here about a redefine of PRI?64, make sure that
+ * inttypes.h is not included.
+ */
+#define PRIszx "x"
+#define PRIszu "u"
+#define PRIszd "d"
+#define PRIpdx "x"
+#define PRIpdu "u"
+#define PRIpdd "d"
+#define PRIx64 "x"
+#define PRIu64 "u"
+#define PRId64 "d"
// This is needed because the foreach macro can't get over the comma in pair<t1, t2>
#define PAIRTYPE(t1, t2) std::pair<t1, t2>
diff --git a/src/wallet.cpp b/src/wallet.cpp
index 823c96949f..2119098595 100644
--- a/src/wallet.cpp
+++ b/src/wallet.cpp
@@ -9,8 +9,6 @@
#include "coincontrol.h"
#include "net.h"
-#include <inttypes.h>
-
#include <boost/algorithm/string/replace.hpp>
#include <openssl/rand.h>
diff --git a/src/walletdb.cpp b/src/walletdb.cpp
index b3816a54b6..b5b523740b 100644
--- a/src/walletdb.cpp
+++ b/src/walletdb.cpp
@@ -11,8 +11,6 @@
#include "sync.h"
#include "wallet.h"
-#include <inttypes.h>
-
#include <boost/filesystem.hpp>
#include <boost/foreach.hpp>