[PATCH] D75220: [clang-tidy] RenamerClangTidy now correctly renames decls

2020-02-26 Thread Nathan James via Phabricator via cfe-commits
njames93 created this revision.
njames93 added reviewers: aaron.ballman, gribozavr2, JonasToth, hokein, alexfh.
Herald added subscribers: cfe-commits, xazax.hun.
Herald added a project: clang.
njames93 updated this revision to Diff 246853.
njames93 added a comment.

- Remove unnecessary include


Fixes readability-identifier-naming doesn't rename using namespace correctly. 



Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D75220

Files:
  clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
  clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp


Index: 
clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
===
--- clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
@@ -527,3 +527,8 @@
 // CHECK-FIXES: {{^}}int * const lc_PointerB = nullptr;{{$}}
 }
 
+using namespace FOO_NS;
+// CHECK-FIXES: {{^}}using namespace foo_ns;
+
+using namespace FOO_NS::InlineNamespace;
+// CHECK-FIXES: {{^}}using namespace foo_ns::inline_namespace;
Index: clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
===
--- clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
+++ clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
@@ -272,6 +272,13 @@
   }
 
   if (const auto *Decl = Result.Nodes.getNodeAs("decl")) {
+
+// fix using namespace decls
+if (const auto *UsingNS = dyn_cast(Decl)) {
+  addUsage(NamingCheckFailures, UsingNS->getNominatedNamespaceAsWritten(),
+   UsingNS->getIdentLocation());
+}
+
 if (!Decl->getIdentifier() || Decl->getName().empty() || 
Decl->isImplicit())
   return;
 


Index: clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
===
--- clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
@@ -527,3 +527,8 @@
 // CHECK-FIXES: {{^}}int * const lc_PointerB = nullptr;{{$}}
 }
 
+using namespace FOO_NS;
+// CHECK-FIXES: {{^}}using namespace foo_ns;
+
+using namespace FOO_NS::InlineNamespace;
+// CHECK-FIXES: {{^}}using namespace foo_ns::inline_namespace;
Index: clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
===
--- clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
+++ clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
@@ -272,6 +272,13 @@
   }
 
   if (const auto *Decl = Result.Nodes.getNodeAs("decl")) {
+
+// fix using namespace decls
+if (const auto *UsingNS = dyn_cast(Decl)) {
+  addUsage(NamingCheckFailures, UsingNS->getNominatedNamespaceAsWritten(),
+   UsingNS->getIdentLocation());
+}
+
 if (!Decl->getIdentifier() || Decl->getName().empty() || Decl->isImplicit())
   return;
 
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[PATCH] D75220: [clang-tidy] RenamerClangTidy now correctly renames decls

2020-02-26 Thread Nathan James via Phabricator via cfe-commits
njames93 updated this revision to Diff 246853.
njames93 added a comment.

- Remove unnecessary include


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D75220/new/

https://reviews.llvm.org/D75220

Files:
  clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
  clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp


Index: 
clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
===
--- clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
@@ -527,3 +527,8 @@
 // CHECK-FIXES: {{^}}int * const lc_PointerB = nullptr;{{$}}
 }
 
+using namespace FOO_NS;
+// CHECK-FIXES: {{^}}using namespace foo_ns;
+
+using namespace FOO_NS::InlineNamespace;
+// CHECK-FIXES: {{^}}using namespace foo_ns::inline_namespace;
Index: clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
===
--- clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
+++ clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
@@ -272,6 +272,13 @@
   }
 
   if (const auto *Decl = Result.Nodes.getNodeAs("decl")) {
+
+// fix using namespace decls
+if (const auto *UsingNS = dyn_cast(Decl)) {
+  addUsage(NamingCheckFailures, UsingNS->getNominatedNamespaceAsWritten(),
+   UsingNS->getIdentLocation());
+}
+
 if (!Decl->getIdentifier() || Decl->getName().empty() || 
Decl->isImplicit())
   return;
 


Index: clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
===
--- clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
+++ clang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming.cpp
@@ -527,3 +527,8 @@
 // CHECK-FIXES: {{^}}int * const lc_PointerB = nullptr;{{$}}
 }
 
+using namespace FOO_NS;
+// CHECK-FIXES: {{^}}using namespace foo_ns;
+
+using namespace FOO_NS::InlineNamespace;
+// CHECK-FIXES: {{^}}using namespace foo_ns::inline_namespace;
Index: clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
===
--- clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
+++ clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
@@ -272,6 +272,13 @@
   }
 
   if (const auto *Decl = Result.Nodes.getNodeAs("decl")) {
+
+// fix using namespace decls
+if (const auto *UsingNS = dyn_cast(Decl)) {
+  addUsage(NamingCheckFailures, UsingNS->getNominatedNamespaceAsWritten(),
+   UsingNS->getIdentLocation());
+}
+
 if (!Decl->getIdentifier() || Decl->getName().empty() || Decl->isImplicit())
   return;
 
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits