summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/InitHeaderSearch.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-09-09 17:38:22 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-09-09 17:38:22 +0000
commit0166c95fddf2045c1fa31612d35329fc18d95b6f (patch)
treec5b3b37360c8d2b7d899d9d06da7833236ecda29 /clang/lib/Frontend/InitHeaderSearch.cpp
parent1cf2d54987f009dfb0f72384dea28579fef4a92c (diff)
downloadbcm5719-llvm-0166c95fddf2045c1fa31612d35329fc18d95b6f.tar.gz
bcm5719-llvm-0166c95fddf2045c1fa31612d35329fc18d95b6f.zip
Frontend: Add -cxx-system-include option which can be used to specify an
explicit list for the C++ system include directories at the -cc1 level, as an alternative to the horrible AddDefaultCPlusPlusIncludePaths(). llvm-svn: 113505
Diffstat (limited to 'clang/lib/Frontend/InitHeaderSearch.cpp')
-rw-r--r--clang/lib/Frontend/InitHeaderSearch.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/clang/lib/Frontend/InitHeaderSearch.cpp b/clang/lib/Frontend/InitHeaderSearch.cpp
index 139e244a6c4..88f663cae43 100644
--- a/clang/lib/Frontend/InitHeaderSearch.cpp
+++ b/clang/lib/Frontend/InitHeaderSearch.cpp
@@ -772,8 +772,13 @@ AddDefaultCPlusPlusIncludePaths(const llvm::Triple &triple) {
void InitHeaderSearch::AddDefaultSystemIncludePaths(const LangOptions &Lang,
const llvm::Triple &triple,
const HeaderSearchOptions &HSOpts) {
- if (Lang.CPlusPlus && HSOpts.UseStandardCXXIncludes)
- AddDefaultCPlusPlusIncludePaths(triple);
+ if (Lang.CPlusPlus && HSOpts.UseStandardCXXIncludes) {
+ if (!HSOpts.CXXSystemIncludes.empty()) {
+ for (unsigned i = 0, e = HSOpts.CXXSystemIncludes.size(); i != e; ++i)
+ AddPath(HSOpts.CXXSystemIncludes[i], System, true, false, false);
+ } else
+ AddDefaultCPlusPlusIncludePaths(triple);
+ }
AddDefaultCIncludePaths(triple, HSOpts);
OpenPOWER on IntegriCloud