This is tricky. We are not sure if the message we received is really from a process we spawned for compilation. It may as well have been in the queue. I think the best way to handle this is by handling the exit message exactly when we are sure the child process is done with an explicit pid, which would be at the end of [this](https://github.com/alco/elixir/blob/7fbcb487e725d79beab68a0f3ed4968f6dad9e77/lib/elixir/lib/kernel/parallel_compiler.ex#L90) and [this](https://github.com/alco/elixir/blob/7fbcb487e725d79beab68a0f3ed4968f6dad9e77/lib/elixir/lib/kernel/parallel_compiler.ex#L104) clause.