Cleanup config.nodes_of
[check_mk.git] / .clang-tidy
blob1496b8b44d46fb3c4c303005fc405ae303808a5d
1 ---
2 # Classification of the excludes:
4 #   * unclear, need to figure out if we want that:
5 #       * cert-err58-cpp ("construction of 'foo' with static storage duration may throw an exception that cannot be caught")
6 #       * cppcoreguidelines-pro-bounds-array-to-pointer-decay ("do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead")
7 #       * cppcoreguidelines-pro-bounds-constant-array-index ("do not use array subscript when the index is not an integer constant expression; use gsl::at() instead")
8 #       * cppcoreguidelines-pro-bounds-pointer-arithmetic ("do not use pointer arithmetic")
9 #       * google-runtime-int ("consider replacing 'unsigned long' with 'uint64'")
10 #       * hicpp-no-array-decay ("do not implicitly decay an array into a pointer; consider using gsl::array_view or an explicit cast instead")
12 #   * undesirable checks:
13 #       * cppcoreguidelines-pro-type-static-cast-downcast ("do not use static_cast to downcast from a base to a derived class; use dynamic_cast instead")
14 #       * fuchsia-default-arguments ("calling a function that uses a default argument is disallowed")
15 #       * fuchsia-overloaded-operator ("cannot overload 'operatorFOO'")
16 #       * fuchsia-statically-constructed-objects ("static objects are disallowed; if possible, use a constexpr constructor instead")
17 #       * google-runtime-references ("non-const reference parameter 'foo', make it const or use a pointer")
18 #       * hicpp-no-assembler ("do not use inline assembler in safety-critical code") triggered by ntohs/htons
19 #       * llvm-include-order ("#includes are not sorted properly")
21 #   * desirable checks, but hard to fix currently:
22 #       * android-cloexec-fopen ("use 'fopen' mode 'e' to set O_CLOEXEC") Ancient CentOS 5 doesn't have O_CLOEXEC
23 #       * android-cloexec-open ("'open' should use O_CLOEXEC where possible") Ancient CentOS 5 doesn't have O_CLOEXEC
24 #       * cert-env33-c ("calling 'system' uses a command processor")
25 #       * cert-err34-c ("'atoi' used to convert a string to an integer value, but function will not report conversion errors; consider using 'strtol' instead")
26 #       * cppcoreguidelines-owning-memory ("deleting a pointer through a type that is not marked 'gsl::owner<>'; consider using a smart pointer instead") We won't fix this for 1.5.0
27 #       * cppcoreguidelines-pro-type-member-init ("uninitialized record type: 'foo'")
28 #       * cppcoreguidelines-pro-type-reinterpret-cast ("do not use reinterpret_cast")
29 #       * cppcoreguidelines-pro-type-vararg ("do not call c-style vararg functions")
30 #       * hicpp-member-init: alias for cppcoreguidelines-pro-type-member-init
31 #       * hicpp-signed-bitwise ("use of a signed integer operand with a binary bitwise operator")
32 #       * hicpp-vararg ("do not call c-style vararg functions")
33 #       * llvm-header-guard ("header guard does not follow preferred style") tricky to get right with the current bear/clang-tidy/symlink situation
35 #   * desirable checks, but some places need to be suppressed:
36 #       * cppcoreguidelines-pro-type-const-cast ("do not use const_cast")
37 #       * cppcoreguidelines-pro-type-union-access ("do not access members of unions; use (boost::)variant instead")
38 #       * modernize-use-bool-literals ("converting integer literal to bool, use bool literal instead") Incorrectly triggered by e.g. FD_ZERO
40 #   * temporarily disabled:
41 #       * clang-analyzer-optin.performance.Padding
42 #       * cppcoreguidelines-special-member-functions
43 #       * hicpp-special-member-functions
44 #       * modernize-use-default-member-init
46 #   * bug in toolchain/clang-tidy:
47 #       * clang-analyzer-cplusplus.NewDeleteLeaks ("Potential leak of memory pointed to by field '_M_head_impl'") See https://bugs.llvm.org/show_bug.cgi?id=38176 ("clang-analyzer-cplusplus.NewDeleteLeaks false positive in C++17 mode only")
49 Checks: '*,-android-cloexec-fopen,-android-cloexec-open,-cert-env33-c,-cert-err34-c,-cert-err58-cpp,-clang-analyzer-alpha*,-cppcoreguidelines-owning-memory,-cppcoreguidelines-pro-bounds-array-to-pointer-decay,-cppcoreguidelines-pro-bounds-constant-array-index,-cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-pro-type-const-cast,-cppcoreguidelines-pro-type-member-init,-cppcoreguidelines-pro-type-reinterpret-cast,-cppcoreguidelines-pro-type-static-cast-downcast,-cppcoreguidelines-pro-type-union-access,-cppcoreguidelines-pro-type-vararg,-fuchsia-default-arguments,-fuchsia-overloaded-operator,-fuchsia-statically-constructed-objects,-google-runtime-int,-google-runtime-references,-hicpp-member-init,-hicpp-no-array-decay,-hicpp-no-assembler,-hicpp-signed-bitwise,-hicpp-vararg,-llvm-header-guard,-llvm-include-order,-modernize-use-bool-literals,-clang-analyzer-optin.performance.Padding,-cppcoreguidelines-special-member-functions,-hicpp-special-member-functions,-modernize-use-default-member-init,-clang-analyzer-cplusplus.NewDeleteLeaks'
50 CheckOptions:
51   - key:             google-readability-namespace-comments.SpacesBeforeComments
52     value:           '1'
53 ...