diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2019-10-03 00:39:37 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2019-10-03 00:39:37 +0000 |
commit | 6d2412c7e23eb840c4020180ae4de0ac34a25611 (patch) | |
tree | 1cc4c8829ec3d523b763f04b36ffc7a9322c1789 | |
parent | a706bc7c31fd2ea07ccc981179b565bf2fc7faf5 (diff) | |
download | clang-6d2412c7e23eb840c4020180ae4de0ac34a25611.tar.gz |
Mark P0784R7 as complete and start defining its feature-test macro.
Note that this only covers the language side of this feature. (The
library side has its own feature test macro.)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@373548 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Frontend/InitPreprocessor.cpp | 1 | ||||
-rw-r--r-- | test/Lexer/cxx-features.cpp | 4 | ||||
-rwxr-xr-x | www/cxx_status.html | 3 |
3 files changed, 6 insertions, 2 deletions
diff --git a/lib/Frontend/InitPreprocessor.cpp b/lib/Frontend/InitPreprocessor.cpp index 95d9f62c60..6a3c898d8c 100644 --- a/lib/Frontend/InitPreprocessor.cpp +++ b/lib/Frontend/InitPreprocessor.cpp @@ -543,6 +543,7 @@ static void InitializeCPlusPlusFeatureTestMacros(const LangOptions &LangOpts, // C++20 features. if (LangOpts.CPlusPlus2a) { Builder.defineMacro("__cpp_conditional_explicit", "201806L"); + Builder.defineMacro("__cpp_constexpr_dynamic_alloc", "201907L"); Builder.defineMacro("__cpp_constinit", "201907L"); } if (LangOpts.Char8) diff --git a/test/Lexer/cxx-features.cpp b/test/Lexer/cxx-features.cpp index cda6f888cb..868ec24a1d 100644 --- a/test/Lexer/cxx-features.cpp +++ b/test/Lexer/cxx-features.cpp @@ -34,6 +34,10 @@ #error "wrong value for __cpp_char8_t" #endif +#if check(constexpr_dynamic_alloc, 0, 0, 0, 0, 201907) +#error "wrong value for __cpp_constexpr_dynamic_alloc" +#endif + #if check(constinit, 0, 0, 0, 0, 201907) #error "wrong value for __cpp_constinit" #endif diff --git a/www/cxx_status.html b/www/cxx_status.html index cebe2ed136..041d6aa242 100755 --- a/www/cxx_status.html +++ b/www/cxx_status.html @@ -1003,14 +1003,13 @@ as the draft C++2a standard evolves. </tr> <tr> <!-- from Cologne --> <td><a href="http://wg21.link/p1331r2">P1331R2</a></td> - <td rowspan="2" class="svn" align="center">SVN</td> + <td rowspan="3" class="svn" align="center">SVN</td> </tr> <tr> <td><a href="http://wg21.link/p1668r1">P1668R1</a></td> </tr> <tr> <td><a href="http://wg21.link/p0784r7">P0784R7</a></td> - <td class="partial" align="center">Partial</td> </tr> <tr> <td>Prohibit aggregates with user-declared constructors</td> |