/* Number assigned to distinguish breakpoints. */
int number;
- /* Address to break at, or NULL if not a breakpoint. */
+ /* Address to break at.
+ Note that zero is a perfectly valid code address on some
+ platforms (for example, the mn10200 and mn10300 simulators).
+ NULL is not a special value for this field. */
CORE_ADDR address;
- /* Line number of this address. Only matters if address is
- non-NULL. */
+ /* Line number of this address. */
int line_number;
- /* Source file name of this address. Only matters if address is
- non-NULL. */
+ /* Source file name of this address. */
char *source_file;
control of the target insert_breakpoint and remove_breakpoint routines.
No other code should assume anything about the value(s) here. */
char shadow_contents[BREAKPOINT_MAX];
- /* Nonzero if this breakpoint is now inserted. Only matters if address
- is non-NULL. */
+ /* Nonzero if this breakpoint is now inserted. */
char inserted;
/* Nonzero if this is not the first breakpoint in the list
- for the given address. Only matters if address is non-NULL. */
+ for the given address. */
char duplicate;
/* Chain of command lines to execute when this breakpoint is hit. */
struct command_line *commands;
/* Conditional. Break only if this expression's value is nonzero. */
struct expression *cond;
- /* String we used to set the breakpoint (malloc'd). Only matters if
- address is non-NULL. */
+ /* String we used to set the breakpoint (malloc'd). */
char *addr_string;
/* Language we used to set the breakpoint. */
enum language language;
extern int frame_in_dummy (struct frame_info *);
-extern int breakpoint_thread_match (CORE_ADDR, int);
+extern int breakpoint_thread_match (CORE_ADDR, ptid_t);
extern void until_break_command (char *, int);
be detached and allowed to run free.
It is an error to use this function on the process whose id is
- inferior_pid. */
+ inferior_ptid. */
extern int detach_breakpoints (int);
extern void enable_longjmp_breakpoint (void);