Skip to content

Commit a4afe4a

Browse files
committed
Move check to cppcoreguidelines- section
1 parent 0567bc8 commit a4afe4a

File tree

10 files changed

+26
-25
lines changed

10 files changed

+26
-25
lines changed

clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ add_clang_library(clangTidyCppCoreGuidelinesModule STATIC
3333
RvalueReferenceParamNotMovedCheck.cpp
3434
SlicingCheck.cpp
3535
SpecialMemberFunctionsCheck.cpp
36+
UseEnumClassCheck.cpp
3637
VirtualClassDestructorCheck.cpp
3738

3839
LINK_LIBS

clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
#include "RvalueReferenceParamNotMovedCheck.h"
4949
#include "SlicingCheck.h"
5050
#include "SpecialMemberFunctionsCheck.h"
51+
#include "UseEnumClassCheck.h"
5152
#include "VirtualClassDestructorCheck.h"
5253

5354
namespace clang::tidy {
@@ -59,6 +60,8 @@ class CppCoreGuidelinesModule : public ClangTidyModule {
5960
void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {
6061
CheckFactories.registerCheck<AvoidCapturingLambdaCoroutinesCheck>(
6162
"cppcoreguidelines-avoid-capturing-lambda-coroutines");
63+
CheckFactories.registerCheck<UseEnumClassCheck>(
64+
"cppcoreguidelines-use-enum-class");
6265
CheckFactories.registerCheck<modernize::AvoidCArraysCheck>(
6366
"cppcoreguidelines-avoid-c-arrays");
6467
CheckFactories.registerCheck<AvoidConstOrRefDataMembersCheck>(

clang-tools-extra/clang-tidy/modernize/UseEnumClassCheck.cpp renamed to clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
using namespace clang::ast_matchers;
1313

14-
namespace clang::tidy::modernize {
14+
namespace clang::tidy::cppcoreguidelines {
1515

1616
void UseEnumClassCheck::registerMatchers(MatchFinder *Finder) {
1717
Finder->addMatcher(
@@ -31,4 +31,4 @@ void UseEnumClassCheck::check(const MatchFinder::MatchResult &Result) {
3131
<< FixItHint::CreateInsertion(UnscopedEnum->getLocation(), "class ");
3232
}
3333

34-
} // namespace clang::tidy::modernize
34+
} // namespace clang::tidy::cppcoreguidelines

clang-tools-extra/clang-tidy/modernize/UseEnumClassCheck.h renamed to clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.h

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,18 @@
66
//
77
//===----------------------------------------------------------------------===//
88

9-
#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_MODERNIZE_USEENUMCLASSCHECK_H
10-
#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_MODERNIZE_USEENUMCLASSCHECK_H
9+
#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_CPPCOREGUIDELINES_USEENUMCLASSCHECK_H
10+
#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_CPPCOREGUIDELINES_USEENUMCLASSCHECK_H
1111

1212
#include "../ClangTidyCheck.h"
1313

14-
namespace clang::tidy::modernize {
14+
namespace clang::tidy::cppcoreguidelines {
1515

1616
/// Check for unscoped enums that are not contained in classes/structs.
1717
/// Suggest to use scoped enums (enum class) instead.
1818
///
1919
/// For the user-facing documentation see:
20-
/// http://clang.llvm.org/extra/clang-tidy/checks/modernize/use-enum-class.html
20+
/// http://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/use-enum-class.html
2121
class UseEnumClassCheck : public ClangTidyCheck {
2222
public:
2323
UseEnumClassCheck(StringRef Name, ClangTidyContext *Context)
@@ -29,6 +29,6 @@ class UseEnumClassCheck : public ClangTidyCheck {
2929
}
3030
};
3131

32-
} // namespace clang::tidy::modernize
32+
} // namespace clang::tidy::cppcoreguidelines
3333

34-
#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_MODERNIZE_USE_ENUM_CLASS_H
34+
#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_CPPCOREGUIDELINES_USEENUMCLASSCHECK_H

clang-tools-extra/clang-tidy/modernize/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ add_clang_library(clangTidyModernizeModule STATIC
3434
UseDefaultMemberInitCheck.cpp
3535
UseDesignatedInitializersCheck.cpp
3636
UseEmplaceCheck.cpp
37-
UseEnumClassCheck.cpp
3837
UseEqualsDefaultCheck.cpp
3938
UseEqualsDeleteCheck.cpp
4039
UseIntegerSignComparisonCheck.cpp

clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
#include "UseDefaultMemberInitCheck.h"
3636
#include "UseDesignatedInitializersCheck.h"
3737
#include "UseEmplaceCheck.h"
38-
#include "UseEnumClassCheck.h"
3938
#include "UseEqualsDefaultCheck.h"
4039
#include "UseEqualsDeleteCheck.h"
4140
#include "UseIntegerSignComparisonCheck.h"
@@ -111,7 +110,6 @@ class ModernizeModule : public ClangTidyModule {
111110
CheckFactories.registerCheck<UseDefaultMemberInitCheck>(
112111
"modernize-use-default-member-init");
113112
CheckFactories.registerCheck<UseEmplaceCheck>("modernize-use-emplace");
114-
CheckFactories.registerCheck<UseEnumClassCheck>("modernize-use-enum-class");
115113
CheckFactories.registerCheck<UseEqualsDefaultCheck>("modernize-use-equals-default");
116114
CheckFactories.registerCheck<UseEqualsDeleteCheck>(
117115
"modernize-use-equals-delete");

clang-tools-extra/docs/ReleaseNotes.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,8 +136,8 @@ New checks
136136
Finds potentially erroneous calls to ``reset`` method on smart pointers when
137137
the pointee type also has a ``reset`` method.
138138

139-
- New :doc:`modernize-use-enum-class
140-
<clang-tidy/checks/modernize/use-enum-class>` check.
139+
- New :doc:`cppcoreguidelines-use-enum-class
140+
<clang-tidy/checks/cppcoreguidelines/use-enum-class>` check.
141141

142142
Finds plain non-class enum definitions that could use ``enum class``.
143143

clang-tools-extra/docs/clang-tidy/checks/modernize/use-enum-class.rst renamed to clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-enum-class.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
.. title:: clang-tidy - modernize-use-enum-class
1+
.. title:: clang-tidy - cppcoreguidelines-use-enum-class
22

3-
modernize-use-enum-class
3+
cppcoreguidelines-use-enum-class
44
=============================
55

66
Scoped enums (enum class) should be preferred over unscoped enums:

clang-tools-extra/docs/clang-tidy/checks/list.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,7 @@ Clang-Tidy Checks
211211
:doc:`cppcoreguidelines-rvalue-reference-param-not-moved <cppcoreguidelines/rvalue-reference-param-not-moved>`,
212212
:doc:`cppcoreguidelines-slicing <cppcoreguidelines/slicing>`,
213213
:doc:`cppcoreguidelines-special-member-functions <cppcoreguidelines/special-member-functions>`,
214+
:doc:`cppcoreguidelines-use-enum-class <cppcoreguidelines/use-enum-class>`, "Yes"
214215
:doc:`cppcoreguidelines-virtual-class-destructor <cppcoreguidelines/virtual-class-destructor>`, "Yes"
215216
:doc:`darwin-avoid-spinlock <darwin/avoid-spinlock>`,
216217
:doc:`darwin-dispatch-once-nonstatic <darwin/dispatch-once-nonstatic>`, "Yes"
@@ -302,7 +303,6 @@ Clang-Tidy Checks
302303
:doc:`modernize-use-default-member-init <modernize/use-default-member-init>`, "Yes"
303304
:doc:`modernize-use-designated-initializers <modernize/use-designated-initializers>`, "Yes"
304305
:doc:`modernize-use-emplace <modernize/use-emplace>`, "Yes"
305-
:doc:`modernize-use-enum-class <modernize/use-enum-class>`, "Yes"
306306
:doc:`modernize-use-equals-default <modernize/use-equals-default>`, "Yes"
307307
:doc:`modernize-use-equals-delete <modernize/use-equals-delete>`, "Yes"
308308
:doc:`modernize-use-integer-sign-comparison <modernize/use-integer-sign-comparison>`, "Yes"
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,48 @@
1-
// RUN: %check_clang_tidy -std=c++17-or-later %s modernize-use-enum-class %t
1+
// RUN: %check_clang_tidy -std=c++17-or-later %s cppcoreguidelines-use-enum-class %t
22

33
enum E {};
4-
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: enum 'E' is unscoped, use enum class instead [modernize-use-enum-class]
4+
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: enum 'E' is unscoped, use enum class instead [cppcoreguidelines-use-enum-class]
55

66
enum class EC {};
77

88
struct S {
99
enum E {};
10-
// CHECK-MESSAGES-NOT: :[[@LINE-1]]:12: warning: enum 'E' is unscoped, use enum class instead [modernize-use-enum-class]
10+
// CHECK-MESSAGES-NOT: :[[@LINE-1]]:12: warning: enum 'E' is unscoped, use enum class instead [cppcoreguidelines-use-enum-class]
1111
// Ignore unscoped enums in recordDecl
1212
enum class EC {};
1313
};
1414

1515
class C {
1616
enum E {};
17-
// CHECK-MESSAGES-NOT: :[[@LINE-1]]:12: warning: enum 'E' is unscoped, use enum class instead [modernize-use-enum-class]
17+
// CHECK-MESSAGES-NOT: :[[@LINE-1]]:12: warning: enum 'E' is unscoped, use enum class instead [cppcoreguidelines-use-enum-class]
1818
// Ignore unscoped enums in recordDecl
1919
enum class EC {};
2020
};
2121

2222
template<class T>
2323
class TC {
2424
enum E {};
25-
// CHECK-MESSAGES-NOT: :[[@LINE-1]]:12: warning: enum 'E' is unscoped, use enum class instead [modernize-use-enum-class]
25+
// CHECK-MESSAGES-NOT: :[[@LINE-1]]:12: warning: enum 'E' is unscoped, use enum class instead [cppcoreguidelines-use-enum-class]
2626
// Ignore unscoped enums in recordDecl
2727
enum class EC {};
2828
};
2929

3030
union U {
3131
enum E {};
32-
// CHECK-MESSAGES-NOT: :[[@LINE-1]]:12: warning: enum 'E' is unscoped, use enum class instead [modernize-use-enum-class]
32+
// CHECK-MESSAGES-NOT: :[[@LINE-1]]:12: warning: enum 'E' is unscoped, use enum class instead [cppcoreguidelines-use-enum-class]
3333
// Ignore unscoped enums in recordDecl
3434
enum class EC {};
3535
};
3636

3737
namespace {
3838
enum E {};
39-
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: enum 'E' is unscoped, use enum class instead [modernize-use-enum-class]
39+
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: enum 'E' is unscoped, use enum class instead [cppcoreguidelines-use-enum-class]
4040
enum class EC {};
4141
} // namespace
4242

4343
namespace N {
4444
enum E {};
45-
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: enum 'E' is unscoped, use enum class instead [modernize-use-enum-class]
45+
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: enum 'E' is unscoped, use enum class instead [cppcoreguidelines-use-enum-class]
4646
enum class EC {};
4747
} // namespace N
4848

@@ -53,6 +53,6 @@ using enum S::E;
5353
using enum S::EC;
5454

5555
enum ForwardE : int;
56-
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: enum 'ForwardE' is unscoped, use enum class instead [modernize-use-enum-class]
56+
// CHECK-MESSAGES: :[[@LINE-1]]:6: warning: enum 'ForwardE' is unscoped, use enum class instead [cppcoreguidelines-use-enum-class]
5757

5858
enum class ForwardEC : int;

0 commit comments

Comments
 (0)