For Microsoft compatibility, set fno_operator_names
authorErich Keane <erich.keane@intel.com>
Wed, 24 May 2017 19:31:19 +0000 (19:31 +0000)
committerErich Keane <erich.keane@intel.com>
Wed, 24 May 2017 19:31:19 +0000 (19:31 +0000)
commit25411b768457435c0841735f98ba8418dd0006d9
treebca78561d72dca9af5e2c0aa728af9b245890ff1
parentf04c04837c88068345f5141ebe6720ce3ae3d559
For Microsoft compatibility, set fno_operator_names

There's a Microsoft header in the Windows SDK which won't
compile with clang because it uses an operator name (and)
as a field name. This patch allows that file to compile by
setting the option which disables operator names.
The header which doesn't compile <Query.h> C:/Program Files (x86)/
Windows Kits/10/include/10.0.14393.0/um\Query.h:259:40:
error: expected member name or ';' after declaration specifiers

  /* [case()] */ NODERESTRICTION or;
                   ~~~~~~~~~~~~~~~ ^

                   1 error generated.

Contributed for Melanie Blower

Differential Revision:https://reviews.llvm.org/D33505

llvm-svn: 303798
clang/lib/Frontend/CompilerInvocation.cpp
clang/test/Parser/MicrosoftExtensions.cpp
clang/test/Preprocessor/cxx_oper_keyword.cpp