-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.clang-tidy
86 lines (86 loc) · 3.75 KB
/
.clang-tidy
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
---
# Why disable some?
# blanket disables:
# mostly very specific warnings, rarely actionable here
# cert-err33-c
# Only fprintf is used for debug output
# cppcoreguidelines-avoid-const-or-ref-data-members
# Current architecture is built around storing refs to things that live longer,
# changing those to raw-pointers don't really make it better. The desing might be
# changed in the future and this warning could be enabled again.
# cppcoreguidelines-avoid-magic-numbers, readability-magic-numbers:
# Requiring a named constant for a default value seems riddiculous
# The constant would be named ~identically to the variable
# cppcoreguidelines-avoid-do-while
# Used in macros
# cppcoreguidelines-macro-usage:
# Situational, for dependencies only
# cppcoreguidelines-non-private-member-variables-in-classes, misc-non-private-member-variables-in-classes:
# Having a trivial public setter is dumb.
# cppcoregoudelines-pro-bounds-*:
# Span could be nice, but the interface is noisy at best and needs a
# separate enumeration for index in for-auto
# cppcoreguidelines-pro-type-reinterpret-cast:
# Arbitrary data is stored as uint8_t/unsigned char in e.g. tinygltf
# cppcoreguidelines-pro-type-union-access:
# glm
# cppcoreguidelines-pro-type-vararg:
# fprintf, I really don't like formatting with streams
# cppcoreguidelines-rvalue-reference-param-not-moved
# false positives from WHEELS_MOV
# TODO: Is there a way to annotate the macro like custom asserts?
# misc-no-recursion
# I do use recursion in places
# misc-include-cleaner
# Not available on my laptop yet so let's skip it for now
# modernize-use-trailing-return-type:
# Haven't touched professionally, best not add 'noise'
# modernize-use-auto
# Let's not. Better be explicit and consistent unless types are really, really long.
# readability-braces-around-statements:
# clang-format and indentation makes this moot
# readability-function-cognitive-complexity:
# Arguable false positives in scene parsing
# readability-identifier-length
# e.g. dt for time deltas, cb for command buffer is readable enough in context
# readability-static-accessed-through-instance
# Valid use when accessing e.g. the capacity of a compile time array, where using the
# type is both verbose and prone to becoming wrong if the instance's template params change
# readability-uppercase-literal-suffix:
# Only really needed for 'l' and my font/highlighting is clear even if I use it
Checks: "*,
-abseil-*,
-altera-*,
-android-*,
-fuchsia-*,
-google-*,
-hicpp-*,
-llvm*,
-zircon-*,
-cert-err33-c,
-cppcoreguidelines-avoid-const-or-ref-data-members,
-cppcoreguidelines-avoid-do-while,
-cppcoreguidelines-avoid-magic-numbers,
-cppcoreguidelines-macro-usage,
-cppcoreguidelines-non-private-member-variables-in-classes,
-cppcoreguidelines-pro-bounds-constant-array-index,
-cppcoreguidelines-pro-bounds-pointer-arithmetic,
-cppcoreguidelines-pro-type-reinterpret-cast,
-cppcoreguidelines-pro-type-union-access,
-cppcoreguidelines-pro-type-vararg,
-cppcoreguidelines-rvalue-reference-param-not-moved,
-misc-include-cleaner,
-misc-non-private-member-variables-in-classes,
-misc-no-recursion,
-modernize-use-trailing-return-type,
-modernize-use-auto,
-readability-braces-around-statements,
-readability-function-cognitive-complexity,
-readability-identifier-length,
-readability-magic-numbers,
-readability-static-accessed-through-instance,
-readability-uppercase-literal-suffix
"
WarningsAsErrors: '*'
HeaderFilterRegex: '.*[/\\]+prosper[/\\]+src[/\\]+.*\.hpp'
FormatStyle: file