[fix] replicate node core behavior and throw an error if the user does not add their own error listener