Test output: teeks99-dkr-dc15-20 - stl_interfaces - forward / clang-linux-15~c++20
Rev c8d0b32583c2fa3266edf88cd8ccb32312feae17 / Wed, 20 Nov 2024 20:17:42 +0000
Compile [2024-11-20 22:59:00 UTC]: fail


    "clang++-15"   -fvisibility-inlines-hidden -Wno-c99-extensions -std=c++20 -fPIC -pthread -O0 -fno-inline -Wall -fvisibility=hidden -m64 --target=x86_64-pc-linux  -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1   -I".." -I"/var/boost/run/boost_root/libs/assert/include" -I"/var/boost/run/boost_root/libs/core/include" -I"/var/boost/run/boost_root/libs/stl_interfaces/include" -I"/var/boost/run/boost_root/libs/throw_exception/include"  -c -o "/var/boost/run/results/boost/bin.v2/libs/stl_interfaces/test/forward.test/clang-linux-15~c++20/debug/x86_64/debug-symbols-off/threading-multi/visibility-hidden/forward.o" "../libs/stl_interfaces/test/forward.cpp"

../libs/stl_interfaces/test/forward.cpp:54:1: error: static assertion failed: 
BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT(
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/stl_interfaces/iterator_interface.hpp:1151:5: note: expanded from macro 'BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT'
    BOOST_STL_INTERFACES_STATIC_ASSERT_ITERATOR_CONCEPT_IMPL(iter, concept_name)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/stl_interfaces/iterator_interface.hpp:1147:5: note: expanded from macro 'BOOST_STL_INTERFACES_STATIC_ASSERT_ITERATOR_CONCEPT_IMPL'
    static_assert(concept_name<type>, "");
    ^             ~~~~~~~~~~~~~~~~~~
../libs/stl_interfaces/test/forward.cpp:55:25: note: because 'basic_forward_iter' does not satisfy 'forward_iterator'
    basic_forward_iter, std::forward_iterator)
                        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:644:32: note: because 'basic_forward_iter' does not satisfy 'input_iterator'
    concept forward_iterator = input_iterator<_Iter>
                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:633:30: note: because 'basic_forward_iter' does not satisfy 'input_or_output_iterator'
    concept input_iterator = input_or_output_iterator<_Iter>
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:613:5: note: because 'basic_forward_iter' does not satisfy 'weakly_incrementable'
        && weakly_incrementable<_Iter>;
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:603:5: note: because '__i++' would be invalid: cannot increment value of type 'basic_forward_iter'
        __i++;
           ^
../libs/stl_interfaces/test/forward.cpp:116:1: error: static assertion failed: 
BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT(forward, std::forward_iterator)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/stl_interfaces/iterator_interface.hpp:1151:5: note: expanded from macro 'BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT'
    BOOST_STL_INTERFACES_STATIC_ASSERT_ITERATOR_CONCEPT_IMPL(iter, concept_name)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/stl_interfaces/iterator_interface.hpp:1147:5: note: expanded from macro 'BOOST_STL_INTERFACES_STATIC_ASSERT_ITERATOR_CONCEPT_IMPL'
    static_assert(concept_name<type>, "");
    ^             ~~~~~~~~~~~~~~~~~~
../libs/stl_interfaces/test/forward.cpp:116:53: note: because 'forward' (aka 'forward_iter<int>') does not satisfy 'forward_iterator'
BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT(forward, std::forward_iterator)
                                                    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:644:32: note: because 'forward_iter<int>' does not satisfy 'input_iterator'
    concept forward_iterator = input_iterator<_Iter>
                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:633:30: note: because 'forward_iter<int>' does not satisfy 'input_or_output_iterator'
    concept input_iterator = input_or_output_iterator<_Iter>
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:613:5: note: because 'forward_iter<int>' does not satisfy 'weakly_incrementable'
        && weakly_incrementable<_Iter>;
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:603:5: note: because '__i++' would be invalid: cannot increment value of type 'forward_iter<int>'
        __i++;
           ^
