$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Andreas Huber (ahd6974-spamgroupstrap_at_[hidden])
Date: 2006-03-13 18:38:58
Hi Juergen
> I've tried to run the statechart examples and tests with gcc 4.0 using
> Boost.Build V2.
>
> The attached patch corrects some minor glitches:
> The examples don't run from the "run" directory because gcc's -rpath
> option is not used when using shared libraries. This is enabled by
> <hardcode-dll-paths>true
Applied, thanks.
> The test Jamfile produces *tons* of warnings because
> -Wno--non-virtual-dtor is not set and detail/rtti_policy has an
> (empty) virtual function named "dummy" but no virtual destructor.
I get no warnings whatsoever on mingw. libs/statechart/Jamfile.v2 looks
as follows:
project libs/statechart
# The library ensures that all state destructors are only invoked on
# the most-derived type, therefore state destructors do not need to
# be virtual
: requirements <toolset>gcc:<cxxflags>-Wno-non-virtual-dtor ;
Shouldn't that take care of any warnings in test *and* example?
> I simply disabled this warning, but I'm not happy about it. It has
> been helpful in my own code in the past. Is there any chance to make
> the destructor virtual when a vtable is needed ?
The destructors are not virtual for performance reasons (see comment
above on how correctness is ensured). The vtable is needed for typeid,
that's why there's a dummy.
Regards,
-- Andreas Huber When replying by private email, please remove the words spam and trap from the address shown in the header.