aboutsummaryrefslogtreecommitdiff
path: root/.clang-tidy
blob: 1a6497849f428f0cc675c262d3e95ee9be5d4afa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
---
Checks: >
    bugprone-argument-comment,
    bugprone-assert-side-effect,
    bugprone-bool-pointer-implicit-conversion,
    bugprone-dangling-handle,
    bugprone-fold-init-type,
    bugprone-forward-declaration-namespace,
    bugprone-inaccurate-erase,
    bugprone-macro-repeated-side-effects,
    bugprone-move-forwarding-reference,
    bugprone-multiple-statement-macro,
    bugprone-string-constructor,
    bugprone-suspicious-memset-usage,
    bugprone-swapped-arguments,
    bugprone-undefined-memory-manipulation,
    bugprone-undelegated-constructor,
    bugprone-unused-raii,
    bugprone-use-after-move,
    clang-diagnostic-*,
    -clang-analyzer-*,
    darwin-avoid-spinlock,
    google-build-explicit-make-pair,
    google-build-namespaces,
    google-default-arguments,
    google-global-names-in-headers,
    google-readability-function-size,
    google-readability-namespace-comments,
    google-runtime-operator,
    misc-static-assert,
    misc-unconventional-assign-operator,
    misc-unused-using-decls,
    modernize-avoid-bind
    modernize-deprecated-ios-base-aliases
    modernize-make-shared
    modernize-make-unique
    modernize-replace-auto-ptr
    modernize-replace-disallow-copy-and-assign-macro
    modernize-replace-random-shuffle
    modernize-shrink-to-fit
    modernize-use-bool-literals
    modernize-use-equals-delete
    modernize-use-noexcept
    modernize-use-nullptr
    modernize-use-transparent-functors
    modernize-use-uncaught-exceptions
    performance-faster-string-find,
    performance-for-range-copy,
    performance-implicit-conversion-in-loop,
    performance-inefficient-algorithm,
    performance-inefficient-vector-operation,
    performance-move-constructor-init,
    readability-container-size-empty,
    readability-inconsistent-declaration-parameter-name,
    readability-misleading-indentation,
    readability-redundant-control-flow,
    readability-redundant-smartptr-get,
    readability-string-compare,
WarningsAsErrors: >
    *,
    -clang-diagnostic-unused-command-line-argument
HeaderFilterRegex: '.*'
...

# Disabled checks:
#
# clang-analyzer-*:
#
# performance-*
# bugprone-*
# cert-*
# misc-*
# readability-*
#
# Checks marked with @ should be reenabled first
# (the effort is minimal).
#
# modernize-avoid-c-arrays:
# @ modernize-concat-nested-namespaces:
#   Note: added in c++17
# modernize-deprecated-headers:
#   Advises to use <cheader> instead of <header.h> for
#   legacy headers
# modernize-loop-convert:
# @ modernize-pass-by-value:
# @ modernize-raw-string-literal:
#   Note: added in c++11
# @ modernize-redundant-void-arg:
# modernize-return-braced-init-list:
# @ modernize-unary-static-assert:
#   Note: added in c++17
#   The message argument can be omitted when it is empty
# @ modernize-use-auto:
#   Advises to use auto when initializing with a cast to
#   avoid duplicating the type name
# modernize-use-default-member-init:
#   Note: added in c++11
#   Advises to use a default initializer in
#   member declarations
# @ modernize-use-emplace:
# @ modernize-use-equals-default:
#   Note: added in c++11
#   Advises to use '= default' for empty constructors or
#   destructors '{}'
# modernize-use-nodiscard:
#   Note: added in c++17
# @ modernize-use-override:
# modernize-use-trailing-return-type:
#   Note: added in c++11
#   Used to delay the writing of the return type
#   to after the function parameters; does not make
#   sense to generalise its use.
# modernize-use-using:
#   Note: added in c++11
#   Advises to use 'using' instead of 'typedef'