* [PATCH v2 0/1] Add breakpoint location debugging logs @ 2023-03-13 18:34 Christina Schimpe 2023-03-13 18:34 ` [PATCH v2 1/1] gdb, breakpoint: add " Christina Schimpe 0 siblings, 1 reply; 6+ messages in thread From: Christina Schimpe @ 2023-03-13 18:34 UTC (permalink / raw) To: gdb-patches; +Cc: eliz, blarsen Hi all, this is my v2 for the patch "gdb, breakpoint: add breakpoint location debugging logs", which fixes one nit mentioned by Bruno. The documentation part has been approved by Eli. V1 of this patch can be found here: https://sourceware.org/pipermail/gdb-patches/2023-February/197256.html Regards, Christina Mihails Strasuns (1): gdb, breakpoint: add breakpoint location debugging logs gdb/NEWS | 4 +++ gdb/breakpoint.c | 66 +++++++++++++++++++++++++++++++++++++++++++++ gdb/doc/gdb.texinfo | 8 ++++++ 3 files changed, 78 insertions(+) -- 2.25.1 Intel Deutschland GmbH Registered Address: Am Campeon 10, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de <http://www.intel.de> Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928 ^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH v2 1/1] gdb, breakpoint: add breakpoint location debugging logs 2023-03-13 18:34 [PATCH v2 0/1] Add breakpoint location debugging logs Christina Schimpe @ 2023-03-13 18:34 ` Christina Schimpe 2023-03-14 12:32 ` Eli Zaretskii 2023-03-14 14:22 ` Simon Marchi 0 siblings, 2 replies; 6+ messages in thread From: Christina Schimpe @ 2023-03-13 18:34 UTC (permalink / raw) To: gdb-patches; +Cc: eliz, blarsen, Christina Schimpe From: Mihails Strasuns <mihails.strasuns@intel.com> Add new commands: set debug breakpoints on|off show debug breakpoints This patch introduces new debugging information that prints breakpoint location insertion and removal flow. The debug output looks like: ~~~ (gdb) set debug breakpoints on (gdb) disassemble main Dump of assembler code for function main: 0x0000555555555129 <+0>: endbr64 0x000055555555512d <+4>: push %rbp 0x000055555555512e <+5>: mov %rsp,%rbp => 0x0000555555555131 <+8>: mov $0x0,%eax 0x0000555555555136 <+13>: pop %rbp 0x0000555555555137 <+14>: ret End of assembler dump. (gdb) break *0x0000555555555137 Breakpoint 2 at 0x555555555137: file main.c, line 4. [breakpoints] update_global_location_list: UGLL_MAY_INSERT (gdb) c Continuing. [breakpoints] update_global_location_list: UGLL_INSERT [breakpoints] insert_bp_location: bp_location (0x562881637fb0) at address 0x555555555137 in main at main.c:4 [breakpoints] insert_bp_location: bp_location (0x56288179a4f0) at address 0x7ffff7fd37b5 <dl_main+8661> [breakpoints] insert_bp_location: bp_location (0x56288179ea60) at address 0x7ffff7fe509e <dl_open_worker+1150> [breakpoints] insert_bp_location: bp_location (0x5628817184d0) at address 0x7ffff7fe63f4 <_dl_close_worker+2356> [breakpoints] remove_breakpoint_1: bp_location (0x562881637fb0) due to regular remove at address 0x555555555137 in main at main.c:4 [breakpoints] remove_breakpoint_1: bp_location (0x56288179a4f0) due to regular remove at address 0x7ffff7fd37b5 <dl_main+8661> [breakpoints] remove_breakpoint_1: bp_location (0x56288179ea60) due to regular remove at address 0x7ffff7fe509e <dl_open_worker+1150> [breakpoints] remove_breakpoint_1: bp_location (0x5628817184d0) due to regular remove at address 0x7ffff7fe63f4 <_dl_close_worker+2356> Breakpoint 2, 0x0000555555555137 in main () at main.c:4 4 } ~~~ Co-Authored-By: Christina Schimpe <christina.schimpe@intel.com> --- gdb/NEWS | 4 +++ gdb/breakpoint.c | 66 +++++++++++++++++++++++++++++++++++++++++++++ gdb/doc/gdb.texinfo | 8 ++++++ 3 files changed, 78 insertions(+) diff --git a/gdb/NEWS b/gdb/NEWS index cc262f1f8a6..f413cd5aeb4 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -3,6 +3,10 @@ *** Changes since GDB 13 +* set debug breakpoints on|off + show debug breakpoints + Print additional debug messages about breakpoint insertion and removal. + * Removed targets and native configurations GDB no longer supports AIX 4.x, AIX 5.x and AIX 6.x. The minimum supported diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index abee22cd162..e3666c34bee 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -163,6 +163,8 @@ static bool bl_address_is_meaningful (bp_location *loc); static int find_loc_num_by_location (const bp_location *loc); +static std::string breakpoint_location_to_buffer (bp_location *bl); + /* update_global_location_list's modes of operation wrt to whether to insert locations now. */ enum ugll_insert_mode @@ -198,6 +200,22 @@ enum ugll_insert_mode UGLL_INSERT }; +static const char * +ugll_insert_mode_text (ugll_insert_mode insert_mode) +{ + switch (insert_mode) + { + case UGLL_DONT_INSERT: + return "UGLL_DONT_INSERT"; + case UGLL_MAY_INSERT: + return "UGLL_MAY_INSERT"; + case UGLL_INSERT: + return "UGLL_INSERT"; + } + + gdb_assert_not_reached ("must handle all enum values"); +} + static void update_global_location_list (enum ugll_insert_mode); static void update_global_location_list_nothrow (enum ugll_insert_mode); @@ -508,6 +526,19 @@ show_always_inserted_mode (struct ui_file *file, int from_tty, value); } +static bool debug_breakpoints = false; + +#define breakpoint_debug_printf(fmt, ...) \ + debug_prefixed_printf_cond (debug_breakpoints, "breakpoints",fmt,\ + ##__VA_ARGS__) + +static void +show_debug_breakpoints (struct ui_file *file, int from_tty, + struct cmd_list_element *c, const char *value) +{ + gdb_printf (file, _("Breakpoint location debugging is %s.\n"), value); +} + /* See breakpoint.h. */ int @@ -2710,6 +2741,11 @@ insert_bp_location (struct bp_location *bl, if (!should_be_inserted (bl) || (bl->inserted && !bl->needs_update)) return 0; + breakpoint_debug_printf ("bp_location (%s) at address %s %s", + host_address_to_string (bl), + paddress (bl->gdbarch, bl->address), + breakpoint_location_to_buffer (bl).c_str ()); + /* Note we don't initialize bl->target_info, as that wipes out the breakpoint location's shadow_contents if the breakpoint is still inserted at that location. This in turn breaks @@ -3264,6 +3300,8 @@ remove_breakpoints_inf (inferior *inf) { int val; + breakpoint_debug_printf ("remove_breakpoints_inf (%d)", inf->num); + for (bp_location *bl : all_bp_locations ()) { if (bl->pspace != inf->pspace) @@ -3908,6 +3946,13 @@ detach_breakpoints (ptid_t ptid) static int remove_breakpoint_1 (struct bp_location *bl, enum remove_bp_reason reason) { + breakpoint_debug_printf ("bp_location (%s) due to %s at address %s %s", + host_address_to_string (bl), + (reason == REMOVE_BREAKPOINT + ? "regular remove" : "detach"), + paddress (bl->gdbarch, bl->address), + breakpoint_location_to_buffer (bl).c_str ()); + int val; /* BL is never in moribund_locations by our callers. */ @@ -6210,6 +6255,16 @@ print_breakpoint_location (const breakpoint *b, } } +static std::string +breakpoint_location_to_buffer (bp_location *bl) +{ + string_file stb; + current_uiout->redirect (&stb); + print_breakpoint_location (bl->owner, bl); + current_uiout->redirect (nullptr); + return stb.string (); +} + static const char * bptype_string (enum bptype type) { @@ -11140,6 +11195,8 @@ update_global_location_list (enum ugll_insert_mode insert_mode) /* Last breakpoint location program space that was marked for update. */ int last_pspace_num = -1; + breakpoint_debug_printf ("%s", ugll_insert_mode_text (insert_mode)); + /* Used in the duplicates detection below. When iterating over all bp_locations, points to the first bp_location of a given address. Breakpoints and watchpoints of different types are never @@ -14870,6 +14927,15 @@ when execution stops."), &breakpoint_set_cmdlist, &breakpoint_show_cmdlist); + add_setshow_boolean_cmd ("breakpoints", class_maintenance, + &debug_breakpoints, _("\ +Set breakpoint location debugging."), _("\ +Show breakpoint location debugging."), _("\ +When non-zero, breakpoint location specific debugging is enabled."), + NULL, + show_debug_breakpoints, + &setdebuglist, &showdebuglist); + add_setshow_enum_cmd ("condition-evaluation", class_breakpoint, condition_evaluation_enums, &condition_evaluation_mode_1, _("\ diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 98b7c984aa7..fe52acdf5dd 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -28283,6 +28283,14 @@ debugging info. Turn on or off debugging messages for built-in XML parsers. @item show debug xml Displays the current state of XML debugging messages. + +@item set debug breakpoints +@cindex breakpoint debugging info +Turns on or off display of @value{GDBN} debugging info for breakpoint insertion +and removal. The default is off. +@item show debug breakpoints +Displays the current state of displaying @value{GDBN} debugging info for +breakpoint insertion and removal. @end table @node Other Misc Settings -- 2.25.1 Intel Deutschland GmbH Registered Address: Am Campeon 10, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de <http://www.intel.de> Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 1/1] gdb, breakpoint: add breakpoint location debugging logs 2023-03-13 18:34 ` [PATCH v2 1/1] gdb, breakpoint: add " Christina Schimpe @ 2023-03-14 12:32 ` Eli Zaretskii 2023-03-14 14:22 ` Simon Marchi 1 sibling, 0 replies; 6+ messages in thread From: Eli Zaretskii @ 2023-03-14 12:32 UTC (permalink / raw) To: Christina Schimpe; +Cc: gdb-patches, blarsen > From: Christina Schimpe <christina.schimpe@intel.com> > Cc: eliz@gnu.org, > blarsen@redhat.com, > Christina Schimpe <christina.schimpe@intel.com> > Date: Mon, 13 Mar 2023 19:34:27 +0100 > > From: Mihails Strasuns <mihails.strasuns@intel.com> > > Add new commands: > > set debug breakpoints on|off > show debug breakpoints > > This patch introduces new debugging information that prints > breakpoint location insertion and removal flow. > > The debug output looks like: > ~~~ > (gdb) set debug breakpoints on > (gdb) disassemble main > Dump of assembler code for function main: > 0x0000555555555129 <+0>: endbr64 > 0x000055555555512d <+4>: push %rbp > 0x000055555555512e <+5>: mov %rsp,%rbp > => 0x0000555555555131 <+8>: mov $0x0,%eax > 0x0000555555555136 <+13>: pop %rbp > 0x0000555555555137 <+14>: ret > End of assembler dump. > (gdb) break *0x0000555555555137 > Breakpoint 2 at 0x555555555137: file main.c, line 4. > [breakpoints] update_global_location_list: UGLL_MAY_INSERT > (gdb) c > Continuing. > [breakpoints] update_global_location_list: UGLL_INSERT > [breakpoints] insert_bp_location: bp_location (0x562881637fb0) at address 0x555555555137 in main at main.c:4 > [breakpoints] insert_bp_location: bp_location (0x56288179a4f0) at address 0x7ffff7fd37b5 <dl_main+8661> > [breakpoints] insert_bp_location: bp_location (0x56288179ea60) at address 0x7ffff7fe509e <dl_open_worker+1150> > [breakpoints] insert_bp_location: bp_location (0x5628817184d0) at address 0x7ffff7fe63f4 <_dl_close_worker+2356> > [breakpoints] remove_breakpoint_1: bp_location (0x562881637fb0) due to regular remove at address 0x555555555137 in main at main.c:4 > [breakpoints] remove_breakpoint_1: bp_location (0x56288179a4f0) due to regular remove at address 0x7ffff7fd37b5 <dl_main+8661> > [breakpoints] remove_breakpoint_1: bp_location (0x56288179ea60) due to regular remove at address 0x7ffff7fe509e <dl_open_worker+1150> > [breakpoints] remove_breakpoint_1: bp_location (0x5628817184d0) due to regular remove at address 0x7ffff7fe63f4 <_dl_close_worker+2356> > > Breakpoint 2, 0x0000555555555137 in main () at main.c:4 > 4 } > ~~~ > > Co-Authored-By: Christina Schimpe <christina.schimpe@intel.com> > --- > gdb/NEWS | 4 +++ > gdb/breakpoint.c | 66 +++++++++++++++++++++++++++++++++++++++++++++ > gdb/doc/gdb.texinfo | 8 ++++++ > 3 files changed, 78 insertions(+) Thanks, the documentation parts are OK. Reviewed-By: Eli Zaretskii <eliz@gnu.org> ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 1/1] gdb, breakpoint: add breakpoint location debugging logs 2023-03-13 18:34 ` [PATCH v2 1/1] gdb, breakpoint: add " Christina Schimpe 2023-03-14 12:32 ` Eli Zaretskii @ 2023-03-14 14:22 ` Simon Marchi 2023-03-14 17:07 ` Schimpe, Christina 1 sibling, 1 reply; 6+ messages in thread From: Simon Marchi @ 2023-03-14 14:22 UTC (permalink / raw) To: Christina Schimpe, gdb-patches; +Cc: eliz, blarsen On 3/13/23 14:34, Christina Schimpe via Gdb-patches wrote: > From: Mihails Strasuns <mihails.strasuns@intel.com> > > Add new commands: > > set debug breakpoints on|off > show debug breakpoints > > This patch introduces new debugging information that prints > breakpoint location insertion and removal flow. > > The debug output looks like: > ~~~ > (gdb) set debug breakpoints on > (gdb) disassemble main > Dump of assembler code for function main: > 0x0000555555555129 <+0>: endbr64 > 0x000055555555512d <+4>: push %rbp > 0x000055555555512e <+5>: mov %rsp,%rbp > => 0x0000555555555131 <+8>: mov $0x0,%eax > 0x0000555555555136 <+13>: pop %rbp > 0x0000555555555137 <+14>: ret > End of assembler dump. > (gdb) break *0x0000555555555137 > Breakpoint 2 at 0x555555555137: file main.c, line 4. > [breakpoints] update_global_location_list: UGLL_MAY_INSERT > (gdb) c > Continuing. > [breakpoints] update_global_location_list: UGLL_INSERT > [breakpoints] insert_bp_location: bp_location (0x562881637fb0) at address 0x555555555137 in main at main.c:4 > [breakpoints] insert_bp_location: bp_location (0x56288179a4f0) at address 0x7ffff7fd37b5 <dl_main+8661> > [breakpoints] insert_bp_location: bp_location (0x56288179ea60) at address 0x7ffff7fe509e <dl_open_worker+1150> > [breakpoints] insert_bp_location: bp_location (0x5628817184d0) at address 0x7ffff7fe63f4 <_dl_close_worker+2356> > [breakpoints] remove_breakpoint_1: bp_location (0x562881637fb0) due to regular remove at address 0x555555555137 in main at main.c:4 > [breakpoints] remove_breakpoint_1: bp_location (0x56288179a4f0) due to regular remove at address 0x7ffff7fd37b5 <dl_main+8661> > [breakpoints] remove_breakpoint_1: bp_location (0x56288179ea60) due to regular remove at address 0x7ffff7fe509e <dl_open_worker+1150> > [breakpoints] remove_breakpoint_1: bp_location (0x5628817184d0) due to regular remove at address 0x7ffff7fe63f4 <_dl_close_worker+2356> Hi, Thanks for doing this. Debug output is always appreciated. I just have some minor comments below, with those fixed the patch LGTM: Approved-By: Simon Marchi <simon.marchi@efficios.com> > diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c > index abee22cd162..e3666c34bee 100644 > --- a/gdb/breakpoint.c > +++ b/gdb/breakpoint.c > @@ -163,6 +163,8 @@ static bool bl_address_is_meaningful (bp_location *loc); > > static int find_loc_num_by_location (const bp_location *loc); > > +static std::string breakpoint_location_to_buffer (bp_location *bl); Instead of adding a forward declaration, you can just put the new function wherever needed so it's seen by all its users. > @@ -198,6 +200,22 @@ enum ugll_insert_mode > UGLL_INSERT > }; > > +static const char * > +ugll_insert_mode_text (ugll_insert_mode insert_mode) For completeness, please add a comment for this function. It can be: /* Return a textual version of INSERT_MODE. */ > @@ -508,6 +526,19 @@ show_always_inserted_mode (struct ui_file *file, int from_tty, > value); > } > > +static bool debug_breakpoints = false; Add comment: /* True if breakpoints debug output is enabled. */ > + > +#define breakpoint_debug_printf(fmt, ...) \ > + debug_prefixed_printf_cond (debug_breakpoints, "breakpoints",fmt,\ Add spaces after the last two commas. > + ##__VA_ARGS__) Add comment: /* Print a "breakpoints" debug statement. */ > + > +static void > +show_debug_breakpoints (struct ui_file *file, int from_tty, > + struct cmd_list_element *c, const char *value) > +{ > + gdb_printf (file, _("Breakpoint location debugging is %s.\n"), value); > +} Add comment: /* "show debug breakpoints" implementation. */ > @@ -3264,6 +3300,8 @@ remove_breakpoints_inf (inferior *inf) > { > int val; > > + breakpoint_debug_printf ("remove_breakpoints_inf (%d)", inf->num); No need to say remove_breakpoints_inf in the message, it's the name of the function, so it will automatically be added. I would suggest the following format: "inf->num = %d", inf->num > @@ -6210,6 +6255,16 @@ print_breakpoint_location (const breakpoint *b, > } > } > > +static std::string > +breakpoint_location_to_buffer (bp_location *bl) Add comment: /* Return the output of print_breakpoint_location for BL as a string. */ > +{ > + string_file stb; > + current_uiout->redirect (&stb); > + print_breakpoint_location (bl->owner, bl); > + current_uiout->redirect (nullptr); > + return stb.string (); > +} > + > static const char * > bptype_string (enum bptype type) > { > @@ -11140,6 +11195,8 @@ update_global_location_list (enum ugll_insert_mode insert_mode) > /* Last breakpoint location program space that was marked for update. */ > int last_pspace_num = -1; > > + breakpoint_debug_printf ("%s", ugll_insert_mode_text (insert_mode)); I would suggest the following format: "insert_mode = %s", ugll_insert_mode_text (insert_mode) Simon ^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: [PATCH v2 1/1] gdb, breakpoint: add breakpoint location debugging logs 2023-03-14 14:22 ` Simon Marchi @ 2023-03-14 17:07 ` Schimpe, Christina 2023-03-14 17:41 ` Simon Marchi 0 siblings, 1 reply; 6+ messages in thread From: Schimpe, Christina @ 2023-03-14 17:07 UTC (permalink / raw) To: Simon Marchi, gdb-patches; +Cc: eliz, blarsen Hi, Thank you for the feedback! I just have a question to one of your comments (see below). > -----Original Message----- > From: Simon Marchi <simark@simark.ca> > Sent: Tuesday, March 14, 2023 3:23 PM > To: Schimpe, Christina <christina.schimpe@intel.com>; gdb- > patches@sourceware.org > Cc: eliz@gnu.org; blarsen@redhat.com > Subject: Re: [PATCH v2 1/1] gdb, breakpoint: add breakpoint location > debugging logs > > On 3/13/23 14:34, Christina Schimpe via Gdb-patches wrote: > > From: Mihails Strasuns <mihails.strasuns@intel.com> > > > > Add new commands: > > > > set debug breakpoints on|off > > show debug breakpoints > > > > This patch introduces new debugging information that prints breakpoint > > location insertion and removal flow. > > > > The debug output looks like: > > ~~~ > > (gdb) set debug breakpoints on > > (gdb) disassemble main > > Dump of assembler code for function main: > > 0x0000555555555129 <+0>: endbr64 > > 0x000055555555512d <+4>: push %rbp > > 0x000055555555512e <+5>: mov %rsp,%rbp > > => 0x0000555555555131 <+8>: mov $0x0,%eax > > 0x0000555555555136 <+13>: pop %rbp > > 0x0000555555555137 <+14>: ret > > End of assembler dump. > > (gdb) break *0x0000555555555137 > > Breakpoint 2 at 0x555555555137: file main.c, line 4. > > [breakpoints] update_global_location_list: UGLL_MAY_INSERT > > (gdb) c > > Continuing. > > [breakpoints] update_global_location_list: UGLL_INSERT [breakpoints] > > insert_bp_location: bp_location (0x562881637fb0) at address > > 0x555555555137 in main at main.c:4 [breakpoints] insert_bp_location: > > bp_location (0x56288179a4f0) at address 0x7ffff7fd37b5 <dl_main+8661> > > [breakpoints] insert_bp_location: bp_location (0x56288179ea60) at > > address 0x7ffff7fe509e <dl_open_worker+1150> [breakpoints] > > insert_bp_location: bp_location (0x5628817184d0) at address > > 0x7ffff7fe63f4 <_dl_close_worker+2356> [breakpoints] > > remove_breakpoint_1: bp_location (0x562881637fb0) due to regular > > remove at address 0x555555555137 in main at main.c:4 [breakpoints] > > remove_breakpoint_1: bp_location (0x56288179a4f0) due to regular > > remove at address 0x7ffff7fd37b5 <dl_main+8661> [breakpoints] > > remove_breakpoint_1: bp_location (0x56288179ea60) due to regular > > remove at address 0x7ffff7fe509e <dl_open_worker+1150> [breakpoints] > > remove_breakpoint_1: bp_location (0x5628817184d0) due to regular > > remove at address 0x7ffff7fe63f4 <_dl_close_worker+2356> > > Hi, > > Thanks for doing this. Debug output is always appreciated. > > I just have some minor comments below, with those fixed the patch LGTM: > > Approved-By: Simon Marchi <simon.marchi@efficios.com> > > > diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index > > abee22cd162..e3666c34bee 100644 > > --- a/gdb/breakpoint.c > > +++ b/gdb/breakpoint.c > > @@ -163,6 +163,8 @@ static bool bl_address_is_meaningful (bp_location > > *loc); > > > > static int find_loc_num_by_location (const bp_location *loc); > > > > +static std::string breakpoint_location_to_buffer (bp_location *bl); > > Instead of adding a forward declaration, you can just put the new function > wherever needed so it's seen by all its users. I don't think I can do this due to the dependency to the function print_breakpoint_location. So if I move it up above the function which first uses it (insert_bp_location) and remove the forward declaration it won't compile or did I miss something? Regards, Christina Intel Deutschland GmbH Registered Address: Am Campeon 10, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de <http://www.intel.de> Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH v2 1/1] gdb, breakpoint: add breakpoint location debugging logs 2023-03-14 17:07 ` Schimpe, Christina @ 2023-03-14 17:41 ` Simon Marchi 0 siblings, 0 replies; 6+ messages in thread From: Simon Marchi @ 2023-03-14 17:41 UTC (permalink / raw) To: Schimpe, Christina, gdb-patches; +Cc: eliz, blarsen > I don't think I can do this due to the dependency to the function print_breakpoint_location. > So if I move it up above the function which first uses it (insert_bp_location) and remove > the forward declaration it won't compile or did I miss something? Good point, I didn't think about that. That's fine. Simonc ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-03-14 17:41 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-03-13 18:34 [PATCH v2 0/1] Add breakpoint location debugging logs Christina Schimpe 2023-03-13 18:34 ` [PATCH v2 1/1] gdb, breakpoint: add " Christina Schimpe 2023-03-14 12:32 ` Eli Zaretskii 2023-03-14 14:22 ` Simon Marchi 2023-03-14 17:07 ` Schimpe, Christina 2023-03-14 17:41 ` Simon Marchi
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).