From e0a8dee8bcf0785325c07fff5a11e8ec494826db Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Tue, 9 Feb 2010 11:09:30 -0800 Subject: Fix printf for when uint64_t != unsigned long long int Thanks to Michal Sojka for pointing out the correct fix, which I verified in the freely-available WG14/N1124 draft (from the C99 working group) which is available here: http://www.open-std.org/JTC1/SC22/wg14/www/docs/n1124.pdf --- lib/database-private.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'lib/database-private.h') diff --git a/lib/database-private.h b/lib/database-private.h index 5bb6e86c..41918d76 100644 --- a/lib/database-private.h +++ b/lib/database-private.h @@ -21,6 +21,15 @@ #ifndef NOTMUCH_DATABASE_PRIVATE_H #define NOTMUCH_DATABASE_PRIVATE_H +/* According to WG14/N1124, a C++ implementation won't provide us a + * macro like PRIx64 (which gives a printf format string for + * formatting a uint64_t as hexadecimal) unless we define + * __STDC_FORMAT_MACROS before including inttypes.h. That's annoying, + * but there it is. + */ +#define __STDC_FORMAT_MACROS +#include + #include "notmuch-private.h" #include -- cgit v1.2.3