https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124425
--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- I think you need to perform an implicit conversion from the result of the dereference to the type std::ranges::range_value_t<R>, which is std::iter_value_t<iterator_t<R>> where iterator_t<R> is the type of ranges::begin(r)
