]> granicus.if.org Git - python/commitdiff
Issue 10221: Improve error message for dict.pop().
authorRaymond Hettinger <python@rcn.com>
Sat, 30 Oct 2010 08:14:53 +0000 (08:14 +0000)
committerRaymond Hettinger <python@rcn.com>
Sat, 30 Oct 2010 08:14:53 +0000 (08:14 +0000)
Misc/NEWS
Objects/dictobject.c

index fb6814fb67ff56f254fc2b7ad920927cc83337e4..a1b5246f7fcb701eb3924b7b977f2e5395afbf36 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,9 @@ What's New in Python 3.1.3?
 Core and Builtins
 -----------------
 
+- Issue #10221: dict.pop(k) now has a key error message that includes the
+  missing key (same message d[k] returns for missing keys).
+
 - Issue #5437: A preallocated MemoryError instance should not hold traceback
   data (including local variables caught in the stack trace) alive infinitely.
 
index 8d0e6a4a73e2591f49ee9982b24b266d4d7d41f9..9c17be7a2525816e8109fdccbd50ef82415f4441 100644 (file)
@@ -1810,8 +1810,7 @@ dict_pop(PyDictObject *mp, PyObject *args)
             Py_INCREF(deflt);
             return deflt;
         }
-        PyErr_SetString(PyExc_KeyError,
-                        "pop(): dictionary is empty");
+        set_key_error(key);
         return NULL;
     }
     if (!PyUnicode_CheckExact(key) ||