[libcxx-commits] [libcxx] [libc++][test] Close LWG3045 (PR #93053)
via libcxx-commits
libcxx-commits at lists.llvm.org
Wed May 22 08:34:41 PDT 2024
https://github.com/huixie90 created https://github.com/llvm/llvm-project/pull/93053
None
>From ae9438669d5bb3b07ebfcbc8e17c34b40ce8b8ee Mon Sep 17 00:00:00 2001
From: Hui <hui.xie0621 at gmail.com>
Date: Wed, 22 May 2024 16:34:20 +0100
Subject: [PATCH] [libc++][test] Close LWG3045
---
libcxx/docs/Status/Cxx20Issues.csv | 2 +-
.../atomics.types.float/types.compile.pass.cpp | 3 +++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/libcxx/docs/Status/Cxx20Issues.csv b/libcxx/docs/Status/Cxx20Issues.csv
index db57b15256a62..5f83fa3a92e87 100644
--- a/libcxx/docs/Status/Cxx20Issues.csv
+++ b/libcxx/docs/Status/Cxx20Issues.csv
@@ -70,7 +70,7 @@
"`3041 <https://wg21.link/LWG3041>`__","Unnecessary ``decay``\ in ``reference_wrapper``\ ","Jacksonville","|Complete|",""
"`3042 <https://wg21.link/LWG3042>`__","``is_literal_type_v``\ should be inline","Jacksonville","|Complete|",""
"`3043 <https://wg21.link/LWG3043>`__","Bogus postcondition for ``filesystem_error``\ constructor","Jacksonville","|Complete|",""
-"`3045 <https://wg21.link/LWG3045>`__","``atomic<floating-point>``\ doesn't have ``value_type``\ or ``difference_type``\ ","Jacksonville","",""
+"`3045 <https://wg21.link/LWG3045>`__","``atomic<floating-point>``\ doesn't have ``value_type``\ or ``difference_type``\ ","Jacksonville","|Complete|","18.0"
"`3048 <https://wg21.link/LWG3048>`__","``transform_reduce(exec, first1, last1, first2, init)``\ discards execution policy","Jacksonville","|Complete|","17.0"
"`3051 <https://wg21.link/LWG3051>`__","Floating point classifications were inadvertently changed in P0175","Jacksonville","|Nothing To Do|",""
"`3075 <https://wg21.link/LWG3075>`__","``basic_string``\ needs deduction guides from ``basic_string_view``\ ","Jacksonville","|Complete|",""
diff --git a/libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/types.compile.pass.cpp b/libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/types.compile.pass.cpp
index 1a4e6dfe0b315..b38123628fe01 100644
--- a/libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/types.compile.pass.cpp
+++ b/libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/types.compile.pass.cpp
@@ -17,8 +17,11 @@
template <class T>
void test() {
+ // LWG 3045. atomic<floating-point> doesn't have value_type or difference_type
+ // https://cplusplus.github.io/LWG/issue3045
static_assert(std::is_same_v<typename std::atomic<T>::value_type, T>);
static_assert(std::is_same_v<typename std::atomic<T>::difference_type, T>);
+
static_assert(std::is_standard_layout_v<std::atomic<T>>);
static_assert(std::is_trivially_destructible_v<std::atomic<T>>);
}
More information about the libcxx-commits
mailing list