Previously this returned a TARGET_WAITKIND_SIGNALLED event for
inferior_ptid.  However, inferior_ptid is invalid during ::wait()
methods after the multi-target changes, so this was triggering an
assertion further up the stack.
                              _("Child process unexpectedly missing: %s.\n"),
                              safe_strerror (save_errno));
 
-         /* Claim it exited with unknown signal.  */
-         ourstatus->set_signalled (GDB_SIGNAL_UNKNOWN);
-         return inferior_ptid;
+         ourstatus->set_ignore ();
+         return minus_one_ptid;
        }
 
       /* Ignore terminated detached child processes.  */