https://github.com/python/cpython/commit/e726d28a239e09bfb58a4415358fcb54a4e7de50
commit: e726d28a239e09bfb58a4415358fcb54a4e7de50
branch: 3.13
author: Serhiy Storchaka <[email protected]>
committer: serhiy-storchaka <[email protected]>
date: 2026-03-31T09:16:44Z
summary:

[3.13] gh-146615: Fix format specifiers in Python/ directory (GH-146619) 
(GH-146654)

(cherry picked from commit dcb260eff2d276976933f78c24a4ebd0ed7dbc36)

Co-authored-by: sunmy2019 <[email protected]>

files:
M Python/bltinmodule.c
M Python/ceval.c
M Python/getargs.c
M Python/interpconfig.c
M Python/pythonrun.c

diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index 5ded0bba13b16d..bcf7e7355daa99 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -2973,7 +2973,7 @@ zip_next(zipobject *lz)
         // ValueError: zip() argument 3 is shorter than arguments 1-2
         const char* plural = i == 1 ? " " : "s 1-";
         return PyErr_Format(PyExc_ValueError,
-                            "zip() argument %d is shorter than argument%s%d",
+                            "zip() argument %zd is shorter than argument%s%zd",
                             i + 1, plural, i);
     }
     for (i = 1; i < tuplesize; i++) {
@@ -2983,7 +2983,7 @@ zip_next(zipobject *lz)
             Py_DECREF(item);
             const char* plural = i == 1 ? " " : "s 1-";
             return PyErr_Format(PyExc_ValueError,
-                                "zip() argument %d is longer than 
argument%s%d",
+                                "zip() argument %zd is longer than 
argument%s%zd",
                                 i + 1, plural, i);
         }
         if (PyErr_Occurred()) {
diff --git a/Python/ceval.c b/Python/ceval.c
index aafb4dd0fd97d3..7a4e704a4b5580 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -513,7 +513,7 @@ _PyEval_MatchClass(PyThreadState *tstate, PyObject 
*subject, PyObject *type,
         if (allowed < nargs) {
             const char *plural = (allowed == 1) ? "" : "s";
             _PyErr_Format(tstate, PyExc_TypeError,
-                          "%s() accepts %d positional sub-pattern%s (%d 
given)",
+                          "%s() accepts %zd positional sub-pattern%s (%zd 
given)",
                           ((PyTypeObject*)type)->tp_name,
                           allowed, plural, nargs);
             goto fail;
@@ -1183,7 +1183,7 @@ format_missing(PyThreadState *tstate, const char *kind,
     if (name_str == NULL)
         return;
     _PyErr_Format(tstate, PyExc_TypeError,
-                  "%U() missing %i required %s argument%s: %U",
+                  "%U() missing %zd required %s argument%s: %U",
                   qualname,
                   len,
                   kind,
diff --git a/Python/getargs.c b/Python/getargs.c
index e95ccec851fb38..1bf99fe33c8a35 100644
--- a/Python/getargs.c
+++ b/Python/getargs.c
@@ -2189,7 +2189,7 @@ vgetargskeywordsfast_impl(PyObject *const *args, 
Py_ssize_t nargs,
         if (i < parser->min) {
             /* Less arguments than required */
             if (i < pos) {
-                Py_ssize_t min = Py_MIN(pos, parser->min);
+                int min = Py_MIN(pos, parser->min);
                 PyErr_Format(PyExc_TypeError,
                              "%.200s%s takes %s %d positional argument%s"
                              " (%zd given)",
@@ -2203,7 +2203,7 @@ vgetargskeywordsfast_impl(PyObject *const *args, 
Py_ssize_t nargs,
             else {
                 keyword = PyTuple_GET_ITEM(kwtuple, i - pos);
                 PyErr_Format(PyExc_TypeError,  "%.200s%s missing required "
-                             "argument '%U' (pos %d)",
+                             "argument '%U' (pos %zd)",
                              (parser->fname == NULL) ? "function" : 
parser->fname,
                              (parser->fname == NULL) ? "" : "()",
                              keyword, i+1);
@@ -2244,7 +2244,7 @@ vgetargskeywordsfast_impl(PyObject *const *args, 
Py_ssize_t nargs,
                 /* arg present in tuple and in dict */
                 PyErr_Format(PyExc_TypeError,
                              "argument for %.200s%s given by name ('%U') "
-                             "and position (%d)",
+                             "and position (%zd)",
                              (parser->fname == NULL) ? "function" : 
parser->fname,
                              (parser->fname == NULL) ? "" : "()",
                              keyword, i+1);
diff --git a/Python/interpconfig.c b/Python/interpconfig.c
index 54e5dca284c215..27f4793cd2f555 100644
--- a/Python/interpconfig.c
+++ b/Python/interpconfig.c
@@ -207,7 +207,7 @@ interp_config_from_dict(PyObject *origdict, 
PyInterpreterConfig *config,
     }
     else if (unused > 0) {
         PyErr_Format(PyExc_ValueError,
-                     "config dict has %d extra items (%R)", unused, dict);
+                     "config dict has %zd extra items (%R)", unused, dict);
         goto error;
     }
 
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index c4a1275eb524d6..632d2c56a67638 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -1398,11 +1398,11 @@ get_interactive_filename(PyObject *filename, Py_ssize_t 
count)
         if (middle == NULL) {
             return NULL;
         }
-        result = PyUnicode_FromFormat("<%U-%d>", middle, count);
+        result = PyUnicode_FromFormat("<%U-%zd>", middle, count);
         Py_DECREF(middle);
     } else {
         result = PyUnicode_FromFormat(
-            "%U-%d", filename, count);
+            "%U-%zd", filename, count);
     }
     return result;
 

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to