|
Boost Users : |
From: Jan Stetka (janpstetka_at_[hidden])
Date: 2006-04-21 12:58:19
I have found that putting
#include "boost/shmem/containers/map.hpp"
#include <boost/shmem/named_shared_object.hpp>
first in the header list removes the ambiguity.
Also when i call insert on the boost::shmem::map the pair that i am
passing gives me the following:
C:\boost_1_33_1\boost\shmem\containers\detail\tree_func.hpp(529) : error
C2064: term does not evaluate to a function taking 2 arguments
C:\boost_1_33_1\boost\shmem\containers\detail\tree_func.hpp(520) : while
compiling class-template member function 'bool
boost::shmem::detail::rb_tree_func<Node,Key,KeyOfValue,KeyCompare>::insert_unique_prepare(const
boost::shmem::detail::rb_tree_func<Node,Key,KeyOfValue,KeyCompare>::node_pointer
& ,const KeyCompare &,const Key
&,boost::shmem::detail::rb_tree_func<Node,Key,KeyOfValue,KeyCompare>::node_pointer
&
,boost::shmem::detail::rb_tree_func<Node,Key,KeyOfValue,KeyCompare>::insert_unique_context
&)'
with
[
Node=boost::shmem::detail::rb_tree<long,std::pair<const
long,PHRunningData>,boost::shmem::detail::select1st<std::pair<const
long,PHRunningData>>,boost::shmem::allocator<std::pair<long,PHRunningData>,boost::shmem::detail::basic_named_object_impl<char,boost::shmem::simple_seq_fit<boost::shmem::shared_mutex_family>,boost::shmem::flat_map_index>::segment_manager>,std::allocator<std::pair<const
long,PHRunningData>>>::node_val_t,
Key=long,
KeyOfValue=boost::shmem::detail::select1st<std::pair<const
long,PHRunningData>>,
KeyCompare=boost::shmem::allocator<std::pair<long,PHRunningData>,boost::shmem::detail::basic_named_object_impl<char,boost::shmem::simple_seq_fit<boost::shmem::shared_mutex_family>,boost::shmem::flat_map_index>::segment_manager>
]
C:\boost_1_33_1\boost\shmem\containers\tree.hpp(539) : see
reference to class template instantiation
'boost::shmem::detail::rb_tree_func<Node,Key,KeyOfValue,KeyCompare>'
being compiled
with
[
Node=boost::shmem::detail::rb_tree<long,std::pair<const
long,PHRunningData>,boost::shmem::detail::select1st<std::pair<const
long,PHRunningData>>,boost::shmem::allocator<std::pair<long,PHRunningData>,boost::shmem::detail::basic_named_object_impl<char,boost::shmem::simple_seq_fit<boost::shmem::shared_mutex_family>,boost::shmem::flat_map_index>::segment_manager>,std::allocator<std::pair<const
long,PHRunningData>>>::node_val_t,
Key=long,
KeyOfValue=bo
ost::shmem::detail::select1st<std::pair<const long,PHRunningData>>,
KeyCompare=boost::shmem::allocator<std::pair<long,PHRunningData>,boost::shmem::detail::basic_named_object_impl<char,boost::shmem::simple_seq_fit<boost::shmem::shared_mutex_family>,boost::shmem::flat_map_index>::segment_manager>
]
C:\boost_1_33_1\boost\shmem\containers\tree.hpp(536) : while
compiling class-template member function 'std::pair<_Ty1,_Ty2>
boost::shmem::detail::rb_tree<Key,Value,KeyOfValue,Compare,Alloc>::insert_unique(const
boost::shmem::detail::rb_tree<Key,Value,KeyOfValue,Compare,Alloc>::value_type
&)'
with
[
_Ty1=boost::shmem::detail::rb_tree<long,std::pair<const
long,PHRunningData>,boost::shmem::detail::select1st<std::pair<const
long,PHRunningData>>,boost::shmem::allocator<std::pair<long,PHRunningData>,boost::shmem::detail::basic_named_object_impl<char,boost::shmem::simple_seq_fit<boost::shmem::shared_mutex_family>,boost::shmem::flat_map_index>::segment_manager>,std::allocator<std::pair<const
long,PHRunningData>>>::iterator,
_Ty2=bool,
Key=long,
Value=std::pair<const long,PHRunningData>,
KeyOfValue=boost::shmem::detail::select1st<std::pair<const
long,PHRunningData>>,
Compare=boost::shmem::allocator<std::pair<long,PHRunningData>,boost::shmem::detail::basic_named_object_impl<char,boost::shmem::simple_seq_fit<boost::shmem::shared_mutex_family>,boost::shmem::flat_map_index>::segment_manager>,
Alloc=std::allocator<std::pair<const long,PHRunningData>>
]
C:\boost_1_33_1\boost\shmem\containers\map.hpp(79) : see
reference to class template instantiation
'boost::shmem::detail::rb_tree<Key,Value,KeyOfValue,Compare,Alloc>'
being compiled
with
[
Key=long,
Value=std::pair<const long,PHRunningData>,
KeyOfValue=boost::shmem::detail::select1st<std::pair<const
long,PHRunningData>>,
Compare=boost::shmem::allocator<std::pair<long,PHRunningData>,
boost::shmem::detail::basic_named_object_impl<char,boost::shmem::simple_seq_fit<boost::shmem::shared_mutex_family>,boost::shmem::flat_map_index>::segment_manager>,
Alloc=std::allocator<std::pair<const long,PHRunningData>>
]
\src\ph\projects\PHLogger\log.cpp(64) : see reference to class
template instantiation 'boost::shmem::map<Key,T,Pred>' being compiled
with
[
Key=long,
T=PHRunningData,
Pred=boost::shmem::allocator<std::pair<long,PHRunningData>,boost::shmem::detail::basic_named_object_impl<char,boost::shmem::simple_seq_fit<boost::shmem::shared_mutex_family>,boost::shmem::flat_map_index>::segment_manager>
]
C:\boost_1_33_1\boost\shmem\containers\detail\tree_func.hpp(542) : error
C2064: term does not evaluate to a function taking 2 arguments
I would like to know what parameters to call insert with?
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net