aboutsummaryrefslogtreecommitdiff
path: root/clang-tidy/fuchsia
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2018-02-18 19:02:35 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2018-02-18 19:02:35 +0000
commit38d22d28f5dfa72c65f9dd494e23d26d4cc08951 (patch)
tree0ca8bf84adb1326ba9aeada934b8915659e297a5 /clang-tidy/fuchsia
parentc2a4d693ab80b41ee7056be38043beb3c24f3978 (diff)
[tidy] Move private ast matchers into anonymous namespaces to avoid ODR conflicts.
No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@325467 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'clang-tidy/fuchsia')
-rw-r--r--clang-tidy/fuchsia/MultipleInheritanceCheck.cpp4
-rw-r--r--clang-tidy/fuchsia/OverloadedOperatorCheck.cpp2
-rw-r--r--clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp6
-rw-r--r--clang-tidy/fuchsia/TrailingReturnCheck.cpp10
-rw-r--r--clang-tidy/fuchsia/VirtualInheritanceCheck.cpp2
5 files changed, 15 insertions, 9 deletions
diff --git a/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp b/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
index 4893b215..d4624d01 100644
--- a/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
+++ b/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
@@ -17,12 +17,14 @@ using namespace clang::ast_matchers;
namespace clang {
namespace tidy {
namespace fuchsia {
-
+
+namespace {
AST_MATCHER(CXXRecordDecl, hasBases) {
if (Node.hasDefinition())
return Node.getNumBases() > 0;
return false;
}
+} // namespace
// Adds a node (by name) to the interface map, if it was not present in the map
// previously.
diff --git a/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp b/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp
index bf0a5069..847f7635 100644
--- a/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp
+++ b/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp
@@ -15,6 +15,7 @@ namespace clang {
namespace tidy {
namespace fuchsia {
+namespace {
AST_MATCHER(FunctionDecl, isFuchsiaOverloadedOperator) {
if (const auto *CXXMethodNode = dyn_cast<CXXMethodDecl>(&Node)) {
if (CXXMethodNode->isCopyAssignmentOperator() ||
@@ -23,6 +24,7 @@ AST_MATCHER(FunctionDecl, isFuchsiaOverloadedOperator) {
}
return Node.isOverloadedOperator();
}
+} // namespace
void OverloadedOperatorCheck::registerMatchers(MatchFinder *Finder) {
Finder->addMatcher(functionDecl(isFuchsiaOverloadedOperator()).bind("decl"),
diff --git a/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp b/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
index 8291f988..16a534b1 100644
--- a/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
+++ b/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
@@ -14,7 +14,8 @@ using namespace clang::ast_matchers;
namespace clang {
namespace tidy {
namespace fuchsia {
-
+
+namespace {
AST_MATCHER(Expr, isConstantInitializer) {
return Node.isConstantInitializer(Finder->getASTContext(), false);
}
@@ -22,7 +23,8 @@ AST_MATCHER(Expr, isConstantInitializer) {
AST_MATCHER(VarDecl, isGlobalStatic) {
return Node.getStorageDuration() == SD_Static && !Node.isLocalVarDecl();
}
-
+} // namespace
+
void StaticallyConstructedObjectsCheck::registerMatchers(MatchFinder *Finder) {
// Constructing global, non-trivial objects with static storage is
// disallowed, unless the object is statically initialized with a constexpr
diff --git a/clang-tidy/fuchsia/TrailingReturnCheck.cpp b/clang-tidy/fuchsia/TrailingReturnCheck.cpp
index 27989d9b..8494da82 100644
--- a/clang-tidy/fuchsia/TrailingReturnCheck.cpp
+++ b/clang-tidy/fuchsia/TrailingReturnCheck.cpp
@@ -15,18 +15,16 @@
using namespace clang::ast_matchers;
namespace clang {
-namespace ast_matchers {
-
-const internal::VariadicDynCastAllOfMatcher<Type, DecltypeType> decltypeType;
-
-} // namespace ast_matchers
-
namespace tidy {
namespace fuchsia {
+namespace {
+const internal::VariadicDynCastAllOfMatcher<Type, DecltypeType> decltypeType;
+
AST_MATCHER(FunctionDecl, hasTrailingReturn) {
return Node.getType()->castAs<FunctionProtoType>()->hasTrailingReturn();
}
+} // namespace
void TrailingReturnCheck::registerMatchers(MatchFinder *Finder) {
diff --git a/clang-tidy/fuchsia/VirtualInheritanceCheck.cpp b/clang-tidy/fuchsia/VirtualInheritanceCheck.cpp
index 6f3b433a..f3da2b6e 100644
--- a/clang-tidy/fuchsia/VirtualInheritanceCheck.cpp
+++ b/clang-tidy/fuchsia/VirtualInheritanceCheck.cpp
@@ -17,6 +17,7 @@ namespace clang {
namespace tidy {
namespace fuchsia {
+namespace {
AST_MATCHER(CXXRecordDecl, hasDirectVirtualBaseClass) {
if (!Node.hasDefinition()) return false;
if (!Node.getNumVBases()) return false;
@@ -24,6 +25,7 @@ AST_MATCHER(CXXRecordDecl, hasDirectVirtualBaseClass) {
if (Base.isVirtual()) return true;
return false;
}
+} // namespace
void VirtualInheritanceCheck::registerMatchers(MatchFinder *Finder) {
// Defining classes using direct virtual inheritance is disallowed.