Add %zu printf support

This commit is contained in:
cpq committed 2026-07-07 12:37:47 +01:00
1 parent ad269fa4d5
commit 875c0fcd4f
3 files changed
+15

No files matched your search

+1
View File
@@ -2667,6 +2667,7 @@ size_t mg_vxprintf(void (*out)(char, void *), void *param, const char *fmt,
is_long++, c = fmt[++i];
if (c == 'l') is_long++, c = fmt[++i];
}
if (c == 'z') is_long = 1, c = fmt[++i];
if (c == 'p') x = 1, is_long = 1;
if (c == 'd' || c == 'u' || c == 'x' || c == 'X' || c == 'p' ||
c == 'g' || c == 'f') {
+1
View File
@@ -173,6 +173,7 @@ size_t mg_vxprintf(void (*out)(char, void *), void *param, const char *fmt,
is_long++, c = fmt[++i];
if (c == 'l') is_long++, c = fmt[++i];
}
if (c == 'z') is_long = 1, c = fmt[++i];
if (c == 'p') x = 1, is_long = 1;
if (c == 'd' || c == 'u' || c == 'x' || c == 'X' || c == 'p' ||
c == 'g' || c == 'f') {
+13
View File
@@ -2321,6 +2321,19 @@ static void test_str(void) {
ASSERT(chkdbl(mg_str("123e-3"), 0.123));
}
#if defined(_MSC_VER) && _MSC_VER < 1700
// VC98 does not have '%zu'
#else
ASSERT(sn("%zu", 0));
ASSERT(sn("%zu", -1));
ASSERT(sn("%zu", -2));
ASSERT(sn("%zd", 123));
#if !defined(_MSC_VER)
ASSERT(sn("%zd", -3)); // MSVC casts to unsigned
#endif
ASSERT(sn("%zu", 0x1234));
#endif
ASSERT(sn("%d", 0));
ASSERT(sn("%d", 1));
ASSERT(sn("%d", -1));