Add `command hooks' and a hook for inferior program stopping.
authorJohn Gilmore <gnu@cygnus>
Thu, 1 Oct 1992 09:57:36 +0000 (09:57 +0000)
committerJohn Gilmore <gnu@cygnus>
Thu, 1 Oct 1992 09:57:36 +0000 (09:57 +0000)
commita65841d7681adbf2d768b49a84de314ffadf3cfe
tree1c5220a7d8cc4ce210239a7785bfd7192286e09a
parent0843ea632e5c3c8d9ae6a2b909939474e5dfa180
Add `command hooks' and a hook for inferior program stopping.

* command.h (struct cmd_list_element):  Remove unused `aux'
field.  Add new `hook', `hookee', and `cmd_pointer' fields.
* command.c (add_cmd):  Initialize new fields, elim old.
(add_alias_cmd):  Clone new fields.
(delete_cmd):  Un-hook hookee if we're deleting hook.
(help_cmd):  Tell user the command is hooked, if it is.
(lookup_cmd_1):  Abbreviations return the original command
instead of themselves, so that hooks on the original cmd will be
run.
* defs.h (enum command_class):  Add class_pseudo and comments.
* gdbcmd.h (execute_user_command):  Add prototype.
* infrun.c (normal_stop):  If the stop command is hooked,
run the hook whenever we stop.
(hook_stop_stub):  Stub for catch_errors.
(_initialize_infrun):  Set up pseudo "stop" command.
* main.c (execute_user_command):  Code extracted from execute_command.
(execute_command):  If hooked, run the hook before the command.
(define_command):  If defining a new hook, check the command it
is hooking, and warn if none.  Install the hook.
* source.c (_initialize_source):  "l" is an abbrev for "list".
* doc/gdb.texinfo:  Document command hooks.

* Makefile.in (VERSION):  Roll to 4.6.7.
* config/sun4os4.mh:  Remove dup inftarg.o from NATDEPFILES.
* infrun.c (breakpoints_inserted):  Make it static again.
* tm-symmetry.h (FLOAT_INFO):  #if 0 it for cross-ptrace abuse.
gdb/ChangeLog
gdb/command.c
gdb/tm-symmetry.h