@@ -4,23 +4,27 @@ Checks: "-*,
44 bugprone-assert-side-effect,
55 bugprone-bad-signal-to-kill-thread,
66 bugprone-bool-pointer-implicit-conversion,
7+ bugprone-capturing-this-in-member-variable,
78 bugprone-casting-through-void,
89 bugprone-chained-comparison,
910 bugprone-compare-pointer-to-member-virtual-function,
1011 bugprone-copy-constructor-init,
12+ bugprone-crtp-constructor-accessibility,
1113 bugprone-dangling-handle,
1214 bugprone-dynamic-static-initializers,
1315 bugprone-empty-catch,
1416 bugprone-fold-init-type,
1517 bugprone-forward-declaration-namespace,
1618 bugprone-inaccurate-erase,
19+ bugprone-inc-dec-in-conditions,
1720 bugprone-incorrect-enable-if,
1821 bugprone-incorrect-roundings,
1922 bugprone-infinite-loop,
2023 bugprone-integer-division,
2124 bugprone-lambda-function-name,
2225 bugprone-macro-parentheses,
2326 bugprone-macro-repeated-side-effects,
27+ bugprone-misleading-setter-of-reference,
2428 bugprone-misplaced-operator-in-strlen-in-alloc,
2529 bugprone-misplaced-pointer-arithmetic-in-alloc,
2630 bugprone-misplaced-widening-cast,
@@ -30,9 +34,12 @@ Checks: "-*,
3034 bugprone-multiple-statement-macro,
3135 bugprone-no-escape,
3236 bugprone-non-zero-enum-to-bool-conversion,
37+ bugprone-optional-value-conversion,
3338 bugprone-parent-virtual-call,
39+ bugprone-pointer-arithmetic-on-polymorphic-object,
3440 bugprone-posix-return,
3541 bugprone-redundant-branch-condition,
42+ bugprone-reserved-identifier,
3643 bugprone-return-const-ref-from-parameter,
3744 bugprone-shared-ptr-array-mismatch,
3845 bugprone-signal-handler,
@@ -49,153 +56,149 @@ Checks: "-*,
4956 bugprone-suspicious-include,
5057 bugprone-suspicious-memory-comparison,
5158 bugprone-suspicious-memset-usage,
59+ bugprone-suspicious-missing-comma,
5260 bugprone-suspicious-realloc-usage,
5361 bugprone-suspicious-semicolon,
5462 bugprone-suspicious-string-compare,
63+ bugprone-suspicious-stringview-data-usage,
5564 bugprone-swapped-arguments,
65+ bugprone-switch-missing-default-case,
5666 bugprone-terminating-continue,
5767 bugprone-throw-keyword-missing,
68+ bugprone-too-small-loop-variable,
69+ bugprone-unchecked-optional-access,
5870 bugprone-undefined-memory-manipulation,
5971 bugprone-undelegated-constructor,
6072 bugprone-unhandled-exception-at-new,
73+ bugprone-unhandled-self-assignment,
6174 bugprone-unique-ptr-array-mismatch,
6275 bugprone-unsafe-functions,
76+ bugprone-unused-local-non-trivial-variable,
77+ bugprone-unused-raii,
78+ bugprone-unused-return-value,
79+ bugprone-use-after-move,
6380 bugprone-virtual-near-miss,
81+ cppcoreguidelines-init-variables,
82+ cppcoreguidelines-misleading-capture-default-by-value,
6483 cppcoreguidelines-no-suspend-with-lock,
84+ cppcoreguidelines-pro-type-member-init,
85+ cppcoreguidelines-pro-type-static-cast-downcast,
86+ cppcoreguidelines-rvalue-reference-param-not-moved,
87+ cppcoreguidelines-use-default-member-init,
88+ cppcoreguidelines-use-enum-class,
6589 cppcoreguidelines-virtual-class-destructor,
6690 hicpp-ignored-remove-result,
91+ llvm-namespace-comment,
92+ misc-const-correctness,
6793 misc-definitions-in-headers,
6894 misc-header-include-cycle,
95+ misc-include-cleaner,
6996 misc-misplaced-const,
97+ misc-redundant-expression,
7098 misc-static-assert,
7199 misc-throw-by-value-catch-by-reference,
72100 misc-unused-alias-decls,
73101 misc-unused-using-decls,
102+ modernize-concat-nested-namespaces,
103+ modernize-deprecated-headers,
104+ modernize-make-shared,
105+ modernize-make-unique,
106+ modernize-pass-by-value,
107+ modernize-type-traits,
108+ modernize-use-designated-initializers,
109+ modernize-use-emplace,
110+ modernize-use-equals-default,
111+ modernize-use-equals-delete,
112+ modernize-use-nodiscard,
113+ modernize-use-override,
114+ modernize-use-ranges,
115+ modernize-use-scoped-lock,
116+ modernize-use-starts-ends-with,
117+ modernize-use-std-numbers,
118+ modernize-use-using,
119+ performance-faster-string-find,
120+ performance-for-range-copy,
121+ performance-implicit-conversion-in-loop,
122+ performance-inefficient-vector-operation,
123+ performance-move-const-arg,
124+ performance-move-constructor-init,
125+ performance-no-automatic-move,
126+ performance-trivially-destructible,
127+ readability-ambiguous-smartptr-reset-call,
128+ readability-avoid-nested-conditional-operator,
129+ readability-avoid-return-with-void-value,
130+ readability-braces-around-statements,
131+ readability-const-return-type,
132+ readability-container-contains,
133+ readability-container-size-empty,
134+ readability-convert-member-functions-to-static,
74135 readability-duplicate-include,
136+ readability-else-after-return,
75137 readability-enum-initial-value,
138+ readability-identifier-naming,
139+ readability-implicit-bool-conversion,
140+ readability-make-member-function-const,
141+ readability-math-missing-parentheses,
76142 readability-misleading-indentation,
77143 readability-non-const-parameter,
144+ readability-redundant-casting,
78145 readability-redundant-declaration,
146+ readability-redundant-inline-specifier,
147+ readability-redundant-member-init,
148+ readability-redundant-string-init,
79149 readability-reference-to-constructed-temporary,
80- modernize-deprecated-headers,
81- modernize-make-shared,
82- modernize-make-unique,
83- performance-implicit-conversion-in-loop,
84- performance-move-constructor-init,
85- performance-trivially-destructible
150+ readability-simplify-boolean-expr,
151+ readability-static-definition-in-anonymous-namespace,
152+ readability-suspicious-call-argument,
153+ readability-use-std-min-max
86154 "
87155# ---
88- # more checks that have some issues that need to be resolved:
89- #
90- # bugprone-crtp-constructor-accessibility,
91- # bugprone-inc-dec-in-conditions,
92- # bugprone-reserved-identifier,
93- # bugprone-move-forwarding-reference,
94- # bugprone-unused-local-non-trivial-variable,
95- # bugprone-switch-missing-default-case,
96- # bugprone-suspicious-stringview-data-usage,
97- # bugprone-suspicious-missing-comma,
98- # bugprone-pointer-arithmetic-on-polymorphic-object,
99- # bugprone-optional-value-conversion,
100- # bugprone-too-small-loop-variable,
101- # bugprone-unused-return-value,
102- # bugprone-use-after-move,
103- # bugprone-unhandled-self-assignment,
104- # bugprone-unused-raii,
105- #
106- # cppcoreguidelines-misleading-capture-default-by-value,
107- # cppcoreguidelines-init-variables,
108- # cppcoreguidelines-pro-type-member-init,
109- # cppcoreguidelines-pro-type-static-cast-downcast,
110- # cppcoreguidelines-use-default-member-init,
111- # cppcoreguidelines-rvalue-reference-param-not-moved,
112- #
113- # llvm-namespace-comment,
114- # misc-const-correctness,
115- # misc-include-cleaner,
116- # misc-redundant-expression,
117- #
118- # readability-avoid-nested-conditional-operator,
119- # readability-avoid-return-with-void-value,
120- # readability-braces-around-statements,
121- # readability-container-contains,
122- # readability-container-size-empty,
123- # readability-convert-member-functions-to-static,
124- # readability-const-return-type,
125- # readability-else-after-return,
126- # readability-implicit-bool-conversion,
127- # readability-inconsistent-declaration-parameter-name,
128- # readability-identifier-naming,
129- # readability-make-member-function-const,
130- # readability-math-missing-parentheses,
131- # readability-redundant-inline-specifier,
132- # readability-redundant-member-init,
133- # readability-redundant-casting,
134- # readability-redundant-string-init,
135- # readability-simplify-boolean-expr,
136- # readability-static-definition-in-anonymous-namespace,
137- # readability-suspicious-call-argument,
138- # readability-use-std-min-max,
139- # readability-static-accessed-through-instance,
140- #
141- # modernize-concat-nested-namespaces,
142- # modernize-pass-by-value,
143- # modernize-type-traits,
144- # modernize-use-designated-initializers,
145- # modernize-use-emplace,
146- # modernize-use-equals-default,
147- # modernize-use-equals-delete,
148- # modernize-use-override,
149- # modernize-use-ranges,
150- # modernize-use-starts-ends-with,
151- # modernize-use-std-numbers,
152- # modernize-use-using,
153- #
154- # performance-faster-string-find,
155- # performance-for-range-copy,
156- # performance-inefficient-vector-operation,
157- # performance-move-const-arg,
158- # performance-no-automatic-move,
156+ # readability-inconsistent-declaration-parameter-name, # in this codebase this check will break a lot of arg names
157+ # readability-static-accessed-through-instance, # this check is probably unnecessary. it makes the code less readable
159158# ---
160- #
159+
161160CheckOptions :
162- # readability-braces-around-statements.ShortStatementLines: 2
163- # readability-identifier-naming.MacroDefinitionCase: UPPER_CASE
164- # readability-identifier-naming.ClassCase: CamelCase
165- # readability-identifier-naming.StructCase: CamelCase
166- # readability-identifier-naming.UnionCase: CamelCase
167- # readability-identifier-naming.EnumCase: CamelCase
168- # readability-identifier-naming.EnumConstantCase: CamelCase
169- # readability-identifier-naming.ScopedEnumConstantCase: CamelCase
170- # readability-identifier-naming.GlobalConstantCase: UPPER_CASE
171- # readability-identifier-naming.GlobalConstantPrefix: "k"
172- # readability-identifier-naming.GlobalVariableCase: CamelCase
173- # readability-identifier-naming.GlobalVariablePrefix: "g"
174- # readability-identifier-naming.ConstexprFunctionCase: camelBack
175- # readability-identifier-naming.ConstexprMethodCase: camelBack
176- # readability-identifier-naming.ClassMethodCase: camelBack
177- # readability-identifier-naming.ClassMemberCase: camelBack
178- # readability-identifier-naming.ClassConstantCase: UPPER_CASE
179- # readability-identifier-naming.ClassConstantPrefix: "k"
180- # readability-identifier-naming.StaticConstantCase: UPPER_CASE
181- # readability-identifier-naming.StaticConstantPrefix: "k"
182- # readability-identifier-naming.StaticVariableCase: UPPER_CASE
183- # readability-identifier-naming.StaticVariablePrefix: "k"
184- # readability-identifier-naming.ConstexprVariableCase: UPPER_CASE
185- # readability-identifier-naming.ConstexprVariablePrefix: "k"
186- # readability-identifier-naming.LocalConstantCase: camelBack
187- # readability-identifier-naming.LocalVariableCase: camelBack
188- # readability-identifier-naming.TemplateParameterCase: CamelCase
189- # readability-identifier-naming.ParameterCase: camelBack
190- # readability-identifier-naming.FunctionCase: camelBack
191- # readability-identifier-naming.MemberCase: camelBack
192- # readability-identifier-naming.PrivateMemberSuffix: _
193- # readability-identifier-naming.ProtectedMemberSuffix: _
194- # readability-identifier-naming.PublicMemberSuffix: ""
195- # readability-identifier-naming.FunctionIgnoredRegexp: ".*tag_invoke.*"
196161 bugprone-unsafe-functions.ReportMoreUnsafeFunctions : true
197- # bugprone-unused-return-value.CheckedReturnTypes: ::std::error_code;::std::error_condition;::std::errc
198- # misc-include-cleaner.IgnoreHeaders: '.*/(detail|impl)/.*;.*(expected|unexpected).*;.*ranges_lower_bound\.h;time.h;stdlib.h;__chrono/.*;fmt/chrono.h;boost/uuid/uuid_hash.hpp'
199- #
200- # HeaderFilterRegex: '^.*/(src|tests)/.*\.(h|hpp)$'
162+ bugprone-unused-return-value.CheckedReturnTypes : ::std::error_code;::std::error_condition;::std::errc
163+
164+ misc-include-cleaner.IgnoreHeaders : " .*/(detail|impl)/.*;.*fwd\\ .h(pp)?;time.h;stdlib.h;sqlite3.h;netinet/in\\ .h;sys/resource\\ .h;sys/sysinfo\\ .h;linux/sysinfo\\ .h;__chrono/.*;bits/.*;_abort\\ .h;boost/uuid/uuid_hash.hpp;boost/beast/core/flat_buffer\\ .hpp;boost/beast/http/field\\ .hpp;boost/beast/http/dynamic_body\\ .hpp;boost/beast/http/message\\ .hpp;boost/beast/http/read\\ .hpp;boost/beast/http/write\\ .hpp;openssl/obj_mac\\ .h"
165+
166+ readability-braces-around-statements.ShortStatementLines : 2
167+ readability-identifier-naming.MacroDefinitionCase : UPPER_CASE
168+ readability-identifier-naming.ClassCase : CamelCase
169+ readability-identifier-naming.StructCase : CamelCase
170+ readability-identifier-naming.UnionCase : CamelCase
171+ readability-identifier-naming.EnumCase : CamelCase
172+ readability-identifier-naming.EnumConstantCase : CamelCase
173+ readability-identifier-naming.ScopedEnumConstantCase : CamelCase
174+ readability-identifier-naming.GlobalConstantCase : CamelCase
175+ readability-identifier-naming.GlobalConstantPrefix : " k"
176+ readability-identifier-naming.GlobalVariableCase : CamelCase
177+ readability-identifier-naming.GlobalVariablePrefix : " g"
178+ readability-identifier-naming.ConstexprFunctionCase : camelBack
179+ readability-identifier-naming.ConstexprMethodCase : camelBack
180+ readability-identifier-naming.ClassMethodCase : camelBack
181+ readability-identifier-naming.ClassMemberCase : camelBack
182+ readability-identifier-naming.ClassConstantCase : CamelCase
183+ readability-identifier-naming.ClassConstantPrefix : " k"
184+ readability-identifier-naming.StaticConstantCase : CamelCase
185+ readability-identifier-naming.StaticConstantPrefix : " k"
186+ readability-identifier-naming.StaticVariableCase : camelBack
187+ readability-identifier-naming.ConstexprVariableCase : camelBack
188+ readability-identifier-naming.LocalConstantCase : camelBack
189+ readability-identifier-naming.LocalVariableCase : camelBack
190+ readability-identifier-naming.TemplateParameterCase : CamelCase
191+ readability-identifier-naming.ParameterCase : camelBack
192+ readability-identifier-naming.FunctionCase : camelBack
193+ readability-identifier-naming.MemberCase : camelBack
194+ readability-identifier-naming.PrivateMemberCase : camelBack
195+ readability-identifier-naming.PrivateMemberSuffix : _
196+ readability-identifier-naming.ProtectedMemberCase : camelBack
197+ readability-identifier-naming.ProtectedMemberSuffix : _
198+ readability-identifier-naming.PublicMemberCase : camelBack
199+ readability-identifier-naming.PublicMemberSuffix : " "
200+ readability-identifier-naming.GlobalFunctionIgnoredRegexp : " ^(to_string|hash_append|tuple_hash)$"
201+
202+ HeaderFilterRegex : ' ^.*/(tests?|xrpl|xrpld)/.*\.(h|hpp|ipp)$'
203+ ExcludeHeaderFilterRegex : ' ^.*/protocol_autogen/.*\.(h|hpp)$'
201204WarningsAsErrors : " *"
0 commit comments