PR c++/86728 - C variadic generic lambda.
[official-gcc.git] / gcc / testsuite / g++.dg / concepts / friend2.C
blob5f14905a738624bcad9bf99686755e62f32e0e87
1 // { dg-options "-std=c++17 -fconcepts" }
3 template<typename T>
4   concept bool Eq() { return requires(T t) { t == t; }; }
6 template<Eq T> struct Foo { };
8 template<typename T>
9   struct S { // { dg-error "constraint failure" }
10     template<Eq U> friend class Bar;
12     friend class Foo<T>;
13   };
15 struct X { };
17 int main() {
18   S<int> si; // OK
19   S<X> sx;