From 213d845611e5b357b6ff8af84f5365d96c32f51b Mon Sep 17 00:00:00 2001
From: Thomas Munro <thomas.munro@gmail.com>
Date: Wed, 19 Nov 2025 13:45:27 +1300
Subject: [PATCH 1/2] Drop support for MSVCRT's %I64 format strings.

MSVCRT predated C99 and invented non-standard placeholders for 64-bit
numbers, and then later used them in standard macros when C99
<inttypes.h> arrived.  Those macros just use %lld etc when building with
UCRT, so there should be no way for our interposed sprintf.c code to
receive the pre-standard kind.  Time to drop the code that parses them.

That code was in fact already dead when commit 962da900 landed, as we'd
officially disclaimed MSVCRT support a couple of weeks earlier in commit
1758d424, but patch development overlapped and the history hadn't been
investigated.
---
 src/port/snprintf.c | 44 --------------------------------------------
 1 file changed, 44 deletions(-)

diff --git a/src/port/snprintf.c b/src/port/snprintf.c
index d7f18b42d19..dded6c3f65b 100644
--- a/src/port/snprintf.c
+++ b/src/port/snprintf.c
@@ -557,28 +557,6 @@ nextch2:
 					fmtpos = accum;
 				accum = 0;
 				goto nextch2;
-#ifdef WIN32
-			case 'I':
-				/* Windows PRI*{32,64,PTR} size */
-				if (format[0] == '3' && format[1] == '2')
-					format += 2;
-				else if (format[0] == '6' && format[1] == '4')
-				{
-					format += 2;
-					longlongflag = 1;
-				}
-				else
-				{
-#if SIZEOF_VOID_P == SIZEOF_LONG
-					longflag = 1;
-#elif SIZEOF_VOID_P == SIZEOF_LONG_LONG
-					longlongflag = 1;
-#else
-#error "cannot find integer type of the same size as intptr_t"
-#endif
-				}
-				goto nextch2;
-#endif
 			case 'l':
 				if (longflag)
 					longlongflag = 1;
@@ -842,28 +820,6 @@ nextch1:
 					fmtpos = accum;
 				accum = 0;
 				goto nextch1;
-#ifdef WIN32
-			case 'I':
-				/* Windows PRI*{32,64,PTR} size */
-				if (format[0] == '3' && format[1] == '2')
-					format += 2;
-				else if (format[0] == '6' && format[1] == '4')
-				{
-					format += 2;
-					longlongflag = 1;
-				}
-				else
-				{
-#if SIZEOF_VOID_P == SIZEOF_LONG
-					longflag = 1;
-#elif SIZEOF_VOID_P == SIZEOF_LONG_LONG
-					longlongflag = 1;
-#else
-#error "cannot find integer type of the same size as intptr_t"
-#endif
-				}
-				goto nextch1;
-#endif
 			case 'l':
 				if (longflag)
 					longlongflag = 1;
-- 
2.51.2

