aboutsummaryrefslogtreecommitdiff
path: root/gdb/breakpoint.h
diff options
context:
space:
mode:
authorPedro Alves <pedro@palves.net>2022-05-07 01:23:03 +0100
committerPedro Alves <pedro@palves.net>2022-05-20 20:41:01 +0100
commitacd0955bc118d14dd32c08fd8a6b2ca7fa4e294c (patch)
tree34b6d6ed22c9fb997aea501d00d8376093113b64 /gdb/breakpoint.h
parent6e14e4412b670d093d74b90e5d4adcfaedb76d3f (diff)
downloadgdb-acd0955bc118d14dd32c08fd8a6b2ca7fa4e294c.zip
gdb-acd0955bc118d14dd32c08fd8a6b2ca7fa4e294c.tar.gz
gdb-acd0955bc118d14dd32c08fd8a6b2ca7fa4e294c.tar.bz2
Make catchpoint inherit breakpoint, eliminate init_raw_breakpoint
struct catchpoint's ctor currently calls init_raw_breakpoint, which is a bit weird, as that ctor-like function takes a sal argument, but catchpoints don't have code locations. Instead, make struct catchpoint's ctor add the catchpoint's dummy location using add_dummy_location. init_raw_breakpoint uses add_location under the hood, and with a dummy sal it would ultimately use the breakpoint's gdbarch for the location's gdbarch, so replace the references to loc->gdbarch (which is now NULL) in syscall_catchpoint to references to the catchpoint's gdbarch. struct catchpoint's ctor was the last user of init_raw_breakpoint, so this commit eliminates the latter. Since catchpoint locations aren't code locations, make struct catchpoint inherit struct breakpoint instead of base_breakpoint. This let's us delete the tracepoint::re_set override too. Change-Id: Ib428bf71efb09fdaf399c56e4372b0f41d9c5869
Diffstat (limited to 'gdb/breakpoint.h')
-rw-r--r--gdb/breakpoint.h7
1 files changed, 1 insertions, 6 deletions
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h
index 7375e97..21dd8d5 100644
--- a/gdb/breakpoint.h
+++ b/gdb/breakpoint.h
@@ -1030,18 +1030,13 @@ struct tracepoint : public base_breakpoint
/* The base class for catchpoints. */
-struct catchpoint : public base_breakpoint
+struct catchpoint : public breakpoint
{
/* If TEMP is true, then make the breakpoint temporary. If
COND_STRING is not NULL, then store it in the breakpoint. */
catchpoint (struct gdbarch *gdbarch, bool temp, const char *cond_string);
~catchpoint () override = 0;
-
- void re_set () override
- {
- /* For catchpoints, the default is to do nothing. */
- }
};