N_LSYM
and
N_GSYM
), the desc field is supposed to contain the source
line number on which the variable is defined. In reality the desc
field is always 0. (This behavior is defined in dbxout.c and
putting a line number in desc is controlled by ‘#ifdef
WINNING_GDB’, which defaults to false). GDB supposedly uses this
information if you say ‘list var’. In reality, var can
be a variable defined in the program and GDB says ‘function
var not defined’.
N_LSYM
stab type. Types defined at procedure scope are emitted after the
N_RBRAC
of the preceding function and before the code of the
procedure in which they are defined. This is exactly the same as
types defined in the source file between the two procedure bodies.
GDB over-compensates by placing all types in block #1, the block for
symbols of file scope. This is true for default, ‘-ansi’ and
‘-traditional’ compiler options. (Bugs gcc/1063, gdb/1066.)
N_RBRAC
or the
next N_FUN
? (I believe its the first.)