Index: src/of_asprintf.m ================================================================== --- src/of_asprintf.m +++ src/of_asprintf.m @@ -304,12 +304,13 @@ ctx->lengthModifier = LENGTH_MODIFIER_J; break; case 'z': #if defined(OF_WINDOWS) - if (!appendSubformat(ctx, "I", 1)) - return false; + if (sizeof(size_t) == 8) + if (!appendSubformat(ctx, "I64", 3)) + return false; #elif defined(_NEWLIB_VERSION) if (!appendSubformat(ctx, "l", 1)) return false; #else if (!appendSubformat(ctx, ctx->format + ctx->i, 1)) @@ -319,12 +320,13 @@ ctx->lengthModifier = LENGTH_MODIFIER_Z; break; case 't': #if defined(OF_WINDOWS) - if (!appendSubformat(ctx, "I", 1)) - return false; + if (sizeof(ptrdiff_t) == 8) + if (!appendSubformat(ctx, "I64", 3)) + return false; #elif defined(_NEWLIB_VERSION) if (!appendSubformat(ctx, "l", 1)) return false; #else if (!appendSubformat(ctx, ctx->format + ctx->i, 1))