@@ -147,7 +147,7 @@ C++ Specific Potentially Breaking Changes
147147 // Fixed version:
148148 unsigned operator""_udl_name(unsigned long long);
149149
150- - Clang will now produce an error diagnostic when [[clang::lifetimebound]] is
150+ - Clang will now produce an error diagnostic when `` [[clang::lifetimebound]] `` is
151151 applied on a parameter or an implicit object parameter of a function that
152152 returns void. This was previously ignored and had no effect. (#GH107556)
153153
@@ -156,6 +156,21 @@ C++ Specific Potentially Breaking Changes
156156 // Now diagnoses with an error.
157157 void f(int& i [[clang::lifetimebound]]);
158158
159+ - Clang will now produce an error diagnostic when ``[[clang::lifetimebound]] ``
160+ is applied on a type (instead of a function parameter or an implicit object
161+ parameter); this includes the case when the attribute is specified for an
162+ unnamed function parameter. These were previously ignored and had no effect.
163+ (#GH118281)
164+
165+ .. code-block :: c++
166+
167+ // Now diagnoses with an error.
168+ int* [[clang::lifetimebound]] x;
169+ // Now diagnoses with an error.
170+ void f(int* [[clang::lifetimebound]] i);
171+ // Now diagnoses with an error.
172+ void g(int* [[clang::lifetimebound]]);
173+
159174- Clang now rejects all field accesses on null pointers in constant expressions. The following code
160175 used to work but will now be rejected:
161176
@@ -947,6 +962,9 @@ Miscellaneous Clang Crashes Fixed
947962- Fixed internal assertion firing when a declaration in the implicit global
948963 module is found through ADL. (GH#109879)
949964
965+ - Fixed a crash when an unscoped enumeration declared by an opaque-enum-declaration within a class template
966+ with a dependent underlying type is subject to integral promotion. (#GH117960)
967+
950968OpenACC Specific Changes
951969------------------------
952970
@@ -1069,6 +1087,12 @@ CUDA Support
10691087- Clang now supports CUDA SDK up to 12.6
10701088- Added support for sm_100
10711089- Added support for `__grid_constant__ ` attribute.
1090+ - CUDA now uses the new offloading driver by default. The new driver supports
1091+ device-side LTO, interoperability with OpenMP and other languages, and native ``-fgpu-rdc ``
1092+ support with static libraries. The old behavior can be returned using the
1093+ ``--no-offload-new-driver `` flag. The binary format is no longer compatible
1094+ with the NVIDIA compiler's RDC-mode support. More information can be found at:
1095+ https://clang.llvm.org/docs/OffloadingDesign.html
10721096
10731097AIX Support
10741098^^^^^^^^^^^
@@ -1162,6 +1186,8 @@ libclang
11621186--------
11631187- Add ``clang_isBeforeInTranslationUnit ``. Given two source locations, it determines
11641188 whether the first one comes strictly before the second in the source code.
1189+ - Add ``clang_getTypePrettyPrinted ``. It allows controlling the PrintingPolicy used
1190+ to pretty-print a type.
11651191
11661192Static Analyzer
11671193---------------
@@ -1302,10 +1328,13 @@ Sanitizers
13021328Python Binding Changes
13031329----------------------
13041330- Fixed an issue that led to crashes when calling ``Type.get_exception_specification_kind ``.
1305- - Added bindings for ``clang_getCursorPrettyPrinted `` and related functions,
1306- which allow changing the formatting of pretty-printed code.
1307- - Added binding for ``clang_Cursor_isAnonymousRecordDecl ``, which allows checking if
1308- a declaration is an anonymous union or anonymous struct.
1331+ - Added ``Cursor.pretty_printed ``, a binding for ``clang_getCursorPrettyPrinted ``,
1332+ and related functions, which allow changing the formatting of pretty-printed code.
1333+ - Added ``Cursor.is_anonymous_record_decl ``, a binding for
1334+ ``clang_Cursor_isAnonymousRecordDecl ``, which allows checking if a
1335+ declaration is an anonymous union or anonymous struct.
1336+ - Added ``Type.pretty_printed`, a binding for ``clang_getTypePrettyPrinted ``,
1337+ which allows changing the formatting of pretty-printed types.
13091338
13101339OpenMP Support
13111340--------------
0 commit comments