-extern NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_NORETURN;
-extern NCURSES_EXPORT(void) _nc_free_tparm(void);
-extern NCURSES_EXPORT(void) _nc_leaks_dump_entry(void);
-#define ExitProgram(code) _nc_free_and_exit(code)
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_tinfo(int) GCC_DEPRECATED("use exit_terminfo");
+
+#ifdef NCURSES_INTERNALS
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_tic(int);
+extern void _nc_leaks_dump_entry(void);
+extern NCURSES_EXPORT(void) _nc_leaks_tic(void);
+
+#if NCURSES_SP_FUNCS
+extern GCC_NORETURN NCURSES_EXPORT(void) NCURSES_SP_NAME(_nc_free_and_exit)(SCREEN*, int);
+#endif
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_and_exit(int);
+
+#else /* !NCURSES_INTERNALS */
+extern GCC_NORETURN NCURSES_EXPORT(void) _nc_free_and_exit(int) GCC_DEPRECATED("use exit_curses");