@@ -81,8 +81,6 @@ Miscellaneous
81
81
Improvements to clang-doc
82
82
-------------------------
83
83
84
- - The default executor was changed to standalone to match other tools.
85
-
86
84
Improvements to clang-query
87
85
---------------------------
88
86
@@ -96,134 +94,15 @@ The improvements are...
96
94
Improvements to clang-tidy
97
95
--------------------------
98
96
99
- - Change to Python 3 in the shebang of `add_new_check.py ` and `rename_check.py `,
100
- as the existing code is not compatible with Python 2.
101
-
102
- - Fix a minor bug in `add_new_check.py ` to only traverse subdirectories
103
- when updating the list of checks in the documentation.
104
-
105
- - Deprecate the global configuration file option `AnalyzeTemporaryDtors `,
106
- which is no longer in use. The option will be fully removed in
107
- :program: `clang-tidy ` version 18.
108
-
109
97
New checks
110
98
^^^^^^^^^^
111
99
112
- - New :doc: `bugprone-suspicious-realloc-usage
113
- <clang-tidy/checks/bugprone/suspicious-realloc-usage>` check.
114
-
115
- Finds usages of ``realloc `` where the return value is assigned to the
116
- same expression as passed to the first argument.
117
-
118
- - New :doc: `cppcoreguidelines-avoid-const-or-ref-data-members
119
- <clang-tidy/checks/cppcoreguidelines/avoid-const-or-ref-data-members>` check.
120
-
121
- Warns when a struct or class uses const or reference (lvalue or rvalue) data members.
122
-
123
- - New :doc: `cppcoreguidelines-avoid-do-while
124
- <clang-tidy/checks/cppcoreguidelines/avoid-do-while>` check.
125
-
126
- Warns when using ``do-while `` loops.
127
-
128
- - New :doc: `cppcoreguidelines-avoid-reference-coroutine-parameters
129
- <clang-tidy/checks/cppcoreguidelines/avoid-reference-coroutine-parameters>` check.
130
-
131
- Warns on coroutines that accept reference parameters.
132
-
133
- - New :doc: `misc-use-anonymous-namespace
134
- <clang-tidy/checks/misc/use-anonymous-namespace>` check.
135
-
136
- Warns when using ``static `` function or variables at global scope, and suggests
137
- moving them into an anonymous namespace.
138
-
139
- - New :doc: `bugprone-standalone-empty <clang-tidy/checks/bugprone/standalone-empty >` check.
140
-
141
- Warns when `empty() ` is used on a range and the result is ignored. Suggests `clear() `
142
- if it is an existing member function.
143
-
144
100
New check aliases
145
101
^^^^^^^^^^^^^^^^^
146
102
147
- - New alias :doc: `cert-msc54-cpp
148
- <clang-tidy/checks/cert/msc54-cpp>` to
149
- :doc: `bugprone-signal-handler
150
- <clang-tidy/checks/bugprone/signal-handler>` was added.
151
-
152
-
153
103
Changes in existing checks
154
104
^^^^^^^^^^^^^^^^^^^^^^^^^^
155
105
156
- - Fixed a false positive in :doc: `bugprone-assignment-in-if-condition
157
- <clang-tidy/checks/bugprone/assignment-in-if-condition>` check when there
158
- was an assignement in a lambda found in the condition of an ``if ``.
159
-
160
- - Improved :doc: `bugprone-signal-handler
161
- <clang-tidy/checks/bugprone/signal-handler>` check. Partial
162
- support for C++14 signal handler rules was added. Bug report generation was
163
- improved.
164
-
165
- - Fixed a false positive in :doc: `cppcoreguidelines-pro-type-member-init
166
- <clang-tidy/checks/cppcoreguidelines/pro-type-member-init>` when warnings
167
- would be emitted for uninitialized members of an anonymous union despite
168
- there being an initializer for one of the other members.
169
-
170
- - Fixed false positives in :doc: `google-objc-avoid-throwing-exception
171
- <clang-tidy/checks/google/objc-avoid-throwing-exception>` check for exceptions
172
- thrown by code emitted from macros in system headers.
173
-
174
- - Improved :doc: `misc-redundant-expression <clang-tidy/checks/misc/redundant-expression >`
175
- check.
176
-
177
- The check now skips concept definitions since redundant expressions still make sense
178
- inside them.
179
-
180
- - Improved :doc: `modernize-loop-convert <clang-tidy/checks/modernize/loop-convert >`
181
- to check for container functions ``begin ``/``end `` etc on base classes of the container
182
- type, instead of only as direct members of the container type itself.
183
-
184
- - Improved :doc: `modernize-use-emplace <clang-tidy/checks/modernize/use-emplace >`
185
- check.
186
-
187
- The check now supports detecting inefficient invocations of ``push `` and
188
- ``push_front `` on STL-style containers and replacing them with ``emplace ``
189
- or ``emplace_front ``.
190
-
191
- The check now supports detecting alias cases of ``push_back `` ``push `` and
192
- ``push_front `` on STL-style containers and replacing them with ``emplace_back ``,
193
- ``emplace `` or ``emplace_front ``.
194
-
195
- - Improved :doc: `modernize-use-equals-default <clang-tidy/checks/modernize/use-equals-default >`
196
- check.
197
-
198
- The check now skips unions/union-like classes since in this case a default constructor
199
- with empty body is not equivalent to the explicitly defaulted one, variadic constructors
200
- since they cannot be explicitly defaulted. The check also skips copy assignment operators
201
- with nonstandard return types, template constructors, private/protected default constructors
202
- for C++17 or earlier. The automatic fixit has been adjusted to avoid adding superfluous
203
- semicolon. The check is restricted to C++11 or later.
204
-
205
- - Change the default behavior of :doc: `readability-avoid-const-params-in-decls
206
- <clang-tidy/checks/readability/avoid-const-params-in-decls>` to not
207
- warn about `const ` value parameters of declarations inside macros.
208
-
209
- - Fixed crashes in :doc: `readability-braces-around-statements
210
- <clang-tidy/checks/readability/braces-around-statements>` and
211
- :doc: `readability-simplify-boolean-expr <clang-tidy/checks/readability/simplify-boolean-expr >`
212
- when using a C++23 ``if consteval `` statement.
213
-
214
- - Change the behavior of :doc: `readability-const-return-type
215
- <clang-tidy/checks/readability/const-return-type>` to not
216
- warn about `const ` return types in overridden functions since the derived
217
- class cannot always choose to change the function signature.
218
-
219
- - Change the default behavior of :doc: `readability-const-return-type
220
- <clang-tidy/checks/readability/const-return-type>` to not
221
- warn about `const ` value parameters of declarations inside macros.
222
-
223
- - Support removing ``c_str `` calls from ``std::string_view `` constructor calls in
224
- :doc: `readability-redundant-string-cstr <clang-tidy/checks/readability/redundant-string-cstr >`
225
- check.
226
-
227
106
Removed checks
228
107
^^^^^^^^^^^^^^
229
108
0 commit comments