aboutsummaryrefslogtreecommitdiff
path: root/gdb/infcmd.c
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2001-06-11 16:05:25 +0000
committerEli Zaretskii <eliz@gnu.org>2001-06-11 16:05:25 +0000
commitc94fdfd0a8821bf0bfa3518f5f65b58f1aa629c2 (patch)
treef35d443db6e865ab5deace1055b78f820bad39fc /gdb/infcmd.c
parent6439fc285d589cd53d00e1eb105f060ec406f4d6 (diff)
downloadgdb-c94fdfd0a8821bf0bfa3518f5f65b58f1aa629c2.zip
gdb-c94fdfd0a8821bf0bfa3518f5f65b58f1aa629c2.tar.gz
gdb-c94fdfd0a8821bf0bfa3518f5f65b58f1aa629c2.tar.bz2
* completer.c (gdb_completer_loc_break_characters): New variable.
(line_completion_function): If we are completing on locations, back up the start of word pointer past all characters which can appear in a location spec. (location_completer): New function. * completer.h: Add prototype for location_completer. * symtab.c (make_source_files_completion_list) (add_filename_to_list, not_interesting_fname): New functions. (filename_seen): New function, body extracted from output_source_filename. (output_source_filename): Call filename_seen to check if the file was already printed. (make_symbol_completion_list): If TEXT includes a double-quoted string, return an empty list, not NULL. (make_file_symbol_completion_list): New function, similar to make_symbol_completion_list but with an additional argument SRCFILE. * symtab.h (make_file_symbol_completion_list) (make_source_files_completion_list): Add prototypes. * breakpoint.c (_initialize_breakpoint): Make location_completer be the completion function for all commands which set breakpoints and watchpoints. (top-level): #include "completer.h". * tracepoint.c (_initialize_tracepoint): Make location_completer be the completion function for the "trace" command. (top-level): #include "completer.h". * printcmd.c (_initialize_printcmd): Make location_completer be the completion function for the "print", "inspect", "call", and "disassemble" commands. (top-level): #include "completer.h". * infcmd.c (_initialize_infcmd): Make location_completer be the completion function for the "go", "jump", and "until" commands. (top-level): #include "completer.h".
Diffstat (limited to 'gdb/infcmd.c')
-rw-r--r--gdb/infcmd.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/gdb/infcmd.c b/gdb/infcmd.c
index 0831d7c..3f8572e 100644
--- a/gdb/infcmd.c
+++ b/gdb/infcmd.c
@@ -36,6 +36,7 @@
#include "language.h"
#include "symfile.h"
#include "objfiles.h"
+#include "completer.h"
#ifdef UI_OUT
#include "ui-out.h"
#endif
@@ -1794,8 +1795,8 @@ _initialize_infcmd (void)
{
struct cmd_list_element *c;
- c= add_com ("tty", class_run, tty_command,
- "Set terminal for future runs of program being debugged.");
+ c = add_com ("tty", class_run, tty_command,
+ "Set terminal for future runs of program being debugged.");
c->completer = filename_completer;
c = add_set_cmd ("args", class_run, var_string_noescape,
@@ -1899,25 +1900,30 @@ Argument N means do this N times (or till program stops for another reason).");
Argument N means do this N times (or till program stops for another reason).");
add_com_alias ("s", "step", class_run, 1);
- add_com ("until", class_run, until_command,
- "Execute until the program reaches a source line greater than the current\n\
+ c = add_com ("until", class_run, until_command,
+ "Execute until the program reaches a source line greater than the current\n\
or a specified line or address or function (same args as break command).\n\
Execution will also stop upon exit from the current stack frame.");
+ c->completer = location_completer;
add_com_alias ("u", "until", class_run, 1);
- add_com ("jump", class_run, jump_command,
- "Continue program being debugged at specified line or address.\n\
+ c = add_com ("jump", class_run, jump_command,
+ "Continue program being debugged at specified line or address.\n\
Give as argument either LINENUM or *ADDR, where ADDR is an expression\n\
for an address to start at.");
+ c->completer = location_completer;
if (xdb_commands)
- add_com ("go", class_run, go_command,
- "Usage: go <location>\n\
+ {
+ c = add_com ("go", class_run, go_command,
+ "Usage: go <location>\n\
Continue program being debugged, stopping at specified line or \n\
address.\n\
Give as argument either LINENUM or *ADDR, where ADDR is an \n\
expression for an address to start at.\n\
This command is a combination of tbreak and jump.");
+ c->completer = location_completer;
+ }
if (xdb_commands)
add_com_alias ("g", "go", class_run, 1);