106 lines
4.2 KiB
YAML
106 lines
4.2 KiB
YAML
---
|
|
Checks: '*,-abseil-*,-altera-*,-android-cloexec-*,-bugprone-easily-swappable-parameters,-cert-err58-cpp,-cppcoreguidelines-avoid-do-while,-cppcoreguidelines-avoid-magic-numbers,-cppcoreguidelines-avoid-non-const-global-variables,-cppcoreguidelines-owning-memory,-cppcoreguidelines-pro-bounds-array-to-pointer-decay,-cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-pro-type-cstyle-cast,-cppcoreguidelines-pro-type-reinterpret-cast,-cppcoreguidelines-pro-type-static-cast-downcast,-cppcoreguidelines-pro-type-vararg,-fuchsia-*,-google-readability-casting,-google-readability-todo,-hicpp-named-parameter,-hicpp-no-array-decay,-hicpp-vararg,-llvm-include-order,-llvm-header-guard,-llvmlibc-*,-misc-include-cleaner,-misc-no-recursion,-misc-use-anonymous-namespace,-modernize-use-nodiscard,-modernize-use-trailing-return-type,-readability-identifier-length,-readability-implicit-bool-conversion,-readability-named-parameter,-readability-magic-numbers'
|
|
#
|
|
# cppcoreguidelines-pro-type-cstyle-cast
|
|
# google-build-using-namespace
|
|
# google-readability-casting
|
|
# llvm-header-guard
|
|
# llvm-include-order
|
|
# hicpp-named-parameter
|
|
# readability-named-parameter
|
|
# Differ from our style guidelines
|
|
#
|
|
# abseil-*
|
|
# Not applicable.
|
|
#
|
|
# altera-*
|
|
# Not applicable.
|
|
#
|
|
# android-cloexec-*
|
|
# O_CLOEXEC isn't available on Windows
|
|
#
|
|
# bugprone-easily-swappable-parameters
|
|
# Can't always be avoided.
|
|
#
|
|
# cert-err58-cpp
|
|
# There are many of these in the test code, most of them from the Catch
|
|
# framework. Difficult to avoid.
|
|
#
|
|
# cppcoreguidelines-avoid-do-while (new in clang-tidy-16)
|
|
# Its a good idea to avoid them when there are better alternatives, but
|
|
# sometimes they are the cleanest alternative.
|
|
#
|
|
# cppcoreguidelines-avoid-magic-numbers
|
|
# readability-magic-numbers
|
|
# We have a lot of these and should probably at least fix some. But remove
|
|
# it for the time being because with it we can't see the forest for the
|
|
# trees. (TODO)
|
|
#
|
|
# cppcoreguidelines-avoid-non-const-global-variables
|
|
# Not wrong to avoid those, but we have a few that are hard to avoid.
|
|
# Also this warning is triggered many times by constructs in the Catch test
|
|
# framework.
|
|
#
|
|
# cppcoreguidelines-owning-memory
|
|
# cppcoreguidelines-pro-bounds-array-to-pointer-decay
|
|
# cppcoreguidelines-pro-bounds-pointer-arithmetic
|
|
# cppcoreguidelines-pro-type-static-cast-downcast
|
|
# cppcoreguidelines-pro-type-vararg
|
|
# hicpp-no-array-decay
|
|
# hicpp-vararg
|
|
# When you need them, you need them
|
|
#
|
|
# fuchsia-*
|
|
# Very specific and way too strict
|
|
#
|
|
# google-readability-todo
|
|
# We are not that organized
|
|
#
|
|
# llvmlibc-*
|
|
# Not applicable
|
|
#
|
|
# misc-include-cleaner (new in clang-tidy-17)
|
|
# Many instances of this warning, disabled for now. (TODO)
|
|
#
|
|
# misc-no-recursion
|
|
# Nothing wrong with recursion
|
|
#
|
|
# misc-use-anonymous-namespace (new in clang-tidy-16)
|
|
# Lots of these, need some time to fix. (TODO)
|
|
#
|
|
# modernize-use-nodiscard
|
|
# Doesn't really make the code clearer if it is all littered with
|
|
# [[nodiscard]]. Looks like this warning is more suited for a library
|
|
# than for normal code.
|
|
#
|
|
# modernize-use-trailing-return-type
|
|
# We are not that modern...
|
|
#
|
|
# readability-identifier-length
|
|
# Generally not a bad idea, but there are many cases where short names
|
|
# for (local) vars are okay.
|
|
#
|
|
# readability-implicit-bool-conversion
|
|
# Readability is a matter of opinion here
|
|
#
|
|
#WarningsAsErrors: '*'
|
|
HeaderFilterRegex: '\/src\/'
|
|
CheckOptions:
|
|
- key: cppcoreguidelines-special-member-functions.AllowSoleDefaultDtor
|
|
value: true
|
|
- key: hicpp-special-member-functions.AllowSoleDefaultDtor
|
|
value: true
|
|
- key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
|
|
value: true
|
|
- key: cppcoreguidelines-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
|
|
value: true
|
|
- key: readability-function-cognitive-complexity.Threshold
|
|
value: 100
|
|
- key: readability-function-cognitive-complexity.IgnoreMacros
|
|
value: true
|
|
- key: cppcoreguidelines-rvalue-reference-param-not-moved.AllowPartialMove
|
|
value: true
|
|
- key: bugprone-empty-catch.IgnoreCatchWithKeywords
|
|
value: "@todo;@fixme;exception ignored on purpose"
|
|
...
|