summaryrefslogtreecommitdiff
path: root/gdb/solib.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2020-10-12 15:53:16 -0600
committerTom Tromey <tom@tromey.com>2020-10-12 20:18:48 -0600
commitd7a78e5c41c77ad32de668b0b2fde74deeb8190d (patch)
tree35ed23038ee62fb12689eeae60b5d45ac682eebd /gdb/solib.c
parenteda214cec17472e7383b8aaf17f6a065b0be4a1e (diff)
downloadbinutils-gdb-d7a78e5c41c77ad32de668b0b2fde74deeb8190d.tar.gz
Change target_section_table to std::vector alias
Because target_section_table only holds a vector, and because it is used in an "open" way, this patch makes it just be an alias for the std::vector specialization. This makes the code less wordy. If we do ever want to add more specialized behavior to this type, it's simple enough to convert it back to a struct with the few needed methods implied by this change. gdb/ChangeLog 2020-10-12 Tom Tromey <tom@tromey.com> * target.h (struct target_ops) <get_section_table>: Update. (target_get_section_table): Update. * target.c (target_get_section_table, target_section_by_addr) (memory_xfer_partial_1): Update. * target-section.h (target_section_table): Now an alias. * target-delegates.c: Rebuild. * target-debug.h (target_debug_print_target_section_table_p): Rename from target_debug_print_struct_target_section_table_p. * symfile.c (build_section_addr_info_from_section_table): Update. * solib.c (solib_map_sections, solib_contains_address_p): Update. * solib-svr4.c (scan_dyntag): Update. * solib-dsbt.c (scan_dyntag): Update. * remote.c (remote_target::remote_xfer_live_readonly_partial): Update. * record-full.c (record_full_core_target::xfer_partial): Update. * progspace.h (struct program_space) <target_sections>: Update. * exec.h (print_section_info): Update. * exec.c (exec_target::close, build_section_table) (add_target_sections, add_target_sections_of_objfile) (remove_target_sections, exec_on_vfork) (section_table_available_memory) (section_table_xfer_memory_partial) (exec_target::get_section_table, exec_target::xfer_partial) (print_section_info, set_section_command) (exec_set_section_address, exec_target::has_memory): Update. * corelow.c (core_target::build_file_mappings) (core_target::xfer_partial, core_target::info_proc_mappings) (core_target::info_proc_mappings): Update. * bfd-target.c (class target_bfd): Update
Diffstat (limited to 'gdb/solib.c')
-rw-r--r--gdb/solib.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gdb/solib.c b/gdb/solib.c
index bd6a27d8983..b4864429e9a 100644
--- a/gdb/solib.c
+++ b/gdb/solib.c
@@ -556,7 +556,7 @@ solib_map_sections (struct so_list *so)
so->sections = new target_section_table;
*so->sections = build_section_table (so->abfd);
- for (target_section &p : so->sections->sections)
+ for (target_section &p : *so->sections)
{
/* Relocate the section binding addresses as recorded in the shared
object's file by the base address to which the object was actually
@@ -1113,7 +1113,7 @@ bool
solib_contains_address_p (const struct so_list *const solib,
CORE_ADDR address)
{
- for (target_section &p : solib->sections->sections)
+ for (target_section &p : *solib->sections)
if (p.addr <= address && address < p.endaddr)
return true;