[libcxx-commits] [libcxx] [libc++] cv-qualified types in atomic and atomic_ref (P3323R1) (PR #121414)

A. Jiang via libcxx-commits libcxx-commits at lists.llvm.org
Sat Jan 4 08:19:13 PST 2025


================
@@ -24,79 +24,126 @@
 #include "test_helper.h"
 #include "test_macros.h"
 
-template <typename T>
+template <typename T, typename U>
+concept has_compare_exchange_strong_1 =
+    requires { std::declval<T>().compare_exchange_strong(std::declval<U&>(), std::declval<U>()); };
----------------
frederick-vs-ja wrote:

Test failures indicated that inclusion of `<utility>` (providing `declval`) is missing. Ditto for `store.pass.hpp`.

But I wonder whether it would be better to use parameter list in requires-expressions to avoid `declval`.

https://github.com/llvm/llvm-project/pull/121414


More information about the libcxx-commits mailing list