Issue #19512: Py_ReprEnter() and Py_ReprLeave() now use an identifier for the
"Py_Repr" dictionary key
diff --git a/Objects/object.c b/Objects/object.c
index 95a5334..8078623 100644
--- a/Objects/object.c
+++ b/Objects/object.c
@@ -1969,7 +1969,7 @@
    See dictobject.c and listobject.c for examples of use.
 */
 
-#define KEY "Py_Repr"
+_Py_IDENTIFIER(Py_Repr);
 
 int
 Py_ReprEnter(PyObject *obj)
@@ -1981,12 +1981,12 @@
     dict = PyThreadState_GetDict();
     if (dict == NULL)
         return 0;
-    list = PyDict_GetItemString(dict, KEY);
+    list = _PyDict_GetItemId(dict, &PyId_Py_Repr);
     if (list == NULL) {
         list = PyList_New(0);
         if (list == NULL)
             return -1;
-        if (PyDict_SetItemString(dict, KEY, list) < 0)
+        if (_PyDict_SetItemId(dict, &PyId_Py_Repr, list) < 0)
             return -1;
         Py_DECREF(list);
     }
@@ -2014,7 +2014,7 @@
     if (dict == NULL)
         goto finally;
 
-    list = PyDict_GetItemString(dict, KEY);
+    list = _PyDict_GetItemId(dict, &PyId_Py_Repr);
     if (list == NULL || !PyList_Check(list))
         goto finally;