I find it common to want to constrain a range to return a particular type. Something like


    void f(std::ranges::range_of<unsigned> auto&& range_of_unsigned) { ... }


It would be trivial to define such a concept, or to forego the abbreviated template syntax and use a requires clause, but it seems to me this should be a vocabulary concept.

There's the question of whether the type should be same_as or convertible_to, perhaps there is room for two concepts here.