Compile [2024-11-15 18:22:19 UTC]: fail
"g++-12" -fvisibility-inlines-hidden -std=c++17 -fPIC -m64 -pthread -O0 -fno-inline -Wall -fvisibility=hidden -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1 -I".." -I"../libs/hana/include" -I"../libs/hana/test/_include" -c -o "/var/boost/run/results/boost/bin.v2/libs/hana/test/test~ext~boost~fusion~tuple~auto~index_if.test/gcc-12~c++17/debug/x86_64/debug-symbols-off/threading-multi/visibility-hidden/ext/boost/fusion/tuple/auto/index_if.o" "../libs/hana/test/ext/boost/fusion/tuple/auto/index_if.cpp"
In file included from ../boost/hana/basic_tuple.hpp:28,
from ../boost/hana/functional/partial.hpp:13,
from ../boost/hana/fold_left.hpp:19,
from ../boost/hana/concept/foldable.hpp:19,
from ../boost/hana/core/to.hpp:16,
from ../boost/hana/bool.hpp:17,
from ../boost/hana/ext/boost/fusion/detail/common.hpp:13,
from ../boost/hana/ext/boost/fusion/vector.hpp:15,
from ../boost/hana/ext/boost/fusion/tuple.hpp:18,
from ../libs/hana/test/ext/boost/fusion/tuple/auto/_specs.hpp:9,
from ../libs/hana/test/ext/boost/fusion/tuple/auto/index_if.cpp:6:
../boost/hana/fwd/unpack.hpp: In instantiation of 'struct boost::hana::unpack_impl<boost::hana::ext::boost::fusion::vector_tag, void>':
../boost/hana/core/default.hpp:26:9: required by substitution of 'template<class Method> struct boost::hana::is_default<Method, decltype ((void)(static_cast<boost::hana::default_>((*(Method*)(0)))))> [with Method = boost::hana::unpack_impl<boost::hana::ext::boost::fusion::vector_tag, void>]'
../boost/hana/concept/foldable.hpp:28:65: required from 'struct boost::hana::Foldable<boost::hana::ext::boost::fusion::vector_tag>'
../boost/hana/index_if.hpp:86:50: required by substitution of 'template<class It> struct boost::hana::index_if_impl<It, boost::hana::when<(! boost::hana::Foldable<T>::value)> > [with It = boost::hana::ext::boost::fusion::vector_tag]'
../boost/hana/fwd/index_if.hpp:48:12: required from 'struct boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, void>'
../boost/hana/index_if.hpp:44:30: required from 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<>; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >]'
../libs/hana/test/_include/auto/index_if.hpp:28:5: required from here
../boost/hana/fwd/unpack.hpp:84:12: error: ambiguous template instantiation for 'struct boost::hana::unpack_impl<boost::hana::ext::boost::fusion::vector_tag, boost::hana::when<true> >'
84 | struct unpack_impl : unpack_impl<T, when<true>> { };
| ^~~~~~~~~~~
In file included from ../boost/hana/fold_left.hpp:20:
../boost/hana/unpack.hpp:52:12: note: candidates are: 'template<class T, bool condition> struct boost::hana::unpack_impl<T, boost::hana::when<condition> > [with T = boost::hana::ext::boost::fusion::vector_tag; bool condition = true]'
52 | struct unpack_impl<T, when<condition>> : default_ {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/unpack.hpp:62:12: note: 'template<class It> struct boost::hana::unpack_impl<It, boost::hana::when<(boost::hana::Iterable<It>::value && (! boost::hana::is_default<boost::hana::length_impl<It> >::value))> > [with It = boost::hana::ext::boost::fusion::vector_tag]'
62 | struct unpack_impl<It, when<
| ^~~~~~~~~~~~~~~~~~~~~
63 | hana::Iterable<It>::value && !is_default<length_impl<It>>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
64 | >> {
| ~~
../boost/hana/fwd/unpack.hpp:84:12: error: invalid use of incomplete type 'struct boost::hana::unpack_impl<boost::hana::ext::boost::fusion::vector_tag, boost::hana::when<true> >'
84 | struct unpack_impl : unpack_impl<T, when<true>> { };
| ^~~~~~~~~~~
../boost/hana/fwd/unpack.hpp:84:12: note: declaration of 'struct boost::hana::unpack_impl<boost::hana::ext::boost::fusion::vector_tag, boost::hana::when<true> >'
In file included from ../boost/hana/detail/operators/comparable.hpp:15,
from ../boost/hana/pair.hpp:20,
from ../boost/hana/unpack.hpp:26:
../boost/hana/fwd/equal.hpp: In instantiation of 'struct boost::hana::equal_impl<boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, void>':
../boost/hana/equal.hpp:50:28: required from 'constexpr auto boost::hana::equal_t::operator()(X&&, Y&&) const [with X = boost::hana::test::ct_eq<0>; Y = const boost::hana::test::ct_eq<0>&]'
../boost/hana/functional/partial.hpp:94:61: required from 'constexpr decltype(auto) boost::hana::partial_t<std::integer_sequence<long unsigned int, _Idx ...>, F, X ...>::operator()(Y&& ...) && [with Y = {const boost::hana::test::ct_eq<0>&}; long unsigned int ...n = {0}; F = boost::hana::equal_t; X = {boost::hana::test::ct_eq<0>}]'
../boost/hana/index_if.hpp:57:41: required by substitution of 'template<long unsigned int i, long unsigned int N> template<class Xs, class Pred> using f = typename boost::hana::detail::iterate_while<(i + 1), N, static_cast<bool>(typename boost::hana::detail::decay<decltype (declval<Pred>()(boost::hana::at(declval<Xs>(), size_c<i>)))>::type::value)>::f<Xs, Pred> [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >; long unsigned int i = 0; long unsigned int N = 1]'
../boost/hana/index_if.hpp:78:31: required by substitution of 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, boost::hana::when<true> >::apply(const Xs&, const Pred&) [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >]'
../boost/hana/index_if.hpp:44:30: required from 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >]'
../libs/hana/test/_include/auto/index_if.hpp:32:5: required from here
../boost/hana/fwd/equal.hpp:69:12: error: ambiguous template instantiation for 'struct boost::hana::equal_impl<boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::when<true> >'
69 | struct equal_impl : equal_impl<T, U, when<true>> { };
| ^~~~~~~~~~
In file included from ../libs/hana/test/_include/auto/index_if.hpp:10,
from ../libs/hana/test/ext/boost/fusion/tuple/auto/index_if.cpp:7:
../boost/hana/equal.hpp:55:12: note: candidates are: 'template<class T, class U, bool condition> struct boost::hana::equal_impl<T, U, boost::hana::when<condition> > [with T = boost::hana::test::Integer<(boost::hana::test::Policy)17, void>; U = boost::hana::test::Integer<(boost::hana::test::Policy)17, void>; bool condition = true]'
55 | struct equal_impl<T, U, when<condition>> : default_ {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/equal.hpp:104:12: note: 'template<class C> struct boost::hana::equal_impl<C, C, boost::hana::when<(boost::hana::Constant<C>::value && boost::hana::Comparable<typename C::value_type>::value)> > [with C = boost::hana::test::Integer<(boost::hana::test::Policy)17, void>]'
104 | struct equal_impl<C, C, when<
| ^~~~~~~~~~~~~~~~~~~~~~
105 | hana::Constant<C>::value &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~
106 | Comparable<typename C::value_type>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
107 | >> {
| ~~
../boost/hana/fwd/equal.hpp:69:12: error: invalid use of incomplete type 'struct boost::hana::equal_impl<boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::when<true> >'
69 | struct equal_impl : equal_impl<T, U, when<true>> { };
| ^~~~~~~~~~
../boost/hana/fwd/equal.hpp:69:12: note: declaration of 'struct boost::hana::equal_impl<boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::when<true> >'
../boost/hana/equal.hpp: In instantiation of 'constexpr auto boost::hana::equal_t::operator()(X&&, Y&&) const [with X = boost::hana::test::ct_eq<0>; Y = const boost::hana::test::ct_eq<0>&]':
../boost/hana/functional/partial.hpp:94:61: required from 'constexpr decltype(auto) boost::hana::partial_t<std::integer_sequence<long unsigned int, _Idx ...>, F, X ...>::operator()(Y&& ...) && [with Y = {const boost::hana::test::ct_eq<0>&}; long unsigned int ...n = {0}; F = boost::hana::equal_t; X = {boost::hana::test::ct_eq<0>}]'
../boost/hana/index_if.hpp:57:41: required by substitution of 'template<long unsigned int i, long unsigned int N> template<class Xs, class Pred> using f = typename boost::hana::detail::iterate_while<(i + 1), N, static_cast<bool>(typename boost::hana::detail::decay<decltype (declval<Pred>()(boost::hana::at(declval<Xs>(), size_c<i>)))>::type::value)>::f<Xs, Pred> [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >; long unsigned int i = 0; long unsigned int N = 1]'
../boost/hana/index_if.hpp:78:31: required by substitution of 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, boost::hana::when<true> >::apply(const Xs&, const Pred&) [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >]'
../boost/hana/index_if.hpp:44:30: required from 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >]'
../libs/hana/test/_include/auto/index_if.hpp:32:5: required from here
../boost/hana/equal.hpp:50:28: error: 'apply' is not a member of 'Equal' {aka 'boost::hana::equal_impl<boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, void>'}
50 | return Equal::apply(static_cast<X&&>(x), static_cast<Y&&>(y));
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../boost/hana/find_if.hpp:26,
from ../boost/hana/concept/searchable.hpp:20,
from ../boost/hana/any_of.hpp:18,
from ../boost/hana/all_of.hpp:15,
from ../boost/hana/equal.hpp:16:
../boost/hana/index_if.hpp: In instantiation of 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >]':
../libs/hana/test/_include/auto/index_if.hpp:32:5: required from here
../boost/hana/index_if.hpp:44:30: error: no matching function for call to 'boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, void>::apply(boost::fusion::tuple<boost::hana::test::ct_eq<0> >, boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >)'
44 | return IndexIf::apply(static_cast<Xs&&>(xs), static_cast<Pred&&>(pred));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp:78:31: note: candidate: 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<Tag, boost::hana::when<boost::hana::Foldable<T>::value> >::apply(const Xs&, const Pred&) [with Pred = Xs; Tag = boost::hana::ext::boost::fusion::vector_tag]'
78 | static constexpr auto apply(Xs const& xs, Pred const&)
| ^~~~~
../boost/hana/index_if.hpp:78:31: note: substitution of deduced template arguments resulted in errors seen above
In file included from ../libs/hana/test/_include/auto/index_if.hpp:9:
../libs/hana/test/_include/auto/index_if.hpp: In lambda function:
../boost/hana/assert.hpp:227:9: error: template argument 1 is invalid
227 | >::value, \
| ^
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:32:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
32 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/assert.hpp:232:10: error: no matching function for call to 'value<<expression error> >()'
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:32:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
32 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../boost/hana/concept/constant.hpp:19,
from ../boost/hana/core/to.hpp:15:
../boost/hana/value.hpp:31:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value()'
31 | constexpr decltype(auto) value() {
| ^~~~~
../boost/hana/value.hpp:31:30: note: template argument deduction/substitution failed:
../boost/hana/assert.hpp:232:10: error: template argument 1 is invalid
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:32:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
32 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../boost/hana/value.hpp:13:
../boost/hana/fwd/value.hpp:65:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value(const T&)'
65 | constexpr decltype(auto) value(T const&)
| ^~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate expects 1 argument, 0 provided
../boost/hana/equal.hpp: In instantiation of 'constexpr auto boost::hana::equal_t::operator()(X&&, Y&&) const [with X = boost::hana::test::ct_eq<42>; Y = const boost::hana::test::ct_eq<0>&]':
../boost/hana/functional/partial.hpp:94:61: required from 'constexpr decltype(auto) boost::hana::partial_t<std::integer_sequence<long unsigned int, _Idx ...>, F, X ...>::operator()(Y&& ...) && [with Y = {const boost::hana::test::ct_eq<0>&}; long unsigned int ...n = {0}; F = boost::hana::equal_t; X = {boost::hana::test::ct_eq<42>}]'
../boost/hana/index_if.hpp:57:41: required by substitution of 'template<long unsigned int i, long unsigned int N> template<class Xs, class Pred> using f = typename boost::hana::detail::iterate_while<(i + 1), N, static_cast<bool>(typename boost::hana::detail::decay<decltype (declval<Pred>()(boost::hana::at(declval<Xs>(), size_c<i>)))>::type::value)>::f<Xs, Pred> [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<42> >; long unsigned int i = 0; long unsigned int N = 1]'
../boost/hana/index_if.hpp:78:31: required by substitution of 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, boost::hana::when<true> >::apply(const Xs&, const Pred&) [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<42> >]'
../boost/hana/index_if.hpp:44:30: required from 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<42> >]'
../libs/hana/test/_include/auto/index_if.hpp:36:5: required from here
../boost/hana/equal.hpp:50:28: error: 'apply' is not a member of 'Equal' {aka 'boost::hana::equal_impl<boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, void>'}
50 | return Equal::apply(static_cast<X&&>(x), static_cast<Y&&>(y));
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp: In instantiation of 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<42> >]':
../libs/hana/test/_include/auto/index_if.hpp:36:5: required from here
../boost/hana/index_if.hpp:44:30: error: no matching function for call to 'boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, void>::apply(boost::fusion::tuple<boost::hana::test::ct_eq<0> >, boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<42> >)'
44 | return IndexIf::apply(static_cast<Xs&&>(xs), static_cast<Pred&&>(pred));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp:78:31: note: candidate: 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<Tag, boost::hana::when<boost::hana::Foldable<T>::value> >::apply(const Xs&, const Pred&) [with Pred = Xs; Tag = boost::hana::ext::boost::fusion::vector_tag]'
78 | static constexpr auto apply(Xs const& xs, Pred const&)
| ^~~~~
../boost/hana/index_if.hpp:78:31: note: substitution of deduced template arguments resulted in errors seen above
../boost/hana/assert.hpp:227:9: error: template argument 1 is invalid
227 | >::value, \
| ^
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:36:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
36 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/assert.hpp:232:10: error: no matching function for call to 'value<<expression error> >()'
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:36:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
36 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/value.hpp:31:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value()'
31 | constexpr decltype(auto) value() {
| ^~~~~
../boost/hana/value.hpp:31:30: note: template argument deduction/substitution failed:
../boost/hana/assert.hpp:232:10: error: template argument 1 is invalid
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:36:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
36 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value(const T&)'
65 | constexpr decltype(auto) value(T const&)
| ^~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate expects 1 argument, 0 provided
../boost/hana/index_if.hpp: In instantiation of 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >]':
../libs/hana/test/_include/auto/index_if.hpp:40:5: required from here
../boost/hana/index_if.hpp:44:30: error: no matching function for call to 'boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, void>::apply(boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >, boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<0> >)'
44 | return IndexIf::apply(static_cast<Xs&&>(xs), static_cast<Pred&&>(pred));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp:78:31: note: candidate: 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<Tag, boost::hana::when<boost::hana::Foldable<T>::value> >::apply(const Xs&, const Pred&) [with Pred = Xs; Tag = boost::hana::ext::boost::fusion::vector_tag]'
78 | static constexpr auto apply(Xs const& xs, Pred const&)
| ^~~~~
../boost/hana/index_if.hpp:78:31: note: template argument deduction/substitution failed:
../boost/hana/assert.hpp:227:9: error: template argument 1 is invalid
227 | >::value, \
| ^
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:40:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
40 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/assert.hpp:232:10: error: no matching function for call to 'value<<expression error> >()'
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:40:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
40 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/value.hpp:31:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value()'
31 | constexpr decltype(auto) value() {
| ^~~~~
../boost/hana/value.hpp:31:30: note: template argument deduction/substitution failed:
../boost/hana/assert.hpp:232:10: error: template argument 1 is invalid
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:40:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
40 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value(const T&)'
65 | constexpr decltype(auto) value(T const&)
| ^~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate expects 1 argument, 0 provided
../boost/hana/equal.hpp: In instantiation of 'constexpr auto boost::hana::equal_t::operator()(X&&, Y&&) const [with X = boost::hana::test::ct_eq<1>; Y = const boost::hana::test::ct_eq<0>&]':
../boost/hana/functional/partial.hpp:94:61: required from 'constexpr decltype(auto) boost::hana::partial_t<std::integer_sequence<long unsigned int, _Idx ...>, F, X ...>::operator()(Y&& ...) && [with Y = {const boost::hana::test::ct_eq<0>&}; long unsigned int ...n = {0}; F = boost::hana::equal_t; X = {boost::hana::test::ct_eq<1>}]'
../boost/hana/index_if.hpp:57:41: required by substitution of 'template<long unsigned int i, long unsigned int N> template<class Xs, class Pred> using f = typename boost::hana::detail::iterate_while<(i + 1), N, static_cast<bool>(typename boost::hana::detail::decay<decltype (declval<Pred>()(boost::hana::at(declval<Xs>(), size_c<i>)))>::type::value)>::f<Xs, Pred> [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<1> >; long unsigned int i = 0; long unsigned int N = 3]'
../boost/hana/index_if.hpp:78:31: required by substitution of 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, boost::hana::when<true> >::apply(const Xs&, const Pred&) [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<1> >]'
../boost/hana/index_if.hpp:44:30: required from 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<1> >]'
../libs/hana/test/_include/auto/index_if.hpp:44:5: required from here
../boost/hana/equal.hpp:50:28: error: 'apply' is not a member of 'Equal' {aka 'boost::hana::equal_impl<boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, void>'}
50 | return Equal::apply(static_cast<X&&>(x), static_cast<Y&&>(y));
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp: In instantiation of 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<1> >]':
../libs/hana/test/_include/auto/index_if.hpp:44:5: required from here
../boost/hana/index_if.hpp:44:30: error: no matching function for call to 'boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, void>::apply(boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >, boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<1> >)'
44 | return IndexIf::apply(static_cast<Xs&&>(xs), static_cast<Pred&&>(pred));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp:78:31: note: candidate: 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<Tag, boost::hana::when<boost::hana::Foldable<T>::value> >::apply(const Xs&, const Pred&) [with Pred = Xs; Tag = boost::hana::ext::boost::fusion::vector_tag]'
78 | static constexpr auto apply(Xs const& xs, Pred const&)
| ^~~~~
../boost/hana/index_if.hpp:78:31: note: substitution of deduced template arguments resulted in errors seen above
../boost/hana/assert.hpp:227:9: error: template argument 1 is invalid
227 | >::value, \
| ^
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:44:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
44 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/assert.hpp:232:10: error: no matching function for call to 'value<<expression error> >()'
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:44:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
44 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/value.hpp:31:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value()'
31 | constexpr decltype(auto) value() {
| ^~~~~
../boost/hana/value.hpp:31:30: note: template argument deduction/substitution failed:
../boost/hana/assert.hpp:232:10: error: template argument 1 is invalid
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:44:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
44 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value(const T&)'
65 | constexpr decltype(auto) value(T const&)
| ^~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate expects 1 argument, 0 provided
../boost/hana/equal.hpp: In instantiation of 'constexpr auto boost::hana::equal_t::operator()(X&&, Y&&) const [with X = boost::hana::test::ct_eq<2>; Y = const boost::hana::test::ct_eq<0>&]':
../boost/hana/functional/partial.hpp:94:61: required from 'constexpr decltype(auto) boost::hana::partial_t<std::integer_sequence<long unsigned int, _Idx ...>, F, X ...>::operator()(Y&& ...) && [with Y = {const boost::hana::test::ct_eq<0>&}; long unsigned int ...n = {0}; F = boost::hana::equal_t; X = {boost::hana::test::ct_eq<2>}]'
../boost/hana/index_if.hpp:57:41: required by substitution of 'template<long unsigned int i, long unsigned int N> template<class Xs, class Pred> using f = typename boost::hana::detail::iterate_while<(i + 1), N, static_cast<bool>(typename boost::hana::detail::decay<decltype (declval<Pred>()(boost::hana::at(declval<Xs>(), size_c<i>)))>::type::value)>::f<Xs, Pred> [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<2> >; long unsigned int i = 0; long unsigned int N = 3]'
../boost/hana/index_if.hpp:78:31: required by substitution of 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, boost::hana::when<true> >::apply(const Xs&, const Pred&) [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<2> >]'
../boost/hana/index_if.hpp:44:30: required from 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<2> >]'
../libs/hana/test/_include/auto/index_if.hpp:48:5: required from here
../boost/hana/equal.hpp:50:28: error: 'apply' is not a member of 'Equal' {aka 'boost::hana::equal_impl<boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, boost::hana::test::Integer<(boost::hana::test::Policy)17, void>, void>'}
50 | return Equal::apply(static_cast<X&&>(x), static_cast<Y&&>(y));
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp: In instantiation of 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<2> >]':
../libs/hana/test/_include/auto/index_if.hpp:48:5: required from here
../boost/hana/index_if.hpp:44:30: error: no matching function for call to 'boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, void>::apply(boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >, boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<2> >)'
44 | return IndexIf::apply(static_cast<Xs&&>(xs), static_cast<Pred&&>(pred));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp:78:31: note: candidate: 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<Tag, boost::hana::when<boost::hana::Foldable<T>::value> >::apply(const Xs&, const Pred&) [with Pred = Xs; Tag = boost::hana::ext::boost::fusion::vector_tag]'
78 | static constexpr auto apply(Xs const& xs, Pred const&)
| ^~~~~
../boost/hana/index_if.hpp:78:31: note: substitution of deduced template arguments resulted in errors seen above
../boost/hana/assert.hpp:227:9: error: template argument 1 is invalid
227 | >::value, \
| ^
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:48:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
48 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/assert.hpp:232:10: error: no matching function for call to 'value<<expression error> >()'
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:48:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
48 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/value.hpp:31:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value()'
31 | constexpr decltype(auto) value() {
| ^~~~~
../boost/hana/value.hpp:31:30: note: template argument deduction/substitution failed:
../boost/hana/assert.hpp:232:10: error: template argument 1 is invalid
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:48:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
48 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value(const T&)'
65 | constexpr decltype(auto) value(T const&)
| ^~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate expects 1 argument, 0 provided
../boost/hana/index_if.hpp: In instantiation of 'constexpr auto boost::hana::index_if_t::operator()(Xs&&, Pred&&) const [with Xs = boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >; Pred = boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<42> >]':
../libs/hana/test/_include/auto/index_if.hpp:52:5: required from here
../boost/hana/index_if.hpp:44:30: error: no matching function for call to 'boost::hana::index_if_impl<boost::hana::ext::boost::fusion::vector_tag, void>::apply(boost::fusion::tuple<boost::hana::test::ct_eq<0>, boost::hana::test::ct_eq<1>, boost::hana::test::ct_eq<2> >, boost::hana::partial_t<std::integer_sequence<long unsigned int, 0>, boost::hana::equal_t, boost::hana::test::ct_eq<42> >)'
44 | return IndexIf::apply(static_cast<Xs&&>(xs), static_cast<Pred&&>(pred));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/index_if.hpp:78:31: note: candidate: 'template<class Xs, class Pred> static constexpr typename boost::hana::detail::iterate_while<0, decltype (boost::hana::length(xs))::value, false>::f<Xs, Pred> boost::hana::index_if_impl<Tag, boost::hana::when<boost::hana::Foldable<T>::value> >::apply(const Xs&, const Pred&) [with Pred = Xs; Tag = boost::hana::ext::boost::fusion::vector_tag]'
78 | static constexpr auto apply(Xs const& xs, Pred const&)
| ^~~~~
../boost/hana/index_if.hpp:78:31: note: template argument deduction/substitution failed:
../boost/hana/assert.hpp:227:9: error: template argument 1 is invalid
227 | >::value, \
| ^
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:52:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
52 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/assert.hpp:232:10: error: no matching function for call to 'value<<expression error> >()'
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:52:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
52 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/value.hpp:31:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value()'
31 | constexpr decltype(auto) value() {
| ^~~~~
../boost/hana/value.hpp:31:30: note: template argument deduction/substitution failed:
../boost/hana/assert.hpp:232:10: error: template argument 1 is invalid
230 | static_assert(::boost::hana::value< \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
231 | decltype(BOOST_HANA_PP_CONCAT(__hana_tmp_, __LINE__)) \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
232 | >(), message); \
| ~^~
../boost/hana/assert.hpp:240:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK_MSG'
240 | BOOST_HANA_CONSTANT_CHECK_MSG( \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/_include/auto/index_if.hpp:52:5: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
52 | BOOST_HANA_CONSTANT_CHECK(hana::equal(
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate: 'template<class T> constexpr decltype(auto) boost::hana::value(const T&)'
65 | constexpr decltype(auto) value(T const&)
| ^~~~~
../boost/hana/fwd/value.hpp:65:30: note: candidate expects 1 argument, 0 provided