Boost logo

Boost Users :

Subject: Re: [Boost-users] [Serialization] Strange giant warning
From: Avi Bahra (avibahra_at_[hidden])
Date: 2010-03-09 08:38:55


This is caused by a bug in the boost serialisation, well at least in 1.39
Where is assumes that shared ptr must be polymorphic
I have already reported a similar problem.
i.e

>>... boost_1_39_0/boost/
>>serialization/extended_type_info_typeid.hpp", line
>> 88:
>> warning #2414-D: delete of pointer to incomplete class
>> BOOST_STATIC_WARNING(boost::is_polymorphic<T>::value);
>> ^detected during:
>> instantiation of "const
boost::serialization::extended_type_info
>>
*boost::serialization::extended_type_info_typeid<T>::get_derived_extended_type_info(const
>> T &) const [with T=Concrete]" at line 92 of
>>
"/scratch/ma/emos/ma0/hpia64/boost/boost_1_39_0/boost/archive/shared_ptr_helper.hpp"
>>
>>
>> It looks like if we are serialising via a base ptr, and the
>> base class is serialising concrete data member via a shared ptr,
>> it has assumed that the type must be polymorphic. This does
>> not seem right to me ?

The hacky way to stop your warning message would be add a dummy virtual
function.

  Best regards,
Ta,
   Avi



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