Compile [2024-11-16 12:16:25 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~string~cnstr~c_str.test/gcc-12~c++17/debug/x86_64/debug-symbols-off/threading-multi/visibility-hidden/string/cnstr.c_str.o" "../libs/hana/test/string/cnstr.c_str.cpp"
In file included from ../boost/hana/bool.hpp:17,
from ../boost/hana/eval_if.hpp:15,
from ../boost/hana/concept/logical.hpp:19,
from ../boost/hana/if.hpp:15,
from ../boost/hana/assert.hpp:16,
from ../libs/hana/test/string/cnstr.c_str.cpp:5:
../boost/hana/core/to.hpp: In instantiation of 'struct boost::hana::to_impl<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, void>':
../boost/hana/core/to.hpp:78:40: required from 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = boost::hana::integral_constant<const char*, (& empty)>; To = boost::hana::string_tag]'
../libs/hana/test/string/cnstr.c_str.cpp:24:49: required from here
../boost/hana/core/to.hpp:36:12: error: ambiguous template instantiation for 'struct boost::hana::to_impl<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, 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 = boost::hana::string_tag; From = boost::hana::integral_constant_tag<const char*>; bool condition = true]'
62 | struct to_impl<To, From, when<condition>>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../libs/hana/test/string/cnstr.c_str.cpp:10:
../boost/hana/string.hpp:168:12: note: 'template<class IC> struct boost::hana::to_impl<boost::hana::string_tag, IC, boost::hana::when<(boost::hana::Constant<C>::value && std::is_convertible<typename IC::value_type, const char*>::value)> > [with IC = boost::hana::integral_constant_tag<const char*>]'
168 | struct to_impl<hana::string_tag, IC, hana::when<
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
169 | hana::Constant<IC>::value &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
170 | std::is_convertible<typename IC::value_type, char const*>::value
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
171 | >> {
| ~~
../boost/hana/core/to.hpp:36:12: error: invalid use of incomplete type 'struct boost::hana::to_impl<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, 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<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, 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 = boost::hana::integral_constant<const char*, (& empty)>; To = boost::hana::string_tag]':
../libs/hana/test/string/cnstr.c_str.cpp:24:49: required from here
../boost/hana/core/to.hpp:78:40: error: 'apply' is not a member of 'boost::hana::to_impl<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../libs/hana/test/string/cnstr.c_str.cpp: In function 'int main()':
../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/string/cnstr.c_str.cpp:25:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
25 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:25:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
25 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../boost/hana/concept/constant.hpp:19,
from ../boost/hana/assert.hpp:13:
../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/string/cnstr.c_str.cpp:25:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
25 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
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/core/to.hpp: In instantiation of 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = boost::hana::integral_constant<const char*, (& a)>; To = boost::hana::string_tag]':
../libs/hana/test/string/cnstr.c_str.cpp:29:49: required from here
../boost/hana/core/to.hpp:78:40: error: 'apply' is not a member of 'boost::hana::to_impl<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:30:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
30 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:30:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
30 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:30:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
30 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/core/to.hpp: In instantiation of 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = boost::hana::integral_constant<const char*, (& ab)>; To = boost::hana::string_tag]':
../libs/hana/test/string/cnstr.c_str.cpp:34:49: required from here
../boost/hana/core/to.hpp:78:40: error: 'apply' is not a member of 'boost::hana::to_impl<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:35:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
35 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:35:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
35 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:35:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
35 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/core/to.hpp: In instantiation of 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = boost::hana::integral_constant<const char*, (& abc)>; To = boost::hana::string_tag]':
../libs/hana/test/string/cnstr.c_str.cpp:39:49: required from here
../boost/hana/core/to.hpp:78:40: error: 'apply' is not a member of 'boost::hana::to_impl<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:40:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
40 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:40:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
40 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:40:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
40 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/core/to.hpp: In instantiation of 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = boost::hana::integral_constant<const char*, (& abcd)>; To = boost::hana::string_tag]':
../libs/hana/test/string/cnstr.c_str.cpp:44:49: required from here
../boost/hana/core/to.hpp:78:40: error: 'apply' is not a member of 'boost::hana::to_impl<boost::hana::string_tag, boost::hana::integral_constant_tag<const char*>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:45:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
45 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:45:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
45 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:45:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
45 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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
In file included from ../boost/hana/concept/constant.hpp:17:
../boost/hana/core/tag_of.hpp: In instantiation of 'struct boost::hana::tag_of<std::integral_constant<const char*, (& abcd)>, void>':
../boost/hana/core/to.hpp:77:15: required from 'constexpr decltype(auto) boost::hana::to_t<To>::operator()(X&&) const [with X = std::integral_constant<const char*, (& abcd)>; To = boost::hana::string_tag]'
../libs/hana/test/string/cnstr.c_str.cpp:50:49: required from here
../boost/hana/core/tag_of.hpp:24:12: error: ambiguous template instantiation for 'struct boost::hana::tag_of<std::integral_constant<const char*, (& abcd)>, boost::hana::when<true> >'
24 | struct tag_of : tag_of<T, when<true>> { };
| ^~~~~~
../boost/hana/core/tag_of.hpp:33:12: note: candidates are: 'template<class T, bool condition> struct boost::hana::tag_of<T, boost::hana::when<condition> > [with T = std::integral_constant<const char*, (& abcd)>; bool condition = true]'
33 | struct tag_of<T, when<condition>> {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../libs/hana/test/string/cnstr.c_str.cpp:8:
../boost/hana/ext/std/integral_constant.hpp:68:12: note: 'template<class T> struct boost::hana::tag_of<T, boost::hana::when<(boost::hana::detail::is_std_integral_constant((T*)(0)) && (! boost::hana::detail::is_hana_integral_constant((T*)(0))))> > [with T = std::integral_constant<const char*, (& abcd)>]'
68 | struct tag_of<T, when<
| ^~~~~~~~~~~~~~~
69 | detail::is_std_integral_constant((T*)0) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
70 | !detail::is_hana_integral_constant((T*)0)
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
71 | >> {
| ~~
../boost/hana/core/tag_of.hpp:24:12: error: invalid use of incomplete type 'struct boost::hana::tag_of<std::integral_constant<const char*, (& abcd)>, boost::hana::when<true> >'
24 | struct tag_of : tag_of<T, when<true>> { };
| ^~~~~~
../boost/hana/core/tag_of.hpp:24:12: note: declaration of 'struct boost::hana::tag_of<std::integral_constant<const char*, (& abcd)>, 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 = std::integral_constant<const char*, (& abcd)>; To = boost::hana::string_tag]':
../libs/hana/test/string/cnstr.c_str.cpp:50:49: required from here
../boost/hana/core/to.hpp:77:15: error: no type named 'type' in 'struct boost::hana::tag_of<std::integral_constant<const char*, (& abcd)>, void>'
77 | using From = typename hana::tag_of<X>::type;
| ^~~~
../boost/hana/core/to.hpp:78:40: error: no type named 'type' in 'struct boost::hana::tag_of<std::integral_constant<const char*, (& abcd)>, void>'
78 | return to_impl<To, From>::apply(static_cast<X&&>(x));
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:51:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
51 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:51:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
51 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:51:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
51 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/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/string/cnstr.c_str.cpp:57:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
57 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:57:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
57 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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/string/cnstr.c_str.cpp:57:9: note: in expansion of macro 'BOOST_HANA_CONSTANT_CHECK'
57 | BOOST_HANA_CONSTANT_CHECK(hana::equal(string, hana::string_c<'a', 'b', 'c', 'd'>));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../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