Undo this part of the previous checkin:
Also fixed an error message -- %s argument has non-string str()
doesn't make sense for %r, so the error message now differentiates
between %s and %r.
because PyObject_Repr() and PyObject_Str() ensure that this can never
happen. Added a helpful comment instead.
diff --git a/Objects/stringobject.c b/Objects/stringobject.c
index 52f96ff..6a9450a 100644
--- a/Objects/stringobject.c
+++ b/Objects/stringobject.c
@@ -3874,10 +3874,11 @@
if (temp == NULL)
goto error;
if (!PyString_Check(temp)) {
+ /* XXX Note: this should never happen,
+ since PyObject_Repr() and
+ PyObject_Str() assure this */
PyErr_SetString(PyExc_TypeError,
- c == 's' ?
- "%s argument has non-string str()" :
- "%r argument has non-string repr()");
+ "%s argument has non-string str()");
Py_DECREF(temp);
goto error;
}