Compile [2024-11-21 16:30:17 UTC]: fail
call "C:\teeks99-09\run\results\boost\bin.v2\standalone\msvc\msvc-14.3\msvc-setup.bat" >nul
cl /Zm800 -nologo "..\libs\hana\test\orderable.cpp" -c -Fo"C:\teeks99-09\run\results\boost\bin.v2\libs\hana\test\test~orderable.test\msvc-14.3\dbg\x86_6\dbg-symbl-off\thrd-mlt\orderable.obj" -TP /wd4675 /EHs /GR /Zc:throwingNew /Od /Ob0 /W3 /MDd /Zc:forScope /Zc:wchar_t /Zc:inline /favor:blend -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1 "-I.." "-I..\libs\hana\test\_include" "-IC:\teeks99-09\run\boost_root\libs\assert\include" "-IC:\teeks99-09\run\boost_root\libs\core\include" "-IC:\teeks99-09\run\boost_root\libs\hana\include" "-IC:\teeks99-09\run\boost_root\libs\throw_exception\include" "-IC:\teeks99-09\run\boost_root\libs\tuple\include"
orderable.cpp
..\boost/hana/eval_if.hpp(60): error C2446: ':': no conversion from 'const boost::hana::integral_constant<bool,false>' to 'const boost::hana::integral_constant<bool,true>'
..\boost/hana/eval_if.hpp(60): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
..\boost/hana/eval_if.hpp(60): note: the template instantiation context (the oldest one first) is
..\libs\hana\test\orderable.cpp(53): note: see reference to function template instantiation 'boost::hana::test::TestOrderable<int,boost::hana::when<true>>::TestOrderable<boost::hana::tuple<int,int,int,int,int,int>>(boost::hana::tuple<int,int,int,int,int,int>)' being compiled
..\libs\hana\test\orderable.cpp(53): note: see the first reference to 'boost::hana::test::TestOrderable<int,boost::hana::when<true>>::TestOrderable' in 'main'
..\libs\hana\test\_include\laws/orderable.hpp(34): note: see reference to function template instantiation 'boost::hana::test::TestOrderable<T,boost::hana::test::laws>::TestOrderable<boost::hana::tuple<int,int,int,int,int,int>>(Xs)' being compiled
with
[
T=int,
Xs=boost::hana::tuple<int,int,int,int,int,int>
]
..\libs\hana\test\_include\laws/orderable.hpp(45): note: see reference to function template instantiation 'void boost::hana::test::for_each_n_t<2>::operator ()<Xs,boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>(const Xs &,const F &) const' being compiled
with
[
Xs=boost::hana::tuple<int,int,int,int,int,int>,
T=int,
F=boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>
]
..\libs\hana\test\_include\laws/base.hpp(44): note: see reference to function template instantiation 'void boost::hana::for_each_t::operator ()<const Xs&,boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>>>(const boost::hana::tuple<int,int,int,int,int,int>&,F &&) const' being compiled
with
[
Xs=boost::hana::tuple<int,int,int,int,int,int>,
T=int,
F=boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>>
]
..\boost/hana/for_each.hpp(35): note: see reference to function template instantiation 'void boost::hana::for_each_impl<T,boost::hana::when<true>>::apply<const Xs&,F>(const boost::hana::tuple<int,int,int,int,int,int>&,F &&)' being compiled
with
[
T=boost::hana::for_each_t::()::S,
Xs=boost::hana::tuple<int,int,int,int,int,int>,
F=boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>>
]
..\boost/hana/for_each.hpp(56): note: see reference to function template instantiation 'void boost::hana::unpack_t::operator ()<const Xs&,boost::hana::detail::on_each<F *>>(const boost::hana::tuple<int,int,int,int,int,int>&,boost::hana::detail::on_each<F *> &&) const' being compiled
with
[
Xs=boost::hana::tuple<int,int,int,int,int,int>,
F=boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>>
]
..\boost/hana/unpack.hpp(47): note: see reference to function template instantiation 'void boost::hana::unpack_impl<boost::hana::tuple_tag,void>::apply<const Xs&,F>(const boost::hana::tuple<int,int,int,int,int,int>&,F &&)' being compiled
with
[
Xs=boost::hana::tuple<int,int,int,int,int,int>,
F=boost::hana::detail::on_each<boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>> *>
]
..\boost/hana/tuple.hpp(233): note: see reference to function template instantiation 'void boost::hana::unpack_t::operator ()<const boost::hana::basic_tuple<int,int,int,int,int,int>&,F>(Xs,F &&) const' being compiled
with
[
F=boost::hana::detail::on_each<boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>> *>,
Xs=const boost::hana::basic_tuple<int,int,int,int,int,int> &
]
..\boost/hana/unpack.hpp(47): note: see reference to function template instantiation 'void boost::hana::unpack_impl<boost::hana::basic_tuple_tag,void>::apply<0,1,2,3,4,5,int,int,int,int,int,int,F>(const boost::hana::detail::basic_tuple_impl<std::integer_sequence<size_t,0,1,2,3,4,5>,int,int,int,int,int,int> &,F &&)' being compiled
with
[
F=boost::hana::detail::on_each<boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>> *>
]
..\boost/hana/basic_tuple.hpp(115): note: see reference to function template instantiation 'void boost::hana::detail::on_each<F *>::operator ()<const V&,const V&,const V&,const V&,const V&,const V&>(const V &,const V &,const V &,const V &,const V &,const V &) const' being compiled
with
[
F=boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>>,
V=int
]
..\boost/hana/for_each.hpp(46): note: see reference to function template instantiation 'void boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>>>::operator ()<const V&,>(X) &' being compiled
with
[
T=int,
V=int,
X=const int &
]
..\boost/hana/functional/compose.hpp(78): note: see reference to function template instantiation 'void boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<int,int,int,int,int,int>>::operator ()<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>>(boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int> &&) &' being compiled
with
[
T=int
]
..\boost/hana/functional/partial.hpp(86): note: see reference to function template instantiation 'void boost::hana::test::for_each_n_t<1>::operator ()<V,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>>(const Xs &,const F &) const' being compiled
with
[
V=boost::hana::tuple<int,int,int,int,int,int>,
T=int,
Xs=boost::hana::tuple<int,int,int,int,int,int>,
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>
]
..\libs\hana\test\_include\laws/base.hpp(57): note: see reference to function template instantiation 'void boost::hana::for_each_t::operator ()<const Xs&,const F&>(const boost::hana::tuple<int,int,int,int,int,int>&,const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>&) const' being compiled
with
[
Xs=boost::hana::tuple<int,int,int,int,int,int>,
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>,
T=int
]
..\boost/hana/for_each.hpp(35): note: see reference to function template instantiation 'void boost::hana::for_each_impl<T,boost::hana::when<true>>::apply<const Xs&,const F&>(const boost::hana::tuple<int,int,int,int,int,int>&,const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>&)' being compiled
with
[
T=boost::hana::for_each_t::()::S,
Xs=boost::hana::tuple<int,int,int,int,int,int>,
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>
]
..\boost/hana/for_each.hpp(56): note: see reference to function template instantiation 'void boost::hana::unpack_t::operator ()<const Xs&,boost::hana::detail::on_each<const F *>>(const boost::hana::tuple<int,int,int,int,int,int>&,boost::hana::detail::on_each<const F *> &&) const' being compiled
with
[
Xs=boost::hana::tuple<int,int,int,int,int,int>,
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>
]
..\boost/hana/unpack.hpp(47): note: see reference to function template instantiation 'void boost::hana::unpack_impl<boost::hana::tuple_tag,void>::apply<const Xs&,F>(const boost::hana::tuple<int,int,int,int,int,int>&,F &&)' being compiled
with
[
Xs=boost::hana::tuple<int,int,int,int,int,int>,
F=boost::hana::detail::on_each<const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int> *>
]
..\boost/hana/tuple.hpp(233): note: see reference to function template instantiation 'void boost::hana::unpack_t::operator ()<const boost::hana::basic_tuple<int,int,int,int,int,int>&,F>(Xs,F &&) const' being compiled
with
[
F=boost::hana::detail::on_each<const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int> *>,
Xs=const boost::hana::basic_tuple<int,int,int,int,int,int> &
]
..\boost/hana/unpack.hpp(47): note: see reference to function template instantiation 'void boost::hana::unpack_impl<boost::hana::basic_tuple_tag,void>::apply<0,1,2,3,4,5,int,int,int,int,int,int,F>(const boost::hana::detail::basic_tuple_impl<std::integer_sequence<size_t,0,1,2,3,4,5>,int,int,int,int,int,int> &,F &&)' being compiled
with
[
F=boost::hana::detail::on_each<const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int> *>
]
..\boost/hana/basic_tuple.hpp(115): note: see reference to function template instantiation 'void boost::hana::detail::on_each<const F *>::operator ()<const V&,const V&,const V&,const V&,const V&,const V&>(const V &,const V &,const V &,const V &,const V &,const V &) const' being compiled
with
[
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<int,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>,
V=int
]
..\boost/hana/for_each.hpp(46): note: see reference to function template instantiation 'decltype(auto) boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>,int>::operator ()<const V&>(const V &) const &' being compiled
with
[
T=int,
V=int
]
..\boost/hana/functional/partial.hpp(78): note: see reference to function template instantiation 'auto boost::hana::test::TestOrderable<T,boost::hana::test::laws>::{ctor}::<lambda_941c7358a772b22ed2e93569f4fb4e67>::operator ()<V,V>(V,V) const' being compiled
with
[
T=int,
V=int
]
..\libs\hana\test\_include\laws/orderable.hpp(79): note: see reference to function template instantiation 'decltype(auto) boost::hana::detail::less_by<boost::hana::test::_injection<0>>::operator ()<V&,V&>(X,Y) const &' being compiled
with
[
V=int,
X=int &,
Y=int &
]
..\boost/hana/ordering.hpp(28): note: see reference to function template instantiation 'auto boost::hana::less_t::operator ()<boost::hana::test::injection_result<0,int>,boost::hana::test::injection_result<0,int>>(X &&,Y &&) const' being compiled
with
[
X=boost::hana::test::injection_result<0,int>,
Y=boost::hana::test::injection_result<0,int>
]
..\boost/hana/less.hpp(62): note: see reference to function template instantiation 'auto boost::hana::less_impl<boost::hana::test::InjectionResult,boost::hana::test::InjectionResult,void>::apply<X,Y>(X,Y)' being compiled
with
[
X=boost::hana::test::injection_result<0,int>,
Y=boost::hana::test::injection_result<0,int>
]
..\libs\hana\test\_include\laws/base.hpp(174): note: see reference to function template instantiation 'auto boost::hana::less_t::operator ()<boost::hana::tuple<int>&,boost::hana::tuple<int>&>(X,Y) const' being compiled
with
[
X=boost::hana::tuple<int> &,
Y=boost::hana::tuple<int> &
]
..\boost/hana/less.hpp(62): note: see reference to function template instantiation 'auto boost::hana::less_impl<T,U,boost::hana::when<true>>::apply<boost::hana::tuple<int>,boost::hana::tuple<int>>(const Xs &,const Ys &)' being compiled
with
[
T=boost::hana::tuple_tag,
U=boost::hana::tuple_tag,
Xs=boost::hana::tuple<int>,
Ys=boost::hana::tuple<int>
]
..\boost/hana/less.hpp(138): note: see reference to function template instantiation 'auto boost::hana::lexicographical_compare_t::operator ()<Xs,Ys>(const Xs &,const Ys &) const' being compiled
with
[
Xs=boost::hana::tuple<int>,
Ys=boost::hana::tuple<int>
]
..\boost/hana/lexicographical_compare.hpp(30): note: see reference to function template instantiation 'auto boost::hana::lexicographical_compare_t::operator ()<Xs,Ys,boost::hana::less_t>(const Xs &,const Ys &,const Pred &) const' being compiled
with
[
Xs=boost::hana::tuple<int>,
Ys=boost::hana::tuple<int>,
Pred=boost::hana::less_t
]
..\boost/hana/lexicographical_compare.hpp(51): note: see reference to function template instantiation 'auto boost::hana::lexicographical_compare_impl<T,boost::hana::when<true>>::apply<Xs,Ys,Pred>(const Xs &,const Ys &,const Pred &)' being compiled
with
[
T=boost::hana::lexicographical_compare_t::()::It1,
Xs=boost::hana::tuple<int>,
Ys=boost::hana::tuple<int>,
Pred=boost::hana::less_t
]
..\boost/hana/lexicographical_compare.hpp(102): note: see reference to function template instantiation 'auto boost::hana::lexicographical_compare_impl<T,boost::hana::when<true>>::helper<Xs,Ys,Pred>(const Xs &,const Ys &,const Pred &,boost::hana::false_)' being compiled
with
[
T=boost::hana::lexicographical_compare_t::()::It1,
Xs=boost::hana::tuple<int>,
Ys=boost::hana::tuple<int>,
Pred=boost::hana::less_t
]
..\boost/hana/lexicographical_compare.hpp(97): note: see reference to function template instantiation 'decltype(auto) boost::hana::if_t::operator ()<bool,const boost::hana::integral_constant<bool,true>&,const boost::hana::integral_constant<bool,false>&>(Cond &&,Then,Else) const' being compiled
with
[
Cond=bool,
Then=const boost::hana::integral_constant<bool,true> &,
Else=const boost::hana::integral_constant<bool,false> &
]
..\boost/hana/if.hpp(35): note: see reference to function template instantiation 'auto boost::hana::if_impl<L,boost::hana::when<true>>::apply<Cond,const boost::hana::integral_constant<bool,true>&,const boost::hana::integral_constant<bool,false>&>(C &&,T,E)' being compiled
with
[
L=boost::hana::if_t::()::Bool,
Cond=bool,
C=bool,
T=const boost::hana::integral_constant<bool,true> &,
E=const boost::hana::integral_constant<bool,false> &
]
..\boost/hana/if.hpp(53): note: see reference to function template instantiation 'decltype(auto) boost::hana::eval_if_t::operator ()<C,boost::hana::detail::hold<T>,boost::hana::detail::hold<E>>(Cond &&,Then &&,Else &&) const' being compiled
with
[
C=bool,
T=const boost::hana::integral_constant<bool,true> &,
E=const boost::hana::integral_constant<bool,false> &,
Cond=bool,
Then=boost::hana::detail::hold<const boost::hana::integral_constant<bool,true> &>,
Else=boost::hana::detail::hold<const boost::hana::integral_constant<bool,false> &>
]
..\boost/hana/eval_if.hpp(40): note: see reference to function template instantiation 'auto boost::hana::eval_if_impl<L,boost::hana::when<true>>::apply<Cond,Then,Else>(const Cond &,T &&,E &&)' being compiled
with
[
L=bool,
Cond=bool,
Then=boost::hana::detail::hold<const boost::hana::integral_constant<bool,true> &>,
Else=boost::hana::detail::hold<const boost::hana::integral_constant<bool,false> &>,
T=boost::hana::detail::hold<const boost::hana::integral_constant<bool,true> &>,
E=boost::hana::detail::hold<const boost::hana::integral_constant<bool,false> &>
]
..\boost/hana/lexicographical_compare.hpp(97): error C2672: 'boost::hana::lexicographical_compare_impl<T,boost::hana::when<true>>::helper1': no matching overloaded function found
with
[
T=boost::hana::lexicographical_compare_t::()::It1
]
..\boost/hana/lexicographical_compare.hpp(85): note: could be 'auto boost::hana::lexicographical_compare_impl<T,boost::hana::when<true>>::helper1(const Xs &,const Ys &,const Pred &,bool)'
with
[
T=boost::hana::lexicographical_compare_t::()::It1
]
..\boost/hana/lexicographical_compare.hpp(97): note: 'initializing': cannot convert from 'void' to 'bool'
..\boost/hana/lexicographical_compare.hpp(97): note: Expressions of type void cannot be converted to other types
..\boost/hana/lexicographical_compare.hpp(80): note: or 'auto boost::hana::lexicographical_compare_impl<T,boost::hana::when<true>>::helper1(const Xs &,const Ys &,const Pred &,boost::hana::false_)'
with
[
T=boost::hana::lexicographical_compare_t::()::It1
]
..\boost/hana/lexicographical_compare.hpp(97): note: 'initializing': cannot convert from 'void' to 'boost::hana::false_'
..\boost/hana/lexicographical_compare.hpp(97): note: Expressions of type void cannot be converted to other types
..\boost/hana/lexicographical_compare.hpp(75): note: or 'auto boost::hana::lexicographical_compare_impl<T,boost::hana::when<true>>::helper1(const Xs &,const Ys &,const Pred &,boost::hana::true_)'
with
[
T=boost::hana::lexicographical_compare_t::()::It1
]
..\boost/hana/lexicographical_compare.hpp(97): note: 'initializing': cannot convert from 'void' to 'boost::hana::true_'
..\boost/hana/lexicographical_compare.hpp(97): note: Expressions of type void cannot be converted to other types
..\libs\hana\test\_include\laws/orderable.hpp(79): error C2677: binary '^': no global operator found which takes type 'const boost::hana::infix_detail::infix_t<false,false,boost::hana::test::iff_t>' (or there is no acceptable conversion)
..\boost/hana/bool.hpp(124): note: could be 'boost::hana::integral_constant<unknown-type,u^v> boost::hana::operator ^(boost::hana::integral_constant<T,v>,boost::hana::integral_constant<V,v>)'
..\libs\hana\test\_include\laws/orderable.hpp(79): note: 'boost::hana::integral_constant<unknown-type,u^v> boost::hana::operator ^(boost::hana::integral_constant<T,v>,boost::hana::integral_constant<V,v>)': could not deduce template argument for 'boost::hana::integral_constant<T,v>' from 'void'
..\boost/hana/functional/infix.hpp(173): note: or 'decltype(auto) boost::hana::infix_detail::operator ^(X &&,Y &&)'
..\libs\hana\test\_include\laws/orderable.hpp(79): note: Failed to specialize function template 'decltype(auto) boost::hana::infix_detail::operator ^(X &&,Y &&)'
..\libs\hana\test\_include\laws/orderable.hpp(79): note: With the following template arguments:
..\libs\hana\test\_include\laws/orderable.hpp(79): note: 'X=void'
..\libs\hana\test\_include\laws/orderable.hpp(79): note: 'Y=const boost::hana::infix_detail::infix_t<false,false,boost::hana::test::iff_t> &'
..\libs\hana\test\_include\laws/orderable.hpp(79): note: you cannot create a reference to 'void'
..\libs\hana\test\_include\laws/orderable.hpp(79): error C3536: '__hana_tmp': cannot be used before it is initialized
..\libs\hana\test\_include\laws/orderable.hpp(79): error C3539: a template-argument cannot be a type that contains 'auto'
..\boost/hana/equal.hpp(141): error C2672: 'boost::hana::detail::compare_finite_sequences<Xs,Ys,1>::apply': no matching overloaded function found
with
[
Xs=boost::hana::tuple<ord1>,
Ys=boost::hana::tuple<ord1>
]
..\boost/hana/equal.hpp(157): note: could be 'bool boost::hana::detail::compare_finite_sequences<Xs,Ys,1>::apply(boost::hana::false_,bool) const'
with
[
Xs=boost::hana::tuple<ord1>,
Ys=boost::hana::tuple<ord1>
]
..\boost/hana/equal.hpp(142): note: 'initializing': cannot convert from 'boost::hana::integral_constant<bool,true>' to 'boost::hana::false_'
..\boost/hana/equal.hpp(142): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
..\boost/hana/equal.hpp(153): note: or 'auto boost::hana::detail::compare_finite_sequences<Xs,Ys,1>::apply(boost::hana::true_,Result) const'
with
[
Xs=boost::hana::tuple<ord1>,
Ys=boost::hana::tuple<ord1>
]
..\boost/hana/equal.hpp(141): note: Failed to specialize function template 'auto boost::hana::detail::compare_finite_sequences<Xs,Ys,1>::apply(boost::hana::true_,Result) const'
with
[
Xs=boost::hana::tuple<ord1>,
Ys=boost::hana::tuple<ord1>
]
..\boost/hana/equal.hpp(141): note: With the following template arguments:
..\boost/hana/equal.hpp(141): note: 'i=1'
..\boost/hana/equal.hpp(141): note: 'Result=void'
..\boost/hana/equal.hpp(141): note: 'void' cannot be used as a function parameter except for '(void)'
..\boost/hana/equal.hpp(149): note: or 'auto boost::hana::detail::compare_finite_sequences<Xs,Ys,1>::apply(boost::hana::false_,boost::hana::false_) const'
with
[
Xs=boost::hana::tuple<ord1>,
Ys=boost::hana::tuple<ord1>
]
..\boost/hana/equal.hpp(142): note: 'initializing': cannot convert from 'boost::hana::integral_constant<bool,true>' to 'boost::hana::false_'
..\boost/hana/equal.hpp(142): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
..\boost/hana/equal.hpp(140): note: or 'auto boost::hana::detail::compare_finite_sequences<Xs,Ys,1>::apply(boost::hana::false_,boost::hana::true_) const'
with
[
Xs=boost::hana::tuple<ord1>,
Ys=boost::hana::tuple<ord1>
]
..\boost/hana/equal.hpp(142): note: 'initializing': cannot convert from 'boost::hana::integral_constant<bool,true>' to 'boost::hana::false_'
..\boost/hana/equal.hpp(142): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
..\boost/hana/equal.hpp(141): note: the template instantiation context (the oldest one first) is
..\libs\hana\test\orderable.cpp(60): note: see reference to function template instantiation 'boost::hana::test::TestComparable<ord1,boost::hana::when<true>>::TestComparable<boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>(boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>)' being compiled
..\libs\hana\test\orderable.cpp(60): note: see the first reference to 'boost::hana::test::TestComparable<ord1,boost::hana::when<true>>::TestComparable' in 'main'
..\libs\hana\test\_include\laws/comparable.hpp(33): note: see reference to function template instantiation 'boost::hana::test::TestComparable<T,boost::hana::test::laws>::TestComparable<boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>(Xs)' being compiled
with
[
T=ord1,
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>
]
..\libs\hana\test\_include\laws/comparable.hpp(44): note: see reference to function template instantiation 'void boost::hana::test::for_each_n_t<2>::operator ()<Xs,boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>(const Xs &,const F &) const' being compiled
with
[
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
T=ord1,
F=boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>
]
..\libs\hana\test\_include\laws/base.hpp(44): note: see reference to function template instantiation 'void boost::hana::for_each_t::operator ()<const Xs&,boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>>>(const boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>&,F &&) const' being compiled
with
[
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
T=ord1,
F=boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>>
]
..\boost/hana/for_each.hpp(35): note: see reference to function template instantiation 'void boost::hana::for_each_impl<T,boost::hana::when<true>>::apply<const Xs&,F>(const boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>&,F &&)' being compiled
with
[
T=boost::hana::for_each_t::()::S,
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
F=boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>>
]
..\boost/hana/for_each.hpp(56): note: see reference to function template instantiation 'void boost::hana::unpack_t::operator ()<const Xs&,boost::hana::detail::on_each<F *>>(const boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>&,boost::hana::detail::on_each<F *> &&) const' being compiled
with
[
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
F=boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>>
]
..\boost/hana/unpack.hpp(47): note: see reference to function template instantiation 'void boost::hana::unpack_impl<boost::hana::tuple_tag,void>::apply<const Xs&,F>(const boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>&,F &&)' being compiled
with
[
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
F=boost::hana::detail::on_each<boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>> *>
]
..\boost/hana/tuple.hpp(233): note: see reference to function template instantiation 'void boost::hana::unpack_t::operator ()<const boost::hana::basic_tuple<ord1,ord1,ord1,ord1,ord1>&,F>(Xs,F &&) const' being compiled
with
[
F=boost::hana::detail::on_each<boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>> *>,
Xs=const boost::hana::basic_tuple<ord1,ord1,ord1,ord1,ord1> &
]
..\boost/hana/unpack.hpp(47): note: see reference to function template instantiation 'void boost::hana::unpack_impl<boost::hana::basic_tuple_tag,void>::apply<0,1,2,3,4,ord1,ord1,ord1,ord1,ord1,F>(const boost::hana::detail::basic_tuple_impl<std::integer_sequence<size_t,0,1,2,3,4>,ord1,ord1,ord1,ord1,ord1> &,F &&)' being compiled
with
[
F=boost::hana::detail::on_each<boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>> *>
]
..\boost/hana/basic_tuple.hpp(115): note: see reference to function template instantiation 'void boost::hana::detail::on_each<F *>::operator ()<const V&,const V&,const V&,const V&,const V&>(const V &,const V &,const V &,const V &,const V &) const' being compiled
with
[
F=boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>>,
V=ord1
]
..\boost/hana/for_each.hpp(46): note: see reference to function template instantiation 'void boost::hana::_compose<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::make_partial_t,boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>>>::operator ()<const V&,>(X) &' being compiled
with
[
T=ord1,
V=ord1,
X=const ord1 &
]
..\boost/hana/functional/compose.hpp(78): note: see reference to function template instantiation 'void boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::for_each_n_t<1>,boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>>::operator ()<boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>>(boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1> &&) &' being compiled
with
[
T=ord1
]
..\boost/hana/functional/partial.hpp(86): note: see reference to function template instantiation 'void boost::hana::test::for_each_n_t<1>::operator ()<V,boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>>(const Xs &,const F &) const' being compiled
with
[
V=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
T=ord1,
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>
]
..\libs\hana\test\_include\laws/base.hpp(57): note: see reference to function template instantiation 'void boost::hana::for_each_t::operator ()<const Xs&,const F&>(const boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>&,const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>&) const' being compiled
with
[
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>,
T=ord1
]
..\boost/hana/for_each.hpp(35): note: see reference to function template instantiation 'void boost::hana::for_each_impl<T,boost::hana::when<true>>::apply<const Xs&,const F&>(const boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>&,const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>&)' being compiled
with
[
T=boost::hana::for_each_t::()::S,
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>
]
..\boost/hana/for_each.hpp(56): note: see reference to function template instantiation 'void boost::hana::unpack_t::operator ()<const Xs&,boost::hana::detail::on_each<const F *>>(const boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>&,boost::hana::detail::on_each<const F *> &&) const' being compiled
with
[
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>
]
..\boost/hana/unpack.hpp(47): note: see reference to function template instantiation 'void boost::hana::unpack_impl<boost::hana::tuple_tag,void>::apply<const Xs&,F>(const boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>&,F &&)' being compiled
with
[
Xs=boost::hana::tuple<ord1,ord1,ord1,ord1,ord1>,
F=boost::hana::detail::on_each<const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1> *>
]
..\boost/hana/tuple.hpp(233): note: see reference to function template instantiation 'void boost::hana::unpack_t::operator ()<const boost::hana::basic_tuple<ord1,ord1,ord1,ord1,ord1>&,F>(Xs,F &&) const' being compiled
with
[
F=boost::hana::detail::on_each<const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1> *>,
Xs=const boost::hana::basic_tuple<ord1,ord1,ord1,ord1,ord1> &
]
..\boost/hana/unpack.hpp(47): note: see reference to function template instantiation 'void boost::hana::unpack_impl<boost::hana::basic_tuple_tag,void>::apply<0,1,2,3,4,ord1,ord1,ord1,ord1,ord1,F>(const boost::hana::detail::basic_tuple_impl<std::integer_sequence<size_t,0,1,2,3,4>,ord1,ord1,ord1,ord1,ord1> &,F &&)' being compiled
with
[
F=boost::hana::detail::on_each<const boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1> *>
]
..\boost/hana/basic_tuple.hpp(115): note: see reference to function template instantiation 'void boost::hana::detail::on_each<const F *>::operator ()<const V&,const V&,const V&,const V&,const V&>(const V &,const V &,const V &,const V &,const V &) const' being compiled
with
[
F=boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<ord1,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>,
V=ord1
]
..\boost/hana/for_each.hpp(46): note: see reference to function template instantiation 'decltype(auto) boost::hana::partial_t<std::integer_sequence<size_t,0>,boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>,ord1>::operator ()<const V&>(const V &) const &' being compiled
with
[
T=ord1,
V=ord1
]
..\boost/hana/functional/partial.hpp(78): note: see reference to function template instantiation 'auto boost::hana::test::TestComparable<T,boost::hana::test::laws>::{ctor}::<lambda_32608fb62ebf6bc8a9ad61aabee68a9f>::operator ()<V,V>(V,V) const' being compiled
with
[
T=ord1,
V=ord1
]
..\libs\hana\test\_include\laws/comparable.hpp(72): note: see reference to function template instantiation 'auto boost::hana::detail::equal_by<boost::hana::test::_injection<0>>::operator ()<V&,V&>(X,Y) const &' being compiled
with
[
V=ord1,
X=ord1 &,
Y=ord1 &
]
..\boost/hana/comparing.hpp(28): note: see reference to function template instantiation 'auto boost::hana::equal_t::operator ()<boost::hana::test::injection_result<0,ord1>,boost::hana::test::injection_result<0,ord1>>(X &&,Y &&) const' being compiled
with
[
X=boost::hana::test::injection_result<0,ord1>,
Y=boost::hana::test::injection_result<0,ord1>
]
..\boost/hana/equal.hpp(50): note: see reference to function template instantiation 'auto boost::hana::equal_impl<boost::hana::test::InjectionResult,boost::hana::test::InjectionResult,void>::apply<X,Y>(X,Y)' being compiled
with
[
X=boost::hana::test::injection_result<0,ord1>,
Y=boost::hana::test::injection_result<0,ord1>
]
..\libs\hana\test\_include\laws/base.hpp(163): note: see reference to function template instantiation 'auto boost::hana::equal_t::operator ()<boost::hana::tuple<ord1>&,boost::hana::tuple<ord1>&>(X,Y) const' being compiled
with
[
X=boost::hana::tuple<ord1> &,
Y=boost::hana::tuple<ord1> &
]
..\boost/hana/equal.hpp(50): note: see reference to function template instantiation 'auto boost::hana::equal_impl<T,U,boost::hana::when<true>>::apply<boost::hana::tuple<ord1>,boost::hana::tuple<ord1>>(const Xs &,const Ys &)' being compiled
with
[
T=boost::hana::equal_t::()::T,
U=boost::hana::equal_t::()::U,
Xs=boost::hana::tuple<ord1>,
Ys=boost::hana::tuple<ord1>
]
..\boost/hana/equal.hpp(174): note: see reference to function template instantiation 'auto boost::hana::detail::compare_finite_sequences<Xs,Ys,1>::apply<0>(boost::hana::false_,boost::hana::true_) const' being compiled
with
[
Xs=boost::hana::tuple<ord1>,
Ys=boost::hana::tuple<ord1>
]
..\libs\hana\test\_include\laws/base.hpp(161): error C3889: call to object of class type 'boost::hana::and_t': no matching call operator found
..\boost/hana/fwd/and.hpp(43): note: could be 'decltype(auto) boost::hana::and_t::operator ()(X &&,Y &&) const'
..\libs\hana\test\_include\laws/base.hpp(161): note: Failed to specialize function template 'decltype(auto) boost::hana::and_t::operator ()(X &&,Y &&) const'
..\libs\hana\test\_include\laws/base.hpp(161): note: With the following template arguments:
..\libs\hana\test\_include\laws/base.hpp(161): note: 'X=const boost::hana::integral_constant<bool,true> &'
..\libs\hana\test\_include\laws/base.hpp(161): note: 'Y=void'
..\libs\hana\test\_include\laws/base.hpp(161): note: you cannot create a reference to 'void'
..\boost/hana/fwd/and.hpp(46): note: or 'decltype(auto) boost::hana::and_t::operator ()(X &&,Y ...) const'
..\libs\hana\test\_include\laws/base.hpp(161): note: Failed to specialize function template 'decltype(auto) boost::hana::and_t::operator ()(X &&,Y ...) const'
..\libs\hana\test\_include\laws/base.hpp(161): note: With the following template arguments:
..\libs\hana\test\_include\laws/base.hpp(161): note: 'X=const boost::hana::integral_constant<bool,true> &'
..\libs\hana\test\_include\laws/base.hpp(161): note: 'Y={void}'
..\libs\hana\test\_include\laws/base.hpp(161): note: you cannot create a reference to 'void'
..\libs\hana\test\_include\laws/base.hpp(161): note: 'void' cannot be used as a function parameter except for '(void)'
..\libs\hana\test\_include\laws/comparable.hpp(72): error C2677: binary '^': no global operator found which takes type 'const boost::hana::infix_detail::infix_t<false,false,boost::hana::test::iff_t>' (or there is no acceptable conversion)
..\boost/hana/bool.hpp(124): note: could be 'boost::hana::integral_constant<unknown-type,u^v> boost::hana::operator ^(boost::hana::integral_constant<T,v>,boost::hana::integral_constant<V,v>)'
..\libs\hana\test\_include\laws/comparable.hpp(72): note: 'boost::hana::integral_constant<unknown-type,u^v> boost::hana::operator ^(boost::hana::integral_constant<T,v>,boost::hana::integral_constant<V,v>)': could not deduce template argument for 'boost::hana::integral_constant<T,v>' from 'void'
..\boost/hana/functional/infix.hpp(173): note: or 'decltype(auto) boost::hana::infix_detail::operator ^(X &&,Y &&)'
..\libs\hana\test\_include\laws/comparable.hpp(72): note: Failed to specialize function template 'decltype(auto) boost::hana::infix_detail::operator ^(X &&,Y &&)'
..\libs\hana\test\_include\laws/comparable.hpp(72): note: With the following template arguments:
..\libs\hana\test\_include\laws/comparable.hpp(72): note: 'X=void'
..\libs\hana\test\_include\laws/comparable.hpp(72): note: 'Y=const boost::hana::infix_detail::infix_t<false,false,boost::hana::test::iff_t> &'
..\libs\hana\test\_include\laws/comparable.hpp(72): note: you cannot create a reference to 'void'
..\libs\hana\test\_include\laws/comparable.hpp(72): error C3536: '__hana_tmp': cannot be used before it is initialized
..\libs\hana\test\_include\laws/comparable.hpp(72): error C3539: a template-argument cannot be a type that contains 'auto'