0/usr/bin/ccache /usr/bin/clang++-21 -DBOOST_MULTI_INDEX_DISABLE_SERIALIZATION -DBOOST_NO_CXX98_FUNCTION_BASE -I/home/drgrid/bitcoin/build_dev_mode_clang/src -I/home/drgrid/bitcoin/src -I/home/drgrid/bitcoin/src/univalue/include -I/home/drgrid/bitcoin/src/minisketch/include -I/home/drgrid/bitcoin/src/secp256k1/include -I/home/drgrid/bitcoin/build_dev_mode_clang/src/ipc -I/home/drgrid/bitcoin/src/ipc/libmultiprocess/include -O2 -g -std=c++20 -fPIE -fvisibility=hidden -fmacro-prefix-map=/home/drgrid/bitcoin/src=. -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -Wstack-protector -fstack-protector-all -fcf-protection=full -fstack-clash-protection -Wall -Wextra -Wgnu -Wformat -Wformat-security -Wvla -Wshadow-field -Wthread-safety -Wthread-safety-pointer -Wloop-analysis -Wredundant-decls -Wunused-member-function -Wdate-time -Wconditional-uninitialized -Woverloaded-virtual -Wsuggest-override -Wimplicit-fallthrough -Wunreachable-code -Wdocumentation -Wself-assign -Wundef -Wno-unused-parameter -MD -MT src/test/CMakeFiles/test_bitcoin.dir/btcsignals_tests.cpp.o -MF src/test/CMakeFiles/test_bitcoin.dir/btcsignals_tests.cpp.o.d -o src/test/CMakeFiles/test_bitcoin.dir/btcsignals_tests.cpp.o -c /home/drgrid/bitcoin/src/test/btcsignals_tests.cpp
1In file included from /home/drgrid/bitcoin/src/test/btcsignals_tests.cpp:5:
2In file included from /home/drgrid/bitcoin/src/btcsignals.h:9:
3In file included from /usr/include/boost/signals2/optional_last_value.hpp:15:
4In file included from /usr/include/boost/optional.hpp:15:
5/usr/include/boost/optional/optional.hpp:410:36: error: call to deleted constructor of 'unqualified_value_type' (aka '(anonymous namespace)::moveonly_data')
6 410 | ::new (m_storage.address()) unqualified_value_type(val) ;
7 | ^ ~~~
8/usr/include/boost/optional/optional.hpp:350:12: note: in instantiation of member function 'boost::optional_detail::optional_base<(anonymous namespace)::moveonly_data>::construct' requested here
9 350 | else construct(val);
10 | ^
11/usr/include/boost/optional/optional.hpp:396:40: note: in instantiation of member function 'boost::optional_detail::optional_base<(anonymous namespace)::moveonly_data>::assign' requested here
12 396 | void reset ( argument_type val ) { assign(val); }
13 | ^
14/usr/include/boost/signals2/detail/slot_call_iterator.hpp:110:29: note: in instantiation of member function 'boost::optional_detail::optional_base<(anonymous namespace)::moveonly_data>::reset' requested here
15 110 | cache->result.reset(cache->f(*iter));
16 | ^
17/usr/include/boost/iterator/iterator_facade.hpp:631:20: note: in instantiation of member function 'boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<(anonymous namespace)::moveonly_data, int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>>, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>::dereference' requested here
18 631 | return f.dereference();
19 | ^
20/usr/include/boost/iterator/iterator_facade.hpp:737:42: note: in instantiation of function template specialization 'boost::iterators::iterator_core_access::dereference<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<(anonymous namespace)::moveonly_data, int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>>, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>>' requested here
21 737 | return iterator_core_access::dereference(this->derived());
22 | ^
23/usr/include/boost/signals2/optional_last_value.hpp:35:21: note: in instantiation of member function 'boost::iterators::detail::iterator_facade_base<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<(anonymous namespace)::moveonly_data, int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>>, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>, (anonymous namespace)::moveonly_data, boost::iterators::single_pass_traversal_tag, const (anonymous namespace)::moveonly_data &, long, false, false>::operator*' requested here
24 35 | value = *first;
25 | ^
26/usr/include/boost/signals2/detail/result_type_wrapper.hpp:53:18: note: in instantiation of function template specialization 'boost::signals2::optional_last_value<(anonymous namespace)::moveonly_data>::operator()<boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<(anonymous namespace)::moveonly_data, int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>>, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>>' requested here
27 53 | return combiner(first, last);
28 | ^
29/usr/include/boost/signals2/detail/signal_template.hpp:242:18: note: in instantiation of function template specialization 'boost::signals2::detail::combiner_invoker<boost::optional<(anonymous namespace)::moveonly_data>>::operator()<boost::signals2::optional_last_value<(anonymous namespace)::moveonly_data>, boost::signals2::detail::slot_call_iterator_t<boost::signals2::detail::variadic_slot_invoker<(anonymous namespace)::moveonly_data, int>, std::_List_iterator<boost::shared_ptr<boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>>, boost::signals2::detail::connection_body<std::pair<boost::signals2::detail::slot_meta_group, boost::optional<int>>, boost::signals2::slot<(anonymous namespace)::moveonly_data (int)>, boost::signals2::mutex>>>' requested here
30 242 | return detail::combiner_invoker<typename combiner_type::result_type>()
31 | ^
32/usr/include/boost/signals2/detail/signal_template.hpp:722:16: note: in instantiation of member function 'boost::signals2::detail::signal_impl<(anonymous namespace)::moveonly_data (int), boost::signals2::optional_last_value<(anonymous namespace)::moveonly_data>, int, std::less<int>, boost::function<(anonymous namespace)::moveonly_data (int)>, boost::function<(anonymous namespace)::moveonly_data (const boost::signals2::connection &, int)>, boost::signals2::mutex>::operator()' requested here
33 722 | return (*_pimpl)(BOOST_SIGNALS2_SIGNATURE_ARG_NAMES(BOOST_SIGNALS2_NUM_ARGS));
34 | ^
35/home/drgrid/bitcoin/src/test/btcsignals_tests.cpp:109:20: note: in instantiation of member function 'boost::signals2::signal<(anonymous namespace)::moveonly_data (int)>::operator()' requested here
36 109 | auto ret = sig0(data);
37 | ^
38/home/drgrid/bitcoin/src/test/btcsignals_tests.cpp:22:5: note: 'moveonly_data' has been explicitly marked deleted here
39 22 | moveonly_data(const moveonly_data&) = delete;
40 | ^
411 error generated.
42[10/12] Building CXX object src/qt/test/CMakeFiles/test_bitcoin-qt.dir/wallettests.cpp.o
43ninja: build stopped: subcommand failed.