MUECore-DISCONTINUED
MUECore-DISCONTINUED copied to clipboard
Compilation of MUE wallet fails on Arch Linux (boost 1.66)
Compilation of the MUE wallet fails on Arch Linux when the boost
packages are at version 1.66.
...
CXX libbitcoin_server_a-txmempool.o
CXX libbitcoin_server_a-validationinterface.o
In file included from /usr/include/boost/multi_index/ordered_index.hpp:17:0,
from txmempool.h:21,
from txmempool.cpp:6:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp: In instantiation of ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::in_place(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::value_param_type, boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*, boost::multi_index::detail::ordered_non_unique_tag) const [with KeyFromValue = boost::multi_index::identity<CTxMemPoolEntry>; Compare = CompareTxMemPoolEntryByDescendantScore; SuperMeta = boost::multi_index::detail::nth_layer<2, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_non_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::value_param_type = const CTxMemPoolEntry&; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > >]’:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:825:17: required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify_(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*) [with KeyFromValue = boost::multi_index::identity<CTxMemPoolEntry>; Compare = CompareTxMemPoolEntryByDescendantScore; SuperMeta = boost::multi_index::detail::nth_layer<2, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_non_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > >]’
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:860:25: required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify_(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*) [with KeyFromValue = mempoolentry_txid; Compare = std::less<uint256>; SuperMeta = boost::multi_index::detail::nth_layer<1, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >]’
/usr/include/boost/multi_index_container.hpp:823:25: required from ‘bool boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::modify_(Modifier&, boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::node_type*) [with Modifier = update_descendant_state; Value = CTxMemPoolEntry; IndexSpecifierList = boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >; Allocator = std::allocator<CTxMemPoolEntry>; boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >]’
/usr/include/boost/multi_index/detail/index_base.hpp:278:34: required from ‘bool boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_modify_(Modifier&, boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_node_type*) [with Modifier = update_descendant_state; Value = CTxMemPoolEntry; IndexSpecifierList = boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >; Allocator = std::allocator<CTxMemPoolEntry>; boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >]’
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:419:61: required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::iterator, Modifier) [with Modifier = update_descendant_state; KeyFromValue = mempoolentry_txid; Compare = std::less<uint256>; SuperMeta = boost::multi_index::detail::nth_layer<1, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::iterator = boost::multi_index::detail::bidir_node_iterator<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >]’
txmempool.cpp:128:87: required from here
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:1181:7: error: no match for call to ‘(const key_compare {aka const CompareTxMemPoolEntryByDescendantScore}) (const CTxMemPoolEntry&, CTxMemPoolEntry&)’
if(comp_(key(v),key(y->value())))return false;
^~
In file included from txmempool.cpp:6:0:
txmempool.h:245:10: note: candidate: bool CompareTxMemPoolEntryByDescendantScore::operator()(const CTxMemPoolEntry&, const CTxMemPoolEntry&) <near match>
bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
^~~~~~~~
txmempool.h:245:10: note: passing ‘const key_compare* {aka const CompareTxMemPoolEntryByDescendantScore*}’ as ‘this’ argument discards qualifiers
In file included from /usr/include/boost/multi_index/ordered_index.hpp:17:0,
from txmempool.h:21,
from txmempool.cpp:6:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:1186:25: error: no match for call to ‘(const key_compare {aka const CompareTxMemPoolEntryByDescendantScore}) (CTxMemPoolEntry&, const CTxMemPoolEntry&)’
return y==header()||!comp_(key(y->value()),key(v));
In file included from txmempool.cpp:6:0:
txmempool.h:245:10: note: candidate: bool CompareTxMemPoolEntryByDescendantScore::operator()(const CTxMemPoolEntry&, const CTxMemPoolEntry&) <near match>
bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
^~~~~~~~
txmempool.h:245:10: note: passing ‘const key_compare* {aka const CompareTxMemPoolEntryByDescendantScore*}’ as ‘this’ argument discards qualifiers
In file included from /usr/include/boost/multi_index/ordered_index.hpp:17:0,
from txmempool.h:21,
from txmempool.cpp:6:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp: In instantiation of ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::in_place(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::value_param_type, boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*, boost::multi_index::detail::ordered_non_unique_tag) const [with KeyFromValue = boost::multi_index::identity<CTxMemPoolEntry>; Compare = CompareTxMemPoolEntryByEntryTime; SuperMeta = boost::multi_index::detail::nth_layer<3, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_non_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::value_param_type = const CTxMemPoolEntry&; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > >]’:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:860:25: recursively required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify_(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*) [with KeyFromValue = boost::multi_index::identity<CTxMemPoolEntry>; Compare = CompareTxMemPoolEntryByDescendantScore; SuperMeta = boost::multi_index::detail::nth_layer<2, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_non_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > >]’
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:860:25: required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify_(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*) [with KeyFromValue = mempoolentry_txid; Compare = std::less<uint256>; SuperMeta = boost::multi_index::detail::nth_layer<1, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >]’
/usr/include/boost/multi_index_container.hpp:823:25: required from ‘bool boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::modify_(Modifier&, boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::node_type*) [with Modifier = update_descendant_state; Value = CTxMemPoolEntry; IndexSpecifierList = boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >; Allocator = std::allocator<CTxMemPoolEntry>; boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >]’
/usr/include/boost/multi_index/detail/index_base.hpp:278:34: required from ‘bool boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_modify_(Modifier&, boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_node_type*) [with Modifier = update_descendant_state; Value = CTxMemPoolEntry; IndexSpecifierList = boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >; Allocator = std::allocator<CTxMemPoolEntry>; boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >]’
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:419:61: required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::iterator, Modifier) [with Modifier = update_descendant_state; KeyFromValue = mempoolentry_txid; Compare = std::less<uint256>; SuperMeta = boost::multi_index::detail::nth_layer<1, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::iterator = boost::multi_index::detail::bidir_node_iterator<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >]’
txmempool.cpp:128:87: required from here
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:1181:7: error: no match for call to ‘(const key_compare {aka const CompareTxMemPoolEntryByEntryTime}) (const CTxMemPoolEntry&, CTxMemPoolEntry&)’
if(comp_(key(v),key(y->value())))return false;
^~
In file included from txmempool.cpp:6:0:
txmempool.h:296:10: note: candidate: bool CompareTxMemPoolEntryByEntryTime::operator()(const CTxMemPoolEntry&, const CTxMemPoolEntry&) <near match>
bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
^~~~~~~~
txmempool.h:296:10: note: passing ‘const key_compare* {aka const CompareTxMemPoolEntryByEntryTime*}’ as ‘this’ argument discards qualifiers
In file included from /usr/include/boost/multi_index/ordered_index.hpp:17:0,
from txmempool.h:21,
from txmempool.cpp:6:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:1186:25: error: no match for call to ‘(const key_compare {aka const CompareTxMemPoolEntryByEntryTime}) (CTxMemPoolEntry&, const CTxMemPoolEntry&)’
return y==header()||!comp_(key(y->value()),key(v));
In file included from txmempool.cpp:6:0:
txmempool.h:296:10: note: candidate: bool CompareTxMemPoolEntryByEntryTime::operator()(const CTxMemPoolEntry&, const CTxMemPoolEntry&) <near match>
bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
^~~~~~~~
txmempool.h:296:10: note: passing ‘const key_compare* {aka const CompareTxMemPoolEntryByEntryTime*}’ as ‘this’ argument discards qualifiers
In file included from /usr/include/boost/multi_index/ordered_index.hpp:17:0,
from txmempool.h:21,
from txmempool.cpp:6:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp: In instantiation of ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::in_place(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::value_param_type, boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*, boost::multi_index::detail::ordered_unique_tag) const [with KeyFromValue = boost::multi_index::identity<CTxMemPoolEntry>; Compare = CompareTxMemPoolEntryByScore; SuperMeta = boost::multi_index::detail::nth_layer<4, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::value_param_type = const CTxMemPoolEntry&; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > >; typename SuperMeta::type::node_type = boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> >]’:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:860:25: recursively required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify_(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*) [with KeyFromValue = boost::multi_index::identity<CTxMemPoolEntry>; Compare = CompareTxMemPoolEntryByDescendantScore; SuperMeta = boost::multi_index::detail::nth_layer<2, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_non_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > >]’
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:860:25: required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify_(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type*) [with KeyFromValue = mempoolentry_txid; Compare = std::less<uint256>; SuperMeta = boost::multi_index::detail::nth_layer<1, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >]’
/usr/include/boost/multi_index_container.hpp:823:25: required from ‘bool boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::modify_(Modifier&, boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::node_type*) [with Modifier = update_descendant_state; Value = CTxMemPoolEntry; IndexSpecifierList = boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >; Allocator = std::allocator<CTxMemPoolEntry>; boost::multi_index::multi_index_container<Value, IndexSpecifierList, Allocator>::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >]’
/usr/include/boost/multi_index/detail/index_base.hpp:278:34: required from ‘bool boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_modify_(Modifier&, boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_node_type*) [with Modifier = update_descendant_state; Value = CTxMemPoolEntry; IndexSpecifierList = boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >; Allocator = std::allocator<CTxMemPoolEntry>; boost::multi_index::detail::index_base<Value, IndexSpecifierList, Allocator>::final_node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > >]’
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:419:61: required from ‘bool boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::modify(boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::iterator, Modifier) [with Modifier = update_descendant_state; KeyFromValue = mempoolentry_txid; Compare = std::less<uint256>; SuperMeta = boost::multi_index::detail::nth_layer<1, CTxMemPoolEntry, boost::multi_index::indexed_by<boost::multi_index::ordered_unique<mempoolentry_txid>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByDescendantScore>, boost::multi_index::ordered_non_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByEntryTime>, boost::multi_index::ordered_unique<boost::multi_index::identity<CTxMemPoolEntry>, CompareTxMemPoolEntryByScore> >, std::allocator<CTxMemPoolEntry> >; TagList = boost::mpl::vector0<mpl_::na>; Category = boost::multi_index::detail::ordered_unique_tag; AugmentPolicy = boost::multi_index::detail::null_augment_policy; boost::multi_index::detail::ordered_index_impl<KeyFromValue, Compare, SuperMeta, TagList, Category, AugmentPolicy>::iterator = boost::multi_index::detail::bidir_node_iterator<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > > > >; typename SuperMeta::type::node_type = boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<CTxMemPoolEntry, std::allocator<CTxMemPoolEntry> > > > >]’
txmempool.cpp:128:87: required from here
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:1167:10: error: no match for call to ‘(const key_compare {aka const CompareTxMemPoolEntryByScore}) (CTxMemPoolEntry&, const CTxMemPoolEntry&)’
if(!comp_(key(y->value()),key(v)))return false;
In file included from txmempool.cpp:6:0:
txmempool.h:282:10: note: candidate: bool CompareTxMemPoolEntryByScore::operator()(const CTxMemPoolEntry&, const CTxMemPoolEntry&) <near match>
bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
^~~~~~~~
txmempool.h:282:10: note: passing ‘const key_compare* {aka const CompareTxMemPoolEntryByScore*}’ as ‘this’ argument discards qualifiers
In file included from /usr/include/boost/multi_index/ordered_index.hpp:17:0,
from txmempool.h:21,
from txmempool.cpp:6:
/usr/include/boost/multi_index/detail/ord_index_impl.hpp:1172:23: error: no match for call to ‘(const key_compare {aka const CompareTxMemPoolEntryByScore}) (const CTxMemPoolEntry&, CTxMemPoolEntry&)’
return y==header()||comp_(key(v),key(y->value()));
In file included from txmempool.cpp:6:0:
txmempool.h:282:10: note: candidate: bool CompareTxMemPoolEntryByScore::operator()(const CTxMemPoolEntry&, const CTxMemPoolEntry&) <near match>
bool operator()(const CTxMemPoolEntry& a, const CTxMemPoolEntry& b)
^~~~~~~~
txmempool.h:282:10: note: passing ‘const key_compare* {aka const CompareTxMemPoolEntryByScore*}’ as ‘this’ argument discards qualifiers
CXX libbitcoin_server_a-versionbits.o
make[2]: *** [Makefile:5871: libbitcoin_server_a-txmempool.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/monetaryunit/arch/pkgbuilds/src/MUECore/src'
make[1]: *** [Makefile:9046: all-recursive] Error 1
make[1]: Leaving directory '/monetaryunit/arch/pkgbuilds/src/MUECore/src'
make: *** [Makefile:651: all-recursive] Error 1
==> ERROR: A failure occurred in build().
If I downgrade packages boost
and boost-libs
to version 1.65 the build succeeds.
To downgrade packages on Arch, follow their wiki page:
pacman -U https://archive.archlinux.org/packages/b/boost/boost-1.65.1-3-x86_64.pkg.tar.xz https://archive.archlinux.org/packages/b/boost-libs/boost-libs-1.65.1-3-x86_64.pkg.tar.xz