@@ -127,7 +127,7 @@ Bug Fixes
127
127
This fixes Issue `Issue 53488 <https://github.com/llvm/llvm-project/issues/53488 >`_.
128
128
- According to `CWG 1394 <https://wg21.link/cwg1394 >`_ and
129
129
`C++20 [dcl.fct.def.general]p2 <https://timsong-cpp.github.io/cppwp/n4868/dcl.fct.def#general-2.sentence-3 >`_,
130
- Clang should not diagnose incomplete types in function definitions if the function body is " = delete;" .
130
+ Clang should not diagnose incomplete types in function definitions if the function body is `` = delete; `` .
131
131
This fixes Issue `Issue 52802 <https://github.com/llvm/llvm-project/issues/52802 >`_.
132
132
- Unknown type attributes with a ``[[]] `` spelling are no longer diagnosed twice.
133
133
This fixes Issue `Issue 54817 <https://github.com/llvm/llvm-project/issues/54817 >`_.
@@ -163,7 +163,7 @@ Bug Fixes
163
163
promise_type body for coroutines if there is any allocation function
164
164
declaration in the scope of promise_type. Additionally, to implement CWG2585,
165
165
a coroutine will no longer generate a call to a global allocation function
166
- with the signature (std::size_t, p0, ..., pn).
166
+ with the signature `` (std::size_t, p0, ..., pn) `` .
167
167
This fixes Issue `Issue 54881 <https://github.com/llvm/llvm-project/issues/54881 >`_.
168
168
- Implement `CWG 2394 <https://wg21.link/cwg2394 >`_: Const class members
169
169
may be initialized with a defaulted default constructor under the same
@@ -202,7 +202,7 @@ Bug Fixes
202
202
considered to have one positive bit in order to represent the underlying
203
203
value. This effects whether we consider the store of the value one to be well
204
204
defined.
205
- - An operator introduced to the scope via a `using ` statement now correctly references this
205
+ - An operator introduced to the scope via a `` using ` ` statement now correctly references this
206
206
statement in clangd (hover over the symbol, jump to definition) as well as in the AST dump.
207
207
This also fixes `issue 55095 <https://github.com/llvm/llvm-project/issues/#55095 >`_ as a
208
208
side-effect.
@@ -305,7 +305,7 @@ Improvements to Clang's diagnostics
305
305
- When using class templates without arguments, clang now tells developers
306
306
that template arguments are missing in certain contexts.
307
307
This fixes `Issue 55962 <https://github.com/llvm/llvm-project/issues/55962 >`_.
308
- - Printable Unicode characters within `static_assert ` messages are no longer
308
+ - Printable Unicode characters within `` static_assert ` ` messages are no longer
309
309
escaped.
310
310
- The ``-Winfinite-recursion `` diagnostic no longer warns about
311
311
unevaluated operands of a ``typeid `` expression, as they are now
@@ -330,10 +330,10 @@ Improvements to Clang's diagnostics
330
330
Non-comprehensive list of changes in this release
331
331
-------------------------------------------------
332
332
333
- - Improve __builtin_dump_struct:
333
+ - Improve `` __builtin_dump_struct `` :
334
334
335
335
- Support bitfields in struct and union.
336
- - Improve the dump format, dump both bitwidth(if its a bitfield) and field
336
+ - Improve the dump format, dump both bitwidth (if its a bitfield) and field
337
337
value.
338
338
- Remove anonymous tag locations and flatten anonymous struct members.
339
339
- Beautify dump format, add indent for struct members.
@@ -346,8 +346,9 @@ Non-comprehensive list of changes in this release
346
346
custom formatting for non-aggregate types.
347
347
348
348
- Previously disabled sanitizer options now enabled by default:
349
- - ASAN_OPTIONS=detect_stack_use_after_return=1 (only on Linux).
350
- - MSAN_OPTIONS=poison_in_dtor=1.
349
+
350
+ - ``ASAN_OPTIONS=detect_stack_use_after_return=1 `` (only on Linux).
351
+ - ``MSAN_OPTIONS=poison_in_dtor=1 ``.
351
352
352
353
- Some type-trait builtins, such as ``__has_trivial_assign ``, have been documented
353
354
as deprecated for a while because their semantics don't mix well with post-C++11 type-traits.
@@ -451,9 +452,9 @@ Attribute Changes in Clang
451
452
``__attribute__((function_return("keep"))) `` was added. This is intended to
452
453
be used by the Linux kernel to mitigate RETBLEED.
453
454
454
- - Ignore the `__preferred_name__ ` attribute when writing for C++20 module interfaces.
455
+ - Ignore the `` __preferred_name__ ` ` attribute when writing for C++20 module interfaces.
455
456
This is a short-term workaround intentionally since clang doesn't take care of the
456
- serialization and deserialization of `__preferred_name__ `. See
457
+ serialization and deserialization of `` __preferred_name__ ` `. See
457
458
https://github.com/llvm/llvm-project/issues/56490 for example.
458
459
459
460
Windows Support
@@ -515,8 +516,8 @@ C++ Language Changes in Clang
515
516
unsigned character literals. This fixes `Issue 54886 <https://github.com/llvm/llvm-project/issues/54886 >`_.
516
517
- Stopped allowing constraints on non-template functions to be compliant with
517
518
dcl.decl.general p4.
518
- - Improved `` copy elision `` optimization. It's possible to apply `` NRVO ` ` for an object if at the moment when
519
- any return statement of this object is executed, the `` return slot ` ` won't be occupied by another object.
519
+ - Improved `copy elision ` optimization. It's possible to apply `NRVO ` for an object if at the moment when
520
+ any return statement of this object is executed, the `return slot ` won't be occupied by another object.
520
521
521
522
522
523
C++20 Feature Support
@@ -565,8 +566,8 @@ C++2b Feature Support
565
566
CUDA/HIP Language Changes in Clang
566
567
----------------------------------
567
568
568
- - Added `__noinline__ ` as a keyword to avoid diagnostics due to usage of
569
- `__attribute__((__noinline__)) ` in CUDA/HIP programs.
569
+ - Added `` __noinline__ ` ` as a keyword to avoid diagnostics due to usage of
570
+ `` __attribute__((__noinline__)) ` ` in CUDA/HIP programs.
570
571
571
572
Objective-C Language Changes in Clang
572
573
-------------------------------------
@@ -634,10 +635,10 @@ For targets without F16C feature or above, please make sure:
634
635
635
636
- Use GCC 12.0 and above if you are using libgcc.
636
637
- If you are using compiler-rt, use the same version with the compiler.
637
- Early versions provided FP16 builtins in a different ABI. A workaround is to use
638
- a small code snippet to check the ABI if you cannot make sure of it.
638
+ Early versions provided FP16 builtins in a different ABI. A workaround is to use
639
+ a small code snippet to check the ABI if you cannot make sure of it.
639
640
- If you are using downstream runtimes that provide FP16 conversions, update
640
- them with the new ABI.
641
+ them with the new ABI.
641
642
642
643
DWARF Support in Clang
643
644
----------------------
@@ -653,10 +654,10 @@ Arm and AArch64 Support in Clang
653
654
--------------------------------
654
655
655
656
- clang now supports the Cortex-M85 CPU, which can be chosen with
656
- `-mcpu=cortex-m85 `. By default, this has PACBTI turned on, but it can be
657
- disabled with `-mcpu=cortex-m85+nopacbti `.
657
+ `` -mcpu=cortex-m85 ` `. By default, this has PACBTI turned on, but it can be
658
+ disabled with `` -mcpu=cortex-m85+nopacbti ` `.
658
659
- clang now supports using C/C++ operators on sizeless SVE vectors such as
659
- `svint32_t `. The set of supported operators is shown in the table Vector
660
+ `` svint32_t ` `. The set of supported operators is shown in the table Vector
660
661
Operations found in the :ref: `Clang Language Extensions <Vector Operations >`
661
662
document.
662
663
@@ -716,10 +717,10 @@ clang-extdef-mapping
716
717
libclang
717
718
--------
718
719
719
- - Introduce new option `CLANG_FORCE_MATCHING_LIBCLANG_SOVERSION ` that defaults to ON.
720
+ - Introduce new option `` CLANG_FORCE_MATCHING_LIBCLANG_SOVERSION ` ` that defaults to ON.
720
721
This means that by default libclang's SOVERSION matches the major version of LLVM.
721
722
Setting this to OFF makes the SOVERSION be the ABI compatible version (currently 13).
722
- See `discussion<https://discourse.llvm.org/t/rationale-for-removing-versioned-libclang-middle-ground-to-keep-it-behind-option/64410> `_
723
+ See `discussion <https://discourse.llvm.org/t/rationale-for-removing-versioned-libclang-middle-ground-to-keep-it-behind-option/64410 >`_
723
724
here.
724
725
725
726
Static Analyzer
@@ -733,8 +734,8 @@ Static Analyzer
733
734
positives.
734
735
735
736
- Added a new checker ``alpha.unix.cstring.UninitializedRead `` this will check for uninitialized reads
736
- from common memory copy/manipulation functions such as ``memcpy ``, ``mempcpy ``, ``memmove ``, ``memcmp ``, `
737
- `strcmp``, ``strncmp ``, ``strcpy ``, ``strlen ``, ``strsep `` and many more. Although
737
+ from common memory copy/manipulation functions such as ``memcpy ``, ``mempcpy ``, ``memmove ``, ``memcmp ``,
738
+ `` strcmp ``, ``strncmp ``, ``strcpy ``, ``strlen ``, ``strsep `` and many more. Although
738
739
this checker currently is in list of alpha checkers due to a false positive.
739
740
740
741
- Added a new checker ``alpha.unix.Errno ``. This can find the first read
@@ -783,5 +784,5 @@ this release by going into the "``clang/docs/``" directory in the Clang
783
784
tree.
784
785
785
786
If you have any questions or comments about Clang, please feel free to
786
- contact us on the Discourse forums (Clang Frontend category)
787
+ contact us on the ` Discourse forums (Clang Frontend category)
787
788
<https://discourse.llvm.org/c/clang/6> `_.
0 commit comments