../libs/stl_interfaces/test/forward.cpp:126:1: error: static assertion failed: 
BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT(const_forward, std::forward_iterator)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/stl_interfaces/iterator_interface.hpp:1151:5: note: expanded from macro 'BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT'
    BOOST_STL_INTERFACES_STATIC_ASSERT_ITERATOR_CONCEPT_IMPL(iter, concept_name)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/stl_interfaces/iterator_interface.hpp:1147:5: note: expanded from macro 'BOOST_STL_INTERFACES_STATIC_ASSERT_ITERATOR_CONCEPT_IMPL'
    static_assert(concept_name<type>, "");
    ^             ~~~~~~~~~~~~~~~~~~
../libs/stl_interfaces/test/forward.cpp:126:59: note: because 'const_forward' (aka 'forward_iter<const int>') does not satisfy 'forward_iterator'
BOOST_STL_INTERFACES_STATIC_ASSERT_CONCEPT(const_forward, std::forward_iterator)
                                                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:644:32: note: because 'forward_iter<const int>' does not satisfy 'input_iterator'
    concept forward_iterator = input_iterator<_Iter>
                               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:633:30: note: because 'forward_iter<const int>' does not satisfy 'input_or_output_iterator'
    concept input_iterator = input_or_output_iterator<_Iter>
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:613:5: note: because 'forward_iter<const int>' does not satisfy 'weakly_incrementable'
        && weakly_incrementable<_Iter>;
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:603:5: note: because '__i++' would be invalid: cannot increment value of type 'forward_iter<const int>'
        __i++;
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:979:13: error: no matching function for call to '__begin'
        = decltype(ranges::__cust_access::__begin(std::declval<_Tp&>()));
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:586:5: note: in instantiation of template type alias '__range_iter_t' requested here
    using iterator_t = std::__detail::__range_iter_t<_Tp>;
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:98:43: note: in instantiation of template type alias 'iterator_t' requested here
      data() requires contiguous_iterator<iterator_t<_Derived>>
                                          ^
../libs/stl_interfaces/test/view_tests.hpp:17:7: note: in instantiation of template class 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
    : boost::stl_interfaces::
      ^
../libs/stl_interfaces/test/forward.cpp:147:42: note: in instantiation of template class 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' requested here
using data_t = decltype(std::declval<T>().data());
                                         ^
../boost/stl_interfaces/iterator_interface.hpp:134:32: note: in instantiation of template type alias 'data_t' requested here
        struct detector<void_t<Template<Args...>>, Template, Args...>
                               ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: during template argument deduction for class template partial specialization 'detector<void_t<Template<Args...>>, Template, Args...>' [with Template = data_t, Args = <subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>]
    !boost::stl_interfaces::detail::detector<void, Template, Args...>::value>;
                                    ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: in instantiation of template class 'boost::stl_interfaces::detail::detector<void, data_t, subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
../libs/stl_interfaces/test/forward.cpp:150:5: note: in instantiation of template type alias 'ill_formed' requested here
    ill_formed<
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:963:7: note: candidate template ignored: constraints not satisfied [with _Tp = subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>]
      __begin(_Tp& __t)
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:961:16: note: because 'is_array_v<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> >' evaluated to false
      requires is_array_v<_Tp> || __member_begin<_Tp&> || __adl_begin<_Tp&>
               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:961:35: note: and 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &' does not satisfy '__member_begin'
      requires is_array_v<_Tp> || __member_begin<_Tp&> || __adl_begin<_Tp&>
                                  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:944:23: note: because '__decay_copy(__t.begin())' would be invalid: no member named 'begin' in 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>'
          { __decay_copy(__t.begin()) } -> input_or_output_iterator;
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:961:59: note: and 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &' does not satisfy '__adl_begin'
      requires is_array_v<_Tp> || __member_begin<_Tp&> || __adl_begin<_Tp&>
                                                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:955:19: note: because '__decay_copy(begin(__t))' would be invalid: call to deleted function 'begin'
          { __decay_copy(begin(__t)) } -> input_or_output_iterator;
                         ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:979:13: error: no matching function for call to '__begin'
        = decltype(ranges::__cust_access::__begin(std::declval<_Tp&>()));
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:586:5: note: in instantiation of template type alias '__range_iter_t' requested here
    using iterator_t = std::__detail::__range_iter_t<_Tp>;
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:104:25: note: in instantiation of template type alias 'iterator_t' requested here
        && contiguous_iterator<iterator_t<const _Derived>>
                               ^
