summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/test_inspect.py5
-rw-r--r--Misc/NEWS7
-rw-r--r--Objects/typeobject.c4
3 files changed, 13 insertions, 3 deletions
diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py
index 0dc7451..5c6ae39 100644
--- a/Lib/test/test_inspect.py
+++ b/Lib/test/test_inspect.py
@@ -1764,6 +1764,11 @@ class TestSignatureObject(unittest.TestCase):
__call__ = type
test_callable(ThisWorksNow())
+ # Regression test for issue #20786
+ test_unbound_method(dict.__delitem__)
+ test_unbound_method(property.__delete__)
+
+
@cpython_only
@unittest.skipIf(MISSING_C_DOCSTRINGS,
"Signature information for builtins requires docstrings")
diff --git a/Misc/NEWS b/Misc/NEWS
index a3ca8db..172bb73 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -4,9 +4,14 @@ Python News
What's New in Python 3.4.0 release candidate 3?
===============================================
-
Release date: 2014-03-09
+Core and Builtins
+-----------------
+
+- Issue #20786: Fix signatures for dict.__delitem__ and
+ property.__delete__ builtins.
+
Build
-----
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index f58960d..49385e2 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -6189,7 +6189,7 @@ static slotdef slotdefs[] = {
"__set__($self, instance, value, /)\n--\n\nSet an attribute of instance to value."),
TPSLOT("__delete__", tp_descr_set, slot_tp_descr_set,
wrap_descr_delete,
- "__delete__(instance, /)\n--\n\nDelete an attribute of instance."),
+ "__delete__($self, instance, /)\n--\n\nDelete an attribute of instance."),
FLSLOT("__init__", tp_init, slot_tp_init, (wrapperfunc)wrap_init,
"__init__($self, /, *args, **kwargs)\n--\n\n"
"Initialize self. See help(type(self)) for accurate signature.",
@@ -6286,7 +6286,7 @@ static slotdef slotdefs[] = {
"__setitem__($self, key, value, /)\n--\n\nSet self[key] to value."),
MPSLOT("__delitem__", mp_ass_subscript, slot_mp_ass_subscript,
wrap_delitem,
- "__delitem__(key)\n--\n\nDelete self[key]."),
+ "__delitem__($self, key, /)\n--\n\nDelete self[key]."),
SQSLOT("__len__", sq_length, slot_sq_length, wrap_lenfunc,
"__len__($self, /)\n--\n\nReturn len(self)."),