From 23f0d6b57bb9427df0ab2305c47f14b9c092e0fe Mon Sep 17 00:00:00 2001 From: Mark Dickinson Date: Sat, 5 Jun 2010 11:52:24 +0000 Subject: Issue #8627: remove out-of-date warning about overriding __cmp__ --- Lib/test/test_descr.py | 1 - Misc/NEWS | 3 +++ Objects/typeobject.c | 7 ------- 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py index 2fdd62f..7e9b62b 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 f82f048..3378c5d 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 605d8a0..5767b87 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 " -- cgit v0.12