The compiler messages are reasonable. It's inconvenient that errors are reported per function and not per line, but if you write short functions, and you should, the messages are just fine.
You're clearly exaggerating when stating that Erlang has "extremely poor" tools without giving any serious arguments.