-
Notifications
You must be signed in to change notification settings - Fork 20
Expand file tree
/
Copy path.clang-tidy
More file actions
92 lines (92 loc) · 3.21 KB
/
Copy path.clang-tidy
File metadata and controls
92 lines (92 loc) · 3.21 KB
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
---
# Explicitly disabled checks:
#
# bugprone-forwarding-reference-overload:
# Does not take into account the use of concepts, so it has many false
# positives.
#
# clang-diagnostic-unqualified-std-cast-call:
# We have a using namespace std in our cpp files and do not want to
# qualitfy std::move all the time
#
# misc-definitions-in-headers:
# Does not work correctly with constexpr variables which are implicitly
# inline, so should not lead to ODR violations.
#
# performance-move-const-arg:
# The constructor of RuntimeString takes data128_t by rvalue reference on
# purpose. This checks warns every time this constructor is used. Also, in
# some move constructors we use member(move(arg)) where the type of
# member/arg is trivially-copyable which this check doesn't like either.
#
# performance-no-int-to-ptr:
# We use uintptr casts in many places, so this leads to many false positives.
#
# performance-unnecessary-copy-initialization,
# performance-unnecessary-value-param:
# We have a few types that are not trivially copyable (CGType, RTPtr,
# FunctionRef) but we want to pass them around by value anyway. Because of
# that, this check generates a lot of noise.
#
# clang-analyzer-cplusplus.NewDeleteLeaks:
# This check cannot track allocated pointers when they are casted to uintptr
# or void*, so it will often mistakenly complain about leaks.
Checks: >
bugprone-assert-side-effect,
bugprone-copy-constructor-init,
bugprone-dangling-handle,
bugprone-infinite-loop,
bugprone-integer-division,
bugprone-misplaced-widening-cast,
bugprone-parent-virtual-call,
bugprone-posix-return,
bugprone-redundant-branch-condition,
bugprone-reserved-identifier,
bugprone-string-constructor,
bugprone-string-integer-assignment,
bugprone-string-literal-with-embedded-nul,
bugprone-suspicious-include,
bugprone-suspicious-memory-comparison,
bugprone-suspicious-memset-usage,
bugprone-suspicious-semicolon,
bugprone-swapped-arguments,
bugprone-terminating-continue,
bugprone-throw-keyword-missing,
bugprone-too-small-loop-variable,
bugprone-undefined-memory-manipulation,
bugprone-undelegated-constructor,
bugprone-unhandled-self-assignment,
bugprone-unused-raii,
bugprone-unused-return-value,
bugprone-use-after-move,
bugprone-virtual-near-miss,
-bugprone-forwarding-reference-overload,
-clang-diagnostic-unqualified-std-cast-call,
concurrency-mt-unsafe,
misc-new-delete-overloads,
misc-non-copyable-objects,
misc-redundant-expression,
misc-static-assert,
misc-throw-by-value-catch-by-reference,
misc-uniqueptr-reset-release,
misc-unused-alias-decls,
misc-unused-parameters,
misc-unused-using-decls,
-misc-definitions-in-headers,
modernize-use-override,
modernize-use-using,
performance-*,
-performance-move-const-arg,
-performance-no-int-to-ptr,
-performance-unnecessary-copy-initialization,
-performance-unnecessary-value-param,
readability-container-data-pointer,
-clang-analyzer-cplusplus.NewDeleteLeaks,
CheckOptions:
- key: modernize-use-override.IgnoreDestructors
value: 'true'
- key: modernize-use-override.AllowOverrideAndFinal
value: 'true'
- key: concurrency-mt-unsafe.FunctionSet
value: 'glibc'
HeaderFilterRegex: '.*(codegen|plan|rts|infra)/.*'