2 // { dg-do compile { target c++17 } }
3 // { dg-options "-fconcepts" }
5 template <class T, class...Args>
6 concept _Constructible_ =
7 requires (Args&&...args)
9 T{ ((Args&&)(args))... };
12 template <class T, class...Args>
13 constexpr bool _constructible_() { return false; }
15 template<typename T, typename... Args>
16 requires _Constructible_<T, Args...>
17 constexpr bool _constructible_() { return true; }
26 static_assert(_constructible_<S, int, char const *>(), "");