: 
template<typename T> concept C = true;
template<C T> void f1(T);
template<typename T> requires C<T> void f2(T);
template<typename T> void f3(T) requires C<T>;
 
The functions 
f1, 
f2, and 
f3 have the associated
constraint 
C<T>.
template<typename T> concept C1 = true;
template<typename T> concept C2 = sizeof(T) > 0;
template<C1 T> void f4(T) requires C2<T>;
template<typename T> requires C1<T> && C2<T> void f5(T);
 
The associated constraints of 
f4 and 
f5
are 
C1<T> ∧ C2<T>.
template<C1 T> requires C2<T> void f6();
template<C2 T> requires C1<T> void f7();
 
The associated constraints of
f6 are 
C1<T> ∧ C2<T>,
and those of
f7 are 
C2<T> ∧ C1<T>. —
 end example