Add set_repeat_arguments function
authorTom Tromey <tom@tromey.com>
Thu, 12 Oct 2017 14:27:21 +0000 (08:27 -0600)
committerTom Tromey <tom@tromey.com>
Tue, 7 Nov 2017 20:59:09 +0000 (13:59 -0700)
commit85c4be7c83b80acf647e6ffcaed0f0cdbcb8c3eb
treee5beb6ee1907869e987937ee92538274d0fa560d
parent022643b4456ee13752b0f3a8411238ab8c53bf6d
Add set_repeat_arguments function

The "x", "list", and "show commands" commands have special repetition
behavior: repeating the command doesn't re-run it with the same
arguments

This is currently implemented by modifying the passed-in argument; but
that won't work properly with const arguments (and seems pretty
obscure besides).

This patch adds a new "set_repeat_arguments" function and changes the
relevant places to call it.

gdb/ChangeLog
2017-11-07  Tom Tromey  <tom@tromey.com>

* printcmd.c (x_command): Call set_repeat_arguments.
* cli/cli-cmds.c (list_command): Call set_repeat_arguments.
* top.c (repeat_arguments): New global.
(set_repeat_arguments): New function.
(execute_command): Handle repeat_arguments.
(show_commands): Calls set_repeat_arguments.
* command.h (set_repeat_arguments): Declare.
gdb/ChangeLog
gdb/cli/cli-cmds.c
gdb/command.h
gdb/printcmd.c
gdb/top.c
gdb/value.c