[clang-tools-extra] [clangd][modules] Remove the options when driver detects that it was unsupported, and log them (PR #200001)

Aleksandr Platonov via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 5 06:21:54 PDT 2026


================
@@ -273,6 +273,18 @@ void CommandMangler::operator()(tooling::CompileCommand &Command,
       SawInput(Cmd[I]);
     Cmd.resize(DashDashIndex);
   }
+
+  std::string UnsupportedArguments;
+  for (auto *UnknownArg : ArgList.filtered(options::OPT_UNKNOWN)) {
+    unsigned Index = UnknownArg->getIndex();
+    UnsupportedArguments += OriginalArgs[Index + 1];
+    UnsupportedArguments += ", ";
+    IndicesToDrop.push_back(Index);
+  }
+  if (UnsupportedArguments.length() != 0) {
+    UnsupportedArguments.pop_back();
+    UnsupportedArguments.pop_back();
+  }
----------------
ArcsinX wrote:

I think you can use llvm::join() here.
I mean you can collect array of unknown argument values and after that just use llvm::join() at printing.


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


More information about the cfe-commits mailing list