#include "defs.h" #include "symtab.h" #include "symfile.h" #include "target.h" #include "gdbcmd.h" #include "objfiles.h" #include "breakpoint.h" static void annotation_level_command (char *arg, int from_tty) { extern int annotation_level; if (strcmp (arg, "AnnotateForPB") == 0) { annotation_level = 2; } else { annotation_level = 0; } } /* stolen from ../breakpoint.c */ #define ALL_BREAKPOINTS(b) for (b = breakpoint_chain; b; b = b->next) extern struct breakpoint *breakpoint_chain; void pb_breakpoint_move_command (char *arg, int from_tty) { int bp_number; int line_number; struct breakpoint *bp, *b; if (sscanf(arg,"%d %d", &bp_number, &line_number) != 2) { printf_unfiltered ("Error parsing breakpoint command \"%s\"\n", arg); return; } bp = NULL; ALL_BREAKPOINTS (b) { if (b->number == bp_number) { bp = b; break; } } if (bp) { do_breakpoint_move (bp, line_number); } else { printf_unfiltered ("No breakpoint number %d.\n", bp_number); } } void print_sel_frame (just_source) int just_source; { print_stack_frame (selected_frame, -1, just_source ? -1 : 1); } /* Print info on the selected frame, including level number but not source. */ void print_selected_frame () { print_stack_frame (selected_frame, selected_frame_level, 0); } void _initialize_pb () { add_com ("annotation_level", class_support, annotation_level_command, "Sets the annotation level."); add_com ("pb_breakpoint_move", class_support, pb_breakpoint_move_command, " : moves breakpoint bp_num to line line_number in same file."); }