Next: BFD support for GDB Prev: Partial Symbol Tables Up: Top
Fundamental Types (e.g., FT_VOID, FT_BOOLEAN).
These are the fundamental types that gdb uses internally.
Fundamental types from the various debugging formats (stabs, ELF, etc)
are mapped into one of these. They are basically a union of all
fundamental types that gdb knows about for all the languages that gdb
Type Codes (e.g., TYPE_CODE_PTR, TYPE_CODE_ARRAY).
Each time gdb builds an internal type, it marks it with one of these
types. The type may be a fundamental type, such as TYPE_CODE_INT, or a
derived type, such as TYPE_CODE_PTR which is a pointer to another type.
Typically, several FT_* types map to one TYPE_CODE_* type, and are
distinguished by other members of the type struct, such as whether the
type is signed or unsigned, and how many bits it uses.
Builtin Types (e.g., builtin_type_void, builtin_type_char).
These are instances of type structs that roughly correspond to
fundamental types and are created as global types for gdb to use for
various ugly historical reasons. We eventually want to eliminate
these. Note for example that builtin_type_int initialized in
gdbtypes.c is basically the same as a TYPE_CODE_INT type that is
initialized in c-lang.c for an FT_INTEGER fundamental type. The
difference is that the builtin_type is not associated with any
particular objfile, and only one instance exists, while c-lang.c builds
as many TYPE_CODE_INT types as needed, with each one associated with
some particular objfile.
automatically generated by info2www