VTT example

Mark Mitchell mark at codesourcery.com
Wed Jun 28 00:16:33 UTC 2000


  Folks --

    Alex and I have concluded that the VTT example in the ABI document
  is wrong.  It claims that V1 is a primary base, but since V1 is
  virtual and not nearly-empty, this is not true.  We think the correct
  VTT layout is:

  VTT for D:		D
    VTT for C1-in-D:	C1-in-D 
    VTT for C2-in-D: 	C2-in-D
      Seccondary vptrs:	V2-in-D
			  V1-in-D 
    Secondary vptrs:	C2-in-D
			  V1-in-D 
			  V2-in-D 
    Virtual VTT for V1:   V1-in-D 
    Virtual VTT for V2:   V2-in-D 
      Secondary vptrs:    V1-in-D 

Actually, I take it back.  It looks like the example is correct; there
is no virtual VTT for V1.  However, the reason is not that V1 is
primary; the reason is that V! has no virtual bases.

--
Mark Mitchell                   mark at codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com




More information about the cxx-abi-dev mailing list