>
Here's a simpler test case:
-module(bloop2).
-compile(export_all).
start() ->
gen_server:start(?MODULE, [], []).
init([]) ->
exit(self(), burlap).
The cause seems to be that proc_lib:sync_wait/2 expects to receive an
EXIT message if Pid exits, but proc_lib:start* is often called from
contexts where the trap_exit flag is unset (e.g., gen_server).