This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] Remove prepare_re_set_context
- From: Tom Tromey <tromey at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 11 Oct 2017 22:10:16 -0000
- Subject: [binutils-gdb] Remove prepare_re_set_context
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=fdf44873ec6e37417bf8c8ce33bb9b1a6b4ddcef
commit fdf44873ec6e37417bf8c8ce33bb9b1a6b4ddcef
Author: Tom Tromey <tom@tromey.com>
Date: Sun Oct 8 14:03:41 2017 -0600
Remove prepare_re_set_context
prepare_re_set_context returns a null cleanup and doesn't seem
generally useful. This patch removes it plus a few more cleanups; and
changes breakpoint_re_set to use scoped_restore rather than its own
manual mechanism.
2017-10-11 Tom Tromey <tom@tromey.com>
* breakpoint.c (prepare_re_set_context): Remove.
(breakpoint_re_set_one): Update. Don't use cleanups.
(breakpoint_re_set): Use scoped_restore, std::string, and
scoped_restore_current_language.
Diff:
---
gdb/ChangeLog | 7 +++++++
gdb/breakpoint.c | 25 ++++---------------------
2 files changed, 11 insertions(+), 21 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e024716..6fbe88b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2017-10-11 Tom Tromey <tom@tromey.com>
+ * breakpoint.c (prepare_re_set_context): Remove.
+ (breakpoint_re_set_one): Update. Don't use cleanups.
+ (breakpoint_re_set): Use scoped_restore, std::string, and
+ scoped_restore_current_language.
+
+2017-10-11 Tom Tromey <tom@tromey.com>
+
* breakpoint.c (commands_command_1): Use std::string.
(cleanup_executing_breakpoints): Remove.
(bpstat_do_actions_1): Use scoped_restore.
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 975d99e..6e9c7b7 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -14024,27 +14024,15 @@ decode_location_default (struct breakpoint *b,
return {};
}
-/* Prepare the global context for a re-set of breakpoint B. */
-
-static struct cleanup *
-prepare_re_set_context (struct breakpoint *b)
-{
- input_radix = b->input_radix;
- set_language (b->language);
-
- return make_cleanup (null_cleanup, NULL);
-}
-
/* Reset a breakpoint. */
static void
breakpoint_re_set_one (breakpoint *b)
{
- struct cleanup *cleanups;
+ input_radix = b->input_radix;
+ set_language (b->language);
- cleanups = prepare_re_set_context (b);
b->ops->re_set (b);
- do_cleanups (cleanups);
}
/* Re-set breakpoint locations for the current program space.
@@ -14054,13 +14042,10 @@ void
breakpoint_re_set (void)
{
struct breakpoint *b, *b_tmp;
- enum language save_language;
- int save_input_radix;
-
- save_language = current_language->la_language;
- save_input_radix = input_radix;
{
+ scoped_restore_current_language save_language;
+ scoped_restore save_input_radix = make_scoped_restore (&input_radix);
scoped_restore_current_pspace_and_thread restore_pspace_thread;
/* Note: we must not try to insert locations until after all
@@ -14082,8 +14067,6 @@ breakpoint_re_set (void)
}
END_CATCH
}
- set_language (save_language);
- input_radix = save_input_radix;
jit_breakpoint_re_set ();
}