aboutsummaryrefslogtreecommitdiff
path: root/gdb/interps.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2017-02-08 18:08:18 +0000
committerPedro Alves <palves@redhat.com>2017-02-08 18:08:18 +0000
commita474bd8eeea16b2b6aa7089dedb142d86c22a4d7 (patch)
tree3953113c2b500dd0d8b1db8414a8a478c7e7b472 /gdb/interps.c
parent604c4576fdcfc4e7c28f569b3748a1b6b4e0dbd4 (diff)
downloadgdb-a474bd8eeea16b2b6aa7089dedb142d86c22a4d7.zip
gdb-a474bd8eeea16b2b6aa7089dedb142d86c22a4d7.tar.gz
gdb-a474bd8eeea16b2b6aa7089dedb142d86c22a4d7.tar.bz2
Eliminate interp::quiet_p
This commit removes interp::quiet_p / interp_quiet_p / interp_set_quiet, because AFAICS, it doesn't really do anything. interp_quiet is only ever checked inside interp_set nowadays: if (!first_time && !interp_quiet_p (interp)) { xsnprintf (buffer, sizeof (buffer), "Switching to interpreter \"%.24s\".\n", interp->name); current_uiout->text (buffer); } I did a bit of archaelogy, and found that back in 4a8f6654 (2003), it was also called in another place, to decide whether to print the CLI prompt. AFAICS, that condition is always false today, making that if/then block always dead code. If we remove that code, then there are no interp_quiet_p uses left in the tree, so we can remove it all. There are two paths that lead to interp_set calls: #1 - When installing the top level interpreter. In this case, FIRST_TIME is true. #2 - In interpreter_exec_cmd. In this case, the interpreter is always set quiet before interp_set is called. Grepping a gdb.log of an x86_64 GNU/Linux run for "Switching to interpreter" (before this patch) doesn't find any hits. I suspect the intention of this message was to support something like a "set interpreter ..." command that would change the interpreter permanently. But there's no such command. Tested on x86_64 Fedora 23. gdb/ChangeLog: 2017-02-08 Pedro Alves <palves@redhat.com> * interps.c (interp::interp): Remove reference to quiet_p. (interp_set): Make static. Remove dead "Switching to" output code. (interp_quiet_p, interp_set_quiet): Delete. (interpreter_exec_cmd): Don't set the interpreter quiet. * interps.h (interp_quiet_p): Make static. (class interp) <quiet_p>: Remove field
Diffstat (limited to 'gdb/interps.c')
-rw-r--r--gdb/interps.c45
1 files changed, 1 insertions, 44 deletions
diff --git a/gdb/interps.c b/gdb/interps.c
index d31d53b..db0b319 100644
--- a/gdb/interps.c
+++ b/gdb/interps.c
@@ -82,7 +82,6 @@ static struct interp *interp_lookup_existing (struct ui *ui,
interp::interp (const char *name)
{
this->name = xstrdup (name);
- this->quiet_p = false;
this->inited = false;
}
@@ -156,13 +155,11 @@ interp_add (struct ui *ui, struct interp *interp)
events such as target stops and new thread creation, even if they
are caused by CLI commands. */
-void
+static void
interp_set (struct interp *interp, bool top_level)
{
struct ui_interp_info *ui_interp = get_current_interp_info ();
struct interp *old_interp = ui_interp->current_interpreter;
- int first_time = 0;
- char buffer[64];
/* If we already have an interpreter, then trying to
set top level interpreter is kinda pointless. */
@@ -174,10 +171,6 @@ interp_set (struct interp *interp, bool top_level)
current_uiout->flush ();
old_interp->suspend ();
}
- else
- {
- first_time = 1;
- }
ui_interp->current_interpreter = interp;
if (top_level)
@@ -207,13 +200,6 @@ interp_set (struct interp *interp, bool top_level)
clear_interpreter_hooks ();
interp->resume ();
-
- if (!first_time && !interp_quiet_p (interp))
- {
- xsnprintf (buffer, sizeof (buffer),
- "Switching to interpreter \"%.24s\".\n", interp->name);
- current_uiout->text (buffer);
- }
}
/* Look up the interpreter for NAME. If no such interpreter exists,
@@ -375,26 +361,6 @@ interp_supports_command_editing (struct interp *interp)
return interp->supports_command_editing ();
}
-int
-interp_quiet_p (struct interp *interp)
-{
- struct ui_interp_info *ui_interp = get_current_interp_info ();
-
- if (interp != NULL)
- return interp->quiet_p;
- else
- return ui_interp->current_interpreter->quiet_p;
-}
-
-static int
-interp_set_quiet (struct interp *interp, int quiet)
-{
- int old_val = interp->quiet_p;
-
- interp->quiet_p = quiet;
- return old_val;
-}
-
/* interp_exec - This executes COMMAND_STR in the current
interpreter. */
@@ -445,7 +411,6 @@ interpreter_exec_cmd (char *args, int from_tty)
char **trule = NULL;
unsigned int nrules;
unsigned int i;
- int old_quiet, use_quiet;
struct cleanup *cleanup;
if (args == NULL)
@@ -467,10 +432,6 @@ interpreter_exec_cmd (char *args, int from_tty)
if (interp_to_use == NULL)
error (_("Could not find interpreter \"%s\"."), prules[0]);
- /* Temporarily set interpreters quiet. */
- old_quiet = interp_set_quiet (old_interp, 1);
- use_quiet = interp_set_quiet (interp_to_use, 1);
-
interp_set (interp_to_use, false);
for (i = 1; i < nrules; i++)
@@ -480,15 +441,11 @@ interpreter_exec_cmd (char *args, int from_tty)
if (e.reason < 0)
{
interp_set (old_interp, 0);
- interp_set_quiet (interp_to_use, use_quiet);
- interp_set_quiet (old_interp, old_quiet);
error (_("error in command: \"%s\"."), prules[i]);
}
}
interp_set (old_interp, 0);
- interp_set_quiet (interp_to_use, use_quiet);
- interp_set_quiet (old_interp, old_quiet);
do_cleanups (cleanup);
}