@@ -93,6 +93,11 @@ C++ Specific Potentially Breaking Changes
93
93
few users and can be written as ``__is_same(__remove_cv(T), decltype(nullptr)) ``,
94
94
which GCC supports as well.
95
95
96
+ - The type trait builtin ``__is_referenceable `` has been deprecated, since it has
97
+ very few users and all the type traits that could benefit from it in the
98
+ standard library already have their own bespoke builtins. It will be removed in
99
+ Clang 21.
100
+
96
101
- Clang will now correctly diagnose as ill-formed a constant expression where an
97
102
enum without a fixed underlying type is set to a value outside the range of
98
103
the enumeration's values.
@@ -310,7 +315,7 @@ C++23 Feature Support
310
315
311
316
- Extend lifetime of temporaries in mem-default-init for P2718R0. Clang now fully
312
317
supports `P2718R0 Lifetime extension in range-based for loops <https://wg21.link/P2718R0 >`_.
313
-
318
+
314
319
- ``__cpp_explicit_this_parameter `` is now defined. (#GH82780)
315
320
316
321
C++20 Feature Support
@@ -717,7 +722,7 @@ Improvements to Clang's diagnostics
717
722
718
723
- Clang now diagnoses dangling references for C++20's parenthesized aggregate initialization (#101957).
719
724
720
- - Fixed a bug where Clang would not emit ``-Wunused-private-field `` warnings when an unrelated class
725
+ - Fixed a bug where Clang would not emit ``-Wunused-private-field `` warnings when an unrelated class
721
726
defined a defaulted comparison operator (#GH116270).
722
727
723
728
.. code-block :: c++
@@ -937,7 +942,7 @@ Bug Fixes to C++ Support
937
942
- Fixed an assertion failure caused by invalid default argument substitutions in non-defining
938
943
friend declarations. (#GH113324)
939
944
- Fix a crash caused by incorrect argument position in merging deduced template arguments. (#GH113659)
940
- - Fixed a parser crash when using pack indexing as a nested name specifier. (#GH119072)
945
+ - Fixed a parser crash when using pack indexing as a nested name specifier. (#GH119072)
941
946
- Fixed a null pointer dereference issue when heuristically computing ``sizeof...(pack) `` expressions. (#GH81436)
942
947
- Fixed an assertion failure caused by mangled names with invalid identifiers. (#GH112205)
943
948
- Fixed an incorrect lambda scope of generic lambdas that caused Clang to crash when computing potential lambda
0 commit comments