Subject: Re: [Boost-bugs] [Boost C++ Libraries] #7642: archive::archive_exception fails to build when using C++11 with gcc 4.7.2
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2012-11-06 19:00:20
#7642: archive::archive_exception fails to build when using C++11 with gcc 4.7.2
-----------------------------------+----------------------------------------
Reporter: steven.lemay@⦠| Owner: ramey
Type: Bugs | Status: new
Milestone: To Be Determined | Component: serialization
Version: Boost 1.52.0 | Severity: Problem
Resolution: | Keywords: archive exception failed throw destructor
-----------------------------------+----------------------------------------
Comment (by ramey):
I've investigated this and some things occur to me.
a) I'm suspecting that this some sort of compiler/library quirk related to
qcc compiler. I say this because our text matrix shows problems with this
compiler and the serialization library.
b) I don't see virtual
boost::archive::archive_exception::~archive_exception() throw (); on line
86 of boost/archive/archive_exception.hpp:86: What I DO see is
~archive_exception(); which looks fine to me.
c) Another thing I see is:
class BOOST_ARCHIVE_DECL(BOOST_PP_EMPTY()) archive_exception :
public virtual std::exception
{
on line 44 of boost/archive/archive_exception.hpp: This raises a couple
of issues:
1) Why did I put "virtual" there. This would be to conflate base classes
when the exception is part of a multiple inheritance hierarchy. Perhaps
not a bad idea. But I doubt that it's used by anyone.
2)I looks to me that the compiler is using this to mean that all functions
are virtual? One can only guess.
I would try commenting out the "virtual" inheritance and see if that fixes
things. Since I don't have this compiler, this would fall to you. I
would also much appreciate it if you used
tools/regression/src/library_test.sh to run ALL the serialization library
tests after making this change and let me know what happens. Meanwhile,
I'll leave this pending.
Robert Ramey
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/7642#comment:1> 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:50:11 UTC