[PATCH] D34256: [PR33394] Avoid lexing editor placeholders when running the preprocessor only

Alex Lorenz via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jun 15 16:06:28 PDT 2017


arphaman created this revision.

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


Repository:
  rL LLVM

https://reviews.llvm.org/D34256

Files:
  include/clang/Lex/PreprocessorOptions.h
  lib/Frontend/CompilerInvocation.cpp
  lib/Lex/Lexer.cpp
  test/Frontend/pp-only-no-editor-placeholders.c
  test/Parser/editor-placeholder-recovery.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D34256.102740.patch
Type: text/x-patch
Size: 7357 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170615/5695ac9c/attachment.bin>


More information about the cfe-commits mailing list