summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
authorTerry Jan Reedy <tjreedy@udel.edu>2014-08-02 05:30:37 (GMT)
committerTerry Jan Reedy <tjreedy@udel.edu>2014-08-02 05:30:37 (GMT)
commitffff1440d118cae189a6c2baf595dda52cdc7c3a (patch)
treee1664353a0276044933c16879fa59e7521a6044e /Objects
parent7f9cc9359bdbcc877b2a6f976c8e8bdbc714ce90 (diff)
downloadcpython-ffff1440d118cae189a6c2baf595dda52cdc7c3a.zip
cpython-ffff1440d118cae189a6c2baf595dda52cdc7c3a.tar.gz
cpython-ffff1440d118cae189a6c2baf595dda52cdc7c3a.tar.bz2
Issue #22077: Improve index error messages for bytearrays, bytes, lists, and
tuples by adding 'or slices'. Added ', not <typename' for bytearrays. Original patch by Claudiu Popa.
Diffstat (limited to 'Objects')
-rw-r--r--Objects/bytearrayobject.c8
-rw-r--r--Objects/bytesobject.c2
-rw-r--r--Objects/listobject.c4
-rw-r--r--Objects/tupleobject.c2
4 files changed, 10 insertions, 6 deletions
diff --git a/Objects/bytearrayobject.c b/Objects/bytearrayobject.c
index 242b3b2..f6f370d 100644
--- a/Objects/bytearrayobject.c
+++ b/Objects/bytearrayobject.c
@@ -445,7 +445,9 @@ bytearray_subscript(PyByteArrayObject *self, PyObject *index)
}
}
else {
- PyErr_SetString(PyExc_TypeError, "bytearray indices must be integers");
+ PyErr_Format(PyExc_TypeError,
+ "bytearray indices must be integers or slices, not %.200s",
+ Py_TYPE(index)->tp_name);
return NULL;
}
}
@@ -650,7 +652,9 @@ bytearray_ass_subscript(PyByteArrayObject *self, PyObject *index, PyObject *valu
}
}
else {
- PyErr_SetString(PyExc_TypeError, "bytearray indices must be integer");
+ PyErr_Format(PyExc_TypeError,
+ "bytearray indices must be integers or slices, not %.200s",
+ Py_TYPE(index)->tp_name);
return -1;
}
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c
index aff09cd..ca565eb 100644
--- a/Objects/bytesobject.c
+++ b/Objects/bytesobject.c
@@ -999,7 +999,7 @@ bytes_subscript(PyBytesObject* self, PyObject* item)
}
else {
PyErr_Format(PyExc_TypeError,
- "byte indices must be integers, not %.200s",
+ "byte indices must be integers or slices, not %.200s",
Py_TYPE(item)->tp_name);
return NULL;
}
diff --git a/Objects/listobject.c b/Objects/listobject.c
index fd5a72a..e7c4c82 100644
--- a/Objects/listobject.c
+++ b/Objects/listobject.c
@@ -2444,7 +2444,7 @@ list_subscript(PyListObject* self, PyObject* item)
}
else {
PyErr_Format(PyExc_TypeError,
- "list indices must be integers, not %.200s",
+ "list indices must be integers or slices, not %.200s",
item->ob_type->tp_name);
return NULL;
}
@@ -2608,7 +2608,7 @@ list_ass_subscript(PyListObject* self, PyObject* item, PyObject* value)
}
else {
PyErr_Format(PyExc_TypeError,
- "list indices must be integers, not %.200s",
+ "list indices must be integers or slices, not %.200s",
item->ob_type->tp_name);
return -1;
}
diff --git a/Objects/tupleobject.c b/Objects/tupleobject.c
index 6fd4db3..753097b 100644
--- a/Objects/tupleobject.c
+++ b/Objects/tupleobject.c
@@ -746,7 +746,7 @@ tuplesubscript(PyTupleObject* self, PyObject* item)
}
else {
PyErr_Format(PyExc_TypeError,
- "tuple indices must be integers, not %.200s",
+ "tuple indices must be integers or slices, not %.200s",
Py_TYPE(item)->tp_name);
return NULL;
}