Boost logo

Boost Users :

From: Robert Ramey (ramey_at_[hidden])
Date: 2005-08-25 10:30:40


What compiler are you using? Do the serialization tests that touch
polymorphic archives compile? Is test coverage sufficient?

Robert Ramey

Sergey Skorniakov wrote:
> Its look like that lookup_basic_helper/insert_basic_helper has not
> been added to polymorphic_iarchive/polymorphic_oarchive and
> polymorphic_iarchive_impl/polymorphic_oarchive_impl classes by
> mistake. Also, interface_iarchive and interface_oarchive members
> lookup_helper and
>
> insert_helper should be transformed from
>
> void lookup_helper(
> const boost::serialization::extended_type_info * const eti,
> shared_ptr<void> & sph
> ){
> this->This()->basic_iarchive::lookup_basic_helper(eti, sph);
> }
>
>
> to
>
> void lookup_helper(
> const boost::serialization::extended_type_info * const eti,
> shared_ptr<void> & sph
> ){
> this->This()->lookup_basic_helper(eti, sph);
> }
>
>
> This works for me.
>
>
>> c:\boost_1_33_0\boost\archive\detail\interface_iarchive.hpp(73) :
>> error C2039: 'basic_iarchive' : is not a member of
>> 'boost::archive::polymorphic_iarchive'
>> c:\boost_1_33_0\boost\archive\polymorphic_iarchive.hpp(52) : see
>> declaration
>> of 'boost::archive::polymorphic_iarchive'
>> c:\boost_1_33_0\boost\archive\detail\interface_iarchive.hpp(72) :
>> while compiling class-template member function 'void
>> boost::archive::detail::interface_iarchive<Archive>::lookup_helper(const
>> boost::serialization::extended_type_info *const
>> ,boost::shared_ptr<T> &)' with
>> [
>> Archive=boost::archive::polymorphic_iarchive,
>> T=void
>> ]
>> c:\boost_1_33_0\boost\archive\polymorphic_iarchive.hpp(54) : see
>> reference to class template instantiation
>> 'boost::archive::detail::interface_iarchive<Archive>' being compiled
>> with
>> [
>> Archive=boost::archive::polymorphic_iarchive
>> ]
>> c:\boost_1_33_0\boost\archive\detail\interface_iarchive.hpp(73) :
>> error C2662:
>> 'boost::archive::detail::basic_iarchive::lookup_basic_helper' :
>> cannot convert 'this' pointer from
>> 'boost::archive::polymorphic_iarchive' to
>> 'boost::archive::detail::basic_iarchive &'
>> Reason: cannot convert from 'boost::archive::polymorphic_iarchive' to
>> 'boost::archive::detail::basic_iarchive'
>> Conversion requires a second user-defined-conversion operator or
>> constructor


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