Howard Hinnant wrote:
If end-of-line white space is stripped in phase 1, do_thing2() is called. If end-of-line white space is not stripped, do_thing1() is called.
SO this is truly appallingly bad code, given its behavior depends so radically on an implementation defined feature! Probably this shows that some warnings are needed in this situation at the very least.