[clang] Add support for sysroot-relative system header search paths (PR #82084)

Saleem Abdulrasool via cfe-commits cfe-commits at lists.llvm.org
Tue Mar 19 07:28:10 PDT 2024


================
@@ -3191,6 +3191,22 @@ static bool ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args,
   bool IsIndexHeaderMap = false;
   bool IsSysrootSpecified =
       Args.hasArg(OPT__sysroot_EQ) || Args.hasArg(OPT_isysroot);
+
+  // Expand a leading `=` to the sysroot if one was passed (and it's not a
+  // framework flag).
+  auto PrefixHeaderPath = [IsSysrootSpecified,
+                           &Opts](const llvm::opt::Arg *A,
+                                  bool IsFramework = false) -> std::string {
+    assert(A->getNumValues() != 0 && "Unexpected empty search path flag!");
----------------
compnerd wrote:

I'd likely drop the `!= 0`.

https://github.com/llvm/llvm-project/pull/82084


More information about the cfe-commits mailing list