aboutsummaryrefslogtreecommitdiff
path: root/gdb/mdebugread.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2003-02-20 18:31:14 +0000
committerDaniel Jacobowitz <drow@false.org>2003-02-20 18:31:14 +0000
commit7134143f534f02e8a283bb1fc0a9f22300c90e8d (patch)
tree7df28797a4403c1f540ca84d0a1d3214ab06058e /gdb/mdebugread.c
parentcf466558d0faa40bd6cc78b7f4e983c5a3ec883b (diff)
downloadgdb-7134143f534f02e8a283bb1fc0a9f22300c90e8d.zip
gdb-7134143f534f02e8a283bb1fc0a9f22300c90e8d.tar.gz
gdb-7134143f534f02e8a283bb1fc0a9f22300c90e8d.tar.bz2
* coffread.c (coff_symfile_read): Clean up minimal symbols earlier.
* dbxread.c (elfstab_build_psymtabs): Don't call install_minimal_symbols. (stabsect_build_psymtabs): Likewise. * elfread.c (elf_symfile_read): Call install_minimal_symbols earlier. * somread.c (som_symfile_read): Call install_minimal_symbols and do_cleanups earlier. * nlmread.c (nlm_symfile_read): Likewise. * mdebugread.c (elfmdebug_build_psymtabs): Call install_minimal_symbols and make appropriate cleanups.
Diffstat (limited to 'gdb/mdebugread.c')
-rw-r--r--gdb/mdebugread.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/mdebugread.c b/gdb/mdebugread.c
index ac49ca0..51536d7 100644
--- a/gdb/mdebugread.c
+++ b/gdb/mdebugread.c
@@ -4809,6 +4809,14 @@ elfmdebug_build_psymtabs (struct objfile *objfile,
{
bfd *abfd = objfile->obfd;
struct ecoff_debug_info *info;
+ struct cleanup *back_to;
+
+ /* FIXME: It's not clear whether we should be getting minimal symbol
+ information from .mdebug in an ELF file, or whether we will.
+ Re-initialize the minimal symbol reader in case we do. */
+
+ init_minimal_symbol_collection ();
+ back_to = make_cleanup_discard_minimal_symbols ();
info = ((struct ecoff_debug_info *)
obstack_alloc (&objfile->psymbol_obstack,
@@ -4819,6 +4827,9 @@ elfmdebug_build_psymtabs (struct objfile *objfile,
bfd_errmsg (bfd_get_error ()));
mdebug_build_psymtabs (objfile, swap, info);
+
+ install_minimal_symbols (objfile);
+ do_cleanups (back_to);
}