diff --git a/Objects/setobject.c b/Objects/setobject.c --- a/Objects/setobject.c +++ b/Objects/setobject.c @@ -365,12 +302,10 @@ setentry entry; Py_hash_t hash; - if (!PyUnicode_CheckExact(key) || - (hash = ((PyASCIIObject *) key)->hash) == -1) { - hash = PyObject_Hash(key); - if (hash == -1) - return -1; - } + hash = PyObject_Hash(key); + if (hash == -1) + return -1; + entry.key = key; entry.hash = hash; return set_add_entry(so, &entry); @@ -405,12 +340,10 @@ assert (PyAnySet_Check(so)); - if (!PyUnicode_CheckExact(key) || - (hash = ((PyASCIIObject *) key)->hash) == -1) { - hash = PyObject_Hash(key); - if (hash == -1) - return -1; - } + hash = PyObject_Hash(key); + if (hash == -1) + return -1; + entry.key = key; entry.hash = hash; return set_discard_entry(so, &entry); @@ -644,12 +577,10 @@ setentry entry; Py_hash_t hash; - if (!PyUnicode_CheckExact(key) || - (hash = ((PyASCIIObject *) key)->hash) == -1) { - hash = PyObject_Hash(key); - if (hash == -1) - return -1; - } + hash = PyObject_Hash(key); + if (hash == -1) + return -1; + entry.key = key; entry.hash = hash;