summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/test_descr.py1
-rw-r--r--Misc/NEWS3
-rw-r--r--Objects/typeobject.c7
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 "