r300667 added support for editor placeholder to Clang. That commit didn’t take into account that users who use Clang for preprocessing only (-E) will get the “editor placeholder in source file” error when preprocessing their source (PR33394).
This commit ensures that Clang doesn't lex editor placeholders when running a preprocessor only action. It also ensures that tokens like <#> and <##> won't form valid placeholders.
rdar://32718000