[clang-tools-extra] [clang-tidy][readability-identifier-naming] Support namespace aliases (PR #112112)
Keith Smiley via cfe-commits
cfe-commits at lists.llvm.org
Sat Oct 12 17:05:49 PDT 2024
https://github.com/keith created https://github.com/llvm/llvm-project/pull/112112
Fixes: https://github.com/llvm/llvm-project/issues/109385
>From b74b4fec46c871c5981422a7779fdf39c215487c Mon Sep 17 00:00:00 2001
From: Keith Smiley <keithbsmiley at gmail.com>
Date: Sat, 12 Oct 2024 13:38:36 -0700
Subject: [PATCH] [clang-tidy][readability-identifier-naming] Support namespace
aliases
Fixes: https://github.com/llvm/llvm-project/issues/109385
---
.../clang-tidy/readability/IdentifierNamingCheck.cpp | 3 +++
.../clang-tidy/checkers/readability/identifier-naming.cpp | 4 ++++
2 files changed, 7 insertions(+)
diff --git a/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp b/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
index 828f13805a6980..3f63eec2c51a8c 100644
--- a/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
+++ b/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
@@ -1135,6 +1135,9 @@ StyleKind IdentifierNamingCheck::findStyleKind(
if (isa<TypeAliasDecl>(D) && NamingStyles[SK_TypeAlias])
return SK_TypeAlias;
+ if (isa<NamespaceAliasDecl>(D) && NamingStyles[SK_Namespace])
+ return SK_Namespace;
+
if (const auto *Decl = dyn_cast<NamespaceDecl>(D)) {
if (Decl->isAnonymousNamespace())
return SK_Invalid;
diff --git a/clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp b/clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
index 99149fe86aceec..be5ba54513c672 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
@@ -101,6 +101,10 @@ inline namespace InlineNamespace {
// CHECK-MESSAGES: :[[@LINE-1]]:18: warning: invalid case style for inline namespace 'InlineNamespace'
// CHECK-FIXES: {{^}}inline namespace inline_namespace {{{$}}
+namespace FOO_ALIAS = FOO_NS;
+// CHECK-MESSAGES: :[[@LINE-1]]:11: warning: invalid case style for namespace 'FOO_ALIAS' [readability-identifier-naming]
+// CHECK-FIXES: {{^}}namespace foo_alias = FOO_NS;{{$}}
+
SYSTEM_NS::structure g_s1;
// NO warnings or fixes expected as SYSTEM_NS and structure are declared in a header file
More information about the cfe-commits
mailing list