This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
[commit] Don't save/restore pre_print strings
- From: Andrew Cagney <cagney at gnu dot org>
- To: gdb-patches at sources dot redhat dot com
- Date: Sun, 16 Jan 2005 14:55:27 -0500
- Subject: [commit] Don't save/restore pre_print strings
The current code doesn't make use of it.
(note that there are several files that still manipulate the
error_pre_print and quit_pre_print strings. Whatever features that code
implemented is clearly not convered by the testsuite, I'll investigate next)
Andrew
2005-01-16 Andrew Cagney <cagney@gnu.org>
* exceptions.c (struct catcher): Delete saved_error_pre_print and
saved_quit_pre_print.
(catcher_init): Delete parameter errstring, do not override the
pre_print strings.
(catcher_pop): Do not restore the pre_print strings.
(catch_exception, catch_exceptions_with_msg, catch_errors)
(catch_command_errors): Update catch_init calls.
Index: exceptions.c
===================================================================
RCS file: /cvs/src/src/gdb/exceptions.c,v
retrieving revision 1.13
diff -p -u -r1.13 exceptions.c
--- exceptions.c 15 Jan 2005 18:59:43 -0000 1.13
+++ exceptions.c 16 Jan 2005 19:50:26 -0000
@@ -73,8 +73,6 @@ struct catcher
volatile struct exception *exception;
/* Saved/current state. */
int mask;
- char *saved_error_pre_print;
- char *saved_quit_pre_print;
struct ui_out *saved_uiout;
struct cleanup *saved_cleanup_chain;
/* Back link. */
@@ -86,7 +84,6 @@ static struct catcher *current_catcher;
static SIGJMP_BUF *
catcher_init (struct ui_out *func_uiout,
- char *errstring,
volatile struct exception *exception,
return_mask mask)
{
@@ -100,14 +97,6 @@ catcher_init (struct ui_out *func_uiout,
new_catcher->mask = mask;
- /* Override error/quit messages during FUNC. */
- new_catcher->saved_error_pre_print = error_pre_print;
- new_catcher->saved_quit_pre_print = quit_pre_print;
- if (mask & RETURN_MASK_ERROR)
- error_pre_print = errstring;
- if (mask & RETURN_MASK_QUIT)
- quit_pre_print = errstring;
-
/* Override the global ``struct ui_out'' builder. */
new_catcher->saved_uiout = uiout;
uiout = func_uiout;
@@ -137,9 +126,6 @@ catcher_pop (void)
uiout = old_catcher->saved_uiout;
- quit_pre_print = old_catcher->saved_quit_pre_print;
- error_pre_print = old_catcher->saved_error_pre_print;
-
xfree (old_catcher);
}
@@ -458,7 +444,7 @@ catch_exception (struct ui_out *uiout,
{
volatile struct exception exception;
SIGJMP_BUF *catch;
- catch = catcher_init (uiout, NULL, &exception, mask);
+ catch = catcher_init (uiout, &exception, mask);
for (SIGSETJMP ((*catch));
catcher_state_machine (CATCH_ITER);)
(*func) (uiout, func_args);
@@ -474,7 +460,7 @@ catch_exceptions_with_msg (struct ui_out
{
volatile struct exception exception;
volatile int val = 0;
- SIGJMP_BUF *catch = catcher_init (uiout, NULL, &exception, mask);
+ SIGJMP_BUF *catch = catcher_init (uiout, &exception, mask);
for (SIGSETJMP ((*catch)); catcher_state_machine (CATCH_ITER);)
val = (*func) (uiout, func_args);
print_any_exception (gdb_stderr, NULL, exception);
@@ -503,7 +489,7 @@ catch_errors (catch_errors_ftype *func,
{
volatile int val = 0;
volatile struct exception exception;
- SIGJMP_BUF *catch = catcher_init (uiout, errstring, &exception, mask);
+ SIGJMP_BUF *catch = catcher_init (uiout, &exception, mask);
/* This illustrates how it is possible to nest the mechanism and
hence catch "break". Of course this doesn't address the need to
also catch "return". */
@@ -520,7 +506,7 @@ catch_command_errors (catch_command_erro
char *arg, int from_tty, return_mask mask)
{
volatile struct exception e;
- SIGJMP_BUF *catch = catcher_init (uiout, NULL, &e, mask);
+ SIGJMP_BUF *catch = catcher_init (uiout, &e, mask);
for (SIGSETJMP ((*catch)); catcher_state_machine (CATCH_ITER);)
command (arg, from_tty);
print_any_exception (gdb_stderr, NULL, e);