I'm not sure whether a debatable, slight improvement in diagnostics is worth compromising the internal structure of the frontend.

(Debatable, as unfortunately still quite often only the first error message is reliable, especially when compiling multiple modules at once. If anything, we should try to make error handling _more_ methodical at this point, even if some special (test) cases possibly suffer a slight reduction in diagnostics quality.)