Can it possibly read through the whole file and print all errors at once?
It can certainly do a much better job. I can probably make it scan the whole file and print at least the first error on each line. Making it do more than that might cause me to learn way more about optparser than I care to know, but let's see what happens.
Try the next build and see if it's more to your liking.
Looks better.