../libs/stl_interfaces/test/view_tests.hpp:17:7: note: in instantiation of template class 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
    : boost::stl_interfaces::
      ^
../libs/stl_interfaces/test/forward.cpp:147:42: note: in instantiation of template class 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' requested here
using data_t = decltype(std::declval<T>().data());
                                         ^
../boost/stl_interfaces/iterator_interface.hpp:134:32: note: in instantiation of template type alias 'data_t' requested here
        struct detector<void_t<Template<Args...>>, Template, Args...>
                               ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: during template argument deduction for class template partial specialization 'detector<void_t<Template<Args...>>, Template, Args...>' [with Template = data_t, Args = <subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>]
    !boost::stl_interfaces::detail::detector<void, Template, Args...>::value>;
                                    ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: in instantiation of template class 'boost::stl_interfaces::detail::detector<void, data_t, subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
../libs/stl_interfaces/test/forward.cpp:150:5: note: in instantiation of template type alias 'ill_formed' requested here
    ill_formed<
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:963:7: note: candidate template ignored: constraints not satisfied [with _Tp = const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>]
      __begin(_Tp& __t)
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:961:16: note: because 'is_array_v<const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> >' evaluated to false
      requires is_array_v<_Tp> || __member_begin<_Tp&> || __adl_begin<_Tp&>
               ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:961:35: note: and 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &' does not satisfy '__member_begin'
      requires is_array_v<_Tp> || __member_begin<_Tp&> || __adl_begin<_Tp&>
                                  ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:944:23: note: because '__decay_copy(__t.begin())' would be invalid: no member named 'begin' in 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>'
          { __decay_copy(__t.begin()) } -> input_or_output_iterator;
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:961:59: note: and 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &' does not satisfy '__adl_begin'
      requires is_array_v<_Tp> || __member_begin<_Tp&> || __adl_begin<_Tp&>
                                                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:955:19: note: because '__decay_copy(begin(__t))' would be invalid: call to deleted function 'begin'
          { __decay_copy(begin(__t)) } -> input_or_output_iterator;
                         ^
In file included from ../libs/stl_interfaces/test/forward.cpp:6:
In file included from ../boost/stl_interfaces/iterator_interface.hpp:9:
In file included from ../boost/stl_interfaces/fwd.hpp:12:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ranges:46:
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:110:24: error: constraints not satisfied for alias template 'sentinel_t' [with _Range = subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>]
        && sized_sentinel_for<sentinel_t<_Derived>, iterator_t<_Derived>>
                              ^~~~~~~~~~~~~~~~~~~~
../libs/stl_interfaces/test/view_tests.hpp:17:7: note: in instantiation of template class 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
    : boost::stl_interfaces::
      ^
../libs/stl_interfaces/test/forward.cpp:147:42: note: in instantiation of template class 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' requested here
using data_t = decltype(std::declval<T>().data());
                                         ^
../boost/stl_interfaces/iterator_interface.hpp:134:32: note: in instantiation of template type alias 'data_t' requested here
        struct detector<void_t<Template<Args...>>, Template, Args...>
                               ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: during template argument deduction for class template partial specialization 'detector<void_t<Template<Args...>>, Template, Args...>' [with Template = data_t, Args = <subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>]
    !boost::stl_interfaces::detail::detector<void, Template, Args...>::value>;
                                    ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: in instantiation of template class 'boost::stl_interfaces::detail::detector<void, data_t, subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
