[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.4 Glossary

binfo
The main data structure in the compiler used to represent the inheritance relationships between classes. The data in the binfo can be accessed by the BINFO_ accessor macros.

vtable
virtual function table

The virtual function table holds information used in virtual function dispatching. In the compiler, they are usually referred to as vtables, or vtbls. The first index is not used in the normal way, I believe it is probably used for the virtual destructor. There are two forms of virtual tables, one that has offsets in addition to pointers, and one using thunks. See section 1.16 Virtual Tables.

vfield

vfields can be thought of as the base information needed to build vtables. For every vtable that exists for a class, there is a vfield. See also vtable and virtual function table pointer. When a type is used as a base class to another type, the virtual function table for the derived class can be based upon the vtable for the base class, just extended to include the additional virtual methods declared in the derived class. The virtual function table from a virtual base class is never reused in a derived class. is_normal depends upon this.

virtual function table pointer

These are FIELD_DECLs that are pointer types that point to vtables. See also vtable and vfield.



This document was generated by system on December, 2 2004 using texi2html