You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Pretty-printing of templates with inherited (i.e. specified in a previous
127
-
redeclaration) default arguments has been fixed.
128
-
129
126
Clang Frontend Potentially Breaking Changes
130
127
-------------------------------------------
131
128
- Members of anonymous unions/structs are now injected as ``IndirectFieldDecl``
@@ -145,28 +142,20 @@ What's New in Clang |release|?
145
142
C++ Language Changes
146
143
--------------------
147
144
148
-
- A new family of builtins ``__builtin_*_synthesizes_from_spaceship`` has been added. These can be queried to know
149
-
whether the ``<`` (``lt``), ``>`` (``gt``), ``<=`` (``le``), or ``>=`` (``ge``) operators are synthesized from a
145
+
- A new family of builtins ``__builtin_*_synthesises_from_spaceship`` has been added. These can be queried to know
146
+
whether the ``<`` (``lt``), ``>`` (``gt``), ``<=`` (``le``), or ``>=`` (``ge``) operators are synthesised from a
150
147
``<=>``. This makes it possible to optimize certain facilities by using the ``<=>`` operation directly instead of
151
148
doing multiple comparisons.
152
149
153
150
C++2c Feature Support
154
151
^^^^^^^^^^^^^^^^^^^^^
155
152
156
-
- Started the implementation of `P2686R5 <https://wg21.link/P2686R5>`_ Constexpr structured bindings.
157
-
At this timem, references to constexpr and decomposition of *tuple-like* types are not supported
158
-
(only arrays and aggregates are).
159
-
160
153
C++23 Feature Support
161
154
^^^^^^^^^^^^^^^^^^^^^
162
155
163
156
C++20 Feature Support
164
157
^^^^^^^^^^^^^^^^^^^^^
165
158
166
-
- Clang now normalizes constraints before checking whether they are satisfied, as mandated by the standard.
167
-
As a result, Clang no longer incorrectly diagnoses substitution failures in template arguments only
168
-
used in concept-ids, and produces better diagnostics for satisfaction failure. (#GH61811) (#GH135190)
169
-
170
159
C++17 Feature Support
171
160
^^^^^^^^^^^^^^^^^^^^^
172
161
@@ -224,10 +213,6 @@ Non-comprehensive list of changes in this release
224
213
conditional memory loads from vectors. Binds to the LLVM intrinsics of the
225
214
same name.
226
215
227
-
- Added ``__builtin_masked_gather`` and ``__builtin_masked_scatter`` for
228
-
conditional gathering and scattering operations on vectors. Binds to the LLVM
229
-
intrinsics of the same name.
230
-
231
216
- The ``__builtin_popcountg``, ``__builtin_ctzg``, and ``__builtin_clzg``
232
217
functions now accept fixed-size boolean vectors.
233
218
@@ -253,8 +238,6 @@ Non-comprehensive list of changes in this release
253
238
254
239
- ``__builtin_assume_dereferenceable`` now accepts non-constant size operands.
255
240
256
-
- Fixed a crash when the second argument to ``__builtin_assume_aligned`` was not constant (#GH161314)
257
-
258
241
New Compiler Flags
259
242
------------------
260
243
- New option ``-fno-sanitize-debug-trap-reasons`` added to disable emitting trap reasons into the debug info when compiling with trapping UBSan (e.g. ``-fsanitize-trap=undefined``).
@@ -281,9 +264,6 @@ Attribute Changes in Clang
281
264
attribute, allowing the attribute to only be attached to the declaration. Prior, this would be
282
265
treated as an error where the definition and declaration would have differing types.
283
266
284
-
- New format attributes ``gnu_printf``, ``gnu_scanf``, ``gnu_strftime`` and ``gnu_strfmon`` are added
285
-
as aliases for ``printf``, ``scanf``, ``strftime`` and ``strfmon``. (#GH16219)
286
-
287
267
Improvements to Clang's diagnostics
288
268
-----------------------------------
289
269
- Added a separate diagnostic group ``-Wfunction-effect-redeclarations``, for the more pedantic
@@ -308,8 +288,7 @@ Improvements to Clang's diagnostics
308
288
"format specifies type 'unsigned int' but the argument has type 'int', which differs in signedness [-Wformat-signedness]"
309
289
"signedness of format specifier 'u' is incompatible with 'c' [-Wformat-signedness]"
310
290
and the API-visible diagnostic id will be appropriate.
311
-
- Clang now produces better diagnostics for template template parameter matching
312
-
involving 'auto' template parameters.
291
+
313
292
- Fixed false positives in ``-Waddress-of-packed-member`` diagnostics when
314
293
potential misaligned members get processed before they can get discarded.
315
294
(#GH144729)
@@ -370,7 +349,6 @@ Bug Fixes in This Version
370
349
first parameter. (#GH113323).
371
350
- Fixed a crash with incompatible pointer to integer conversions in designated
0 commit comments