../libs/stl_interfaces/test/forward.cpp:150:5: note: in instantiation of template type alias 'ill_formed' requested here
    ill_formed<
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:588:12: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
  template<range _Range>
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
In file included from ../libs/stl_interfaces/test/forward.cpp:6:
In file included from ../boost/stl_interfaces/iterator_interface.hpp:9:
In file included from ../boost/stl_interfaces/fwd.hpp:12:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ranges:46:
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:116:24: error: constraints not satisfied for alias template 'sentinel_t' [with _Range = const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>]
        && sized_sentinel_for<sentinel_t<const _Derived>,
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:588:12: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
  template<range _Range>
           ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
In file included from ../libs/stl_interfaces/test/forward.cpp:6:
In file included from ../boost/stl_interfaces/iterator_interface.hpp:9:
In file included from ../boost/stl_interfaces/fwd.hpp:12:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ranges:46:
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:69:2: error: static assertion failed
        static_assert(view<_Derived>);
        ^             ~~~~~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:99:41: note: in instantiation of member function 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>::_M_derived' requested here
      { return to_address(ranges::begin(_M_derived())); }
                                        ^
../libs/stl_interfaces/test/forward.cpp:147:43: note: in instantiation of member function 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>::data' requested here
using data_t = decltype(std::declval<T>().data());
                                          ^
../boost/stl_interfaces/iterator_interface.hpp:134:32: note: in instantiation of template type alias 'data_t' requested here
        struct detector<void_t<Template<Args...>>, Template, Args...>
                               ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: during template argument deduction for class template partial specialization 'detector<void_t<Template<Args...>>, Template, Args...>' [with Template = data_t, Args = <subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>]
    !boost::stl_interfaces::detail::detector<void, Template, Args...>::value>;
                                    ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: in instantiation of template class 'boost::stl_interfaces::detail::detector<void, data_t, subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
../libs/stl_interfaces/test/forward.cpp:150:5: note: in instantiation of template type alias 'ill_formed' requested here
    ill_formed<
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:69:16: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'view'
        static_assert(view<_Derived>);
                      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:622:9: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
      = range<_Tp> && movable<_Tp> && enable_view<_Tp>;
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
In file included from ../libs/stl_interfaces/test/forward.cpp:6:
In file included from ../boost/stl_interfaces/iterator_interface.hpp:9:
In file included from ../boost/stl_interfaces/fwd.hpp:12:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ranges:46:
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:99:27: error: no matching function for call to object of type 'const __cust_access::_Begin'
      { return to_address(ranges::begin(_M_derived())); }
                          ^~~~~~~~~~~~~
../libs/stl_interfaces/test/forward.cpp:147:43: note: in instantiation of member function 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>::data' requested here
using data_t = decltype(std::declval<T>().data());
                                          ^
../boost/stl_interfaces/iterator_interface.hpp:134:32: note: in instantiation of template type alias 'data_t' requested here
        struct detector<void_t<Template<Args...>>, Template, Args...>
                               ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: during template argument deduction for class template partial specialization 'detector<void_t<Template<Args...>>, Template, Args...>' [with Template = data_t, Args = <subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>]
    !boost::stl_interfaces::detail::detector<void, Template, Args...>::value>;
                                    ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: in instantiation of template class 'boost::stl_interfaces::detail::detector<void, data_t, subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
../libs/stl_interfaces/test/forward.cpp:150:5: note: in instantiation of template type alias 'ill_formed' requested here
    ill_formed<
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:114:2: note: candidate template ignored: constraints not satisfied [with _Tp = subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &]
        operator()(_Tp&& __t) const noexcept(_S_noexcept<_Tp&>())
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:111:11: note: because 'is_array_v<remove_reference_t<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &> >' evaluated to false
        requires is_array_v<remove_reference_t<_Tp>> || __member_begin<_Tp>
                 ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:111:50: note: and 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &' does not satisfy '__member_begin'
        requires is_array_v<remove_reference_t<_Tp>> || __member_begin<_Tp>
                                                        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:944:23: note: because '__decay_copy(__t.begin())' would be invalid: no member named 'begin' in 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>'
          { __decay_copy(__t.begin()) } -> input_or_output_iterator;
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:112:7: note: and 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &' does not satisfy '__adl_begin'
          || __adl_begin<_Tp>
             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:955:19: note: because '__decay_copy(begin(__t))' would be invalid: call to deleted function 'begin'
          { __decay_copy(begin(__t)) } -> input_or_output_iterator;
                         ^
