[clang-tools-extra] [IncludeCleaner] display overview (PR #93932)

via cfe-commits cfe-commits at lists.llvm.org
Fri Apr 24 04:28:15 PDT 2026


https://github.com/TheHillBright updated https://github.com/llvm/llvm-project/pull/93932

>From 5b080aefb94f9b09d403ee8e33db5b4ae3799d21 Mon Sep 17 00:00:00 2001
From: TheHillBright <150074496+TheHillBright at users.noreply.github.com>
Date: Thu, 23 Apr 2026 10:28:30 +0000
Subject: [PATCH 1/4] IncludeCleaner: now the overview is displayed

---
 clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp b/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
index fefbfc3a9614d..715ebd4ff1a69 100644
--- a/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
+++ b/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
@@ -359,8 +359,8 @@ int main(int argc, const char **argv) {
   using namespace clang::include_cleaner;
 
   llvm::sys::PrintStackTraceOnErrorSignal(argv[0]);
-  auto OptionsParser =
-      clang::tooling::CommonOptionsParser::create(argc, argv, IncludeCleaner);
+  auto OptionsParser = clang::tooling::CommonOptionsParser::create(
+    argc, argv, IncludeCleaner, cl::OneOrMore, Overview);
   if (!OptionsParser) {
     llvm::errs() << toString(OptionsParser.takeError());
     return 1;

>From 28b1f74f1de37003903c3ca0d2aa3a535cdefa2b Mon Sep 17 00:00:00 2001
From: TheHillBright <150074496+TheHillBright at users.noreply.github.com>
Date: Fri, 24 Apr 2026 17:52:03 +0800
Subject: [PATCH 2/4] fix formatting

---
 clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp b/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
index 715ebd4ff1a69..ac51b9d832f6e 100644
--- a/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
+++ b/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
@@ -360,7 +360,7 @@ int main(int argc, const char **argv) {
 
   llvm::sys::PrintStackTraceOnErrorSignal(argv[0]);
   auto OptionsParser = clang::tooling::CommonOptionsParser::create(
-    argc, argv, IncludeCleaner, cl::OneOrMore, Overview);
+      argc, argv, IncludeCleaner, cl::OneOrMore, Overview);
   if (!OptionsParser) {
     llvm::errs() << toString(OptionsParser.takeError());
     return 1;

>From 29df645f740df736281ea3687608e3a98c50b1c4 Mon Sep 17 00:00:00 2001
From: TheHillBright <150074496+TheHillBright at users.noreply.github.com>
Date: Fri, 24 Apr 2026 18:12:17 +0800
Subject: [PATCH 3/4] fix type error

---
 clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp b/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
index ac51b9d832f6e..8c94bbe2db57d 100644
--- a/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
+++ b/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
@@ -34,7 +34,7 @@ namespace include_cleaner {
 namespace {
 namespace cl = llvm::cl;
 
-llvm::StringRef Overview = llvm::StringLiteral(R"(
+constexpr char* const Overview = R"(
 clang-include-cleaner analyzes the #include directives in source code.
 
 It suggests removing headers that the code is not using.
@@ -45,8 +45,7 @@ easier to reason about and modify.
 The tool operates on *working* source code. This means it can suggest including
 headers that are only indirectly included, but cannot suggest those that are
 missing entirely. (clang-include-fixer can do this).
-)")
-                               .trim();
+)");
 
 cl::OptionCategory IncludeCleaner("clang-include-cleaner");
 

>From e4b8453395c61134a05ef9749c9bd6a28396a133 Mon Sep 17 00:00:00 2001
From: TheHillBright <150074496+TheHillBright at users.noreply.github.com>
Date: Fri, 24 Apr 2026 19:28:05 +0800
Subject: [PATCH 4/4] fix typo...

---
 clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp b/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
index 8c94bbe2db57d..ad2ae6cdb7f38 100644
--- a/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
+++ b/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
@@ -45,7 +45,7 @@ easier to reason about and modify.
 The tool operates on *working* source code. This means it can suggest including
 headers that are only indirectly included, but cannot suggest those that are
 missing entirely. (clang-include-fixer can do this).
-)");
+)";
 
 cl::OptionCategory IncludeCleaner("clang-include-cleaner");
 



More information about the cfe-commits mailing list