It is very difficult to exploit next-error-function
to find all errors, because it is implemented in very imperative fashion.
I have started a tiny project called complation-highlight-el
that enables us to see more than one error at the same time.
https://github.com/m2ym/compilation-highlight-el
Still experimental stage, feel free to submit issues.