--- Modules/readline.c.orig	2014-10-12 17:52:03
+++ Modules/readline.c	2023-09-15 16:12:33
@@ -264,12 +264,8 @@ set_completion_display_matches_hook(PyObject *self, Py
        default completion display. */
     rl_completion_display_matches_hook =
         completion_display_matches_hook ?
-#if defined(_RL_FUNCTION_TYPEDEF)
         (rl_compdisp_func_t *)on_completion_display_matches_hook : 0;
-#else
-        (VFunction *)on_completion_display_matches_hook : 0;
 #endif
-#endif
     return result;
 
 }
@@ -912,12 +908,12 @@ setup_readline(void)
     rl_bind_key_in_map ('\t', rl_complete, emacs_meta_keymap);
     rl_bind_key_in_map ('\033', rl_complete, emacs_meta_keymap);
     /* Set our hook functions */
-    rl_startup_hook = (Function *)on_startup_hook;
+    rl_startup_hook = on_startup_hook;
 #ifdef HAVE_RL_PRE_INPUT_HOOK
-    rl_pre_input_hook = (Function *)on_pre_input_hook;
+    rl_pre_input_hook = on_pre_input_hook;
 #endif
     /* Set our completion function */
-    rl_attempted_completion_function = (CPPFunction *)flex_complete;
+    rl_attempted_completion_function = flex_complete;
     /* Set Python word break characters */
     rl_completer_word_break_characters =
         strdup(" \t\n`~!@#$%^&*()-=+[{]}\\|;:'\",<>/?");
