Go to the documentation of this file.
9 #include "../ClangTidy.h"
10 #include "../ClangTidyModule.h"
11 #include "../ClangTidyModuleRegistry.h"
12 #include "../bugprone/UndelegatedConstructorCheck.h"
13 #include "../bugprone/UseAfterMoveCheck.h"
14 #include "../cppcoreguidelines/AvoidGotoCheck.h"
15 #include "../cppcoreguidelines/NoMallocCheck.h"
16 #include "../cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.h"
17 #include "../cppcoreguidelines/ProTypeMemberInitCheck.h"
18 #include "../cppcoreguidelines/ProTypeVarargCheck.h"
19 #include "../cppcoreguidelines/SpecialMemberFunctionsCheck.h"
20 #include "../google/DefaultArgumentsCheck.h"
21 #include "../google/ExplicitConstructorCheck.h"
22 #include "../misc/NewDeleteOverloadsCheck.h"
23 #include "../misc/StaticAssertCheck.h"
24 #include "../modernize/AvoidCArraysCheck.h"
25 #include "../modernize/DeprecatedHeadersCheck.h"
26 #include "../modernize/UseAutoCheck.h"
27 #include "../modernize/UseEmplaceCheck.h"
28 #include "../modernize/UseEqualsDefaultCheck.h"
29 #include "../modernize/UseEqualsDeleteCheck.h"
30 #include "../modernize/UseNoexceptCheck.h"
31 #include "../modernize/UseNullptrCheck.h"
32 #include "../modernize/UseOverrideCheck.h"
33 #include "../performance/MoveConstArgCheck.h"
34 #include "../performance/NoexceptMoveConstructorCheck.h"
35 #include "../readability/BracesAroundStatementsCheck.h"
36 #include "../readability/FunctionSizeCheck.h"
37 #include "../readability/NamedParameterCheck.h"
38 #include "../readability/UppercaseLiteralSuffixCheck.h"
52 "hicpp-avoid-c-arrays");
56 "hicpp-braces-around-statements");
58 "hicpp-deprecated-headers");
60 "hicpp-exception-baseclass");
62 "hicpp-multiway-paths-covered");
65 "hicpp-explicit-conversions");
67 "hicpp-function-size");
69 "hicpp-named-parameter");
71 "hicpp-invalid-access-moved");
75 "hicpp-move-const-arg");
77 "hicpp-new-delete-operators");
79 "hicpp-noexcept-move");
82 "hicpp-no-array-decay");
88 "hicpp-special-member-functions");
90 "hicpp-static-assert");
93 "hicpp-undelegated-constructor");
97 "hicpp-use-equals-default");
99 "hicpp-use-equals-delete");
101 "hicpp-use-noexcept");
103 "hicpp-use-nullptr");
105 "hicpp-use-override");
107 "hicpp-uppercase-literal-suffix");
114 static ClangTidyModuleRegistry::Add<HICPPModule>
115 X(
"hicpp-module",
"Adds High-Integrity C++ checks.");
Checks for classes where some, but not all, of the special member functions are defined.
This check looks for cases when inserting new element into std::vector but the element is constructed...
This checker is concerned with C-style memory management and suggest modern alternatives to it.
Checks that bodies of if statements and loops (for, range-for, do-while, and while) are inside braces...
Checks that all single-argument constructors are explicit.
Replace default bodies of special member functions with '= default;'.
The usage of goto for control flow is error prone and should be replaced with looping constructs.
volatile int HICPPModuleAnchorSource
Find assembler statements.
A collection of ClangTidyCheckFactory instances.
Detects when the integral literal or floating point literal has non-uppercase suffix,...
void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override
Implement this function in order to register all CheckFactories belonging to this module.
Finds creation of temporary objects in constructors that look like a function call to another constru...
static ClangTidyModuleRegistry::Add< HICPPModule > X("hicpp-module", "Adds High-Integrity C++ checks.")
This check implements the rule 5.6.1 of the HICPP Standard, which disallows bitwise operations on sig...
Find occasions where not all codepaths are explicitly covered in code.
Implements C++ Core Guidelines Type.6.
Replaces assert() with static_assert() if the condition is evaluatable at compile time.
This check flags all array to pointer decays.
Check for thrown exceptions and enforce they are all derived from std::exception.
Use C++11's override and remove virtual where applicable.
Checks for large functions based on various metrics.
The check warns if an object is used after it has been moved, without an intervening reinitialization...
Find functions with unnamed arguments.
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
Replace dynamic exception specifications, with noexcept (or user-defined macro) or noexcept(false).
This check flags all calls to c-style variadic functions and all use of va_arg.
Mark unimplemented private special member functions with '= delete'.
A clang-tidy module groups a number of ClangTidyChecks and gives them a prefixed name.
void registerCheck(llvm::StringRef CheckName)
Registers the CheckType with the name Name.
Find C-style array types and recommend to use std::array<> / std::vector<>.