c++: change -fconcepts to mean C++20 concepts
[official-gcc.git] / gcc / testsuite / g++.dg / cpp2a / concepts-pr66091.C
blobcd3acf77876b0da4e08ca0b315e141a26f4975f9
1 // PR c++/66091
2 // { dg-do compile { target c++17_only } }
3 // { dg-additional-options "-fconcepts-ts" }
5 template<typename T>
6 concept bool C1()
8   return requires() { typename T::type1; };
11 template<typename T>
12 concept bool C2()
14   return C1<T>() && requires() { typename T::type2; };
17 template<C1 T>
18 struct S {
19   S& operator++() { return *this; }
20   S& operator++() requires C2<T>() { return *this; }