Wincent Colaiuta [off-list ref] writes:
Basically I would have proposed extracting out each type of whitespace
error into an inline function in ws.c, where it could be used by both
check_and_emit_line() in ws.c and apply_one_fragment() in builtin-
apply.c.
Unfortunately, mixing checking and emission phases makes this proposed
refactoring a little bit ugly.
The right refactoring would be what JBF hinted in his message, to record
and return a list of suspicious ranges from the checker function and
have the highlighter and the fixer make use of that list.
Such a refactoring is still possible but I think it is beyond the scope
of pre 1.5.4 clean-up.