diff options
author | Tom Tromey <tom@tromey.com> | 2022-08-10 14:42:22 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2022-12-19 07:47:37 -0700 |
commit | 975249ff4e260453217f4a98b1033b0c7a6e6dc5 (patch) | |
tree | bee0f6f082ee6dc4c277683b1bbde7800b9e2a4d | |
parent | d1c34a1b4c4ee82744f7f8215b23706c329b63e6 (diff) | |
download | binutils-975249ff4e260453217f4a98b1033b0c7a6e6dc5.zip binutils-975249ff4e260453217f4a98b1033b0c7a6e6dc5.tar.gz binutils-975249ff4e260453217f4a98b1033b0c7a6e6dc5.tar.bz2 |
Remove MI version 1
MI version 1 is long since obsolete. Several years ago, I filed
PR mi/23170 for this. I think it's finally time to remove this.
Any users of MI 1 can and should upgrade to a newer version.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=23170
-rw-r--r-- | gdb/NEWS | 2 | ||||
-rw-r--r-- | gdb/doc/gdb.texinfo | 4 | ||||
-rw-r--r-- | gdb/interps.h | 1 | ||||
-rw-r--r-- | gdb/main.c | 22 | ||||
-rw-r--r-- | gdb/mi/mi-cmd-env.c | 24 | ||||
-rw-r--r-- | gdb/mi/mi-cmd-var.c | 24 | ||||
-rw-r--r-- | gdb/mi/mi-interp.c | 1 | ||||
-rw-r--r-- | gdb/mi/mi-main.c | 1 | ||||
-rw-r--r-- | gdb/mi/mi-out.c | 3 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/interp.exp | 9 | ||||
-rw-r--r-- | gdb/testsuite/lib/mi-support.exp | 46 |
11 files changed, 11 insertions, 126 deletions
@@ -3,6 +3,8 @@ *** Changes since GDB 13 +* MI version 1 has been removed. + *** Changes in GDB 13 * MI version 1 is deprecated, and will be removed in GDB 14. diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 755fbf7..bef63eb 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -29150,10 +29150,6 @@ The @sc{gdb/mi} interface introduced in @value{GDBN} 9.1. @cindex mi2 interpreter The @sc{gdb/mi} interface introduced in @value{GDBN} 6.0. -@item mi1 -@cindex mi1 interpreter -The @sc{gdb/mi} interface introduced in @value{GDBN} 5.1. - @end table @cindex invoke another interpreter diff --git a/gdb/interps.h b/gdb/interps.h index cd5fb35..3efcd80 100644 --- a/gdb/interps.h +++ b/gdb/interps.h @@ -175,7 +175,6 @@ extern void interpreter_completer (struct cmd_list_element *ignore, /* well-known interpreters */ #define INTERP_CONSOLE "console" -#define INTERP_MI1 "mi1" #define INTERP_MI2 "mi2" #define INTERP_MI3 "mi3" #define INTERP_MI4 "mi4" @@ -1124,31 +1124,11 @@ captured_main_1 (struct captured_main_args *context) exit (0); } - /* FIXME: cagney/2003-02-03: The big hack (part 1 of 2) that lets - GDB retain the old MI1 interpreter startup behavior. Output the - copyright message before the interpreter is installed. That way - it isn't encapsulated in MI output. */ - if (!quiet && interpreter_p == INTERP_MI1) - { - /* Print all the junk at the top, with trailing "..." if we are - about to read a symbol file (possibly slowly). */ - print_gdb_version (gdb_stdout, true); - if (symarg) - gdb_printf (".."); - gdb_printf ("\n"); - gdb_flush (gdb_stdout); /* Force to screen during slow - operations. */ - } - /* Install the default UI. All the interpreters should have had a look at things by now. Initialize the default interpreter. */ set_top_level_interpreter (interpreter_p.c_str ()); - /* FIXME: cagney/2003-02-03: The big hack (part 2 of 2) that lets - GDB retain the old MI1 interpreter startup behavior. Output the - copyright message after the interpreter is installed when it is - any sane interpreter. */ - if (!quiet && !current_interp_named_p (INTERP_MI1)) + if (!quiet) { /* Print all the junk at the top, with trailing "..." if we are about to read a symbol file (possibly slowly). */ diff --git a/gdb/mi/mi-cmd-env.c b/gdb/mi/mi-cmd-env.c index 0c75b80..5b07797 100644 --- a/gdb/mi/mi-cmd-env.c +++ b/gdb/mi/mi-cmd-env.c @@ -65,14 +65,6 @@ mi_cmd_env_pwd (const char *command, char **argv, int argc) if (argc > 0) error (_("-environment-pwd: No arguments allowed")); - if (mi_version (uiout) < 2) - { - env_execute_cli_command ("pwd", NULL); - return; - } - - /* Otherwise the mi level is 2 or higher. */ - gdb::unique_xmalloc_ptr<char> cwd (getcwd (NULL, 0)); if (cwd == NULL) error (_("-environment-pwd: error finding name of working directory: %s"), @@ -126,14 +118,6 @@ mi_cmd_env_path (const char *command, char **argv, int argc) dont_repeat (); - if (mi_version (uiout) < 2) - { - for (i = argc - 1; i >= 0; --i) - env_execute_cli_command ("path", argv[i]); - return; - } - - /* Otherwise the mi level is 2 or higher. */ while (1) { int opt = mi_getopt ("-environment-path", argc, argv, opts, @@ -199,14 +183,6 @@ mi_cmd_env_dir (const char *command, char **argv, int argc) dont_repeat (); - if (mi_version (uiout) < 2) - { - for (i = argc - 1; i >= 0; --i) - env_execute_cli_command ("dir", argv[i]); - return; - } - - /* Otherwise mi level is 2 or higher. */ while (1) { int opt = mi_getopt ("-environment-directory", argc, argv, opts, diff --git a/gdb/mi/mi-cmd-var.c b/gdb/mi/mi-cmd-var.c index 3db09cf..e058666 100644 --- a/gdb/mi/mi-cmd-var.c +++ b/gdb/mi/mi-cmd-var.c @@ -390,15 +390,7 @@ mi_cmd_var_list_children (const char *command, char **argv, int argc) if (from < to) { - /* For historical reasons this might emit a list or a tuple, so - we construct one or the other. */ - gdb::optional<ui_out_emit_tuple> tuple_emitter; - gdb::optional<ui_out_emit_list> list_emitter; - - if (mi_version (uiout) == 1) - tuple_emitter.emplace (uiout, "children"); - else - list_emitter.emplace (uiout, "children"); + ui_out_emit_list list_emitter (uiout, "children"); for (int ix = from; ix < to && ix < children.size (); ix++) { ui_out_emit_tuple child_emitter (uiout, "child"); @@ -633,15 +625,7 @@ mi_cmd_var_update (const char *command, char **argv, int argc) else print_values = PRINT_NO_VALUES; - /* For historical reasons this might emit a list or a tuple, so we - construct one or the other. */ - gdb::optional<ui_out_emit_tuple> tuple_emitter; - gdb::optional<ui_out_emit_list> list_emitter; - - if (mi_version (uiout) <= 1) - tuple_emitter.emplace (uiout, "changelist"); - else - list_emitter.emplace (uiout, "changelist"); + ui_out_emit_list list_emitter (uiout, "changelist"); /* Check if the parameter is a "*", which means that we want to update all variables. */ @@ -680,9 +664,7 @@ varobj_update_one (struct varobj *var, enum print_values print_values, { int from, to; - gdb::optional<ui_out_emit_tuple> tuple_emitter; - if (mi_version (uiout) > 1) - tuple_emitter.emplace (uiout, nullptr); + ui_out_emit_tuple tuple_emitter (uiout, nullptr); uiout->field_string ("name", varobj_get_objname (r.varobj)); switch (r.status) diff --git a/gdb/mi/mi-interp.c b/gdb/mi/mi-interp.c index 3cc2462..cd6d1a8 100644 --- a/gdb/mi/mi-interp.c +++ b/gdb/mi/mi-interp.c @@ -1317,7 +1317,6 @@ void _initialize_mi_interp () { /* The various interpreter levels. */ - interp_factory_register (INTERP_MI1, mi_interp_factory); interp_factory_register (INTERP_MI2, mi_interp_factory); interp_factory_register (INTERP_MI3, mi_interp_factory); interp_factory_register (INTERP_MI4, mi_interp_factory); diff --git a/gdb/mi/mi-main.c b/gdb/mi/mi-main.c index e5b003e..1b9948c 100644 --- a/gdb/mi/mi-main.c +++ b/gdb/mi/mi-main.c @@ -1856,7 +1856,6 @@ captured_mi_execute_command (struct ui_out *uiout, struct mi_parse *context) /* If we changed interpreters, DON'T print out anything. */ if (current_interp_named_p (INTERP_MI) - || current_interp_named_p (INTERP_MI1) || current_interp_named_p (INTERP_MI2) || current_interp_named_p (INTERP_MI3) || current_interp_named_p (INTERP_MI4)) diff --git a/gdb/mi/mi-out.c b/gdb/mi/mi-out.c index 725c1c6..b103aac 100644 --- a/gdb/mi/mi-out.c +++ b/gdb/mi/mi-out.c @@ -348,9 +348,6 @@ mi_out_new (const char *mi_version) if (streq (mi_version, INTERP_MI2)) return new mi_ui_out (2); - if (streq (mi_version, INTERP_MI1)) - return new mi_ui_out (1); - return nullptr; } diff --git a/gdb/testsuite/gdb.base/interp.exp b/gdb/testsuite/gdb.base/interp.exp index a42d4ae..a77dace 100644 --- a/gdb/testsuite/gdb.base/interp.exp +++ b/gdb/testsuite/gdb.base/interp.exp @@ -52,15 +52,6 @@ gdb_test_multiple "interpreter-exec mi \"-stack-info-frame\"" "" { } } -gdb_test_multiple "interpreter-exec mi1 \"-break-insert main\"" "" { - -re ".done.bkpt=.number=.\[0-9\]\[^\n\]+\r\n$gdb_prompt " { - pass $gdb_test_name - gdb_expect 1 { - -re "\r\n$gdb_prompt $" { } - } - } -} - gdb_test_multiple "interpreter-exec mi2 \"-break-insert main\"" "" { -re ".done.bkpt=.number=.\[0-9\]\[^\n\]+\r\n$gdb_prompt " { pass $gdb_test_name diff --git a/gdb/testsuite/lib/mi-support.exp b/gdb/testsuite/lib/mi-support.exp index 573a9b9..0249cb7 100644 --- a/gdb/testsuite/lib/mi-support.exp +++ b/gdb/testsuite/lib/mi-support.exp @@ -264,27 +264,7 @@ proc default_mi_gdb_start { { flags {} } } { gdb_expect { -re "~\"GNU.*\r\n~\".*$mi_gdb_prompt$" { - # We have a new format mi startup prompt. If we are - # running mi1, then this is an error as we should be - # using the old-style prompt. - if { $MIFLAGS == "-i=mi1" } { - perror "(mi startup) Got unexpected new mi prompt." - remote_close host - unset gdb_spawn_id - return -1 - } - verbose "GDB initialized." - } - -re "\[^~\].*$mi_gdb_prompt$" { - # We have an old format mi startup prompt. If we are - # not running mi1, then this is an error as we should be - # using the new-style prompt. - if { $MIFLAGS != "-i=mi1" } { - perror "(mi startup) Got unexpected old mi prompt." - remote_close host - unset gdb_spawn_id - return -1 - } + # We have a new format mi startup prompt. verbose "GDB initialized." } -re ".*unrecognized option.*for a complete list of options." { @@ -399,27 +379,11 @@ proc mi_gdb_reinitialize_dir { subdir } { return "" } - if { $MIFLAGS == "-i=mi1" } { - send_gdb "104-environment-directory\n" - gdb_expect 60 { - -re ".*Reinitialize source path to empty.*y or n. " { - warning "Got confirmation prompt for dir reinitialization." - send_gdb "y\n" - gdb_expect 60 { - -re "$mi_gdb_prompt$" {} - timeout {error "Dir reinitialization failed (timeout)"} - } - } + send_gdb "104-environment-directory -r\n" + gdb_expect 60 { + -re "104\\\^done,source-path=.*\r\n$mi_gdb_prompt$" {} -re "$mi_gdb_prompt$" {} - timeout {error "Dir reinitialization failed (timeout)"} - } - } else { - send_gdb "104-environment-directory -r\n" - gdb_expect 60 { - -re "104\\\^done,source-path=.*\r\n$mi_gdb_prompt$" {} - -re "$mi_gdb_prompt$" {} - timeout {error "Dir reinitialization failed (timeout)"} - } + timeout {error "Dir reinitialization failed (timeout)"} } send_gdb "105-environment-directory $subdir\n" |