[cxx-abi-dev] There is no obligation to unique virtual tables

Dennis Handly dhandly at cup.hp.com
Tue Feb 19 23:17:56 UTC 2013


>From: Jason Merrill <jason at redhat.com>
>_ZTSs are no less unique now than they were before; we just accepted 
>that RTLD_LOCAL prevents reliably uniquing symbols.

We tell our customers they can't use those options for C++, unless they
know types are really local.

>and started doing string comparison instead of pointer comparison.
Jason

We had to have a secret method that can enable the string comparison, for
one important customer.

>From: Gabriel Dos Reis <gdr at integrable-solutions.net>
>However, we can't pretend that the ABI never asked for uniqueness of these
>artefacts or that nobody depended on them.

Right.  We depend on them.

>From: David Vandevoorde <daveed at edg.com>
>On Feb 18, 2013, at 1:47 PM, John McCall <rjmccall at apple.com> wrote:
>> I am currently seeking consensus that we never meant to guarantee
>> uniqueness of *v-tables* (_ZTVs and _ZTTs).

>That sounds reasonable to me.

Except uniqueness is always good.  ;-)

On Mon, Feb 18, 2013 at 12:47 PM, John McCall <rjmccall at apple.com> wrote:
> I do know that there's code out there which loads and compares v-table
> pointers

We do try to optimize dynamic_casts into static_casts by comparing the
pointer values.


More information about the cxx-abi-dev mailing list