https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99599

--- Comment #6 from Patrick Palka <ppalka at gcc dot gnu.org> ---
FWIW, one workaround for this kind of constraint looping is to encode the
non-dependent conversion as a constraint.  For this particular testcase, this
would mean changing the signature of

  template<fooable T> auto invoke_tag(bar_tag, T it);

to

  template<std::convertible_to<bar_tag> T, fooable U> auto invoke_tag(T, U it);

Reply via email to