Skip to content
Snippets Groups Projects
Commit 0841a9dd authored by Richard Smith's avatar Richard Smith
Browse files

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
parent e3acef81
No related branches found
No related tags found
No related merge requests found
...@@ -174,6 +174,34 @@ C++ Language Changes in Clang ...@@ -174,6 +174,34 @@ C++ Language Changes in Clang
conforming GNU extensions. Projects incompatible with C++14 can add conforming GNU extensions. Projects incompatible with C++14 can add
``-std=gnu++98`` to their build settings to restore the previous behaviour. ``-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
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0722r1.html>`,
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 OpenCL C Language Changes in Clang
---------------------------------- ----------------------------------
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment