aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--clang/lib/Frontend/CompilerInvocation.cpp30
1 files changed, 6 insertions, 24 deletions
diff --git a/clang/lib/Frontend/CompilerInvocation.cpp b/clang/lib/Frontend/CompilerInvocation.cpp
index d8261e12..b5fd35a 100644
--- a/clang/lib/Frontend/CompilerInvocation.cpp
+++ b/clang/lib/Frontend/CompilerInvocation.cpp
@@ -3190,15 +3190,10 @@ static void GenerateHeaderSearchArgs(const HeaderSearchOptions &Opts,
auto It = Opts.UserEntries.begin();
auto End = Opts.UserEntries.end();
- // Add -I..., -F..., and -index-header-map options in order.
- for (; It < End && Matches(*It, {frontend::IndexHeaderMap, frontend::Angled},
- std::nullopt, true);
+ // Add -I... and -F... options in order.
+ for (; It < End && Matches(*It, {frontend::Angled}, std::nullopt, true);
++It) {
OptSpecifier Opt = [It, Matches]() {
- if (Matches(*It, frontend::IndexHeaderMap, true, true))
- return OPT_F;
- if (Matches(*It, frontend::IndexHeaderMap, false, true))
- return OPT_I;
if (Matches(*It, frontend::Angled, true, true))
return OPT_F;
if (Matches(*It, frontend::Angled, false, true))
@@ -3206,8 +3201,6 @@ static void GenerateHeaderSearchArgs(const HeaderSearchOptions &Opts,
llvm_unreachable("Unexpected HeaderSearchOptions::Entry.");
}();
- if (It->Group == frontend::IndexHeaderMap)
- GenerateArg(Consumer, OPT_index_header_map);
GenerateArg(Consumer, Opt, It->Path);
};
@@ -3319,8 +3312,7 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args,
llvm::CachedHashString(MacroDef.split('=').first));
}
- // Add -I..., -F..., and -index-header-map options in order.
- bool IsIndexHeaderMap = false;
+ // Add -I... and -F... options in order.
bool IsSysrootSpecified =
Args.hasArg(OPT__sysroot_EQ) || Args.hasArg(OPT_isysroot);
@@ -3339,20 +3331,10 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args,
return A->getValue();
};
- for (const auto *A : Args.filtered(OPT_I, OPT_F, OPT_index_header_map)) {
- if (A->getOption().matches(OPT_index_header_map)) {
- // -index-header-map applies to the next -I or -F.
- IsIndexHeaderMap = true;
- continue;
- }
-
- frontend::IncludeDirGroup Group =
- IsIndexHeaderMap ? frontend::IndexHeaderMap : frontend::Angled;
-
+ for (const auto *A : Args.filtered(OPT_I, OPT_F)) {
bool IsFramework = A->getOption().matches(OPT_F);
- Opts.AddPath(PrefixHeaderPath(A, IsFramework), Group, IsFramework,
- /*IgnoreSysroot*/ true);
- IsIndexHeaderMap = false;
+ Opts.AddPath(PrefixHeaderPath(A, IsFramework), frontend::Angled,
+ IsFramework, /*IgnoreSysroot=*/true);
}
// Add -iprefix/-iwithprefix/-iwithprefixbefore options.