gdb: Fix build on several hosts/ports

Commit 00431a78b2 ("Use thread_info and inferior pointers more
throughout") missed updating some callers, like e.g.,:

 gdb/remote-sim.c: In member function 'virtual void gdbsim_target::mourn_inferior()':
 gdb/remote-sim.c:1198:50: error: cannot convert 'ptid_t' to 'thread_info*' for argument '1' to 'void delete_thread_silent(thread_info*)'
   delete_thread_silent (sim_data->remote_sim_ptid);

 gdb/mygit/src/gdb/procfs.c: In member function ‘virtual void procfs_target::detach(inferior*, int)’:
 gdb/mygit/src/gdb/procfs.c:1931:23: error: invalid conversion from ‘int’ to ‘inferior*’ [-fpermissive]
    detach_inferior (pid);
			 ^
 In file included from gdb/mygit/src/gdb/procfs.c:24:0:
 gdb/mygit/src/gdb/inferior.h:476:13: note:   initializing argument 1 of ‘void detach_inferior(inferior*)’

 etc.

This fixes it.

The delete_thread_silent calls in both go32-nat.c and remote-sim.c are
unnecessary because generic_mourn_inferior calls exit_inferior, which
deletes the inferior's threads.

gdb/ChangeLog:
2018-06-25  Pedro Alves  <palves@redhat.com>

	* windows-nat.c (windows_delete_thread): Use find_thread_ptid and
	pass thread_info pointer to delete_thread.
	(windows_nat_target::detach): Pass inferior pointer to
	detach_inferior.
	* aix-thread.c (sync_threadlists): Pass thread_info pointer to
	delete_thread.
	* bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
	* darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
	and pass a thread_info pointer to delete_thread.
	* fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
	pass thread_info pointer to delete_thread.
	* go32-nat.c (go32_nat_target::mourn_inferior): Remove
	delete_thread_silent call.
	* procfs.c (procfs_target::detach): Pass inferior pointer to
	detach_inferior.
	(procfs_target::wait): Pass thread_info pointer to delete_thread.
	* remote-sim.c (gdbsim_target::mourn_inferior): Remove
	delete_thread_silent call.
	* windows-nat.c (windows_delete_thread): Use find_thread_ptid and
	pass thread_info pointer to delete_thread.
	(windows_nat_target::detach): Pass inferior pointer to
	delete_inferior.
This commit is contained in:
Pedro Alves
2018-06-25 17:42:22 +01:00
parent 1021d1cb12
commit b7a08269ca
9 changed files with 39 additions and 13 deletions

View File

@@ -1274,7 +1274,8 @@ fbsd_nat_target::wait (ptid_t ptid, struct target_waitstatus *ourstatus,
threads might be skipped during post_attach that
have not yet reported their PL_FLAG_EXITED event.
Ignore EXITED events for an unknown LWP. */
if (in_thread_list (wptid))
thread_info *thr = find_thread_ptid (wptid);
if (thr != nullptr)
{
if (debug_fbsd_lwp)
fprintf_unfiltered (gdb_stdlog,
@@ -1283,7 +1284,7 @@ fbsd_nat_target::wait (ptid_t ptid, struct target_waitstatus *ourstatus,
if (print_thread_events)
printf_unfiltered (_("[%s exited]\n"), target_pid_to_str
(wptid));
delete_thread (wptid);
delete_thread (thr);
}
if (ptrace (PT_CONTINUE, pid, (caddr_t) 1, 0) == -1)
perror_with_name (("ptrace"));