https://github.com/void2012 updated 
https://github.com/llvm/llvm-project/pull/215352

>From c52a49dd7103ba0a87070ab79b862ceb89d5f711 Mon Sep 17 00:00:00 2001
From: void_17 <[email protected]>
Date: Tue, 11 Aug 2026 00:40:52 +0700
Subject: [PATCH 1/3] Ignore anonymous enums in `UseEnumClassCheck`

`UseEnumClassCheck::registerMatchers` didn't check for empty enum names, fix 
this
---
 .../clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp        | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git 
a/clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp 
b/clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
index 84720d10c233e..8ed64cbb9214e 100644
--- a/clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
+++ b/clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
@@ -28,8 +28,8 @@ void 
UseEnumClassCheck::storeOptions(ClangTidyOptions::OptionMap &Opts) {
 void UseEnumClassCheck::registerMatchers(MatchFinder *Finder) {
   const auto EnumDecl =
       IgnoreUnscopedEnumsInClasses
-          ? enumDecl(unless(isScoped()), unless(hasParent(recordDecl())))
-          : enumDecl(unless(isScoped()));
+          ? enumDecl(unless(isScoped()), unless(hasName("")), 
unless(hasParent(recordDecl())))
+          : enumDecl(unless(isScoped()), unless(hasName("")));
   Finder->addMatcher(EnumDecl.bind("unscoped_enum"), this);
 }
 

>From dcd92724588e61a7713bac40e039f61606615ef0 Mon Sep 17 00:00:00 2001
From: void_17 <[email protected]>
Date: Tue, 11 Aug 2026 00:48:59 +0700
Subject: [PATCH 2/3] Add anonymous enum test to
 `cppcoreguidelines/use-enum-class.cpp`

---
 .../clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp    | 2 ++
 1 file changed, 2 insertions(+)

diff --git 
a/clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
 
b/clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
index f53d787f80efa..033865a7ac830 100644
--- 
a/clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
+++ 
b/clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
@@ -60,3 +60,5 @@ enum ForwardE : int;
 enum class ForwardEC : int;
 
 enum struct ForwardES : int;
+
+enum { A };

>From da263493562fa7fe6879cc32d24e827410e09bd6 Mon Sep 17 00:00:00 2001
From: void_17 <[email protected]>
Date: Tue, 11 Aug 2026 00:53:56 +0700
Subject: [PATCH 3/3] Fix formatting

---
 .../clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp    | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git 
a/clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp 
b/clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
index 84720d10c233e..9d3915e509ec8 100644
--- a/clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
+++ b/clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
@@ -26,10 +26,10 @@ void 
UseEnumClassCheck::storeOptions(ClangTidyOptions::OptionMap &Opts) {
 }
 
 void UseEnumClassCheck::registerMatchers(MatchFinder *Finder) {
-  const auto EnumDecl =
-      IgnoreUnscopedEnumsInClasses
-          ? enumDecl(unless(isScoped()), unless(hasParent(recordDecl())))
-          : enumDecl(unless(isScoped()));
+  const auto EnumDecl = IgnoreUnscopedEnumsInClasses
+                            ? enumDecl(unless(isScoped()), unless(hasName("")),
+                                       unless(hasParent(recordDecl())))
+                            : enumDecl(unless(isScoped()), 
unless(hasName("")));
   Finder->addMatcher(EnumDecl.bind("unscoped_enum"), this);
 }
 

_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to