* 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.
This commit is contained in:
John Gilmore
1992-07-03 07:08:31 +00:00
parent 28b6b1ab85
commit 4c7c6bab1f
5 changed files with 98 additions and 51 deletions

View File

@@ -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,