changeset 672:1d4d22c862ed

Mess with PRI* types again.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 24 Feb 2020 07:42:34 +0200
parents 45c2e474a997
children 1763d9b26a58
files th_types.h
diffstat 1 files changed, 30 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/th_types.h	Mon Feb 24 07:42:16 2020 +0200
+++ b/th_types.h	Mon Feb 24 07:42:34 2020 +0200
@@ -98,12 +98,19 @@
 
 // Define some printf specifiers and other useful things
 #if TH_ARCH == 32
-#  define PRIu_SIZE_T     PRIu32
-#  define PRId_SSIZE_T    PRId32
-#  define PRIx_SIZE_T     PRIx32
-#  define PRIu_OFF_T      PRIu32
-#  define PRIx_OFF_T      PRId32
-#  define PRIX_OFF_T      PRIx32
+#  define PRIu_SIZE_T       PRIu32
+#  define PRId_SSIZE_T      PRId32
+#  define PRIx_SIZE_T       PRIx32
+#  define PRIX_SIZE_T       PRIX32
+#  ifdef TH_PLAT_WINDOWS
+#    define PRId_OFF_T      "ld"
+#    define PRIx_OFF_T      "lx"
+#    define PRIX_OFF_T      "lX"
+#  else
+#    define PRId_OFF_T      PRId32
+#    define PRIx_OFF_T      PRIx32
+#    define PRIX_OFF_T      PRIX32
+#  endif
 #  ifndef TH_PTRSIZE
 #    define TH_PTRSIZE 32
 #  endif
@@ -113,12 +120,23 @@
 #    define UINTPTR_MAX   ( 0xffffffffUL)
 #  endif
 #elif TH_ARCH == 64
-#  define PRIu_SIZE_T     PRIu64
-#  define PRId_SSIZE_T    PRId64
-#  define PRIx_SIZE_T     PRIx64
-#  define PRIu_OFF_T      PRIu64
-#  define PRIx_OFF_T      PRId64
-#  define PRIX_OFF_T      PRIx64
+#  ifdef TH_PLAT_WINDOWS // Unsure if this is MinGW64 only thing?
+#    define PRIu_SIZE_T     "I64u"
+#    define PRId_SSIZE_T    "I64d"
+#    define PRIx_SIZE_T     "I64x"
+#    define PRIX_SIZE_T     "I64X"
+#    define PRId_OFF_T      "I64d"
+#    define PRIx_OFF_T      "I64x"
+#    define PRIX_OFF_T      "I64X"
+#  else
+#    define PRIu_SIZE_T     PRIu64
+#    define PRId_SSIZE_T    PRId64
+#    define PRIx_SIZE_T     PRIx64
+#    define PRIX_SIZE_T     PRIX64
+#    define PRId_OFF_T      PRId64
+#    define PRIx_OFF_T      PRIx64
+#    define PRIX_OFF_T      PRIX64
+#  endif
 #  ifndef TH_PTRSIZE
 #    define TH_PTRSIZE 64
 #  endif