In file included from ../libs/stl_interfaces/test/forward.cpp:6:
In file included from ../boost/stl_interfaces/iterator_interface.hpp:9:
In file included from ../boost/stl_interfaces/fwd.hpp:12:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ranges:46:
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:76:2: error: static assertion failed
        static_assert(view<_Derived>);
        ^             ~~~~~~~~~~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:105:41: note: in instantiation of member function 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>::_M_derived' requested here
      { return to_address(ranges::begin(_M_derived())); }
                                        ^
../libs/stl_interfaces/test/forward.cpp:147:43: note: in instantiation of member function 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>::data' requested here
using data_t = decltype(std::declval<T>().data());
                                          ^
../boost/stl_interfaces/iterator_interface.hpp:134:32: note: in instantiation of template type alias 'data_t' requested here
        struct detector<void_t<Template<Args...>>, Template, Args...>
                               ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: during template argument deduction for class template partial specialization 'detector<void_t<Template<Args...>>, Template, Args...>' [with Template = data_t, Args = <const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>]
    !boost::stl_interfaces::detail::detector<void, Template, Args...>::value>;
                                    ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: in instantiation of template class 'boost::stl_interfaces::detail::detector<void, data_t, const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
../libs/stl_interfaces/test/forward.cpp:158:5: note: in instantiation of template type alias 'ill_formed' requested here
    ill_formed<
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:76:16: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'view'
        static_assert(view<_Derived>);
                      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:622:9: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
      = range<_Tp> && movable<_Tp> && enable_view<_Tp>;
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
In file included from ../libs/stl_interfaces/test/forward.cpp:6:
In file included from ../boost/stl_interfaces/iterator_interface.hpp:9:
In file included from ../boost/stl_interfaces/fwd.hpp:12:
In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ranges:46:
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:105:27: error: no matching function for call to object of type 'const __cust_access::_Begin'
      { return to_address(ranges::begin(_M_derived())); }
                          ^~~~~~~~~~~~~
../libs/stl_interfaces/test/forward.cpp:147:43: note: in instantiation of member function 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>::data' requested here
using data_t = decltype(std::declval<T>().data());
                                          ^
../boost/stl_interfaces/iterator_interface.hpp:134:32: note: in instantiation of template type alias 'data_t' requested here
        struct detector<void_t<Template<Args...>>, Template, Args...>
                               ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: during template argument deduction for class template partial specialization 'detector<void_t<Template<Args...>>, Template, Args...>' [with Template = data_t, Args = <const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>]
    !boost::stl_interfaces::detail::detector<void, Template, Args...>::value>;
                                    ^
../libs/stl_interfaces/test/ill_formed.hpp:15:37: note: in instantiation of template class 'boost::stl_interfaces::detail::detector<void, data_t, const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' requested here
../libs/stl_interfaces/test/forward.cpp:158:5: note: in instantiation of template type alias 'ill_formed' requested here
    ill_formed<
    ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:114:2: note: candidate template ignored: constraints not satisfied [with _Tp = const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &]
        operator()(_Tp&& __t) const noexcept(_S_noexcept<_Tp&>())
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:111:11: note: because 'is_array_v<remove_reference_t<const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &> >' evaluated to false
        requires is_array_v<remove_reference_t<_Tp>> || __member_begin<_Tp>
                 ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:111:50: note: and 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &' does not satisfy '__member_begin'
        requires is_array_v<remove_reference_t<_Tp>> || __member_begin<_Tp>
                                                        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:944:23: note: because '__decay_copy(__t.begin())' would be invalid: no member named 'begin' in 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>'
          { __decay_copy(__t.begin()) } -> input_or_output_iterator;
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:112:7: note: and 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous> &' does not satisfy '__adl_begin'
          || __adl_begin<_Tp>
             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/iterator_concepts.h:955:19: note: because '__decay_copy(begin(__t))' would be invalid: call to deleted function 'begin'
          { __decay_copy(begin(__t)) } -> input_or_output_iterator;
                         ^
../libs/stl_interfaces/test/forward.cpp:267:14: error: cannot increment value of type 'forward' (aka 'forward_iter<int>')
        first++;
        ~~~~~^
../libs/stl_interfaces/test/forward.cpp:327:23: error: no matching member function for call to 'empty'
        BOOST_TEST(!r.empty());
                    ~~^~~~~
../boost/core/lightweight_test.hpp:533:107: note: expanded from macro 'BOOST_TEST'
#define BOOST_TEST(expr) ( ::boost::detail::test_impl(#expr, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, (expr)? true: false) )
                                                                                                          ^~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:82:7: note: candidate function not viable: constraints not satisfied
      empty() requires forward_range<_Derived>
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:82:24: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'forward_range'
      empty() requires forward_range<_Derived>
                       ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:638:9: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'input_range'
      = input_range<_Tp> && forward_iterator<iterator_t<_Tp>>;
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:633:27: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
    concept input_range = range<_Tp> && input_iterator<iterator_t<_Tp>>;
                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:86:7: note: candidate function not viable: constraints not satisfied
      empty() const requires forward_range<const _Derived>
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:86:30: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'forward_range'
      empty() const requires forward_range<const _Derived>
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:638:9: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'input_range'
      = input_range<_Tp> && forward_iterator<iterator_t<_Tp>>;
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:633:27: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
    concept input_range = range<_Tp> && input_iterator<iterator_t<_Tp>>;
                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
../libs/stl_interfaces/test/forward.cpp:328:9: error: no viable conversion from 'subrange<basic_forward_iter, basic_forward_iter, (boost::stl_interfaces::element_layout)false>' to 'bool'
        BOOST_TEST(r);
        ^~~~~~~~~~~~~
../boost/core/lightweight_test.hpp:533:106: note: expanded from macro 'BOOST_TEST'
#define BOOST_TEST(expr) ( ::boost::detail::test_impl(#expr, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, (expr)? true: false) )
                                                                                                         ^~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:90:7: note: explicit conversion function is not a candidate
      operator bool() requires requires { ranges::empty(_M_derived()); }
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:94:7: note: explicit conversion function is not a candidate
      operator bool() const requires requires { ranges::empty(_M_derived()); }
      ^
../libs/stl_interfaces/test/forward.cpp:330:26: error: no matching member function for call to 'empty'
        BOOST_TEST(empty.empty());
                   ~~~~~~^~~~~
../boost/core/lightweight_test.hpp:533:107: note: expanded from macro 'BOOST_TEST'
#define BOOST_TEST(expr) ( ::boost::detail::test_impl(#expr, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, (expr)? true: false) )
                                                                                                          ^~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:82:7: note: candidate function not viable: constraints not satisfied
      empty() requires forward_range<_Derived>
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:82:24: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'forward_range'
      empty() requires forward_range<_Derived>
                       ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:638:9: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'input_range'
      = input_range<_Tp> && forward_iterator<iterator_t<_Tp>>;
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:633:27: note: because 'subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
    concept input_range = range<_Tp> && input_iterator<iterator_t<_Tp>>;
                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:86:7: note: candidate function not viable: constraints not satisfied
      empty() const requires forward_range<const _Derived>
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:86:30: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'forward_range'
      empty() const requires forward_range<const _Derived>
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:638:9: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'input_range'
      = input_range<_Tp> && forward_iterator<iterator_t<_Tp>>;
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:633:27: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
    concept input_range = range<_Tp> && input_iterator<iterator_t<_Tp>>;
                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
