aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@efficios.com>2020-09-16 17:26:30 -0400
committerSimon Marchi <simon.marchi@efficios.com>2020-09-16 17:26:45 -0400
commitb650a28273a1cdc4bea825f6e7ccf52c9647ff9c (patch)
tree27fc510a13b00a4e29457d968a1426ae4d5e4589
parent4d0bcfcf62dd55d7b3e2983af7075e108b3eb37c (diff)
downloadgdb-b650a28273a1cdc4bea825f6e7ccf52c9647ff9c.zip
gdb-b650a28273a1cdc4bea825f6e7ccf52c9647ff9c.tar.gz
gdb-b650a28273a1cdc4bea825f6e7ccf52c9647ff9c.tar.bz2
gdb: use bool in the solib catchpoint area
Use bool instead of int in struct solib_catchpoint and in init_catchpoint & related functions. gdb/ChangeLog: * breakpoint.h (init_catchpoint): Change int parameter to bool. (add_solib_catchpoint): Likewise. * breakpoint.c (struct solib_catchpoint) <is_load>: Change type to bool. (add_solib_catchpoint): Change int parameter/variable to bool. (catch_load_or_unload): Likewise. (init_catchpoint): Likewise. (create_fork_vfork_event_catchpoint): Likewise. (catch_fork_command_1): Likewise. (catch_exec_command_1): Likewise. Change-Id: I1faf4506e9109f3ccdd7229ba766dc7d77aa7aa0
-rw-r--r--gdb/ChangeLog13
-rw-r--r--gdb/breakpoint.c45
-rw-r--r--gdb/breakpoint.h18
3 files changed, 43 insertions, 33 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index d90cb6d9..84ee292 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,18 @@
2020-09-16 Simon Marchi <simon.marchi@efficios.com>
+ * breakpoint.h (init_catchpoint): Change int parameter to bool.
+ (add_solib_catchpoint): Likewise.
+ * breakpoint.c (struct solib_catchpoint) <is_load>: Change type
+ to bool.
+ (add_solib_catchpoint): Change int parameter/variable to bool.
+ (catch_load_or_unload): Likewise.
+ (init_catchpoint): Likewise.
+ (create_fork_vfork_event_catchpoint): Likewise.
+ (catch_fork_command_1): Likewise.
+ (catch_exec_command_1): Likewise.
+
+2020-09-16 Simon Marchi <simon.marchi@efficios.com>
+
* gdb-gdb.py.in (class StructTypePrettyPrinter) <to_string>:
Change instance_flags to m_instance_flags.
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 3fb259f..1876af9 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -7867,7 +7867,7 @@ struct solib_catchpoint : public breakpoint
~solib_catchpoint () override;
/* True for "catch load", false for "catch unload". */
- unsigned char is_load;
+ bool is_load;
/* Regular expression to match, if any. COMPILED is only valid when
REGEX is non-NULL. */
@@ -8039,15 +8039,10 @@ print_recreate_catch_solib (struct breakpoint *b, struct ui_file *fp)
static struct breakpoint_ops catch_solib_breakpoint_ops;
-/* Shared helper function (MI and CLI) for creating and installing
- a shared object event catchpoint. If IS_LOAD is non-zero then
- the events to be caught are load events, otherwise they are
- unload events. If IS_TEMP is non-zero the catchpoint is a
- temporary one. If ENABLED is non-zero the catchpoint is
- created in an enabled state. */
+/* See breakpoint.h. */
void
-add_solib_catchpoint (const char *arg, int is_load, int is_temp, int enabled)
+add_solib_catchpoint (const char *arg, bool is_load, bool is_temp, bool enabled)
{
struct gdbarch *gdbarch = get_current_arch ();
@@ -8080,12 +8075,10 @@ static void
catch_load_or_unload (const char *arg, int from_tty, int is_load,
struct cmd_list_element *command)
{
- int tempflag;
const int enabled = 1;
+ bool temp = get_cmd_context (command) == CATCH_TEMPORARY;
- tempflag = get_cmd_context (command) == CATCH_TEMPORARY;
-
- add_solib_catchpoint (arg, is_load, tempflag, enabled);
+ add_solib_catchpoint (arg, is_load, temp, enabled);
}
static void
@@ -8102,14 +8095,11 @@ catch_unload_command_1 (const char *arg, int from_tty,
catch_load_or_unload (arg, from_tty, 0, command);
}
-/* Initialize a new breakpoint of the bp_catchpoint kind. If TEMPFLAG
- is non-zero, then make the breakpoint temporary. If COND_STRING is
- not NULL, then store it in the breakpoint. OPS, if not NULL, is
- the breakpoint_ops structure associated to the catchpoint. */
+/* See breakpoint.h. */
void
init_catchpoint (struct breakpoint *b,
- struct gdbarch *gdbarch, int tempflag,
+ struct gdbarch *gdbarch, bool temp,
const char *cond_string,
const struct breakpoint_ops *ops)
{
@@ -8119,7 +8109,7 @@ init_catchpoint (struct breakpoint *b,
init_raw_breakpoint (b, gdbarch, sal, bp_catchpoint, ops);
b->cond_string = (cond_string == NULL) ? NULL : xstrdup (cond_string);
- b->disposition = tempflag ? disp_del : disp_donttouch;
+ b->disposition = temp ? disp_del : disp_donttouch;
}
void
@@ -8139,12 +8129,12 @@ install_breakpoint (int internal, std::unique_ptr<breakpoint> &&arg, int update_
static void
create_fork_vfork_event_catchpoint (struct gdbarch *gdbarch,
- int tempflag, const char *cond_string,
+ bool temp, const char *cond_string,
const struct breakpoint_ops *ops)
{
std::unique_ptr<fork_catchpoint> c (new fork_catchpoint ());
- init_catchpoint (c.get (), gdbarch, tempflag, cond_string, ops);
+ init_catchpoint (c.get (), gdbarch, temp, cond_string, ops);
c->forked_inferior_pid = null_ptid;
@@ -11148,11 +11138,10 @@ catch_fork_command_1 (const char *arg, int from_tty,
struct gdbarch *gdbarch = get_current_arch ();
const char *cond_string = NULL;
catch_fork_kind fork_kind;
- int tempflag;
fork_kind = (catch_fork_kind) (uintptr_t) get_cmd_context (command);
- tempflag = (fork_kind == catch_fork_temporary
- || fork_kind == catch_vfork_temporary);
+ bool temp = (fork_kind == catch_fork_temporary
+ || fork_kind == catch_vfork_temporary);
if (!arg)
arg = "";
@@ -11174,12 +11163,12 @@ catch_fork_command_1 (const char *arg, int from_tty,
{
case catch_fork_temporary:
case catch_fork_permanent:
- create_fork_vfork_event_catchpoint (gdbarch, tempflag, cond_string,
+ create_fork_vfork_event_catchpoint (gdbarch, temp, cond_string,
&catch_fork_breakpoint_ops);
break;
case catch_vfork_temporary:
case catch_vfork_permanent:
- create_fork_vfork_event_catchpoint (gdbarch, tempflag, cond_string,
+ create_fork_vfork_event_catchpoint (gdbarch, temp, cond_string,
&catch_vfork_breakpoint_ops);
break;
default:
@@ -11193,10 +11182,8 @@ catch_exec_command_1 (const char *arg, int from_tty,
struct cmd_list_element *command)
{
struct gdbarch *gdbarch = get_current_arch ();
- int tempflag;
const char *cond_string = NULL;
-
- tempflag = get_cmd_context (command) == CATCH_TEMPORARY;
+ bool temp = get_cmd_context (command) == CATCH_TEMPORARY;
if (!arg)
arg = "";
@@ -11213,7 +11200,7 @@ catch_exec_command_1 (const char *arg, int from_tty,
error (_("Junk at end of arguments."));
std::unique_ptr<exec_catchpoint> c (new exec_catchpoint ());
- init_catchpoint (c.get (), gdbarch, tempflag, cond_string,
+ init_catchpoint (c.get (), gdbarch, temp, cond_string,
&catch_exec_breakpoint_ops);
c->exec_pathname = NULL;
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h
index a5fead9..b9a605e 100644
--- a/gdb/breakpoint.h
+++ b/gdb/breakpoint.h
@@ -1333,8 +1333,13 @@ extern void
int enabled,
int from_tty);
+/* Initialize a new breakpoint of the bp_catchpoint kind. If TEMP
+ is true, then make the breakpoint temporary. If COND_STRING is
+ not NULL, then store it in the breakpoint. OPS, if not NULL, is
+ the breakpoint_ops structure associated to the catchpoint. */
+
extern void init_catchpoint (struct breakpoint *b,
- struct gdbarch *gdbarch, int tempflag,
+ struct gdbarch *gdbarch, bool temp,
const char *cond_string,
const struct breakpoint_ops *ops);
@@ -1561,9 +1566,14 @@ extern void disable_breakpoints_in_shlibs (void);
extern bool is_catchpoint (struct breakpoint *b);
/* Shared helper function (MI and CLI) for creating and installing
- a shared object event catchpoint. */
-extern void add_solib_catchpoint (const char *arg, int is_load, int is_temp,
- int enabled);
+ a shared object event catchpoint. If IS_LOAD is true then
+ the events to be caught are load events, otherwise they are
+ unload events. If IS_TEMP is true the catchpoint is a
+ temporary one. If ENABLED is true the catchpoint is
+ created in an enabled state. */
+
+extern void add_solib_catchpoint (const char *arg, bool is_load, bool is_temp,
+ bool enabled);
/* Create and insert a new software single step breakpoint for the
current thread. May be called multiple times; each time will add a