diff options
author | John Gilmore <gnu@cygnus> | 1992-07-03 07:08:31 +0000 |
---|---|---|
committer | John Gilmore <gnu@cygnus> | 1992-07-03 07:08:31 +0000 |
commit | 4c7c6bab1f8ca0ff46795c843e887171f86731d1 (patch) | |
tree | 72ace6b3124f007fc7f8992246b932ac75f36b07 /gdb/elfread.c | |
parent | 28b6b1ab85e9bd47d47ef77715fc19fe13dd7674 (diff) | |
download | gdb-4c7c6bab1f8ca0ff46795c843e887171f86731d1.zip gdb-4c7c6bab1f8ca0ff46795c843e887171f86731d1.tar.gz gdb-4c7c6bab1f8ca0ff46795c843e887171f86731d1.tar.bz2 |
* dbxread.c (process_one_symbol): Ignore N_MAIN, N_ENDM for Solaris.
* partial-stab.h: Ignore N_ENDM.
* elfread.c (elf_symtab_read): Ignore symbols that don't have a
CODE or DATA section attachment. This eliminates a lot of random
values from shared libraries, which screw up the ordinary symbols
in the address ranges they happen to overlap.
* buildsym.c (define_symbol): Eliminate special tests
for function types; move into "function" cases in switch statement.
(define_symbol: 'f', 'F', 'P'): Process all parameter types
in case they define new type numbers. But ignore them (FIXME).
('k', 'B'): Ignore const and volatile if we see them (FIXME).
(read_sun_builtin_type): Add commentary.
Diffstat (limited to 'gdb/elfread.c')
-rw-r--r-- | gdb/elfread.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gdb/elfread.c b/gdb/elfread.c index 56e3a89..4104d1a 100644 --- a/gdb/elfread.c +++ b/gdb/elfread.c @@ -274,7 +274,12 @@ elf_symtab_read (abfd, addr, objfile) } else { - ms_type = mst_unknown; + /* FIXME: Solaris2 shared libraries include lots of + odd "absolute" and "undefined" symbols, that play + hob with actions like finding what function the PC + is in. Ignore them if they aren't text or data. */ + /* ms_type = mst_unknown; */ + continue; /* Skip this symbol. */ } /* Pass symbol size field in via BFD. FIXME!!! */ record_minimal_symbol_and_info ((char *) sym -> name, |