From fc8a57d8b775d9e3ad2e84d316a95d60f1e2eceb Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Tue, 2 Feb 2010 19:08:42 +0100 Subject: [PATCH] Fix u64 format for cygwin With a -mno-cygwin compile %llu and %lld are definitely not understood by scanf and printf, although they are by the compiler. In stead, %I64u seems to work. Put it in under control of the switch __MINGW__ . --- backend.h | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) diff --git a/backend.h b/backend.h index cddf34b..8d0eef1 100644 --- a/backend.h +++ b/backend.h @@ -70,11 +70,17 @@ #else /* place holder * or dummy types for other compiler + * [HGM] seems that -mno-cygwin comple needs %I64? */ #define u64 unsigned long long #define s64 signed long long - #define u64Display "%llu" - #define s64Display "%lld" + #ifdef __MINGW32__ + #define u64Display "%I64u" + #define s64Display "%I64d" + #else + #define u64Display "%llu" + #define s64Display "%lld" + #endif #define u64Const(c) (c ## ULL) #define s64Const(c) (c ## LL) #endif -- 1.7.0.4