From: Guido van Rossum Date: Mon, 29 Oct 2001 14:33:44 +0000 (+0000) Subject: When overriding __str__ or __repr__, set the tp_print slot to NULL. X-Git-Tag: v2.2.1c1~988 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=afe7a94089dab0fea0694647e91988df29d23c1c;p=python When overriding __str__ or __repr__, set the tp_print slot to NULL. --- diff --git a/Objects/typeobject.c b/Objects/typeobject.c index 026fe14967..d5f6a8f0fe 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -3380,8 +3380,10 @@ static slotdef slotdefs[] = { TPSLOT("__str__", tp_str, slot_tp_str, wrap_unaryfunc, "x.__str__() <==> str(x)"), + TPSLOT("__str__", tp_print, NULL, NULL, ""), TPSLOT("__repr__", tp_repr, slot_tp_repr, wrap_unaryfunc, "x.__repr__() <==> repr(x)"), + TPSLOT("__repr__", tp_print, NULL, NULL, ""), TPSLOT("__cmp__", tp_compare, _PyObject_SlotCompare, wrap_cmpfunc, "x.__cmp__(y) <==> cmp(x,y)"), TPSLOT("__hash__", tp_hash, slot_tp_hash, wrap_hashfunc,