1 // { dg-options "-std=c++17 -fconcepts" }
4 constexpr fool operator&&(fool) const { return {}; }
5 constexpr fool operator||(fool) const { return {}; }
8 template<typename T> constexpr fool p1() { return {}; }
9 template<typename T> constexpr fool p2() { return {}; }
12 concept bool C() { return p1<T>() && p2<T>(); }
14 template<C T> void f(T x) { }
17 f(0); // { dg-error "cannot call|uses overloaded operator" }