From 37e136b1684929df204ddd09c38978c705fa7228 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Mon, 12 Mar 2018 21:50:33 -0600 Subject: Remove make_cleanup_free_section_addr_info This removes make_cleanup_free_section_addr_info. Instead -- per Simon's suggestion -- this changes section_addr_info to be a std::vector. Regression tested by the buildbot. gdb/ChangeLog 2018-03-16 Tom Tromey * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs". * utils.h (make_cleanup_free_section_addr_info): Don't declare. * utils.c (do_free_section_addr_info) (make_cleanup_free_section_addr_info): Remove. * symfile.h (struct other_sections): Add constructor. (struct section_addr_info): Remove. (section_addr_info): New typedef. (struct sym_fns) : Change type of parameter. (build_section_addr_info_from_objfile) (relative_addr_info_to_section_offsets, addr_info_make_relative) (default_symfile_offsets, symbol_file_add) (symbol_file_add_from_bfd) (build_section_addr_info_from_section_table): Update. (alloc_section_addr_info, free_section_addr_info): Don't declare. * symfile.c (alloc_section_addr_info): Remove. (build_section_addr_info_from_section_table): Change return type. Update. (build_section_addr_info_from_bfd) (build_section_addr_info_from_objfile): Likewise. (free_section_addr_info): Remove. (relative_addr_info_to_section_offsets): Change type of "addrs". (addrs_section_compar): Now a std::sort comparator. (addrs_section_sort): Change return type. (addr_info_make_relative): Change type of "addrs". Update. (default_symfile_offsets, syms_from_objfile_1) (syms_from_objfile, symbol_file_add_with_addrs): Likewise. (symbol_file_add_separate): Update. (symbol_file_add): Change type of "addrs". Update. (add_symbol_file_command): Update. Remove cleanups. * symfile-mem.c (symbol_file_add_from_memory): Update. Remove cleanups. * symfile-debug.c (debug_sym_offsets): Change type of "info". * solib.c (solib_read_symbols): Update. * objfiles.c (objfile_relocate): Update. Remove cleanups. * machoread.c (macho_symfile_offsets): Update. * jit.c (jit_bfd_try_read_symtab): Update. --- gdb/solib.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'gdb/solib.c') diff --git a/gdb/solib.c b/gdb/solib.c index 1c788459381..f9a31bca196 100644 --- a/gdb/solib.c +++ b/gdb/solib.c @@ -676,8 +676,6 @@ solib_read_symbols (struct so_list *so, symfile_add_flags flags) TRY { - struct section_addr_info *sap; - /* Have we already loaded this shared object? */ ALL_OBJFILES (so->objfile) { @@ -687,13 +685,13 @@ solib_read_symbols (struct so_list *so, symfile_add_flags flags) } if (so->objfile == NULL) { - sap = build_section_addr_info_from_section_table (so->sections, - so->sections_end); + section_addr_info sap + = build_section_addr_info_from_section_table (so->sections, + so->sections_end); so->objfile = symbol_file_add_from_bfd (so->abfd, so->so_name, - flags, sap, OBJF_SHARED, - NULL); + flags, &sap, + OBJF_SHARED, NULL); so->objfile->addr_low = so->addr_low; - free_section_addr_info (sap); } so->symbols_loaded = 1; -- cgit v1.2.1