bpo-40521: Fix PyUnicode_InternInPlace() (GH-22376)
Fix PyUnicode_InternInPlace() when the INTERNED_STRINGS macro is not
defined (when the EXPERIMENTAL_ISOLATED_SUBINTERPRETERS macro is
defined).
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index fd0e8e0..f32ab41 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -15754,6 +15754,10 @@
this. */
Py_SET_REFCNT(s, Py_REFCNT(s) - 2);
_PyUnicode_STATE(s).interned = SSTATE_INTERNED_MORTAL;
+#else
+ // PyDict expects that interned strings have their hash
+ // (PyASCIIObject.hash) already computed.
+ (void)unicode_hash(s);
#endif
}