construction vtables broken

Jason Merrill jason at redhat.com
Wed Jan 24 12:13:13 UTC 2001


>>>>> "Mark" == Mark Mitchell <mark at codesourcery.com> writes:

>>>>> "Jason" == Jason Merrill <jason at redhat.com> writes:
Jason> But it still needs to say something about having virtual
Jason> functions (in order to have RTTI information).  It might be
Jason> cleaner just to add the bit above about RTTI.

> Are you trying to optimize the case where the vtable has only vbase
> offsets, but no virtual functions, and then not have VTT entries in
> that case?

No, I'm thinking of the case where there is no vtable.  But perhaps it goes
without saying that a base with no vptr won't need an entry in the VTT...

> I think that's over-optimization.  It will make things even *more*
> complicated, since you might still need an entry for a non-primary
> base of such a thing that did itself have virtual functions.  Ugh.

> I think Nathan's proposal is a winner: 

>   - Everything that has a virtual base
>   - Everything that is a base of a virtual base, including the
>     non-proper case of actually *being* a virtual base.

> That's simple, and optimal for almost every hierarchy.

> Or did I misunderstand?  Maybe you found *more* cases where we need a
> secondary VTT?

We were tailking about secondary virtual pointers, not secondary VTTs.

Jason




More information about the cxx-abi-dev mailing list