hokein created this revision. hokein added a reviewer: kadircet. Herald added subscribers: PiotrZSL, carlosgalvezp, xazax.hun. Herald added a reviewer: njames93. Herald added a project: All. hokein requested review of this revision. Herald added a subscriber: ilya-biryukov. Herald added a project: clang-tools-extra.
To keep the message short and consistent with clangd, and the diagnostics are attached to the #include line, users have enough context to understand the whole #include. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D154434 Files: clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp Index: clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp =================================================================== --- clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp +++ clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp @@ -2,11 +2,11 @@ #include "bar.h" // CHECK-FIXES: {{^}}#include "baz.h"{{$}} #include "foo.h" -// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: included header "foo.h" is not used directly [misc-include-cleaner] +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: included header foo.h is not used directly [misc-include-cleaner] // CHECK-FIXES: {{^}} // CHECK-FIXES: {{^}}#include <string>{{$}} #include <vector.h> -// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: included header <vector.h> is not used directly [misc-include-cleaner] +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: included header vector.h is not used directly [misc-include-cleaner] // CHECK-FIXES: {{^}} int BarResult = bar(); int BazResult = baz(); Index: clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp =================================================================== --- clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp +++ clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp @@ -34,6 +34,7 @@ #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/ErrorHandling.h" +#include "llvm/Support/Path.h" #include "llvm/Support/Regex.h" #include <optional> #include <string> @@ -171,7 +172,8 @@ for (const auto *Inc : Unused) { diag(Inc->HashLocation, "included header %0 is not used directly") - << Inc->quote() + << llvm::sys::path::filename(Inc->Spelled, + llvm::sys::path::Style::posix) << FixItHint::CreateRemoval(CharSourceRange::getCharRange( SM->translateLineCol(SM->getMainFileID(), Inc->Line, 1), SM->translateLineCol(SM->getMainFileID(), Inc->Line + 1, 1)));
Index: clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp =================================================================== --- clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp +++ clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp @@ -2,11 +2,11 @@ #include "bar.h" // CHECK-FIXES: {{^}}#include "baz.h"{{$}} #include "foo.h" -// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: included header "foo.h" is not used directly [misc-include-cleaner] +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: included header foo.h is not used directly [misc-include-cleaner] // CHECK-FIXES: {{^}} // CHECK-FIXES: {{^}}#include <string>{{$}} #include <vector.h> -// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: included header <vector.h> is not used directly [misc-include-cleaner] +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: included header vector.h is not used directly [misc-include-cleaner] // CHECK-FIXES: {{^}} int BarResult = bar(); int BazResult = baz(); Index: clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp =================================================================== --- clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp +++ clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp @@ -34,6 +34,7 @@ #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/ErrorHandling.h" +#include "llvm/Support/Path.h" #include "llvm/Support/Regex.h" #include <optional> #include <string> @@ -171,7 +172,8 @@ for (const auto *Inc : Unused) { diag(Inc->HashLocation, "included header %0 is not used directly") - << Inc->quote() + << llvm::sys::path::filename(Inc->Spelled, + llvm::sys::path::Style::posix) << FixItHint::CreateRemoval(CharSourceRange::getCharRange( SM->translateLineCol(SM->getMainFileID(), Inc->Line, 1), SM->translateLineCol(SM->getMainFileID(), Inc->Line + 1, 1)));
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits