From 08f93a1a93f9b344a92dc9e411c83d70acfdf857 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sat, 19 Sep 2020 11:54:49 -0600 Subject: [PATCH] Use gdb_bfd_sections in elf_symfile_read This changes elf_symfile_read to avoid bfd_map_over_sections, in favor of iteration. gdb/ChangeLog 2020-09-19 Tom Tromey * elfread.c (elf_locate_sections): Change parameters. (elf_symfile_read): Use foreach. --- gdb/ChangeLog | 5 +++++ gdb/elfread.c | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 1c950448c6f..469b6c73f25 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2020-09-19 Tom Tromey + + * elfread.c (elf_locate_sections): Change parameters. + (elf_symfile_read): Use foreach. + 2020-09-19 Tom Tromey * cli/cli-dump.c (struct callback_data): Remove. diff --git a/gdb/elfread.c b/gdb/elfread.c index 75bdd75250b..5dad3ddd940 100644 --- a/gdb/elfread.c +++ b/gdb/elfread.c @@ -176,11 +176,8 @@ elf_symfile_segments (bfd *abfd) -kingdon). */ static void -elf_locate_sections (bfd *ignore_abfd, asection *sectp, void *eip) +elf_locate_sections (asection *sectp, struct elfinfo *ei) { - struct elfinfo *ei; - - ei = (struct elfinfo *) eip; if (strcmp (sectp->name, ".stab") == 0) { ei->stabsect = sectp; @@ -1211,7 +1208,10 @@ elf_symfile_read (struct objfile *objfile, symfile_add_flags symfile_flags) memset ((char *) &ei, 0, sizeof (ei)); if (!(objfile->flags & OBJF_READNEVER)) - bfd_map_over_sections (abfd, elf_locate_sections, (void *) & ei); + { + for (asection *sect : gdb_bfd_sections (abfd)) + elf_locate_sections (sect, &ei); + } elf_read_minimal_symbols (objfile, symfile_flags, &ei); -- 2.30.2