../libs/stl_interfaces/test/forward.cpp:331:20: error: invalid argument type 'subrange<basic_forward_iter, basic_forward_iter, (boost::stl_interfaces::element_layout)false>' to unary expression
        BOOST_TEST(!empty);
                   ^~~~~~
../boost/core/lightweight_test.hpp:533:107: note: expanded from macro 'BOOST_TEST'
#define BOOST_TEST(expr) ( ::boost::detail::test_impl(#expr, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, (expr)? true: false) )
                                                                                                          ^~~~
../libs/stl_interfaces/test/forward.cpp:334:24: error: no matching member function for call to 'empty'
        BOOST_TEST(!cr.empty());
                    ~~~^~~~~
../boost/core/lightweight_test.hpp:533:107: note: expanded from macro 'BOOST_TEST'
#define BOOST_TEST(expr) ( ::boost::detail::test_impl(#expr, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, (expr)? true: false) )
                                                                                                          ^~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:82:7: note: candidate function not viable: no known conversion from 'const subrange<basic_forward_iter, basic_forward_iter, (boost::stl_interfaces::element_layout)false>' to 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' for object argument
      empty() requires forward_range<_Derived>
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:86:7: note: candidate function not viable: constraints not satisfied
      empty() const requires forward_range<const _Derived>
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:86:30: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'forward_range'
      empty() const requires forward_range<const _Derived>
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:638:9: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'input_range'
      = input_range<_Tp> && forward_iterator<iterator_t<_Tp>>;
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:633:27: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
    concept input_range = range<_Tp> && input_iterator<iterator_t<_Tp>>;
                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
../libs/stl_interfaces/test/forward.cpp:335:9: error: no viable conversion from 'const subrange<basic_forward_iter, basic_forward_iter, (boost::stl_interfaces::element_layout)false>' to 'bool'
        BOOST_TEST(cr);
        ^~~~~~~~~~~~~~
../boost/core/lightweight_test.hpp:533:106: note: expanded from macro 'BOOST_TEST'
#define BOOST_TEST(expr) ( ::boost::detail::test_impl(#expr, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, (expr)? true: false) )
                                                                                                         ^~~~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:90:7: note: explicit conversion function is not a candidate
      operator bool() requires requires { ranges::empty(_M_derived()); }
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:94:7: note: explicit conversion function is not a candidate
      operator bool() const requires requires { ranges::empty(_M_derived()); }
      ^
../libs/stl_interfaces/test/forward.cpp:338:27: error: no matching member function for call to 'empty'
        BOOST_TEST(cempty.empty());
                   ~~~~~~~^~~~~
../boost/core/lightweight_test.hpp:533:107: note: expanded from macro 'BOOST_TEST'
#define BOOST_TEST(expr) ( ::boost::detail::test_impl(#expr, __FILE__, __LINE__, BOOST_CURRENT_FUNCTION, (expr)? true: false) )
                                                                                                          ^~~~
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:82:7: note: candidate function not viable: no known conversion from 'const subrange<basic_forward_iter, basic_forward_iter, (boost::stl_interfaces::element_layout)false>' to 'std::ranges::view_interface<subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>>' for object argument
      empty() requires forward_range<_Derived>
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:86:7: note: candidate function not viable: constraints not satisfied
      empty() const requires forward_range<const _Derived>
      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_util.h:86:30: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'forward_range'
      empty() const requires forward_range<const _Derived>
                             ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:638:9: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'input_range'
      = input_range<_Tp> && forward_iterator<iterator_t<_Tp>>;
        ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:633:27: note: because 'const subrange<basic_forward_iter, basic_forward_iter, boost::stl_interfaces::element_layout::discontiguous>' does not satisfy 'range'
    concept input_range = range<_Tp> && input_iterator<iterator_t<_Tp>>;
                          ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/ranges_base.h:576:2: note: because 'ranges::begin(__t)' would be invalid: no matching function for call to object of type 'const __cust_access::_Begin'
        ranges::begin(__t);
        ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.