This uses the suggestion from #442 (comment 1038341) to still have position information for
null specifications as report object. It does lead to a change in
toString overloads and a more complicated implementation of
toString(Specification spec) than in #442 (comment 1038279). Let me know whether you prefer this implementation or the simpler one.
Also let me know what you think of the result for users, as visible in the changed test output.
Closes #442 (closed)