diff --git a/clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h b/clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h --- a/clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h +++ b/clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h @@ -11,7 +11,8 @@ #include "../ClangTidyCheck.h" -#include +#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 MatchedTemplateLocations; + llvm::DenseSet MatchedTemplateLocations; }; } // namespace abseil diff --git a/clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp b/clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp --- a/clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp +++ b/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 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(