diff -r 09a8ee0f7585 Objects/typeobject.c --- a/Objects/typeobject.c Wed Dec 14 19:56:53 2016 +0200 +++ b/Objects/typeobject.c Wed Dec 14 23:50:56 2016 +0200 @@ -4371,8 +4371,6 @@ static PyObject * object_format(PyObject *self, PyObject *args) { PyObject *format_spec; - PyObject *self_as_str = NULL; - PyObject *result = NULL; if (!PyArg_ParseTuple(args, "U:__format__", &format_spec)) return NULL; @@ -4385,12 +4383,7 @@ object_format(PyObject *self, PyObject * self->ob_type->tp_name); return NULL; } - self_as_str = PyObject_Str(self); - if (self_as_str != NULL) { - result = PyObject_Format(self_as_str, format_spec); - Py_DECREF(self_as_str); - } - return result; + return PyObject_Str(self); } static PyObject *