miyuki created this revision. miyuki added reviewers: aprantl, dexonsmith, EricWF. Herald added a subscriber: xazax.hun. miyuki requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits.
This change replaces `unordered_set<unsigned>` (which used to store internal representation of `SourceLocation`-s) with `DenseSet<SourceLocation>` (which stores `SourceLocation`-s directly). Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D94601 Files: clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h Index: clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h =================================================================== --- clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h +++ clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h @@ -11,7 +11,8 @@ #include "../ClangTidyCheck.h" -#include <unordered_set> +#include "clang/Basic/SourceLocation.h" +#include "llvm/ADT/DenseSet.h" namespace clang { namespace tidy { @@ -32,7 +33,7 @@ void check(const ast_matchers::MatchFinder::MatchResult &Result) override; private: - std::unordered_set<unsigned> MatchedTemplateLocations; + llvm::DenseSet<SourceLocation> MatchedTemplateLocations; }; } // namespace abseil Index: clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp =================================================================== --- clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp +++ clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp @@ -128,7 +128,7 @@ if (!match(isInTemplateInstantiation(), *OuterExpr, *Result.Context) .empty()) { - if (MatchedTemplateLocations.count(Loc.getRawEncoding()) == 0) { + if (MatchedTemplateLocations.count(Loc) == 0) { // For each location matched in a template instantiation, we check if the // location can also be found in `MatchedTemplateLocations`. If it is not // found, that means the expression did not create a match without the @@ -144,7 +144,7 @@ internal::Matcher<Stmt> IsInsideTemplate = hasAncestor(decl(anyOf(classTemplateDecl(), functionTemplateDecl()))); if (!match(IsInsideTemplate, *ArgExpr, *Result.Context).empty()) - MatchedTemplateLocations.insert(Loc.getRawEncoding()); + MatchedTemplateLocations.insert(Loc); DiagnosticBuilder Diag = diag(Loc, Message); CharSourceRange SourceRange = Lexer::makeFileCharRange(
Index: clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h =================================================================== --- clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h +++ clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h @@ -11,7 +11,8 @@ #include "../ClangTidyCheck.h" -#include <unordered_set> +#include "clang/Basic/SourceLocation.h" +#include "llvm/ADT/DenseSet.h" namespace clang { namespace tidy { @@ -32,7 +33,7 @@ void check(const ast_matchers::MatchFinder::MatchResult &Result) override; private: - std::unordered_set<unsigned> MatchedTemplateLocations; + llvm::DenseSet<SourceLocation> MatchedTemplateLocations; }; } // namespace abseil Index: clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp =================================================================== --- clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp +++ clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp @@ -128,7 +128,7 @@ if (!match(isInTemplateInstantiation(), *OuterExpr, *Result.Context) .empty()) { - if (MatchedTemplateLocations.count(Loc.getRawEncoding()) == 0) { + if (MatchedTemplateLocations.count(Loc) == 0) { // For each location matched in a template instantiation, we check if the // location can also be found in `MatchedTemplateLocations`. If it is not // found, that means the expression did not create a match without the @@ -144,7 +144,7 @@ internal::Matcher<Stmt> IsInsideTemplate = hasAncestor(decl(anyOf(classTemplateDecl(), functionTemplateDecl()))); if (!match(IsInsideTemplate, *ArgExpr, *Result.Context).empty()) - MatchedTemplateLocations.insert(Loc.getRawEncoding()); + MatchedTemplateLocations.insert(Loc); DiagnosticBuilder Diag = diag(Loc, Message); CharSourceRange SourceRange = Lexer::makeFileCharRange(
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits