Issue #18520: Fix _PyDict_GetItemId(), suppress _PyUnicode_FromId() error
As PyDict_GetItem(), _PyDict_GetItemId() suppresses all errors that may occur,
for historical reasons.
diff --git a/Objects/dictobject.c b/Objects/dictobject.c
index 36c710e..e0cb8ac 100644
--- a/Objects/dictobject.c
+++ b/Objects/dictobject.c
@@ -2684,8 +2684,10 @@
{
PyObject *kv;
kv = _PyUnicode_FromId(key); /* borrowed */
- if (kv == NULL)
+ if (kv == NULL) {
+ PyErr_Clear();
return NULL;
+ }
return PyDict_GetItem(dp, kv);
}