bsd_kvm_corefile.clear ();
switch_to_no_thread ();
- exit_inferior_silent (current_inferior ());
+ exit_inferior (current_inferior ());
}
static LONGEST
{
switch_to_no_thread (); /* Avoid confusion from thread
stuff. */
- exit_inferior_silent (current_inferior ());
+ exit_inferior (current_inferior ());
/* Clear out solib state while the bfd is still open. See
comments in clear_solib in solib.c. */
gdb::observers::inferior_exit.notify (inf);
}
-/* If SILENT then be quiet -- don't announce a inferior exit, or the
- exit of its threads. */
+/* See inferior.h. */
-static void
-exit_inferior_1 (struct inferior *inf, int silent)
+void
+exit_inferior (struct inferior *inf)
{
inf->clear_thread_list ();
reinit_frame_cache ();
}
-void
-exit_inferior (inferior *inf)
-{
- exit_inferior_1 (inf, 0);
-}
-
-void
-exit_inferior_silent (inferior *inf)
-{
- exit_inferior_1 (inf, 1);
-}
-
/* See inferior.h. */
void
detach_inferior (inferior *inf)
{
- /* Save the pid, since exit_inferior_1 will reset it. */
+ /* Save the pid, since exit_inferior will reset it. */
int pid = inf->pid;
- exit_inferior_1 (inf, 0);
+ exit_inferior (inf);
if (print_inferior_events)
gdb_printf (_("[Inferior %d (%s) detached]\n"),
/* Delete an existing inferior list entry, due to inferior detaching. */
extern void detach_inferior (inferior *inf);
+/* Notify observers and interpreters that INF has gone away. Reset the INF
+ object back to an default, empty, state. Clear register and frame
+ caches. */
extern void exit_inferior (inferior *inf);
-extern void exit_inferior_silent (inferior *inf);
-
-extern void exit_inferior_num_silent (int num);
-
extern void inferior_appeared (struct inferior *inf, int pid);
/* Search function to lookup an inferior of TARG by target 'pid'. */
following_inferior = add_inferior_with_spaces ();
swap_terminal_info (following_inferior, execing_inferior);
- exit_inferior_silent (execing_inferior);
+ exit_inferior (execing_inferior);
following_inferior->pid = pid;
}
trace_dirname.reset ();
switch_to_no_thread (); /* Avoid confusion from thread stuff. */
- exit_inferior_silent (current_inferior ());
+ exit_inferior (current_inferior ());
trace_reset_local_state ();
}
gdb_assert (trace_fd != -1);
switch_to_no_thread (); /* Avoid confusion from thread stuff. */
- exit_inferior_silent (current_inferior ());
+ exit_inferior (current_inferior ());
::close (trace_fd);
trace_fd = -1;