From 0841a9dda069a898e9a243bcd9ab66eb112a5e52 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 28 Feb 2018 02:59:20 +0000 Subject: A few release notes updates for C++ support in Clang 6.0. git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_60@326297 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/ReleaseNotes.rst | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst index 5c242d4294..5da2bb49f1 100644 --- a/docs/ReleaseNotes.rst +++ b/docs/ReleaseNotes.rst @@ -174,6 +174,34 @@ C++ Language Changes in Clang conforming GNU extensions. Projects incompatible with C++14 can add ``-std=gnu++98`` to their build settings to restore the previous behaviour. +- Added support for some features from the C++ standard after C++14 + (provisionally known as C++2a but expected to be C++20). This support can be + enabled with the ``-std=c++2a`` flag. This enables: + + - Support for ``__VA_OPT__``, to allow variadic macros to easily provide + different expansions when they are invoked without variadic arguments. + + - Recognition of the ``<=>`` token (the C++2a three-way comparison operator). + + - Support for default member initializers for bit-fields. + + - Lambda capture of ``*this``. + + - Pointer-to-member calls using ``const &``-qualified pointers on temporary objects. + + All of these features other than ``__VA_OPT__`` and ``<=>`` are made + available with a warning in earlier C++ language modes. + +- A warning has been added for a ``<=`` token followed immediately by a ``>`` + character. Code containing such constructs will change meaning in C++2a due + to the addition of the ``<=>`` operator. + +- Clang implements the "destroying operator delete" feature described in C++ + committee paper `P0722R1 + `, + which is targeting inclusion in C++2a but has not yet been voted into the C++ + working draft. Support for this feature is enabled by the presence of the + standard library type ``std::destroying_delete_t``. OpenCL C Language Changes in Clang ---------------------------------- -- cgit v1.2.3