From: Mark Dickinson Date: Sat, 5 Jun 2010 11:52:24 +0000 (+0000) Subject: Issue #8627: remove out-of-date warning about overriding __cmp__ X-Git-Tag: v2.7rc1~21 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=23f0d6b57bb9427df0ab2305c47f14b9c092e0fe;p=python Issue #8627: remove out-of-date warning about overriding __cmp__ --- diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py index 2fdd62fc4f..7e9b62b838 100644 --- a/Lib/test/test_descr.py +++ b/Lib/test/test_descr.py @@ -4621,7 +4621,6 @@ def test_main(): deprecations += [ ("classic (int|long) division", DeprecationWarning), ("coerce.. not supported", DeprecationWarning), - ("Overriding __cmp__ ", DeprecationWarning), (".+__(get|set|del)slice__ has been removed", DeprecationWarning)] with test_support.check_warnings(*deprecations): # Run all local test cases, with PTypesLongInitTest first. diff --git a/Misc/NEWS b/Misc/NEWS index f82f048bc4..3378c5d44d 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -12,6 +12,9 @@ What's New in Python 2.7 Release Candidate 1? Core and Builtins ----------------- +- Issue #8627: Remove bogus "Overriding __cmp__ blocks inheritance of + __hash__ in 3.x" warning. + - Issue #8748: Fix two issues with comparisons between complex and integer objects. (1) The comparison could incorrectly return True in some cases (2**53+1 == complex(2**53) == 2**53), breaking transivity of equality. diff --git a/Objects/typeobject.c b/Objects/typeobject.c index 605d8a0107..5767b87dfe 100644 --- a/Objects/typeobject.c +++ b/Objects/typeobject.c @@ -3723,7 +3723,6 @@ overrides_name(PyTypeObject *type, char *name) } #define OVERRIDES_HASH(x) overrides_name(x, "__hash__") -#define OVERRIDES_CMP(x) overrides_name(x, "__cmp__") #define OVERRIDES_EQ(x) overrides_name(x, "__eq__") static void @@ -3869,12 +3868,6 @@ inherit_slots(PyTypeObject *type, PyTypeObject *base) if (base->tp_hash && (base->tp_hash != PyObject_HashNotImplemented) && !OVERRIDES_HASH(type)) { - if (OVERRIDES_CMP(type)) { - PyErr_WarnPy3k("Overriding " - "__cmp__ blocks inheritance " - "of __hash__ in 3.x", - 1); - } if (OVERRIDES_EQ(type)) { PyErr_WarnPy3k("Overriding " "__eq__ blocks inheritance "