Skip to content

Instantly share code, notes, and snippets.

@allenluce
Created July 11, 2018 22:18
Show Gist options
  • Save allenluce/d16eb49697bc16d0b1f21f58ca5eeafd to your computer and use it in GitHub Desktop.
Save allenluce/d16eb49697bc16d0b1f21f58ca5eeafd to your computer and use it in GitHub Desktop.
ERROR ERROR
../mmap-object.cc: In static member function ‘static Nan::NAN_PROPERTY_SETTER_RETURN_TYPE SharedMap::PropSetter(v8::Local<v8::String>, v8::Local<v8::Value>, Nan::NAN_PROPERTY_SETTER_ARGS_TYPE)’:
../mmap-object.cc:323:64: error: no matching function for call to ‘boost::unordered::unordered_map<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell, hasher, s_equal_to, boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >::insert(<brace-enclosed initializer list>)’
auto pair = property_map->insert({ *string_key, *c, x }); // ALLOC
^
../mmap-object.cc:323:64: note: candidates are:
In file included from /usr/include/boost/unordered_map.hpp:16:0,
from ../mmap-object.cc:21:
/usr/include/boost/unordered/unordered_map.hpp:382:35: note: std::pair<typename boost::unordered::detail::map<A, K, T, H, P>::table::iterator, bool> boost::unordered::unordered_map<K, T, H, P, A>::insert(const value_type&) [with K = boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >; T = Cell; H = hasher; P = s_equal_to; A = boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >; typename boost::unordered::detail::map<A, K, T, H, P>::table::iterator = boost::unordered::iterator_detail::iterator<boost::unordered::detail::unique_node<boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >, std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> > >; boost::unordered::unordered_map<K, T, H, P, A>::value_type = std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>]
std::pair<iterator, bool> insert(value_type const& x)
^
/usr/include/boost/unordered/unordered_map.hpp:382:35: note: no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘const value_type& {aka const std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>&}’
/usr/include/boost/unordered/unordered_map.hpp:387:35: note: std::pair<typename boost::unordered::detail::map<A, K, T, H, P>::table::iterator, bool> boost::unordered::unordered_map<K, T, H, P, A>::insert(boost::unordered::unordered_map<K, T, H, P, A>::value_type&&) [with K = boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >; T = Cell; H = hasher; P = s_equal_to; A = boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >; typename boost::unordered::detail::map<A, K, T, H, P>::table::iterator = boost::unordered::iterator_detail::iterator<boost::unordered::detail::unique_node<boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >, std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> > >; boost::unordered::unordered_map<K, T, H, P, A>::value_type = std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>]
std::pair<iterator, bool> insert(BOOST_RV_REF(value_type) x)
^
/usr/include/boost/unordered/unordered_map.hpp:387:35: note: no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘boost::unordered::unordered_map<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell, hasher, s_equal_to, boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >::value_type&& {aka std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>&&}’
/usr/include/boost/unordered/unordered_map.hpp:392:18: note: boost::unordered::unordered_map<K, T, H, P, A>::iterator boost::unordered::unordered_map<K, T, H, P, A>::insert(boost::unordered::unordered_map<K, T, H, P, A>::const_iterator, const value_type&) [with K = boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >; T = Cell; H = hasher; P = s_equal_to; A = boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >; boost::unordered::unordered_map<K, T, H, P, A>::iterator = boost::unordered::iterator_detail::iterator<boost::unordered::detail::unique_node<boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >, std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> > >; boost::unordered::unordered_map<K, T, H, P, A>::const_iterator = boost::unordered::iterator_detail::c_iterator<boost::unordered::detail::unique_node<boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >, std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> >, boost::interprocess::offset_ptr<const boost::unordered::detail::unique_node<boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >, std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> >, long int, long unsigned int, 0ul> >; boost::unordered::unordered_map<K, T, H, P, A>::value_type = std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>]
iterator insert(const_iterator hint, value_type const& x)
^
/usr/include/boost/unordered/unordered_map.hpp:392:18: note: candidate expects 2 arguments, 1 provided
/usr/include/boost/unordered/unordered_map.hpp:397:18: note: boost::unordered::unordered_map<K, T, H, P, A>::iterator boost::unordered::unordered_map<K, T, H, P, A>::insert(boost::unordered::unordered_map<K, T, H, P, A>::const_iterator, boost::unordered::unordered_map<K, T, H, P, A>::value_type&&) [with K = boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >; T = Cell; H = hasher; P = s_equal_to; A = boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >; boost::unordered::unordered_map<K, T, H, P, A>::iterator = boost::unordered::iterator_detail::iterator<boost::unordered::detail::unique_node<boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >, std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> > >; boost::unordered::unordered_map<K, T, H, P, A>::const_iterator = boost::unordered::iterator_detail::c_iterator<boost::unordered::detail::unique_node<boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >, std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> >, boost::interprocess::offset_ptr<const boost::unordered::detail::unique_node<boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >, std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> >, long int, long unsigned int, 0ul> >; boost::unordered::unordered_map<K, T, H, P, A>::value_type = std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>]
iterator insert(const_iterator hint, BOOST_RV_REF(value_type) x)
^
/usr/include/boost/unordered/unordered_map.hpp:397:18: note: candidate expects 2 arguments, 1 provided
/usr/include/boost/unordered/unordered_map.hpp:402:39: note: template<class InputIt> void boost::unordered::unordered_map<K, T, H, P, A>::insert(InputIt, InputIt) [with InputIt = InputIt; K = boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >; T = Cell; H = hasher; P = s_equal_to; A = boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >]
template <class InputIt> void insert(InputIt, InputIt);
^
/usr/include/boost/unordered/unordered_map.hpp:402:39: note: template argument deduction/substitution failed:
../mmap-object.cc:323:64: note: candidate expects 2 arguments, 1 provided
auto pair = property_map->insert({ *string_key, *c, x }); // ALLOC
^
In file included from /usr/include/boost/unordered_map.hpp:16:0,
from ../mmap-object.cc:21:
/usr/include/boost/unordered/unordered_map.hpp:1128:10: note: void boost::unordered::unordered_map<K, T, H, P, A>::insert(std::initializer_list<std::pair<const _Key, _Tp> >) [with K = boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >; T = Cell; H = hasher; P = s_equal_to; A = boost::interprocess::allocator<std::pair<boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell>, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> >]
void unordered_map<K,T,H,P,A>::insert(
^
/usr/include/boost/unordered/unordered_map.hpp:1128:10: note: no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘std::initializer_list<std::pair<const boost::container::basic_string<char, std::char_traits<char>, boost::interprocess::allocator<char, boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family>, boost::interprocess::iset_index> > >, Cell> >’
make: *** [Release/obj.target/mmap-object/mmap-object.o] Error 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment