[libcxx-commits] [libcxx] [libc++] <experimental/simd> Add assignment operator of simd reference (PR #70020)

via libcxx-commits libcxx-commits at lists.llvm.org
Tue Oct 24 03:36:52 PDT 2023


================
@@ -91,6 +91,14 @@ _LIBCPP_HIDE_FROM_ABI constexpr bool __can_generate(index_sequence<_Idxes...>) {
 template <class _Tp, class _Generator, std::size_t _Size>
 inline constexpr bool __can_generate_v = experimental::__can_generate<_Tp, _Generator>(make_index_sequence<_Size>());
 
+template <class _Tp, class _Up, class = void>
+inline constexpr bool __reference_well_formed = false;
+
+template <class _Tp, class _Up>
+inline constexpr bool
+    __reference_well_formed<_Tp, _Up, std::void_t<decltype(declval<_Tp&>() = std::forward<_Up>(declval<_Up&&>()))>> =
----------------
philnik777 wrote:

This looks to me a lot like `is_assignable_v<_Tp&, _Up&&>`.

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


More information about the libcxx-commits mailing list