http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57714
--- Comment #17 from David Krauss <potswa at mac dot com> --- Yes, my preprocessor classifies the backslash-after-preprocessing as a whitespace token. I simply don't intend to make textual preprocessing output. With raw strings, UCNs, and user-defined literals, there's just no way a user would handle it all properly. GCC avoids inserting whitespace except where "necessary," where a token boundary would be invisible, but tokenizing has gotten harder than it was. My preprocessor doesn't bother with any artificial whitespace. Pretty mode is for user display only, and robust processing needs out-of-band non-text data.