Boost logo

Boost Users :

Subject: [Boost-users] [MultiIndex] Visual C++ 10 issue
From: Jeremiah Willcock (jewillco_at_[hidden])
Date: 2010-05-10 13:14:26


Are there known problems with MultiIndex on the current VC++ 10 beta?
I'm looking in particular at <URL:http://tinyurl.com/39bmudo>. The area
around the line VC++ 10 has a problem with (line 276 of
distributed_property_map.hpp, the error is on the &std::pair line) is:

typedef multi_index::multi_index_container<
           std::pair<key_type, value_type>,
           multi_index::indexed_by<
             multi_index::sequenced<>,
             multi_index::hashed_unique<
               multi_index::member<std::pair<key_type, value_type>,
                                   key_type,
                                   &std::pair<key_type, value_type>::first>
>
>
> ghost_cells_type;

and the main error is (full instantiation stack in the link above):

D:\boost-test\boost\boost/property_map/parallel/distributed_property_map.hpp(276)
: error C2440: 'specialization' : cannot convert from
'boost::detail::parallel::global_descriptor<LocalDescriptor>
std::_Pair_base<_Ty1,_Ty2>::* ' to
'boost::detail::parallel::global_descriptor<LocalDescriptor>
std::pair<_Ty1,_Ty2>::* '
         with
         [
             LocalDescriptor=unsigned int,
             _Ty1=boost::detail::parallel::global_descriptor<unsigned int>,
             _Ty2=boost::detail::parallel::global_descriptor<unsigned int>
         ]
         Standard conversion from pointer-to-member of base to
pointer-to-member of derived is not applied for template arguments

What I don't see is where the pointer-to-member of _Pair_base comes from;
is that the correct type for the address of a member that's actually from
a base class? Or is this a compiler problem?

-- Jeremiah Willcock


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