diff -r 46f8188f8646 Objects/dictobject.c --- a/Objects/dictobject.c Fri Jan 27 13:05:09 2017 +0000 +++ b/Objects/dictobject.c Sat Jan 28 11:45:21 2017 +0900 @@ -3331,19 +3331,17 @@ return PyDict_SetItem(v, kv, item); } int PyDict_SetItemString(PyObject *v, const char *key, PyObject *item) { - PyObject *kv; - int err; - kv = PyUnicode_FromString(key); - if (kv == NULL) + PyObject *kv = PyUnicode_InternFromString(key); + if (kv == NULL) { return -1; - PyUnicode_InternInPlace(&kv); /* XXX Should we really? */ - err = PyDict_SetItem(v, kv, item); + } + int err = PyDict_SetItem(v, kv, item); Py_DECREF(kv); return err; } int _PyDict_DelItemId(PyObject *v, _Py_Identifier *key)