error in VTT example
Jim Dehnert
dehnert at baalbek.engr.sgi.com
Wed Jul 5 08:09:31 UTC 2000
> Date: Thu, 29 Jun 2000 11:11:11 -0700 (PDT)
> From: Alex Samuel <samuel at codesourcery.com>
>
> There is I believe an error in the VTT example presented in section
> 2.6.2.
>
> The order of secondary virtual pointers is stated as inheritance graph
> preorder. Primary non-virtual bases are omitted. Therefore I believe
> the order of the secondary vptrs in the in example VTT should be V1,
> C2, V2 (as opposed to C2, V2, V1 as shown in entries [5], [6], and
> [7]). Though C1 is skipped because it's a primary base, the preorder
> traversal has to continue to its children (or else in other
> inheritance graphs some base classes will be missed completely).
> Therefore you get to V1 via C1 before hitting C2.
>
> It might make sense to clarify this in 2.6.2, item 3, with language
> something like,
>
> The order of the virtual pointers is inheritance graph preorder.
> Though primary non-virtual bases do not get secondary virtual
> pointers, they do not otherwise affect the ordering.
This is fixed.
Jim
- Jim Dehnert dehnert at sgi.com
(650)933-4272
More information about the cxx-abi-dev
mailing list