|
|
Because of symbolic debugging requirements, the order of symbols in the symbol table is very important. Symbols appear in the sequence shown in ``COFF symbol table''.
COFF symbol table
filename 1 |
function 1 |
C_WEAKEXT aliases |
for function 1 |
function 1b (alias) |
. . . |
local symbols for function 1 |
function 2 |
C_WEAKEXT aliases |
for function 2 |
. . . |
local symbols for function 2 |
. . . |
statics |
. . . |
filename 2 |
function 1 |
C_WEAKEXT aliases |
for function 1 |
. . . |
local symbols for function 1 |
. . . |
statics |
. . . |
defined global symbols |
undefined global symbols |
The word ``statics'' in
``COFF symbol table''
means symbols defined
with the C language storage class static
outside any function.
The symbol table consists of at least one fixed-length entry per symbol
with some symbols followed by
auxiliary entries of the same size.
The entry for each symbol is a
structure that holds
the value, the type,
and other information.