Issue #19512: PRINT_EXPR bytecode now uses an identifier to get sys.displayhook
to only create the "displayhook" string once
diff --git a/Python/ceval.c b/Python/ceval.c
index d4d8466..e2e882b 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -1840,8 +1840,9 @@
}
TARGET(PRINT_EXPR) {
+ _Py_IDENTIFIER(displayhook);
PyObject *value = POP();
- PyObject *hook = PySys_GetObject("displayhook");
+ PyObject *hook = _PySys_GetObjectId(&PyId_displayhook);
PyObject *res;
if (hook == NULL) {
PyErr_SetString(PyExc_RuntimeError,