@@ -857,11 +857,10 @@ namespace ranges {
857857 /* [[no_unique_address]] */ _Semiregular_box<_Pr> _Pred{};
858858
859859 template <class _Traits> // TRANSITION, LWG-3289
860- struct _Iterator_base {};
860+ struct _Category_base {};
861861 // clang-format off
862- template <class _Traits>
863- requires _Has_member_iterator_category<_Traits>
864- struct _Iterator_base<_Traits> {
862+ template <_Has_member_iterator_category _Traits>
863+ struct _Category_base<_Traits> {
865864 // clang-format on
866865 using iterator_category =
867866 conditional_t<derived_from<typename _Traits::iterator_category, bidirectional_iterator_tag>,
@@ -870,7 +869,7 @@ namespace ranges {
870869 forward_iterator_tag, input_iterator_tag>>;
871870 };
872871
873- class _Iterator : public _Iterator_base <iterator_traits<iterator_t<_Vw>>> {
872+ class _Iterator : public _Category_base <iterator_traits<iterator_t<_Vw>>> {
874873 private:
875874 /* [[no_unique_address]] */ iterator_t<_Vw> _Current{};
876875 filter_view* _Parent{};
@@ -1141,11 +1140,10 @@ namespace ranges {
11411140 class _Sentinel;
11421141
11431142 template <class _Traits, class _Base> // TRANSITION, LWG-3289
1144- struct _Iterator_base {};
1143+ struct _Category_base {};
11451144 // clang-format off
1146- template <class _Traits, class _Base>
1147- requires _Has_member_iterator_category<_Traits>
1148- struct _Iterator_base<_Traits, _Base> {
1145+ template <_Has_member_iterator_category _Traits, class _Base>
1146+ struct _Category_base<_Traits, _Base> {
11491147 // clang-format on
11501148 using iterator_category =
11511149 conditional_t<is_lvalue_reference_v<invoke_result_t<_Fn&, range_reference_t<_Base>>>,
@@ -1155,7 +1153,7 @@ namespace ranges {
11551153 };
11561154
11571155 template <bool _Const>
1158- class _Iterator : public _Iterator_base <iterator_traits<iterator_t<_Vw>>, _Maybe_const<_Const, _Vw>> {
1156+ class _Iterator : public _Category_base <iterator_traits<iterator_t<_Vw>>, _Maybe_const<_Const, _Vw>> {
11591157 private:
11601158 template <bool>
11611159 friend class _Iterator;
0 commit comments