Use std::string rather than grow_vect
[binutils-gdb.git] / gdb / ChangeLog
index e67668d315c505ed92156dd00f68a95ecfde5e05..05e53caad669fb729c6b72fe6e0f32f319bce542 100644 (file)
@@ -1,3 +1,524 @@
+2021-03-02  Tom Tromey  <tromey@adacore.com>
+
+       * ada-lang.c (ada_fold_name, ada_variant_discrim_name)
+       (ada_enum_name, scan_discrim_bound, to_fixed_range_type): Use
+       std::string.
+       (GROW_VECT): Remove.
+       (grow_vect): Remove.
+
+2021-03-02  Tom Tromey  <tromey@adacore.com>
+
+       * ada-lang.h (ada_lookup_symbol_list): Return a vector.
+       * ada-lang.c (resolve_subexp): Update.
+       (ada_resolve_function): Accept a vector.
+       (is_nonfunction, add_defn_to_vec)
+       (add_symbols_from_enclosing_procs): Likewise.
+       (num_defns_collected, defns_collected): Remove.
+       (remove_extra_symbols): Return a vector.
+       (remove_irrelevant_renamings): Return void.
+       (ada_add_local_symbols): Accept a vector.
+       (struct match_data) <obstackp>: Remove.
+       <resultp>: New member.
+       (aux_add_nonlocal_symbols): Update.
+       (ada_add_block_renamings, add_nonlocal_symbols)
+       (ada_add_all_symbols): Accept a vector.
+       (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Return a
+       vector.
+       (ada_lookup_symbol): Update.
+       (ada_add_block_symbols): Accept a vector.
+       (get_var_value, iterate_over_symbols): Update.
+       * ada-exp.y (block_lookup, write_var_or_type, write_name_assoc):
+       Update.
+
+2021-03-02  Tom Tromey  <tromey@adacore.com>
+
+       * ada-lang.c (resolve_subexp): Use any_of and erase-remove idiom.
+
+2021-03-02  Tom Tromey  <tromey@adacore.com>
+
+       * ada-lang.c (struct ada_symbol_cache) <cache_space>: Now an
+       auto_obstack.
+       <root>: Initialize.
+       (ada_pspace_data): Remove destructor.
+       <sym_cache>: Now a unique_ptr.
+       (ada_init_symbol_cache, ada_free_symbol_cache): Remove.
+       (ada_get_symbol_cache): Use 'new'.
+       (ada_clear_symbol_cache): Rewrite.
+
+2021-03-02  Tom Tromey  <tromey@adacore.com>
+
+       * ada-lang.c (add_nonlocal_symbols): Handle case where objfile->sf
+       is null.
+
+2021-02-27  Lancelot Six  <lsix@lancelotsix.com>
+
+       PR gdb/27393
+       * source.c (add_path): Skip empty dirnames.
+
+2021-02-25  Kevin Buettner  <kevinb@redhat.com>
+
+       * nat/aarch64-sve-linux-ptrace.h: Add comment regarding
+       include order for <sys/ptrace.h> and <asm/ptrace.h>.
+
+2021-02-25  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       PR gdb/26861
+       * target.c (target_mourn_inferior): Only compare pids in
+       target_mourn_inferior.
+
+2021-02-25  Jan Matyas  <jmatyas@codasip.com>
+
+       PR gdb/26819
+       * remote.c (remote_target::start_remote): Ensure the single
+       thread, automatically added for remote targets without the
+       concept of threading, is initially in set to the "resumed"
+       state.
+       * remote.c (remote_target::add_current_inferior_and_thread):
+       Add return value - return the main thread.
+
+2021-02-25  Jan Vrany  <jan.vrany@labware.com>
+
+       * gdb/mi/mi-interp.c (mi_traceframe_changed): Remove trailing \n from output.
+       (mi_tsv_created): Likewise.
+       (mi_tsv_deleted): Likewise.
+
+2021-02-25  Tom de Vries  <tdevries@suse.de>
+
+       PR symtab/27354
+       * dwarf2/read.c (open_and_init_dwo_file): Use rcuh_kind::COMPILE as
+       section_kind for &dwo_file->sections.info.
+
+2021-02-25  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       PR fortran/26155
+       * f-lang.c (fortran_argument_convert): Delete declaration.
+       (fortran_prepare_argument): New function.
+       (evaluate_subexp_f): Move logic to new function
+       fortran_prepare_argument.
+
+2021-02-25  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * f-exp.y (f77_keywords): Add 'associated'.
+       * f-lang.c (fortran_associated): New function.
+       (evaluate_subexp_f): Handle FORTRAN_ASSOCIATED.
+       (operator_length_f): Likewise.
+       (print_unop_or_binop_subexp_f): New function.
+       (print_subexp_f): Make use of print_unop_or_binop_subexp_f for
+       FORTRAN_ASSOCIATED, FORTRAN_LBOUND, and FORTRAN_UBOUND.
+       (dump_subexp_body_f): Handle FORTRAN_ASSOCIATED.
+       (operator_check_f): Likewise.
+       * std-operator.def: Add FORTRAN_ASSOCIATED.
+
+2021-02-25  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * f-exp.y (fortran_operators): Add ".xor.".
+
+2021-02-24  Tom de Vries  <tdevries@suse.de>
+
+       PR symtab/27336
+       * dwarf2/attribute.c (attribute::form_is_signed): New function
+       factored out of ...
+       * dwarf2/attribute.h (attribute::as_signed): ... here.
+       (attribute::is_nonnegative, attribute::as_nonnegative): New function.
+       (attribute::form_is_signed): Declare.
+       * dwarf2/read.c (new_symbol): Use is_nonnegative and as_nonnegative
+       for DW_AT_decl_file.
+
+2021-02-24  Kevin Buettner  <kevinb@redhat.com>
+
+       * nat/aarch64-linux-hw-point.c: Add comment regarding include
+       order for <sys/ptrace.h> and <asm/ptrace.h>.
+
+2021-02-24  Kevin Buettner  <kevinb@redhat.com>
+
+       * nat/aarch64-linux-hw-point.c: Include <asm/ptrace.h> after
+       <sys/ptrace.h>.
+
+2021-02-24  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * exec.c (set_section_command): Move variable declarations into
+       the function body, and use std::string instead of a fixed size
+       buffer.
+
+2021-02-24  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * exec.c (exec_target::get_section_table): Delete member function.
+       (section_table_read_available_memory): Use current_top_target, not
+       just the exec_ops target.
+       * target-delegates.c: Regenerate.
+       * target.c (default_get_section_table): New function.
+       * target.h (target_ops::get_section_table): Change default
+       behaviour to call default_get_section_table.
+       (default_get_section_table): Declare.
+
+2021-02-24  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * exec.c (exec_target::close): Call new clear_target_sections
+       function.
+       (program_space::add_target_sections): Update name of member
+       variable.
+       (program_space::add_target_sections): Update name of member
+       variable.
+       (program_space::remove_target_sections): Likewise.
+       (exec_one_fork): Use new target_sections member function.
+       (exec_target::get_section_table): Likewise.
+       (exec_target::files_info): Likewise.
+       (set_section_command): Likewise.
+       (exec_set_section_address): Likewise.
+       (exec_target::has_memory): Use new target_sections member
+       function.
+       * progspace.h (program_space::clear_target_sections): New member
+       function.
+       (program_space::target_sections): Rename member variable to
+       m_target_sections, replace with a new member function.
+       (program_space::m_target_sections): New member variable.
+       * solib-dsbt.c (scan_dyntag): Use new member function.
+       * solib-svr4.c (scan_dyntag): Likewise.
+
+2021-02-24  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * gdb/bfd-target.c (class target_bfd) <get_section_table>: Make
+       return type const.
+       * gdb/exec.c (struct exec_target) <get_section_table>: Likewise.
+       (section_table_read_available_memory): Make local const.
+       (exec_target::xfer_partial): Make local const.
+       (print_section_info): Make parameter const.
+       * gdb/exec.h (print_section_info): Likewise.
+       * gdb/ppc64-tdep.c (ppc64_convert_from_func_ptr_addr): Make local
+       const.
+       * gdb/record-btrace.c (record_btrace_target::xfer_partial):
+       Likewise.
+       * gdb/remote.c (remote_target::remote_xfer_live_readonly_partial):
+       Likewise.
+       * gdb/s390-tdep.c (s390_load): Likewise.
+       * gdb/solib-dsbt.c (scan_dyntag): Likewise.
+       * gdb/solib-svr4.c (scan_dyntag): Likewise.
+       * gdb/target-debug.h (target_debug_print_target_section_table_p):
+       Rename to...
+       (target_debug_print_const_target_section_table_p): ...this.
+       * gdb/target-delegates.c: Regenerate.
+       * gdb/target.c (target_get_section_table): Make return type const.
+       (target_section_by_addr): Likewise.  Also make some locals const.
+       (memory_xfer_partial_1): Make some locals const.
+       * gdb/target.h (struct target_ops) <get_section_table>: Make
+       return type const.
+       (target_section_by_addr): Likewise.
+       (target_get_section_table): Likewise.
+
+2021-02-24  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * NEWS: Mention new 'maint info target-sections' command.
+       * maint.c (maintenance_info_target_sections): New function.
+       (_initialize_maint_cmds): Register new command.
+
+2021-02-24  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * riscv-tdep.c (riscv_features_from_gdbarch_info): Rename to...
+       (riscv_features_from_bfd): ...this.  Change parameter type to
+       'bfd*', and update as required.
+       (riscv_find_default_target_description): Update call to
+       riscv_features_from_bfd.  Select a default xlen based on
+       info.bfd_arch_info.
+       (riscv_gdbarch_init): Update call to riscv_features_from_bfd.
+
+2021-02-24  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * eval.c (evaluate_subexp_standard): Call value_ind for points to
+       dynamic types in UNOP_IND.
+
+2021-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       PR gdb/26828
+       * dwarf2/read.c (dwarf2_queue_guard) <dwarf2_queue_guard>:
+       Instantiate queue.
+       (~dwarf2_queue_guard): Clear queue.
+       (queue_comp_unit): Assert that queue is
+       instantiated.
+       (process_queue): Adjust.
+       * dwarf2/read.h (struct dwarf2_per_bfd) <queue>: Make optional.
+
+2021-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       PR gdb/26828
+       * dwarf2/read.c (maybe_queue_comp_unit): Check if CU is expanded
+       to decide whether or not to enqueue it for expansion.
+       (follow_die_offset, follow_die_sig_1): Ensure we load the DIEs
+       after calling maybe_queue_comp_unit.
+
+2021-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * linux-nat.c (linux_nat_filter_event): Return void.
+
+2021-02-22  Tom Tromey  <tromey@adacore.com>
+
+       * solib-svr4.c (enable_break): Update.
+       * bfd-target.c (class target_bfd) <target_bfd>: Change parameter
+       type.
+       (target_bfd_reopen): Change parameter type.
+       * bfd-target.h (target_bfd_reopen): Change parameter type.
+
+2021-02-22  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * thread.c (add_thread_silent): Add assert.
+       (find_thread_ptid): Add assert.
+
+2021-02-22  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       PR gdb/27435
+       * inf-ptrace.c (struct target_unpusher): Move to target.h.
+       (target_unpush_up): Likewise.
+       * procfs.c (procfs_target::attach): Push target early.  Use
+       target_unpush_up to unpush target in case of error.
+       * target.h (struct target_unpusher): Move here.
+       (target_unpush_up): Likewise.
+
+2021-02-19  Kevin Buettner  <kevinb@redhat.com>
+
+       * nat/amd64-linux-siginfo.c: Include "gdbsupport/common-defs.h"
+       (which in turn includes <gnulib/config.h>) before include
+       of <signal.h>.
+
+2021-02-19  Nelson Chu  <nelson.chu@sifive.com>
+
+       PR 27158
+       * riscv-tdep.c (decode_ci_type_insn): Updated encoding macros.
+       (decode_j_type_insn): Likewise.
+       (decode_cj_type_insn): Likewise.
+       (decode_b_type_insn): Likewise.
+       (decode): Likewise.
+
+2021-02-18  Tom Tromey  <tom@tromey.com>
+
+       * expression.h (struct expression) <evaluate>: Declare method.
+       * eval.c (evaluate_subexp): Simplify.
+       (expression::evaluate): New method.
+       (evaluate_expression, evaluate_type): Use expression::evaluate.
+
+2021-02-17  Kevin Buettner  <kevinb@redhat.com>
+
+       * ada-lang.c (ada_fold_name): Check for non-empty string prior
+       to accessing it.
+       (ada_lookup_name_info): Likewise.
+
+2021-02-13  Mike Frysinger  <vapier@gentoo.org>
+
+       * aclocal.m4: Regenerate.
+
+2021-02-12  Tom de Vries  <tdevries@suse.de>
+
+       PR threads/26228
+       * linux-nat.c (lin_thread_get_thread_signals): Remove.
+       (lin_thread_signals): New static var.
+       (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
+       New function.
+       * linux-nat.h (lin_thread_get_thread_signals): Remove.
+       (lin_thread_get_thread_signal_num, lin_thread_get_thread_signal):
+       Declare.
+       * linux-thread-db.c (check_thread_signals): Use
+       lin_thread_get_thread_signal_num and lin_thread_get_thread_signal.
+
+2021-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * f-exp.y (f77_keywords): Add allocated.
+       * f-lang.c (evaluate_subexp_f): Handle UNOP_FORTRAN_ALLOCATED.
+       (operator_length_f): Likewise.
+       (print_subexp_f): Likewise.
+       (dump_subexp_body_f): Likewise.
+       (operator_check_f): Likewise.
+       * std-operator.def (UNOP_FORTRAN_ALLOCATED): New operator.
+
+2021-02-11  Tom de Vries  <tdevries@suse.de>
+
+       PR symtab/27353
+       * dwarf2/attribute.c (attribute::form_requires_reprocessing):
+       Return true for DW_FORM_strx.
+
+2021-02-11  Tom Tromey  <tromey@adacore.com>
+
+       PR gdb/27383:
+       * parse.c (write_exp_symbol_reference): Write sym.block.
+
+2021-02-11  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * NEWS: Mention changes to 'maint info sections'.
+       * maint.c (match_substring): Return a bool, fix whitespace issue.
+       (struct single_bfd_flag_info): New struct.
+       (bfd_flag_info): New static global.
+       (match_bfd_flags): Return a bool, use bfd_flag_info.
+       (print_bfd_flags): Use bfd_flag_info.
+       (maint_print_section_info): Delete trailing whitespace.
+       (struct maint_info_sections_opts): New struct.
+       (maint_info_sections_option_defs): New static global.
+       (maint_info_sections_completer): New function.
+       (maintenance_info_sections): Use option parsing mechanism.
+       (_initialize_maint_cmds): Update command help text for 'maint info
+       sections' and register a command completer.
+
+2021-02-11  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * maint.c (print_bfd_section_info_maybe_relocated): Delete,
+       functionality merged into...
+       (maint_print_all_sections): ...this new function.
+       (maintenance_info_sections): Make use of maint_print_all_sections,
+       allow all objects to be printed even where there's no executable.
+
+2021-02-11  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * breakpoint.c (resolve_sal_pc): Make use of
+       bound_minimal_symbol::obj_section.
+       * maint.c (maintenance_translate_address): Likewise.
+       * minsyms.c (minimal_symbol_upper_bound): Likewise.
+       * minsyms.h (struct bound_minimal_symbol) <obj_section>: New
+       member function.
+       * printcmd.c (info_address_command): Make use of
+       bound_minimal_symbol::obj_section.
+
+2021-02-11  Alan Modra  <amodra@gmail.com>
+
+       * arm-symbian-tdep.c: Delete.
+       * NEWS: Mention arm-symbian removal.
+       * Makefile.in: Remove arm-symbian-tdep entries.
+       * configure.tgt: Remove arm*-*-symbianelf*.
+       * doc/gdb.texinfo: Remove mention of SymbianOS.
+       * osabi.c (gdb_osabi_names): Remove "Symbian".
+       * osabi.h (enum gdb_osabi): Remove GDB_OSABI_SYMBIAN.
+       * testsuite/gdb.base/ending-run.exp: Remove E32Main handling.
+       * testsuite/gdb.ada/catch_ex_std.exp: Remove arm*-*-symbianelf*
+       handling.
+       * testsuite/gdb.base/dup-sect.exp: Likewise.
+       * testsuite/gdb.base/long_long.exp: Likewise.
+       * testsuite/gdb.base/solib-weak.exp: Likewise.
+       * testsuite/gdb.guile/scm-section-script.exp: Likewise.
+       * testsuite/gdb.python/py-section-script.exp: Likewise.
+       * testsuite/lib/dwarf.exp: Likewise.
+       * testsuite/lib/gdb.exp: Likewise.
+
+2021-02-10  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * f-exp.y (UNOP_OR_BINOP_INTRINSIC): New token.
+       (exp): New pattern using UNOP_OR_BINOP_INTRINSIC.
+       (one_or_two_args): New pattern.
+       (f77_keywords): Add lbound and ubound.
+       * f-lang.c (fortran_bounds_all_dims): New function.
+       (fortran_bounds_for_dimension): New function.
+       (evaluate_subexp_f): Handle FORTRAN_LBOUND and FORTRAN_UBOUND.
+       (operator_length_f): Likewise.
+       (print_subexp_f): Likewise.
+       (dump_subexp_body_f): Likewise.
+       (operator_check_f): Likewise.
+       * std-operator.def (FORTRAN_LBOUND): Define.
+       (FORTRAN_UBOUND): Define.
+
+2021-02-10  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * coff-pe-read.c (add_pe_forwarded_sym): Make use of section_index
+       and set_section_index member functions where appropriate.
+       * coffread.c (coff_symtab_read): Likewise.
+       (process_coff_symbol): Likewise.
+       * ctfread.c (set_symbol_address): Likewise.
+       * dwarf2/read.c (add_partial_symbol): Likewise.
+       (var_decode_location): Likewise.
+       * language.c: Likewise.
+       * minsyms.c (minimal_symbol_reader::record_full): Likewise.
+       (compact_minimal_symbols): Likewise.
+       (minimal_symbol_upper_bound): Likewise.
+       * objfiles.c (relocate_one_symbol): Likewise.
+       * psympriv.h (partial_symbol::obj_section): Likewise.
+       (partial_symbol::address): Likewise.
+       * psymtab.c (partial_symtab::add_psymbol): Likewise.
+       * stabsread.c (scan_file_globals): Likewise.
+       * symmisc.c (dump_msymbols): Likewise.
+       * symtab.c (general_symbol_info::obj_section): Likewise.
+       (fixup_section): Likewise.
+       (get_msymbol_address): Likewise.
+       * symtab.h (general_symbol_info::section): Rename to...
+       (general_symbol_info::m_section): ...this.
+       (general_symbol_info::set_section_index): New member function.
+       (general_symbol_info::section_index): Likewise.
+       (SYMBOL_SECTION): Delete.
+       (MSYMBOL_VALUE_ADDRESS): Make use of section_index and
+       set_section_index member functions where appropriate.
+       (MSYMBOL_SECTION): Delete.
+       (symbol::symbol): Update to initialize 'm_section'.
+       * xcoffread.c (read_xcoff_symtab): Make use of set_section_index.
+       (process_xcoff_symbol): Likewise.
+
+2021-02-10  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * breakpoint.c (resolve_sal_pc): Replace SYMBOL_OBJ_SECTION and
+       MSYMBOL_OBJ_SECTION.
+       * findvar.c (language_defn::read_var_value): Likewise.
+       * infcmd.c (jump_command): Likewise.
+       * linespec.c (minsym_found): Likewise.
+       * maint.c (maintenance_translate_address): Likewise.
+       * minsyms.c (lookup_minimal_symbol_by_pc_section): Likewise.
+       (minimal_symbol_upper_bound): Likewise.
+       * parse.c (find_minsym_type_and_address): Likewise.
+       (operator_check_standard): Likewise.
+       * printcmd.c (info_address_command): Likewise.
+       * symmisc.c (dump_msymbols): Likewise.
+       (print_symbol): Likewise.
+       * symtab.c (general_symbol_info::obj_section): Define new
+       function.
+       (fixup_symbol_section): Replace SYMBOL_OBJ_SECTION.
+       (find_pc_sect_compunit_symtab): Likewise.
+       (find_function_start_sal): Likewise.
+       (skip_prologue_sal): Replace SYMBOL_OBJ_SECTION and
+       MSYMBOL_OBJ_SECTION.
+       * symtab.h (struct general_symbol_info) <obj_section>: Declare new
+       function.
+       (SYMBOL_OBJ_SECTION): Delete.
+       (MSYMBOL_OBJ_SECTION): Delete.
+
+2021-02-09  Tom Tromey  <tom@tromey.com>
+
+       * stap-probe.c (stap_parse_argument_conditionally): Fix typo.
+
+2021-02-09  Tom de Vries  <tdevries@suse.de>
+
+       PR symtab/27341
+       * dwarf2/read.c (read_array_type): Return NULL when not being able to
+       construct an array type.  Add assert to ensure that element_type is
+       not being modified.
+
+2021-02-09  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * gcore.c (struct gcore_collect_regset_section_cb_data): Delete.
+       (gcore_collect_regset_section_cb): Delete.
+       (gcore_collect_thread_registers): Delete.
+       (gcore_build_thread_register_notes): Delete.
+       (gcore_find_signalled_thread): Delete.
+       * gcore.h: Remove 'gdbsupport/gdb_signals.h' include and delete
+       'gdbarch' and 'thread_info' declarations.
+       (gcore_build_thread_register_notes): Delete declaration.
+       (gcore_find_signalled_thread): Likewise.
+       * fbsd-tdep.c: Remove 'gcore.h' include.
+       (struct fbsd_collect_regset_section_cb_data): New struct.
+       (fbsd_collect_regset_section_cb): New function.
+       (fbsd_collect_thread_registers): New function.
+       (struct fbsd_corefile_thread_data): New struct.
+       (fbsd_corefile_thread): New function.
+       (fbsd_make_corefile_notes): Call FreeBSD specific code.
+       * linux-tdep.c: Remove 'gcore.h' include.
+       (struct linux_collect_regset_section_cb_data): New struct.
+       (linux_collect_regset_section_cb): New function.
+       (linux_collect_thread_registers): New function.
+       (linux_corefile_thread): Call Linux specific code.
+       (find_signalled_thread): New function.
+       (linux_make_corefile_notes): Call find_signalled_thread.
+
+2021-02-09  Tom Tromey  <tromey@adacore.com>
+
+       * ada-lang.c (coerce_unspec_val_to_type): Avoid making lazy
+       not_lval value.
+       * value.c (value_contents_copy_raw): Now static.
+       * value.h (value_contents_copy_raw): Don't declare.
+
+2021-02-09  Tom Tromey  <tromey@adacore.com>
+
+       * gdbtypes.c (resolve_dynamic_struct): Handle structure with no
+       fields.
+
 2021-02-08  Shahab Vahedi  <shahab@synopsys.com>
 
        PR tdep/27369