[clang] bc633a4 - Mark the major papers for C++20 consistent comparisons as "done", and
Richard Smith via cfe-commits
cfe-commits at lists.llvm.org
Sun Dec 15 22:20:57 PST 2019
Author: Richard Smith
Date: 2019-12-15T22:20:06-08:00
New Revision: bc633a42dd409dbeb456263e3388b8caa4680aa0
URL: https://github.com/llvm/llvm-project/commit/bc633a42dd409dbeb456263e3388b8caa4680aa0
DIFF: https://github.com/llvm/llvm-project/commit/bc633a42dd409dbeb456263e3388b8caa4680aa0.diff
LOG: Mark the major papers for C++20 consistent comparisons as "done", and
start publishing the corresponding feature-test macro.
Added:
Modified:
clang/lib/Frontend/InitPreprocessor.cpp
clang/test/Lexer/cxx-features.cpp
clang/www/cxx_status.html
Removed:
################################################################################
diff --git a/clang/lib/Frontend/InitPreprocessor.cpp b/clang/lib/Frontend/InitPreprocessor.cpp
index b1c7aed0d44e..79360f89fc82 100644
--- a/clang/lib/Frontend/InitPreprocessor.cpp
+++ b/clang/lib/Frontend/InitPreprocessor.cpp
@@ -546,6 +546,7 @@ static void InitializeCPlusPlusFeatureTestMacros(const LangOptions &LangOpts,
Builder.defineMacro("__cpp_conditional_explicit", "201806L");
Builder.defineMacro("__cpp_constexpr_dynamic_alloc", "201907L");
Builder.defineMacro("__cpp_constinit", "201907L");
+ Builder.defineMacro("__cpp_impl_three_way_comparison", "201907L");
}
if (LangOpts.Char8)
Builder.defineMacro("__cpp_char8_t", "201811L");
diff --git a/clang/test/Lexer/cxx-features.cpp b/clang/test/Lexer/cxx-features.cpp
index 868ec24a1d9f..077f3155fee9 100644
--- a/clang/test/Lexer/cxx-features.cpp
+++ b/clang/test/Lexer/cxx-features.cpp
@@ -46,6 +46,10 @@
#error "wrong value for __cpp_impl_destroying_delete"
#endif
+#if check(impl_three_way_comparison, 0, 0, 0, 0, 201907)
+#error "wrong value for __cpp_impl_three_way_comparison"
+#endif
+
// --- C++17 features ---
#if check(hex_float, 0, 0, 0, 201603, 201603)
diff --git a/clang/www/cxx_status.html b/clang/www/cxx_status.html
index 47f58727def8..3f7cfd1308bf 100755
--- a/clang/www/cxx_status.html
+++ b/clang/www/cxx_status.html
@@ -926,11 +926,10 @@ <h2 id="cxx20">C++2a implementation status</h2>
<tr>
<td rowspan="8">Consistent comparison (<tt>operator<=></tt>)</td>
<td><a href="https://wg21.link/p0515r3">P0515R3</a></td>
- <td class="partial" align="center">Partial</td>
+ <td rowspan="2" class="svn" align="center">SVN</td>
</tr>
<tr> <!-- from Jacksonville -->
<td><a href="https://wg21.link/p0905r1">P0905R1</a></td>
- <td class="svn" align="center">SVN</td>
</tr>
<tr> <!-- from Rapperswil -->
<td><a href="https://wg21.link/p1120r0">P1120R0</a></td>
More information about the cfe-commits
mailing list