[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;
----------------
philnik777 wrote:

```suggestion
      return _Or<reference_constructs_from_temporary<_Tp, _Up&&>...>::value;
```

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


More information about the libcxx-commits mailing list