Kinds of Symbols ...
- Arrays: array[1..10] of date
Store the number of dimensions, lower and upper bound for each, type
of array element, number of address units per element.
type vector = record x,y : integer end;
Store each element name, type, and offset. Variant records simply
restart the offset at the start of the variant part.
- Functions and procedures: Store number and types of arguments,
Some functions, such as abs ord succ, may be compiled
as in-line code.
- Labels: keep in a separate table if they have a form different
- Objects: a class in OOP packages together a record
of data items and a set of methods, which are procedures
associated with the class. In OOP, some form of symbol table for the
class is output as well as code for the methods.