Author: Carlos Galvez
Date: 2022-12-12T14:05:19Z
New Revision: d3c3de63ce8416ab2dee7f784e54b00a2aa8ed85

URL: 
https://github.com/llvm/llvm-project/commit/d3c3de63ce8416ab2dee7f784e54b00a2aa8ed85
DIFF: 
https://github.com/llvm/llvm-project/commit/d3c3de63ce8416ab2dee7f784e54b00a2aa8ed85.diff

LOG: [clang-tidy][NFC] Simply match processing in misc-use-anonymous-namespace

No need for the templated function "processMatch", since
we can infer the type with llvm:isa.

Added: 
    

Modified: 
    clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
    clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h

Removed: 
    


################################################################################
diff  --git a/clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp 
b/clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
index 878cba31eb2ab..fdf7828c8c0fd 100644
--- a/clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
+++ b/clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
@@ -31,33 +31,26 @@ AST_MATCHER(Decl, isInAnonymousNamespace) {
 }
 } // namespace
 
-template <typename T>
-void UseAnonymousNamespaceCheck::processMatch(const T *MatchedDecl) {
-  StringRef Type = llvm::isa<VarDecl>(MatchedDecl) ? "variable" : "function";
-  diag(MatchedDecl->getLocation(),
-       "%0 %1 declared 'static', move to anonymous namespace instead")
-      << Type << MatchedDecl;
-}
-
 void UseAnonymousNamespaceCheck::registerMatchers(MatchFinder *Finder) {
   Finder->addMatcher(
       functionDecl(isStatic(),
                    unless(anyOf(isInAnonymousNamespace(), isMemberFunction())))
-          .bind("func"),
+          .bind("x"),
       this);
   Finder->addMatcher(
       varDecl(isStatic(), unless(anyOf(isInAnonymousNamespace(),
                                        isStaticLocal(), isStaticDataMember())))
-          .bind("var"),
+          .bind("x"),
       this);
 }
 
 void UseAnonymousNamespaceCheck::check(const MatchFinder::MatchResult &Result) 
{
-  if (const auto *MatchedDecl = Result.Nodes.getNodeAs<FunctionDecl>("func"))
-    processMatch(MatchedDecl);
-
-  if (const auto *MatchedDecl = Result.Nodes.getNodeAs<VarDecl>("var"))
-    processMatch(MatchedDecl);
+  if (const auto *MatchedDecl = Result.Nodes.getNodeAs<NamedDecl>("x")) {
+    StringRef Type = llvm::isa<VarDecl>(MatchedDecl) ? "variable" : "function";
+    diag(MatchedDecl->getLocation(),
+         "%0 %1 declared 'static', move to anonymous namespace instead")
+        << Type << MatchedDecl;
+  }
 }
 
 } // namespace misc

diff  --git a/clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h 
b/clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h
index 59c48029711e0..19d76bfc19f63 100644
--- a/clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h
+++ b/clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h
@@ -29,9 +29,6 @@ class UseAnonymousNamespaceCheck : public ClangTidyCheck {
   }
   void registerMatchers(ast_matchers::MatchFinder *Finder) override;
   void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
-
-private:
-  template <typename T> void processMatch(const T *MatchedDecl);
 };
 
 } // namespace misc


        
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to