From: Guido van Rossum Date: Thu, 3 Sep 1992 20:39:51 +0000 (+0000) Subject: Compare instance methods by comparing the object and the function. X-Git-Tag: v0.9.8~162 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ebc8c51cde0432b5c70079f5fa05295224e8cb78;p=thirdparty%2FPython%2Fcpython.git Compare instance methods by comparing the object and the function. --- diff --git a/Objects/classobject.c b/Objects/classobject.c index d4a2f82401c2..19f887cd7149 100644 --- a/Objects/classobject.c +++ b/Objects/classobject.c @@ -828,6 +828,16 @@ instancemethod_dealloc(im) free((ANY *)im); } +static int +instancemethod_compare(a, b) + instancemethodobject *a, *b; +{ + int cmp = cmpobject(a->im_self, b->im_self); + if (cmp == 0) + cmp = cmpobject(a->im_func, b->im_func); + return cmp; +} + typeobject Instancemethodtype = { OB_HEAD_INIT(&Typetype) 0, @@ -838,7 +848,7 @@ typeobject Instancemethodtype = { 0, /*tp_print*/ instancemethod_getattr, /*tp_getattr*/ 0, /*tp_setattr*/ - 0, /*tp_compare*/ + instancemethod_compare, /*tp_compare*/ 0, /*tp_repr*/ 0, /*tp_as_number*/ 0, /*tp_as_sequence*/