From 0101ce28cf3a678cee72feb3c05e2ece19bc6e2a Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Mon, 2 Feb 2004 21:10:49 +0000 Subject: 2004-02-02 Jeff Johnston * breakpoint.h (struct breakpoint): Add new flag, from_tty, and pending fields for pending breakpoint support. * breakpoint.c (breakpoint_enabled): Add check for not pending. (condition_command): Only parse condition if not a pending breakpoint. (print_one_breakpoint): Add support for pending breakpoints. (describe_other_breakpoints): Add checks to verify we are not dealing with pending breakpoints. (check_duplicates): Don't check pending breakpoints. (set_raw_breakpoint): Initialize pending flag. (do_restore_lang_radix_cleanup): New cleanup routine. (resolve_pending_breakpoint): New function. (re_enable_breakpoints_in_shlibs): Try and resolve any pending breakpoints via resolve_pending_breakpoint. (mention): Add pending breakpoint support. (parse_breakpoint_sals): Add new parameter to pass to decode_line_1 to indicate silent errors when files or functions are not found. Change all callers. (do_captured_parse_breakpoint): New function. (break_command_1): Change prototype to return an rc value and to take an optional pending breakpoint pointer. Support creating a pending breakpoint if a "not found" form of error occurs when parsing the breakpoint. Also support resolving an existing pending breakpoint and be silent if the resolution fails. (create_breakpoints): Change prototype to take pending breakpoint pointer. When resolving a pending breakpoint, use the new pointer to provide a conditional or commands added by the end-user. (delete_breakpoint): Add appropriate check for pending. (breakpoint_re_set_one): Ditto. (do_enable_breakpoint): Ditto. --- gdb/breakpoint.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'gdb/breakpoint.h') diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h index 1a4fada..41bcb0c 100644 --- a/gdb/breakpoint.h +++ b/gdb/breakpoint.h @@ -386,6 +386,17 @@ struct breakpoint /* Methods associated with this breakpoint. */ struct breakpoint_ops *ops; + + /* Was breakpoint issued from a tty? Saved for the use of pending breakpoints. */ + int from_tty; + + /* Flag value for pending breakpoint. + first bit : 0 non-temporary, 1 temporary. + second bit : 0 normal breakpoint, 1 hardware breakpoint. */ + int flag; + + /* Is breakpoint pending on shlib loads? */ + int pending; }; /* The following stuff is an abstract data type "bpstat" ("breakpoint -- cgit v1.1