Subject: Re: [Boost-bugs] [Boost C++ Libraries] #1267: Assertion `new_cid == cid' failed in basic_iarchive
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2007-09-19 19:32:24
#1267: Assertion `new_cid == cid' failed in basic_iarchive
---------------------------------+------------------------------------------
Reporter: mbergin_at_[hidden] | Owner: ramey
Type: Bugs | Status: new
Milestone: To Be Determined | Component: serialization
Version: Boost 1.34.1 | Severity: Problem
Resolution: | Keywords:
---------------------------------+------------------------------------------
Comment (by gwossum_at_[hidden]):
I've encountered the same problem with g++ 3.2.3. With g++ 3.2.3, it
occurs any time I try to serialize a thaw a derived class through an
abstract base class pointer, whether or not separate save and load methods
are used. Dropping the BOOST_CLASS_EXPORT() for the abstract base class
does NOT fix the problem. Only making the base class non-abstract makes
the problem go away, which isn't always an appealing option.
As a curious note, I have a class heirarchy that involves an abstract base
class A, an abstract subclass of A (B), and a several concrete subclasses
of B. I encounter issues if A is abstract, but if I make A concrete but B
is still abstract, I don't get any problems.
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1267#comment:3>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:56 UTC