From 5c4e21d6b5f895a5799d7454f0f86e028a91bcff Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 7 Sep 2017 13:37:38 +0100 Subject: [PATCH] printf fix for signed %zd formatters on 32-bit --- renderdoc/serialise/utf8printf.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/renderdoc/serialise/utf8printf.cpp b/renderdoc/serialise/utf8printf.cpp index de7b163ba..d4151393d 100644 --- a/renderdoc/serialise/utf8printf.cpp +++ b/renderdoc/serialise/utf8printf.cpp @@ -137,7 +137,13 @@ void PrintInteger(bool typeUnsigned, uint64_t argu, int base, uint64_t numbits, case HalfHalf: argi = (int64_t)*typepun.c; break; case Half: argi = (int64_t)*typepun.s; break; case LongLong: argi = (int64_t)*typepun.i64; break; +#if ENABLED(RDOC_X64) + RDCCOMPILE_ASSERT(sizeof(size_t) == sizeof(int64_t), "64-bit macros are wrong"); case SizeT: argi = (int64_t)*typepun.i64; break; +#else + RDCCOMPILE_ASSERT(sizeof(size_t) == sizeof(int32_t), "64-bit macros are wrong"); + case SizeT: argi = (int64_t)*typepun.i; break; +#endif } bool negative = false;