From b777eb6de24ae1a1dc2f1e48d593b0a5c79937a9 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Thu, 11 Jul 2019 08:54:17 -0600 Subject: [PATCH] Remove init_cli_cmds I noticed that init_cli_cmds only installs a command, and so doesn't need to be handled specially. This patch merges it into _initialize_cli_cmds. The help text is constructed dynamically, which is sometimes an indication that special treatment is needed; but in this case it is just to insert the value of "gdbinit", which is created at compile-time and not modified; so this doesn't affect the result. This version also removes the "gdbinit" global. There's no need for it, as GDBINIT can be used instead. Note, though, that the help text in question must still be dynamically constructed, in order to be i18n-friendly. gdb/ChangeLog 2019-07-11 Tom Tromey * main.c (get_init_files): Use GDBINIT, not gdbinit. * auto-load.c (file_is_auto_load_safe): Use GDBINIT, not gdbinit. * top.h (gdbinit): Don't declare. * cli/cli-cmds.c (init_cli_cmds): Remove, merging contents into... (_initialize_cli_cmds): ...here. Use GDBINIT, not gdbinit. * top.c (gdb_init): Don't call init_cli_cmds. (gdbinit): Remove. * cli/cli-cmds.h (init_cli_cmds): Don't declare. --- gdb/ChangeLog | 12 ++++++++++++ gdb/auto-load.c | 2 +- gdb/cli/cli-cmds.c | 11 ++--------- gdb/cli/cli-cmds.h | 2 -- gdb/main.c | 6 +++--- gdb/top.c | 5 ----- gdb/top.h | 1 - 7 files changed, 18 insertions(+), 21 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b5585b4..90da3d4 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,17 @@ 2019-07-11 Tom Tromey + * main.c (get_init_files): Use GDBINIT, not gdbinit. + * auto-load.c (file_is_auto_load_safe): Use GDBINIT, not gdbinit. + * top.h (gdbinit): Don't declare. + * cli/cli-cmds.c (init_cli_cmds): Remove, merging contents + into... + (_initialize_cli_cmds): ...here. Use GDBINIT, not gdbinit. + * top.c (gdb_init): Don't call init_cli_cmds. + (gdbinit): Remove. + * cli/cli-cmds.h (init_cli_cmds): Don't declare. + +2019-07-11 Tom Tromey + * python/py-inferior.c (add_thread_object): Don't use thread_obj after it has been moved. diff --git a/gdb/auto-load.c b/gdb/auto-load.c index 7e41799..616aeb6 100644 --- a/gdb/auto-load.c +++ b/gdb/auto-load.c @@ -500,7 +500,7 @@ file_is_auto_load_safe (const char *filename, const char *debug_fmt, ...) if (homedir == NULL) homedir = "$HOME"; - std::string homeinit = string_printf ("%s/%s", homedir, gdbinit); + std::string homeinit = string_printf ("%s/%s", homedir, GDBINIT); printf_filtered (_("\ To enable execution of this file add\n\ diff --git a/gdb/cli/cli-cmds.c b/gdb/cli/cli-cmds.c index e689c0f..0b62622 100644 --- a/gdb/cli/cli-cmds.c +++ b/gdb/cli/cli-cmds.c @@ -2215,15 +2215,8 @@ Make \"spe\" an alias of \"set print elements\":\n\ alias spe = set print elements\n\ Make \"elms\" an alias of \"elements\" in the \"set print\" command:\n\ alias -a set print elms = set print elements")); -} - -void -init_cli_cmds (void) -{ - struct cmd_list_element *c; - char *source_help_text; - source_help_text = xstrprintf (_("\ + const char *source_help_text = xstrprintf (_("\ Read commands from a file named FILE.\n\ \n\ Usage: source [-s] [-v] FILE\n\ @@ -2232,7 +2225,7 @@ Usage: source [-s] [-v] FILE\n\ -v: each command in FILE is echoed as it is executed.\n\ \n\ Note that the file \"%s\" is read automatically in this way\n\ -when GDB is started."), gdbinit); +when GDB is started."), GDBINIT); c = add_cmd ("source", class_support, source_command, source_help_text, &cmdlist); set_cmd_completer (c, filename_completer); diff --git a/gdb/cli/cli-cmds.h b/gdb/cli/cli-cmds.h index ac0591e..5bfffde 100644 --- a/gdb/cli/cli-cmds.h +++ b/gdb/cli/cli-cmds.h @@ -105,8 +105,6 @@ extern struct cmd_list_element *showchecklist; void init_cmd_lists (void); -void init_cli_cmds (void); - int is_complete_command (struct cmd_list_element *cmd); /* Exported to gdb/main.c */ diff --git a/gdb/main.c b/gdb/main.c index 540738e..678c413 100644 --- a/gdb/main.c +++ b/gdb/main.c @@ -260,7 +260,7 @@ get_init_files (const char **system_gdbinit, if (homedir) { - homeinit = xstrprintf ("%s/%s", homedir, gdbinit); + homeinit = xstrprintf ("%s/%s", homedir, GDBINIT); if (stat (homeinit, &homebuf) != 0) { xfree (homeinit); @@ -268,12 +268,12 @@ get_init_files (const char **system_gdbinit, } } - if (stat (gdbinit, &cwdbuf) == 0) + if (stat (GDBINIT, &cwdbuf) == 0) { if (!homeinit || memcmp ((char *) &homebuf, (char *) &cwdbuf, sizeof (struct stat))) - localinit = gdbinit; + localinit = GDBINIT; } initialized = 1; diff --git a/gdb/top.c b/gdb/top.c index 68cf405..83a3604 100644 --- a/gdb/top.c +++ b/gdb/top.c @@ -108,10 +108,6 @@ gen_ret_current_ui_field_ptr (struct ui_file *, gdb_stderr) gen_ret_current_ui_field_ptr (struct ui_file *, gdb_stdlog) gen_ret_current_ui_field_ptr (struct ui_out *, current_uiout) -/* Initialization file name for gdb. This is host-dependent. */ - -const char gdbinit[] = GDBINIT; - int inhibit_gdbinit = 0; extern char lang_frame_mismatch_warn[]; /* language.c */ @@ -2265,7 +2261,6 @@ gdb_init (char *argv0) initialize_progspace (); initialize_inferiors (); initialize_current_architecture (); - init_cli_cmds(); init_main (); /* But that omits this file! Do it now. */ initialize_stdin_serial (); diff --git a/gdb/top.h b/gdb/top.h index e7659b6..32a898b 100644 --- a/gdb/top.h +++ b/gdb/top.h @@ -219,7 +219,6 @@ extern void ui_unregister_input_event_handler (struct ui *ui); /* From top.c. */ extern int confirm; extern int inhibit_gdbinit; -extern const char gdbinit[]; /* Print the GDB version banner to STREAM. If INTERACTIVE is false, then information referring to commands (e.g., "show configuration") -- 2.7.4