aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2022-05-21 10:17:38 -0600
committerTom Tromey <tom@tromey.com>2022-08-13 18:47:55 -0600
commitaef4b7a5cc7ba4fb681a0675529000d91dc0aa72 (patch)
treee24736bf3e9a7ae8312b9f24c7351222468d68e9 /gdb
parent2c9a6d728e3ab63d8338b5e1f831d2c1eead8d67 (diff)
downloadbinutils-aef4b7a5cc7ba4fb681a0675529000d91dc0aa72.zip
binutils-aef4b7a5cc7ba4fb681a0675529000d91dc0aa72.tar.gz
binutils-aef4b7a5cc7ba4fb681a0675529000d91dc0aa72.tar.bz2
Move decode_location_spec to code_breakpoint
breakpoint::decode_location_spec just asserts if called. It turned out to be relatively easy to remove this method from breakpoint and instead move the base implementation to code_breakpoint.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/breakpoint.c7
-rw-r--r--gdb/breakpoint.h23
2 files changed, 10 insertions, 20 deletions
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index b24fbd1..2fe74ea 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -11493,13 +11493,6 @@ breakpoint::print_recreate (struct ui_file *fp) const
internal_error_pure_virtual_called ();
}
-std::vector<symtab_and_line>
-breakpoint::decode_location_spec (location_spec *locspec,
- program_space *search_pspace)
-{
- internal_error_pure_virtual_called ();
-}
-
/* Default breakpoint_ops methods. */
void
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h
index e919fe6..aaf7549 100644
--- a/gdb/breakpoint.h
+++ b/gdb/breakpoint.h
@@ -710,16 +710,6 @@ struct breakpoint
/* Print to FP the CLI command that recreates this breakpoint. */
virtual void print_recreate (struct ui_file *fp) const;
- /* Given the location spec (second parameter), this method decodes
- it and returns the SAL locations related to it. For ordinary
- breakpoints, it calls `decode_line_full'. If SEARCH_PSPACE is
- not NULL, symbol search is restricted to just that program space.
-
- This function is called inside `location_spec_to_sals'. */
- virtual std::vector<symtab_and_line> decode_location_spec
- (location_spec *locspec,
- struct program_space *search_pspace);
-
/* Return true if this breakpoint explains a signal. See
bpstat_explains_signal. */
virtual bool explains_signal (enum gdb_signal)
@@ -883,12 +873,19 @@ struct code_breakpoint : public breakpoint
const address_space *aspace,
CORE_ADDR bp_addr,
const target_waitstatus &ws) override;
- std::vector<symtab_and_line> decode_location_spec
- (struct location_spec *locspec,
- struct program_space *search_pspace) override;
protected:
+ /* Given the location spec, this method decodes it and returns the
+ SAL locations related to it. For ordinary breakpoints, it calls
+ `decode_line_full'. If SEARCH_PSPACE is not NULL, symbol search
+ is restricted to just that program space.
+
+ This function is called inside `location_spec_to_sals'. */
+ virtual std::vector<symtab_and_line> decode_location_spec
+ (location_spec *locspec,
+ struct program_space *search_pspace);
+
/* Helper method that does the basic work of re_set. */
void re_set_default ();