Compile [2024-11-16 12:16:26 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/test/_include" -I"/var/boost/run/boost_root/libs/assert/include" -I"/var/boost/run/boost_root/libs/core/include" -I"/var/boost/run/boost_root/libs/hana/include" -I"/var/boost/run/boost_root/libs/throw_exception/include" -I"/var/boost/run/boost_root/libs/tuple/include" -c -o "/var/boost/run/results/boost/bin.v2/libs/hana/test/test~integral_constant~github_354.test/gcc-12~c++17/debug/x86_64/debug-symbols-off/threading-multi/visibility-hidden/integral_constant/github_354.o" "../libs/hana/test/integral_constant/github_354.cpp"
In file included from ../boost/hana/bool.hpp:17,
from ../libs/hana/test/integral_constant/github_354.cpp:5:
../boost/hana/core/to.hpp: In instantiation of 'struct boost::hana::to_impl<bool, boost::hana::integral_constant<bool, true>, void>':
../boost/hana/core/to.hpp:155:9: required by substitution of 'template<class From, class To> struct boost::hana::is_convertible<From, To, decltype ((void)(static_cast<boost::hana::convert_detail::no_conversion>((*(boost::hana::to_impl<To, From>*)(0)))))> [with From = boost::hana::integral_constant<bool, true>; To = bool]'
../libs/hana/test/integral_constant/github_354.cpp:11:60: required from here
../boost/hana/core/to.hpp:36:12: error: ambiguous template instantiation for 'struct boost::hana::to_impl<bool, boost::hana::integral_constant<bool, true>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:62:12: note: candidates are: 'template<class To, class From, bool condition> struct boost::hana::to_impl<To, From, boost::hana::when<condition> > [with To = bool; From = boost::hana::integral_constant<bool, true>; bool condition = true]'
62 | struct to_impl<To, From, when<condition>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/core/to.hpp:173:12: note: 'template<class To, class From> struct boost::hana::to_impl<To, From, boost::hana::when<(boost::hana::Constant<C>::value && boost::hana::is_convertible<typename C::value_type, T>::value)> > [with To = bool; From = boost::hana::integral_constant<bool, true>]'
173 | struct to_impl<To, From, when<
| ^~~~~~~~~~~~~~~~~~~~~~~
174 | hana::Constant<From>::value &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
175 | is_convertible<typename From::value_type, To>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
176 | >> : embedding<is_embedded<typename From::value_type, To>::value> {
| ~~
../boost/hana/core/to.hpp:36:12: error: invalid use of incomplete type 'struct boost::hana::to_impl<bool, boost::hana::integral_constant<bool, true>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:36:12: note: declaration of 'struct boost::hana::to_impl<bool, boost::hana::integral_constant<bool, true>, boost::hana::when<true> >'
../boost/hana/core/to.hpp: In instantiation of 'struct boost::hana::to_impl<bool, boost::hana::integral_constant_tag<bool>, void>':
../boost/hana/core/to.hpp:78:40: required from 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = const boost::hana::integral_constant<bool, true>&; To = bool]'
../libs/hana/test/integral_constant/github_354.cpp:12:29: required from here
../boost/hana/core/to.hpp:36:12: error: ambiguous template instantiation for 'struct boost::hana::to_impl<bool, boost::hana::integral_constant_tag<bool>, boost::hana::when<true> >'
../boost/hana/core/to.hpp:62:12: note: candidates are: 'template<class To, class From, bool condition> struct boost::hana::to_impl<To, From, boost::hana::when<condition> > [with To = bool; From = boost::hana::integral_constant_tag<bool>; bool condition = true]'
62 | struct to_impl<To, From, when<condition>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/core/to.hpp:173:12: note: 'template<class To, class From> struct boost::hana::to_impl<To, From, boost::hana::when<(boost::hana::Constant<C>::value && boost::hana::is_convertible<typename C::value_type, T>::value)> > [with To = bool; From = boost::hana::integral_constant_tag<bool>]'
173 | struct to_impl<To, From, when<
| ^~~~~~~~~~~~~~~~~~~~~~~
174 | hana::Constant<From>::value &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
175 | is_convertible<typename From::value_type, To>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
176 | >> : embedding<is_embedded<typename From::value_type, To>::value> {
| ~~
../boost/hana/core/to.hpp:36:12: error: invalid use of incomplete type 'struct boost::hana::to_impl<bool, boost::hana::integral_constant_tag<bool>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:36:12: note: declaration of 'struct boost::hana::to_impl<bool, boost::hana::integral_constant_tag<bool>, boost::hana::when<true> >'
../boost/hana/core/to.hpp: In instantiation of 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = const boost::hana::integral_constant<bool, true>&; To = bool]':
../libs/hana/test/integral_constant/github_354.cpp:12:29: required from here
../boost/hana/core/to.hpp:78:40: error: 'apply' is not a member of 'boost::hana::to_impl<bool, boost::hana::integral_constant_tag<bool>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../boost/hana/core/to.hpp: In instantiation of 'struct boost::hana::to_impl<int, boost::hana::integral_constant<int, 1>, void>':
../boost/hana/core/to.hpp:155:9: required by substitution of 'template<class From, class To> struct boost::hana::is_convertible<From, To, decltype ((void)(static_cast<boost::hana::convert_detail::no_conversion>((*(boost::hana::to_impl<To, From>*)(0)))))> [with From = boost::hana::integral_constant<int, 1>; To = int]'
../libs/hana/test/integral_constant/github_354.cpp:14:73: required from here
../boost/hana/core/to.hpp:36:12: error: ambiguous template instantiation for 'struct boost::hana::to_impl<int, boost::hana::integral_constant<int, 1>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:62:12: note: candidates are: 'template<class To, class From, bool condition> struct boost::hana::to_impl<To, From, boost::hana::when<condition> > [with To = int; From = boost::hana::integral_constant<int, 1>; bool condition = true]'
62 | struct to_impl<To, From, when<condition>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/core/to.hpp:173:12: note: 'template<class To, class From> struct boost::hana::to_impl<To, From, boost::hana::when<(boost::hana::Constant<C>::value && boost::hana::is_convertible<typename C::value_type, T>::value)> > [with To = int; From = boost::hana::integral_constant<int, 1>]'
173 | struct to_impl<To, From, when<
| ^~~~~~~~~~~~~~~~~~~~~~~
174 | hana::Constant<From>::value &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
175 | is_convertible<typename From::value_type, To>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
176 | >> : embedding<is_embedded<typename From::value_type, To>::value> {
| ~~
../boost/hana/core/to.hpp:36:12: error: invalid use of incomplete type 'struct boost::hana::to_impl<int, boost::hana::integral_constant<int, 1>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:36:12: note: declaration of 'struct boost::hana::to_impl<int, boost::hana::integral_constant<int, 1>, boost::hana::when<true> >'
../boost/hana/core/to.hpp: In instantiation of 'struct boost::hana::to_impl<int, boost::hana::integral_constant_tag<int>, void>':
../boost/hana/core/to.hpp:78:40: required from 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = const boost::hana::integral_constant<int, 1>&; To = int]'
../libs/hana/test/integral_constant/github_354.cpp:15:28: required from here
../boost/hana/core/to.hpp:36:12: error: ambiguous template instantiation for 'struct boost::hana::to_impl<int, boost::hana::integral_constant_tag<int>, boost::hana::when<true> >'
../boost/hana/core/to.hpp:62:12: note: candidates are: 'template<class To, class From, bool condition> struct boost::hana::to_impl<To, From, boost::hana::when<condition> > [with To = int; From = boost::hana::integral_constant_tag<int>; bool condition = true]'
62 | struct to_impl<To, From, when<condition>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/core/to.hpp:173:12: note: 'template<class To, class From> struct boost::hana::to_impl<To, From, boost::hana::when<(boost::hana::Constant<C>::value && boost::hana::is_convertible<typename C::value_type, T>::value)> > [with To = int; From = boost::hana::integral_constant_tag<int>]'
173 | struct to_impl<To, From, when<
| ^~~~~~~~~~~~~~~~~~~~~~~
174 | hana::Constant<From>::value &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
175 | is_convertible<typename From::value_type, To>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
176 | >> : embedding<is_embedded<typename From::value_type, To>::value> {
| ~~
../boost/hana/core/to.hpp:36:12: error: invalid use of incomplete type 'struct boost::hana::to_impl<int, boost::hana::integral_constant_tag<int>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:36:12: note: declaration of 'struct boost::hana::to_impl<int, boost::hana::integral_constant_tag<int>, boost::hana::when<true> >'
../boost/hana/core/to.hpp: In instantiation of 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = const boost::hana::integral_constant<int, 1>&; To = int]':
../libs/hana/test/integral_constant/github_354.cpp:15:28: required from here
../boost/hana/core/to.hpp:78:40: error: 'apply' is not a member of 'boost::hana::to_impl<int, boost::hana::integral_constant_tag<int>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../boost/hana/core/to.hpp: In instantiation of 'struct boost::hana::to_impl<long int, boost::hana::integral_constant<long int, 1>, void>':
../boost/hana/core/to.hpp:155:9: required by substitution of 'template<class From, class To> struct boost::hana::is_convertible<From, To, decltype ((void)(static_cast<boost::hana::convert_detail::no_conversion>((*(boost::hana::to_impl<To, From>*)(0)))))> [with From = boost::hana::integral_constant<long int, 1>; To = long int]'
../libs/hana/test/integral_constant/github_354.cpp:17:76: required from here
../boost/hana/core/to.hpp:36:12: error: ambiguous template instantiation for 'struct boost::hana::to_impl<long int, boost::hana::integral_constant<long int, 1>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:62:12: note: candidates are: 'template<class To, class From, bool condition> struct boost::hana::to_impl<To, From, boost::hana::when<condition> > [with To = long int; From = boost::hana::integral_constant<long int, 1>; bool condition = true]'
62 | struct to_impl<To, From, when<condition>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/core/to.hpp:173:12: note: 'template<class To, class From> struct boost::hana::to_impl<To, From, boost::hana::when<(boost::hana::Constant<C>::value && boost::hana::is_convertible<typename C::value_type, T>::value)> > [with To = long int; From = boost::hana::integral_constant<long int, 1>]'
173 | struct to_impl<To, From, when<
| ^~~~~~~~~~~~~~~~~~~~~~~
174 | hana::Constant<From>::value &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
175 | is_convertible<typename From::value_type, To>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
176 | >> : embedding<is_embedded<typename From::value_type, To>::value> {
| ~~
../boost/hana/core/to.hpp:36:12: error: invalid use of incomplete type 'struct boost::hana::to_impl<long int, boost::hana::integral_constant<long int, 1>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:36:12: note: declaration of 'struct boost::hana::to_impl<long int, boost::hana::integral_constant<long int, 1>, boost::hana::when<true> >'
../boost/hana/core/to.hpp: In instantiation of 'struct boost::hana::to_impl<long int, boost::hana::integral_constant_tag<long int>, void>':
../boost/hana/core/to.hpp:78:40: required from 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = const boost::hana::integral_constant<long int, 1>&; To = long int]'
../libs/hana/test/integral_constant/github_354.cpp:18:29: required from here
../boost/hana/core/to.hpp:36:12: error: ambiguous template instantiation for 'struct boost::hana::to_impl<long int, boost::hana::integral_constant_tag<long int>, boost::hana::when<true> >'
../boost/hana/core/to.hpp:62:12: note: candidates are: 'template<class To, class From, bool condition> struct boost::hana::to_impl<To, From, boost::hana::when<condition> > [with To = long int; From = boost::hana::integral_constant_tag<long int>; bool condition = true]'
62 | struct to_impl<To, From, when<condition>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/hana/core/to.hpp:173:12: note: 'template<class To, class From> struct boost::hana::to_impl<To, From, boost::hana::when<(boost::hana::Constant<C>::value && boost::hana::is_convertible<typename C::value_type, T>::value)> > [with To = long int; From = boost::hana::integral_constant_tag<long int>]'
173 | struct to_impl<To, From, when<
| ^~~~~~~~~~~~~~~~~~~~~~~
174 | hana::Constant<From>::value &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
175 | is_convertible<typename From::value_type, To>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
176 | >> : embedding<is_embedded<typename From::value_type, To>::value> {
| ~~
../boost/hana/core/to.hpp:36:12: error: invalid use of incomplete type 'struct boost::hana::to_impl<long int, boost::hana::integral_constant_tag<long int>, boost::hana::when<true> >'
36 | struct to_impl : to_impl<To, From, when<true>> { };
| ^~~~~~~
../boost/hana/core/to.hpp:36:12: note: declaration of 'struct boost::hana::to_impl<long int, boost::hana::integral_constant_tag<long int>, boost::hana::when<true> >'
../boost/hana/core/to.hpp: In instantiation of 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = const boost::hana::integral_constant<long int, 1>&; To = long int]':
../libs/hana/test/integral_constant/github_354.cpp:18:29: required from here
../boost/hana/core/to.hpp:78:40: error: 'apply' is not a member of 'boost::hana::to_impl<long int, boost::hana::integral_constant_tag<long int>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~