1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
// PR c++/70037 // { dg-do compile { target c++20 } } namespace std { template<typename> struct F { static constexpr bool value = false; }; template<typename T> struct tuple { constexpr tuple() requires (F<T>::value) {} explicit constexpr tuple() requires (F<T>::value) && (true) {} }; } using std::tuple; template struct std::tuple<tuple<int>>;