diff options
author | Andrew Cagney <cagney@redhat.com> | 1997-05-22 04:59:25 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 1997-05-22 04:59:25 +0000 |
commit | 1fa0cc2dfca2bfa6cc62516dd8c7aeb9c590d86a (patch) | |
tree | 8085e3b8b0e6661acecd15ca850b4735d06ff46b /gdb/remote-sim.c | |
parent | 28558bdb36be5186a20e17108bbace6628ee5934 (diff) | |
download | binutils-gdb-1fa0cc2dfca2bfa6cc62516dd8c7aeb9c590d86a.tar.gz |
Restrict simulator commands to an enabled simulator.
Diffstat (limited to 'gdb/remote-sim.c')
-rw-r--r-- | gdb/remote-sim.c | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/gdb/remote-sim.c b/gdb/remote-sim.c index df595ef4c0f..7574cbe7668 100644 --- a/gdb/remote-sim.c +++ b/gdb/remote-sim.c @@ -500,6 +500,8 @@ gdbsim_open (args, from_tty) sprintf (arg_buf, "gdbsim%s%s", args ? " " : "", args ? args : ""); #ifdef TARGET_BYTE_ORDER_SELECTABLE + /* Since GDB always closes the target and updates byte-order when + opening a new file, TARGET_BYTE_ORDER is normally correct. */ if (TARGET_BYTE_ORDER == BIG_ENDIAN) strcat (arg_buf, " -E big"); else @@ -777,15 +779,22 @@ simulator_command (args, from_tty) char *args; int from_tty; { - /* The user may give a command before the simulator is opened, so - ensure that the callbacks have been set up. */ - init_callbacks (); + if (gdbsim_desc == NULL) + { + + /* PREVIOUSLY: The user may give a command before the simulator + is opened. [...] (??? assuming of course one wishes to + continue to allow commands to be sent to unopened simulators, + which isn't entirely unreasonable). */ + + /* The simulator is a builtin abstraction of a remote target. + Consistent with that model, access to the simulator, via sim + commands, is restricted to the period when the channel to the + simulator is open. */ + + error ("Not connected to the simulator target"); + } - /* Note that if the simulator hasn't been opened, gdbsim_desc == NULL - which is correct (??? assuming of course one wishes to continue to - allow commands to be sent to unopened simulators, which isn't entirely - unreasonable). Simulators should be prepared to deal with any - combination of NULL or empty args. */ sim_do_command (gdbsim_desc, args); } |