// PR c++/94597 // { dg-do compile { target c++20 } } template concept d = requires(b e) { e.operator c(); }; template requires(d) bool equal(f, g); template struct i { i(h); operator h(); }; static_assert( d, float>); static_assert(!d, int>); bool fun() { i a(2.0f); return equal(a, 3.0f); }