Originally just a simple fix to make "info tracepoints" display only tracepoints, it's grown a bit. :-) The key change is to pass an optional filter function to breakpoint_1, which has a nice bonus of letting "info watchpoints" being the only-watchpoints lister that it was always supposed to be - which then requires doc and testsuite changes. I also took the opportunity of merging the duplicate tracepoint predicates that found their way into the code, plus there's now a warning that tracepoints don't do ignore counts. Stan 2010-04-02 Stan Shebs Nathan Sidwell * breakpoint.c (breakpoint_1): Add filter argument, return number of breakpoints printed. (is_hardware_watchpoint): Make argument const. (is_watchpoint): Ditto. (is_tracepoint): Merge of tracepoint_type and breakpoint_is_tracepoint, use it everywhere. (breakpoints_info): Pass NULL to breakpoint_1. (maintenance_info_breakpoints): Ditto. (watchpoints_info): New function. (tracepoints_info): Use breakpoint_1 filter. (set_ignore_count): Warn that tracepoint ignore count will be ignored. (_initialize_breakpoint): Make "info watchpoints" its own command. * breakpoint.h (is_tracepoint): Rename from breakpoint_is_tracepoint. * mi/mi-cmd-break.c (mi_cmd_break_commands): Use is_tracepoint. * gdb.texinfo (Setting Breakpoints): "info watch" no longer a synonym. (Setting Watchpoints): Update description of "info watch". (Disabling Breakpoints): Only "info break" lists all. * gdb.base/completion.exp: Update for new "info watchpoints". * gdb.base/default.exp: Ditto. * gdb.base/help.exp: Ditto. * gdb.base/watchpoint.exp: Ditto. * gdb.trace/infotrace.exp: Update "info tracpoints" output.