Boost logo

Boost :

From: Robert Ramey (ramey_at_[hidden])
Date: 2005-11-21 16:18:19


You might consider adding a switch to the gcc compiler switches used.
This is what I did to make it pass the tests without complaint. Offhand
I've forgotten the exact switch but I think you'll find it in
serialization.jam
in libs/serialization/build

The warnings can be ignored in this case. The destrctor is "protected"
so that attempts to delete through a base class pointer will be
detected as errors at compile time. This also eliminates a useless
vtable entry. This was introduced to be sure that derived classes
in DLLS wern't being deleted through the library.

However, these warnings are annoying. I'm considering adding
"virtual" back in to the gcc compiles just to avoid these annoying
warnings - but this would be in a future release in any case.

Robert Ramey

Kim Barrett wrote:
> Between 1.33 and 1.33.1_beta, several classes in the serialization
> library were changed from having virtual destructors to having
> non-virtual destructors. An example is basic_oserializer. Many of
> these classes
> have virtual functions, with the result that "g++ -Wall" now complains
> about them ("has virtual functions but non-virtual destructor"), so
> that
> I now get tons of warnings when compiling code that uses the
> serialization library. My guess would be that none of these warnings
> are actually interesting, but that belief doesn't really help all
> that much. Was
> there a good reason for this change? Could it be reverted? If not, is
> there some other thing that could be done to eliminate these warnings?
> For 1.33.1 release?
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk