Wandbox
SettingsLog
SettingsLog
Language
GitHubLogin
Ran/Viewed Log

Author

anonymous

about 7 years ago

Language

C++

Compiler

gcc 8.1.0

Options
Warnings
Optimization
Don't Use Boost
C++17(GNU)
no pedantic

Author

anonymous

about 7 years ago

$ g++ prog.cc -Wall -Wextra -O2 -march=native -std=gnu++17
prog.cc: In function 'int main()':
prog.cc:32:61: error: no match for call to '(const ranges::v3::view::view<ranges::v3::view::enumerate_fn>) (S)'
         for (auto&& [i, e] : ranges::v3::view::enumerate(S{})) {
                                                             ^
In file included from /opt/wandbox/range-v3/include/range/v3/view/take_exactly.hpp:29,
                 from /opt/wandbox/range-v3/include/range/v3/view/iota.hpp:28,
                 from /opt/wandbox/range-v3/include/range/v3/view/enumerate.hpp:19,
                 from prog.cc:3:
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:142:22: note: candidate: 'template<class Rng, class ... Rest, bool _concept_requires_141, typename std::enable_if<(_concept_requires_141 || typename meta::v1::defer<meta::v1::detail::_and_<false>::invoke, typename meta::v1::defer<meta::v1::detail::_and_<false>::invoke, ranges::v3::concepts::models<ranges::v3::concepts::Range, T>, typename meta::v1::defer<meta::v1::detail::_or_<false>::invoke, std::is_lvalue_reference<_Tp>, ranges::v3::concepts::models<ranges::v3::concepts::View, typename std::remove_cv<typename std::remove_reference<_Tp>::type>::type> >::type>::type, ranges::v3::concepts::models<ranges::v3::concepts::Invocable, ranges::v3::view::enumerate_fn&, Rng, Rest ...> >::type()), void>::type* <anonymous> > decltype (((const ranges::v3::view::view<View>*)this)->ranges::v3::view::view<View>::view_(static_cast<Rng&&>(rng), static_cast<Rest&>(ranges::v3::view::view::operator()::rest) ...)) ranges::v3::view::view<View>::operator()(Rng&&, Rest&& ...) const [with Rng = Rng; Rest = {Rest ...}; bool _concept_requires_141 = _concept_requires_141; typename std::enable_if<(_concept_requires_141 || typename meta::v1::defer<meta::v1::detail::_and_<false>::invoke, typename meta::v1::defer<meta::v1::detail::_and_<false>::invoke, ranges::v3::concepts::models<ranges::v3::concepts::Range, Container>, typename meta::v1::defer<meta::v1::detail::_or_<false>::invoke, std::is_lvalue_reference<Rng>, ranges::v3::concepts::models<ranges::v3::concepts::View, typename std::remove_cv<typename std::remove_reference<_SrcTuple>::type>::type> >::type>::type, ranges::v3::concepts::models<ranges::v3::concepts::Invocable, View&, Rng, Rest ...> >::type())>::type* <anonymous> = <enumerator>; View = ranges::v3::view::enumerate_fn]'
                 auto operator()(Rng && rng, Rest &&... rest) const
                      ^~~~~~~~
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:142:22: note:   template argument deduction/substitution failed:
In file included from /opt/wandbox/range-v3/include/range/v3/utility/copy.hpp:18,
                 from /opt/wandbox/range-v3/include/range/v3/begin_end.hpp:24,
                 from /opt/wandbox/range-v3/include/range/v3/core.hpp:17,
                 from prog.cc:2:
/opt/wandbox/range-v3/include/range/v3/utility/concepts.hpp:686:16: error: no type named 'type' in 'struct std::enable_if<false, void>'
     >::type* = nullptr                                                 \
                ^~~~~~~
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:141:21: note: in expansion of macro 'CONCEPT_REQUIRES_'
                     CONCEPT_REQUIRES_(ViewConcept<Rng, Rest...>())>
                     ^~~~~~~~~~~~~~~~~
In file included from /opt/wandbox/range-v3/include/range/v3/view/take_exactly.hpp:29,
                 from /opt/wandbox/range-v3/include/range/v3/view/iota.hpp:28,
                 from /opt/wandbox/range-v3/include/range/v3/view/enumerate.hpp:19,
                 from prog.cc:3:
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:150:22: note: candidate: 'template<class ... Ts, class V> decltype (ranges::v3::view::make_view(ranges::v3::view::view_access::impl<V>::bind(((const ranges::v3::view::view<View>*)this)->ranges::v3::view::view<View>::view_, static_cast<Ts&>(ranges::v3::view::view::operator()::ts) ...))) ranges::v3::view::view<View>::operator()(Ts&& ...) const [with Ts = {Ts ...}; V = V; View = ranges::v3::view::enumerate_fn]'
                 auto operator()(Ts &&... ts) const
                      ^~~~~~~~
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:150:22: note:   template argument deduction/substitution failed:
In file included from /opt/wandbox/range-v3/include/range/v3/range_fwd.hpp:21,
                 from /opt/wandbox/range-v3/include/range/v3/begin_end.hpp:23,
                 from /opt/wandbox/range-v3/include/range/v3/core.hpp:17,
                 from prog.cc:2:
/opt/wandbox/range-v3/include/range/v3/view/view.hpp: In substitution of 'template<class ... Ts, class V> decltype (ranges::v3::view::make_view(ranges::v3::view::view_access::impl<V>::bind(((const ranges::v3::view::view<ranges::v3::view::enumerate_fn>*)this)->ranges::v3::view::view<ranges::v3::view::enumerate_fn>::view_, static_cast<Ts&>(ranges::v3::view::view::operator()::ts) ...))) ranges::v3::view::view<ranges::v3::view::enumerate_fn>::operator()<Ts ..., V>(Ts&& ...) const [with Ts = {S}; V = ranges::v3::view::enumerate_fn]':
prog.cc:32:61:   required from here
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:153:57: error: no matching function for call to 'ranges::v3::view::view_access::impl<ranges::v3::view::enumerate_fn>::bind(const ranges::v3::view::enumerate_fn&, S)'
                     make_view(view_access::impl<V>::bind(view_,
                               ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
                         static_cast<Ts&&>(ts)...))
                         ~~~~~~~~~~~~~~~~~~~~~~~~~        
/opt/wandbox/range-v3/include/range/v3/detail/config.hpp:92:17: note: in definition of macro 'RANGES_DECLTYPE_AUTO_RETURN'
     -> decltype(__VA_ARGS__)                                    \
                 ^~~~~~~~~~~
In file included from /opt/wandbox/range-v3/include/range/v3/view/take_exactly.hpp:29,
                 from /opt/wandbox/range-v3/include/range/v3/view/iota.hpp:28,
                 from /opt/wandbox/range-v3/include/range/v3/view/enumerate.hpp:19,
                 from prog.cc:3:
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:75:33: note: candidate: 'template<class ... Ts, class V> static decltype (V::bind(static_cast<Ts&>(ranges::v3::view::view_access::impl::bind::ts) ...)) ranges::v3::view::view_access::impl<View>::bind(Ts&& ...) [with Ts = {Ts ...}; V = V; View = ranges::v3::view::enumerate_fn]'
                     static auto bind(Ts &&...ts)
                                 ^~~~
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:75:33: note:   template argument deduction/substitution failed:
In file included from /opt/wandbox/range-v3/include/range/v3/range_fwd.hpp:21,
                 from /opt/wandbox/range-v3/include/range/v3/begin_end.hpp:23,
                 from /opt/wandbox/range-v3/include/range/v3/core.hpp:17,
                 from prog.cc:2:
/opt/wandbox/range-v3/include/range/v3/view/view.hpp: In substitution of 'template<class ... Ts, class V> static decltype (V::bind(static_cast<Ts&>(ranges::v3::view::view_access::impl::bind::ts) ...)) ranges::v3::view::view_access::impl<ranges::v3::view::enumerate_fn>::bind<Ts ..., V>(Ts&& ...) [with Ts = {const ranges::v3::view::enumerate_fn&, S}; V = ranges::v3::view::enumerate_fn]':
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:151:17:   required by substitution of 'template<class ... Ts, class V> decltype (ranges::v3::view::make_view(ranges::v3::view::view_access::impl<V>::bind(((const ranges::v3::view::view<ranges::v3::view::enumerate_fn>*)this)->ranges::v3::view::view<ranges::v3::view::enumerate_fn>::view_, static_cast<Ts&>(ranges::v3::view::view::operator()::ts) ...))) ranges::v3::view::view<ranges::v3::view::enumerate_fn>::operator()<Ts ..., V>(Ts&& ...) const [with Ts = {S}; V = ranges::v3::view::enumerate_fn]'
prog.cc:32:61:   required from here
/opt/wandbox/range-v3/include/range/v3/view/view.hpp:78:32: error: 'bind' is not a member of 'ranges::v3::view::enumerate_fn'
                         V::bind(static_cast<Ts&&>(ts)...)
                         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/wandbox/range-v3/include/range/v3/detail/config.hpp:92:17: note: in definition of macro 'RANGES_DECLTYPE_AUTO_RETURN'
     -> decltype(__VA_ARGS__)                                    \
                 ^~~~~~~~~~~
Exit Code:
1