While reading a symbol file, GDB occasionally encounters problems,
such as symbol types it does not recognize, or known bugs in compiler
output. By default, GDB does not notify you of such problems, since
they are relatively common and primarily of interest to people
debugging compilers. If you are interested in seeing information
about ill-constructed symbol tables, you can either ask GDB to print
only one message about each such type of problem, no matter how many
times the problem occurs; or you can ask GDB to print more messages,
to see how many times the problems occur, with the set
complaints
command (see section Optional warnings and messages).
The messages currently printed, and their meanings, include:
inner block not inside outer block in symbol
(don't know)
" if the outer block is not a
function.
block at address out of order
set verbose on
. See section Optional warnings and messages.)
bad block start address patched
bad string table offset in symbol n
foo
, which may cause other problems if many symbols end up
with this name.
unknown symbol type 0xnn
0xnn
is the symbol type of the misunderstood
information, in hexadecimal.
GDB circumvents the error by ignoring this symbol information. This
usually allows you to debug your program, though certain symbols
are not accessible. If you encounter such a problem and feel like
debugging it, you can debug gdb
with itself, breakpoint on
complain
, then go up to the function read_dbx_symtab
and
examine *bufp
to see the symbol.
stub type has NULL name
const/volatile indicator missing (ok if using g++ v1.x), got...
info mismatch between compiler and debugger
Go to the first, previous, next, last section, table of contents.