G++ internals - Glossary

Node: Glossary Next: Macros Prev: Implementation Specifics Up: Top

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.

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_DECL s that are pointer types that point to vtables. See also vtable and vfield.


Next: Macros Up: Top