[libcxx-commits] [libcxx] [libc++] P2255R2: Add deleted tuple constructor overloads (PR #205379)
Nikolas Klauser via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Aug 24 00:47:17 PDT 2026
================
@@ -610,6 +610,28 @@ public:
_IsNotSame<__remove_cvref_t<_Up...[0]>, tuple>>, // extension to allow mis-behaved user constructors
is_constructible<_Tp, _Up>... > {};
+# if _LIBCPP_STD_VER >= 23
+ template <class... _Up>
+ static consteval bool __constructs_dangling_reference() {
+ if constexpr (sizeof...(_Up) == sizeof...(_Tp))
+ return _Or<std::reference_constructs_from_temporary<_Tp, _Up&&>...>::value;
+ else
+ return false;
+ }
+
+ template <class _Source, class _DecayedSource = __remove_cvref_t<_Source> >
+ static constexpr bool __has_danglings_from_tuple_like = false;
----------------
philnik777 wrote:
Please also update these names.
https://github.com/llvm/llvm-project/pull/205379
More information about the libcxx-commits
mailing list