From 245c70b12c7d03f0c32b1a80781d366db15ebea3 Mon Sep 17 00:00:00 2001 From: Amaury Forgeot d'Arc Date: Wed, 10 Sep 2008 22:24:24 +0000 Subject: Merged revisions 66377 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r66377 | amaury.forgeotdarc | 2008-09-11 00:04:45 +0200 (jeu., 11 sept. 2008) | 8 lines #3743: PY_FORMAT_SIZE_T is designed for the OS "printf" functions, not for PyString_FromFormat which has an independent implementation, and uses "%zd". This makes a difference on win64, where printf needs "%Id" to display 64bit values. For example, queue.__repr__ was incorrect. Reviewed by Martin von Loewis. ........ --- Modules/_collectionsmodule.c | 2 +- Modules/_multiprocessing/connection.h | 6 +++--- Modules/_multiprocessing/multiprocessing.h | 1 - Python/Python-ast.c | 2 +- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c index b26470e..8e51420 100644 --- a/Modules/_collectionsmodule.c +++ b/Modules/_collectionsmodule.c @@ -671,7 +671,7 @@ deque_repr(PyObject *deque) } if (((dequeobject *)deque)->maxlen != -1) - result = PyUnicode_FromFormat("deque(%R, maxlen=%" PY_FORMAT_SIZE_T "d)", + result = PyUnicode_FromFormat("deque(%R, maxlen=%zd)", aslist, ((dequeobject *)deque)->maxlen); else result = PyUnicode_FromFormat("deque(%R)", aslist); diff --git a/Modules/_multiprocessing/connection.h b/Modules/_multiprocessing/connection.h index e422d69..6e82345 100644 --- a/Modules/_multiprocessing/connection.h +++ b/Modules/_multiprocessing/connection.h @@ -47,8 +47,8 @@ connection_new(PyTypeObject *type, PyObject *args, PyObject *kwds) return NULL; if (handle == INVALID_HANDLE_VALUE || (Py_ssize_t)handle < 0) { - PyErr_Format(PyExc_IOError, "invalid handle %" - PY_FORMAT_SIZE_T "d", (Py_ssize_t)handle); + PyErr_Format(PyExc_IOError, "invalid handle %zd", + (Py_ssize_t)handle); return NULL; } @@ -404,7 +404,7 @@ connection_repr(ConnectionObject *self) static char *conn_type[] = {"read-only", "write-only", "read-write"}; assert(self->flags >= 1 && self->flags <= 3); - return FROM_FORMAT("<%s %s, handle %" PY_FORMAT_SIZE_T "d>", + return FROM_FORMAT("<%s %s, handle %zd>", conn_type[self->flags - 1], CONNECTION_NAME, (Py_ssize_t)self->handle); } diff --git a/Modules/_multiprocessing/multiprocessing.h b/Modules/_multiprocessing/multiprocessing.h index ec5042c..0b32790 100644 --- a/Modules/_multiprocessing/multiprocessing.h +++ b/Modules/_multiprocessing/multiprocessing.h @@ -56,7 +56,6 @@ # define PY_SSIZE_T_MAX INT_MAX # define PY_SSIZE_T_MIN INT_MIN # define F_PY_SSIZE_T "i" -# define PY_FORMAT_SIZE_T "" # define PyInt_FromSsize_t(n) PyInt_FromLong((long)n) #else # define F_PY_SSIZE_T "n" diff --git a/Python/Python-ast.c b/Python/Python-ast.c index 63dbc43..bf7e4ac 100644 --- a/Python/Python-ast.c +++ b/Python/Python-ast.c @@ -412,7 +412,7 @@ ast_type_init(PyObject *self, PyObject *args, PyObject *kw) if (PyTuple_GET_SIZE(args) > 0) { if (numfields != PyTuple_GET_SIZE(args)) { PyErr_Format(PyExc_TypeError, "%.400s constructor takes %s" - "%" PY_FORMAT_SIZE_T "d positional argument%s", + "%zd positional argument%s", Py_TYPE(self)->tp_name, numfields == 0 ? "" : "either 0 or ", numfields, numfields == 1 ? "" : "s"); -- cgit v0.12