diff options
author | Daniel Dunbar <daniel@zuster.org> | 2013-01-30 00:19:24 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2013-01-30 00:19:24 +0000 |
commit | 9f2374565e3d4dacb00af85ec4b16ebc05dfb4a7 (patch) | |
tree | 47829254b03a1524355704ad767c908195cdc8a1 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 1b3815cbf483fa1cc5c5b6d7b567722b3c802bf6 (diff) | |
download | llvm-9f2374565e3d4dacb00af85ec4b16ebc05dfb4a7.zip llvm-9f2374565e3d4dacb00af85ec4b16ebc05dfb4a7.tar.gz llvm-9f2374565e3d4dacb00af85ec4b16ebc05dfb4a7.tar.bz2 |
[Frontend] Add an ExternCSystem include entry group.
- The only group where it makes sense for the "ExternC" bit is System, so this
simplifies having to have the extra isCXXAware (or ImplicitExternC, depending
on what code you talk to) bit caried around.
llvm-svn: 173859
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r-- | clang/lib/Frontend/CompilerInvocation.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp index b6a83b2..49f89d4 100644 --- a/clang/lib/Frontend/CompilerInvocation.cpp +++ b/clang/lib/Frontend/CompilerInvocation.cpp @@ -885,10 +885,13 @@ static void ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args) { for (arg_iterator I = Args.filtered_begin(OPT_internal_isystem, OPT_internal_externc_isystem), E = Args.filtered_end(); - I != E; ++I) - Opts.AddPath((*I)->getValue(), frontend::System, - false, /*IgnoreSysRoot=*/true, /*IsInternal=*/true, - (*I)->getOption().matches(OPT_internal_externc_isystem)); + I != E; ++I) { + frontend::IncludeDirGroup Group = frontend::System; + if ((*I)->getOption().matches(OPT_internal_externc_isystem)) + Group = frontend::ExternCSystem; + Opts.AddPath((*I)->getValue(), Group, false, /*IgnoreSysRoot=*/true, + /*IsInternal=*/true); + } // Add the path prefixes which are implicitly treated as being system headers. for (arg_iterator I = Args.filtered_begin(OPT_isystem_prefix, |