gdb/
2013-03-29 Yao Qi <yao@codesourcery.com> * corelow.c: Include "completer.h". (_initialize_corelow): Call add_target_with_completer with argument 'filename_completer'. * tracepoint.c: Likewise. * exec.c (_initialize_exec): Likewise. * target.c (add_target): Rename to ... (add_target_with_completer): ... this. Call set_cmd_completer if parameter completer is not NULL. (add_target): New. * target.h: Include "command.h". (add_target_with_completer): Declare it. gdb/testsuite: 2013-03-29 Yao Qi <yao@codesourcery.com> * gdb.base/completion.exp: Test completion of commands "target core", "target tfile" and "target exec". * gdb.trace/tfile.exp: Test completion of command "target tfile".
This commit is contained in:
parent
af312be731
commit
9852c492bd
@ -1,3 +1,17 @@
|
||||
2013-03-29 Yao Qi <yao@codesourcery.com>
|
||||
|
||||
* corelow.c: Include "completer.h".
|
||||
(_initialize_corelow): Call add_target_with_completer with
|
||||
argument 'filename_completer'.
|
||||
* tracepoint.c: Likewise.
|
||||
* exec.c (_initialize_exec): Likewise.
|
||||
* target.c (add_target): Rename to ...
|
||||
(add_target_with_completer): ... this. Call set_cmd_completer
|
||||
if parameter completer is not NULL.
|
||||
(add_target): New.
|
||||
* target.h: Include "command.h".
|
||||
(add_target_with_completer): Declare it.
|
||||
|
||||
2013-03-28 Joel Brobecker <brobecker@adacore.com>
|
||||
|
||||
* coffread.c (is_import_fixup_symbol): New function.
|
||||
|
@ -46,6 +46,7 @@
|
||||
#include "progspace.h"
|
||||
#include "objfiles.h"
|
||||
#include "gdb_bfd.h"
|
||||
#include "completer.h"
|
||||
|
||||
#ifndef O_LARGEFILE
|
||||
#define O_LARGEFILE 0
|
||||
@ -977,5 +978,5 @@ _initialize_corelow (void)
|
||||
{
|
||||
init_core_ops ();
|
||||
|
||||
add_target (&core_ops);
|
||||
add_target_with_completer (&core_ops, filename_completer);
|
||||
}
|
||||
|
@ -943,7 +943,7 @@ Show writing into executable and core files."), NULL,
|
||||
show_write_files,
|
||||
&setlist, &showlist);
|
||||
|
||||
add_target (&exec_ops);
|
||||
add_target_with_completer (&exec_ops, filename_completer);
|
||||
}
|
||||
|
||||
static char *
|
||||
|
22
gdb/target.c
22
gdb/target.c
@ -384,11 +384,16 @@ target_has_execution_current (void)
|
||||
return target_has_execution_1 (inferior_ptid);
|
||||
}
|
||||
|
||||
/* Add a possible target architecture to the list. */
|
||||
/* Add possible target architecture T to the list and add a new
|
||||
command 'target T->to_shortname'. Set COMPLETER as the command's
|
||||
completer if not NULL. */
|
||||
|
||||
void
|
||||
add_target (struct target_ops *t)
|
||||
add_target_with_completer (struct target_ops *t,
|
||||
completer_ftype *completer)
|
||||
{
|
||||
struct cmd_list_element *c;
|
||||
|
||||
/* Provide default values for all "must have" methods. */
|
||||
if (t->to_xfer_partial == NULL)
|
||||
t->to_xfer_partial = default_xfer_partial;
|
||||
@ -431,7 +436,18 @@ Remaining arguments are interpreted by the target protocol. For more\n\
|
||||
information on the arguments for a particular protocol, type\n\
|
||||
`help target ' followed by the protocol name."),
|
||||
&targetlist, "target ", 0, &cmdlist);
|
||||
add_cmd (t->to_shortname, no_class, t->to_open, t->to_doc, &targetlist);
|
||||
c = add_cmd (t->to_shortname, no_class, t->to_open, t->to_doc,
|
||||
&targetlist);
|
||||
if (completer != NULL)
|
||||
set_cmd_completer (c, completer);
|
||||
}
|
||||
|
||||
/* Add a possible target architecture to the list. */
|
||||
|
||||
void
|
||||
add_target (struct target_ops *t)
|
||||
{
|
||||
add_target_with_completer (t, NULL);
|
||||
}
|
||||
|
||||
/* See target.h. */
|
||||
|
@ -63,6 +63,7 @@ struct expression;
|
||||
#include "vec.h"
|
||||
#include "gdb_signals.h"
|
||||
#include "btrace.h"
|
||||
#include "command.h"
|
||||
|
||||
enum strata
|
||||
{
|
||||
@ -1841,6 +1842,9 @@ int target_verify_memory (const gdb_byte *data,
|
||||
|
||||
extern void add_target (struct target_ops *);
|
||||
|
||||
extern void add_target_with_completer (struct target_ops *t,
|
||||
completer_ftype *completer);
|
||||
|
||||
/* Adds a command ALIAS for target T and marks it deprecated. This is useful
|
||||
for maintaining backwards compatibility when renaming targets. */
|
||||
|
||||
|
@ -1,3 +1,10 @@
|
||||
2013-03-29 Yao Qi <yao@codesourcery.com>
|
||||
|
||||
* gdb.base/completion.exp: Test completion of commands
|
||||
"target core", "target tfile" and "target exec".
|
||||
* gdb.trace/tfile.exp: Test completion of command
|
||||
"target tfile".
|
||||
|
||||
2013-03-28 Joel Brobecker <brobecker@adacore.com>
|
||||
|
||||
* gdb.ada/win_fu_syms: New testcase.
|
||||
|
@ -713,6 +713,13 @@ gdb_test "complete set gnutarget aut" "set gnutarget auto"
|
||||
|
||||
gdb_test "complete set cp-abi aut" "set cp-abi auto"
|
||||
|
||||
# Test that completion of commands 'target FOO' works well.
|
||||
|
||||
foreach target_name { "core" "tfile" "exec" } {
|
||||
gdb_test "complete target ${target_name} ./gdb.base/completion" \
|
||||
"target ${target_name} ./gdb.base/completion\\.exp.*"
|
||||
}
|
||||
|
||||
# Restore globals modified in this test...
|
||||
set timeout $oldtimeout1
|
||||
|
||||
|
@ -125,3 +125,8 @@ gdb_test \
|
||||
gdb_test "interpreter-exec mi \"-trace-status\"" \
|
||||
"\\^done,supported=\"file\",trace-file=\".*basic.tf\",running=\"0\",stop-reason=\"request\",frames=\"${decimal}\",frames-created=\"${decimal}\",buffer-size=\"${decimal}\",buffer-free=\"${decimal}\",disconnected=\".*\",circular=\".*\",user-name=\"\",notes=\"\",start-time=\".*\",stop-time=\".*\"" \
|
||||
"-trace-status"
|
||||
|
||||
# Test completion works well.
|
||||
|
||||
gdb_test "target tfile basic\t" "Assuming tracepoint.*" \
|
||||
"complete-command 'target tfile'"
|
||||
|
@ -54,6 +54,7 @@
|
||||
#include "cli/cli-utils.h"
|
||||
#include "probe.h"
|
||||
#include "ctf.h"
|
||||
#include "completer.h"
|
||||
|
||||
/* readline include files */
|
||||
#include "readline/readline.h"
|
||||
@ -5904,5 +5905,5 @@ Show the notes string to use for future tstop commands"), NULL,
|
||||
|
||||
init_tfile_ops ();
|
||||
|
||||
add_target (&tfile_ops);
|
||||
add_target_with_completer (&tfile_ops, filename_completer);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user