https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92552
--- Comment #4 from Tony E Lewis <TonyELewis at hotmail dot com> --- Sorry - forgot to include the compiler output... In file included from /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/iterator/reverse_iterator.hpp:20, from /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/range/access.hpp:31, from /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/range/concepts.hpp:30, from /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/action/concepts.hpp:23, from /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/range/conversion.hpp:21, from <source>:4: /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/iterator/basic_iterator.hpp: In instantiation of 'struct ranges::detail::iterator_associated_types_base_<ranges::join_with_view<ranges::ref_view<const std::vector<std::__cxx11::basic_string<char> > >, ranges::ref_view<const char [2]> >::cursor, true>': /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/iterator/basic_iterator.hpp:492:31: required from 'struct ranges::basic_iterator<ranges::join_with_view<ranges::ref_view<const std::vector<std::__cxx11::basic_string<char> > >, ranges::ref_view<const char [2]> >::cursor>' /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/range/access.hpp:75:13: required from 'constexpr auto ranges::_begin_::fn::operator()(R&&) const requires (_safe_range<R>) && ((has_member_begin<R>) || (has_non_member_begin<R>)) [with R = ranges::join_with_view<ranges::ref_view<const std::vector<std::__cxx11::basic_string<char> > >, ranges::ref_view<const char [2]> >&]' /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/range/concepts.hpp:80:9: required from 'ranges::detail::to_container::container_t<MetaFn, Rng> ranges::detail::to_container::fn<MetaFn>::operator()(Rng&&) const requires (input_range<Rng>) && (convertible_to_cont_cont<Rng, typename Pred::invoke>) [with Rng = ranges::join_with_view<ranges::ref_view<const std::vector<std::__cxx11::basic_string<char> > >, ranges::ref_view<const char [2]> >; MetaFn = meta::id<std::__cxx11::basic_string<char> >; ranges::detail::to_container::container_t<MetaFn, Rng> = std::__cxx11::basic_string<char>]' /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/functional/invoke.hpp:134:34: required by substitution of 'template<class F, class ... Args> constexpr decltype ((F&&)(f)((Args&(ranges::invoke_fn::operator()::args))...)) ranges::invoke_fn::operator()(F&&, Args&& ...) const [with F = ranges::detail::to_container::fn<meta::id<std::__cxx11::basic_string<char> > >; Args = {ranges::join_with_view<ranges::ref_view<const std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, ranges::ref_view<const char [2]> >}]' /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/functional/concepts.hpp:31:9: required by substitution of 'template<class Rng, class MetaFn> concepts::return_t<typename MetaFn::invoke<Rng>, typename std::enable_if<(invocable<ranges::detail::to_container::fn<MetaFn>, Rng> && concepts::detail::CPP_true(concepts::detail::Nil{})), void>::type> ranges::detail::operator|(Rng&&, ranges::detail::to_container::closure<MetaFn, ranges::detail::to_container::fn<MetaFn> > (*)(ranges::detail::to_container)) [with Rng = ranges::join_with_view<ranges::ref_view<const std::vector<std::__cxx11::basic_string<char> > >, ranges::ref_view<const char [2]> >; MetaFn = meta::id<std::__cxx11::basic_string<char> >]' <source>:11:19: required from here /opt/compiler-explorer/libs/rangesv3/0.10.0/include/range/v3/iterator/basic_iterator.hpp:456:23: internal compiler error: in lazily_declare_fn, at cp/method.c:3066 456 | Cur>::readable_iterator_associated_types_base; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Please submit a full bug report, with preprocessed source if appropriate. See <https://gcc.gnu.org/bugs/> for instructions. Compiler returned: 1