On 14 March 2011 17:29, Benjamin Kosnik wrote:
>
> I hacked up scripts/check_compile and ran the libstdc++ testsuite to
> generate 4k+ .s files, and then analyzed the resulting assembly files
> for vague linkage.
>
> Here are the clear wins that are ABI-compatible, or in C++0x code. There
> are other issues, like the locale base classes, that are not as easy to
> fix. There are a couple other issues in C++0x code that I am working
> out, will post later today.
>
> I'm holding off on this patch until branching is clear. But I thought
> I'd post it so that this effort is public. It's set up for 4.6.0 but
> may be moved to 4.7.0.

Does exporting some of these symbols and vtables from the library mean
we're less able to change them?  I'm not confident all ofthe C++0x
bits are entirely stable yet.

I see you've given future_base::_Result_base a virtual destructor, is
there a specific reason for that?  Destruction should always be via
the virtual _M_destroy function and so 'delete' is called in the final
overrider, where the static type and dynamic type are the same. The
virtual destructor adds unnecessary overhead, though it's probably
negligible.

Reply via email to