From a66e8382def5fdeb8e291748ce6f1f639a0a63f2 Mon Sep 17 00:00:00 2001 From: Stu Grossman Date: Tue, 26 Apr 1994 17:14:52 +0000 Subject: * dbxread.c (record_minimal_symbol): Record the section associated with the symbol to make dynmaic relocation work. * (dbx_symfile_read, process_one_symbol): Fixes to work around Solaris brain-damage which don't apply to relocatable object files. * (stabsect_build_psymtabs): New routine to read stabs out of an arbitrarily named section. * nlmread.c (nlm_symtab_read): Read ALL syms from the NLM, not just globals. * (nlm_symfile_read): Call stabsect_build_psymtabs to read the stabs out of the nlm. * partial-stabs.h (cases 'f' & 'F'): Fixes to work around Solaris brain-damage which don't apply to relocatable object files. * remote.c (putpkt): Improve error reporting and error handling. * stabsread.c (define_symbol, scan_file_globals): Record section info in sym. --- gdb/partial-stab.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'gdb/partial-stab.h') diff --git a/gdb/partial-stab.h b/gdb/partial-stab.h index 794b370..747e6a5 100644 --- a/gdb/partial-stab.h +++ b/gdb/partial-stab.h @@ -500,7 +500,9 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifdef DBXREAD_ONLY /* Kludges for ELF/STABS with Sun ACC */ last_function_name = namestring; - if (pst && pst->textlow == 0) + /* Do not fix textlow==0 for .o or NLM files, as 0 is a legit + value for the bottom of the text seg in those cases. */ + if (pst && pst->textlow == 0 && !symfile_relocatable) pst->textlow = CUR_SYMBOL_VALUE; #if 0 if (startup_file_end == 0) @@ -522,7 +524,9 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifdef DBXREAD_ONLY /* Kludges for ELF/STABS with Sun ACC */ last_function_name = namestring; - if (pst && pst->textlow == 0) + /* Do not fix textlow==0 for .o or NLM files, as 0 is a legit + value for the bottom of the text seg in those cases. */ + if (pst && pst->textlow == 0 && !symfile_relocatable) pst->textlow = CUR_SYMBOL_VALUE; #if 0 if (startup_file_end == 0) -- cgit v1.1