PR c++/86728 - C variadic generic lambda.
[official-gcc.git] / gcc / testsuite / g++.dg / concepts / req16.C
blobee80da078cd9d410a3ed1144486b05a8e3061f4a
1 // PR c++/66988
2 // { dg-options "-std=c++17 -fconcepts" }
4 #include <type_traits>
6 template <template <class> class T, class U>
7 concept bool _Valid = requires { typename T<U>; };
9 template <class T>
10 using __t = typename T::type;
12 template <class T>
13 struct __has_type : std::false_type { };
15 template <class T>
16   requires _Valid<__t, T>
17 struct __has_type<T> : std::true_type { };
19 static_assert(!__has_type<int>(), "");