+2018-01-11 Pedro Alves <palves@redhat.com>
+
+ PR remote/22597
+ * remote.c (remote_parse_stop_reply): Default to the last-set
+ general thread instead of to 'magic_null_ptid'.
+
+2018-01-10 Pedro Alves <palves@redhat.com>
+
+ * language.h (language_get_symbol_name_matcher): Rename ...
+ (get_symbol_name_matcher): ... this.
+ * language.c (language_get_symbol_name_matcher): Ditto.
+ * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
+ callers adjusted.
+
+2018-01-10 Pedro Alves <palves@redhat.com>
+
+ PR gdb/22670
+ * dwarf2read.c
+ (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
+ Adjust to use language_get_symbol_name_matcher instead of
+ language_defn::la_get_symbol_name_matcher.
+ * language.c (language_get_symbol_name_matcher): If in Ada mode
+ and the lookup name is a verbatim match, return Ada's matcher.
+ * language.h (language_get_symbol_name_matcher): Adjust comment.
+ (ada_lookup_name_info::verbatim_p):: New method.
+
+2018-01-10 Pedro Alves <palves@redhat.com>
+
+ PR gdb/22670
+ * ada-lang.c (ada_collect_symbol_completion_matches): If the
+ minsym's language is language_auto or language_cplus, pass down
+ language_ada instead.
+ * symtab.c (compare_symbol_name): Don't frob symbol language here.
+
+2018-01-10 Pedro Alves <palves@redhat.com>
+
+ PR gdb/22670
+ * minsyms.c (linkage_name_str): New function.
+ (iterate_over_minimal_symbols): Use it.
+
+2018-01-09 John Baldwin <jhb@FreeBSD.org>
+
+ * NEWS: Document that 'info proc' now works on FreeBSD.
+
+2018-01-09 John Baldwin <jhb@FreeBSD.org>
+
+ * configure.ac: Check for kinfo_getfile in libutil.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * fbsd-nat.c: Include "fbsd-tdep.h".
+ (fbsd_fetch_cmdline): New.
+ (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
+ rather than calling error.
+ (fbsd_info_proc): New.
+ (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
+ (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
+ (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
+
+2018-01-09 John Baldwin <jhb@FreeBSD.org>
+
+ * fbsd-nat.c (struct free_deleter): Remove.
+ (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
+
+2018-01-09 John Baldwin <jhb@FreeBSD.org>
+
+ * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
+ NULL for an empty pathname.
+
+2018-01-09 John Baldwin <jhb@FreeBSD.org>
+
+ * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
+ (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
+ (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
+ (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
+ (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
+ (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
+ (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
+ (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
+ (kinfo_proc_layout_32, kinfo_proc_layout_i386)
+ (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
+ (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
+ (fbsd_core_fetch_timeval, fbsd_print_sigset)
+ (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
+ (fbsd_init_abi): Install gdbarch "core_info_proc" method.
+ * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
+
+2018-01-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
+ (gnu_xfer_auxv): New function.
+ (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
+ TARGET_OBJECT_AUXV.
+
+2018-01-08 Yao Qi <yao.qi@linaro.org>
+ Simon Marchi <simon.marchi@ericsson.com>
+
+ * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
+ common/selftest.c.
+ (COMMON_OBS): Remove selftest.o.
+ * configure.ac: Append selftest-arch.c and common/selftest.c to
+ CONFIG_SRCS. Append selftest-arch.o and selftest.o to COMMON_OBS.
+ * configure: Re-generated.
+ * maint.c (maintenance_selftest): Wrap selftests::run_tests with
+ GDB_SELF_TEST.
+ (maintenance_info_selftests): Likewise.
+
+2018-01-08 Xavier Roirand <roirand@adacore.com>
+
+ * ada-valprint.c (val_print_packed_array_elements): Use
+ proper number of elements when printing an array indexed
+ by an enumeration type.
+
+2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
+ (dw2_get_file_names_reader): Adjust.
+ (lookup_dwo_signatured_type): Adjust.
+ (lookup_dwp_signatured_type): Adjust.
+ (lookup_signatured_type): Adjust.
+ (create_type_unit_group): Adjust.
+ (get_type_unit_group): Adjust.
+ (process_psymtab_comp_unit_reader): Adjust.
+ (build_type_psymtabs_reader): Adjust.
+ (scan_partial_symbols): Adjust.
+ (add_partial_symbol): Adjust.
+ (add_partial_subprogram): Adjust.
+ (peek_die_abbrev): Adjust.
+ (fixup_go_packaging): Adjust.
+ (process_imported_unit_die): Adjust.
+ (dwarf2_compute_name): Adjust.
+ (dwarf2_physname): Adjust.
+ (read_import_statement): Adjust.
+ (handle_DW_AT_stmt_list): Adjust.
+ (read_file_scope): Adjust.
+ (read_func_scope): Adjust.
+ (read_lexical_block_scope): Adjust.
+ (read_call_site_scope): Adjust.
+ (read_variable): Adjust.
+ (dwarf2_rnglists_process): Adjust.
+ (dwarf2_ranges_process): Adjust.
+ (dwarf2_ranges_read): Adjust.
+ (dwarf2_get_pc_bounds): Adjust.
+ (dwarf2_record_block_ranges): Adjust.
+ (dwarf2_add_field): Adjust.
+ (dwarf2_add_member_fn): Adjust.
+ (read_structure_type): Adjust.
+ (process_structure_scope): Adjust.
+ (read_enumeration_type): Adjust.
+ (read_array_type): Adjust.
+ (mark_common_block_symbol_computed): Adjust.
+ (read_common_block): Adjust.
+ (read_namespace_type): Adjust.
+ (read_namespace): Adjust.
+ (read_module_type): Adjust.
+ (read_tag_pointer_type): Adjust.
+ (read_tag_ptr_to_member_type): Adjust.
+ (read_tag_string_type): Adjust.
+ (read_subroutine_type): Adjust.
+ (read_typedef): Adjust.
+ (read_base_type): Adjust.
+ (attr_to_dynamic_prop): Adjust.
+ (read_subrange_type): Adjust.
+ (read_unspecified_type): Adjust.
+ (dwarf2_read_abbrevs): Adjust.
+ (load_partial_dies): Adjust.
+ (read_partial_die): Adjust.
+ (find_partial_die): Adjust.
+ (guess_partial_die_structure_name): Adjust.
+ (fixup_partial_die): Adjust.
+ (read_attribute_value): Adjust.
+ (read_addr_index): Adjust.
+ (read_addr_index_from_leb128): Adjust.
+ (read_str_index): Adjust.
+ (dwarf2_string_attr): Adjust.
+ (get_debug_line_section): Adjust.
+ (dwarf_decode_line_header): Adjust.
+ (lnp_state_machine::check_line_address): Adjust.
+ (dwarf_decode_lines_1): Adjust.
+ (dwarf_decode_lines): Adjust.
+ (dwarf2_start_symtab): Adjust.
+ (var_decode_location): Adjust.
+ (new_symbol_full): Adjust.
+ (dwarf2_const_value_data): Adjust.
+ (dwarf2_const_value_attr): Adjust.
+ (dwarf2_const_value): Adjust.
+ (die_type): Adjust.
+ (die_containing_type): Adjust.
+ (build_error_marker_type): Adjust.
+ (lookup_die_type): Adjust.
+ (guess_full_die_structure_name): Adjust.
+ (anonymous_struct_prefix): Adjust.
+ (determine_prefix): Adjust.
+ (dwarf2_name): Adjust.
+ (follow_die_ref_or_sig): Adjust.
+ (follow_die_offset): Adjust.
+ (follow_die_ref): Adjust.
+ (follow_die_sig_1): Adjust.
+ (follow_die_sig): Adjust.
+ (get_signatured_type): Adjust.
+ (get_DW_AT_signature_type): Adjust.
+ (decode_locdesc): Adjust.
+ (dwarf_decode_macros): Adjust.
+ (cu_debug_loc_section): Adjust.
+ (fill_in_loclist_baton): Adjust.
+ (dwarf2_symbol_mark_computed): Adjust.
+ (init_one_comp_unit): Don't assign
+ dwarf2_cu::dwarf2_per_objfile.
+ (set_die_type): Adjust.
+
+2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
+
+ * dwarf2read.c (struct mapped_debug_names): Add constructor.
+ <dwarf2_per_objfile>: New field.
+ (dwarf2_per_objfile): Remove global.
+ (get_dwarf2_per_objfile): New function.
+ (set_dwarf2_per_objfile): New function.
+ (dwarf2_build_psymtabs_hard): Change objfile parameter to
+ dwarf2_per_objfile.
+ (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
+ (read_abbrev_offset): Likewise.
+ (read_indirect_string): Likewise.
+ (read_indirect_line_string): Likewise.
+ (read_indirect_string_at_offset): Likewise.
+ (read_indirect_string_from_dwz): Likewise.
+ (dwarf2_find_containing_comp_unit): Change objfile parameter to
+ dwarf2_per_objfile.
+ (age_cached_comp_units): Add dwarf2_per_objfile parameter.
+ (create_all_comp_units): Change objfile parameter to
+ dwarf2_per_objfile.
+ (create_all_type_units): Likewise.
+ (process_queue): Add dwarf2_per_objfile parameter.
+ (read_and_check_comp_unit_head): Likewise.
+ (lookup_dwo_unit_in_dwp): Likewise.
+ (get_dwp_file): Likewise.
+ (process_cu_includes): Likewise.
+ (struct free_dwo_file_cleanup_data): New struct.
+ (dwarf2_has_info): Use get_dwarf2_per_objfile and
+ set_dwarf2_per_objfile.
+ (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
+ (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
+ context, adjust calls.
+ (dw2_instantiate_symtab): Likewise.
+ (dw2_get_cutu): Add dwarf2_per_objfile parameter.
+ (dw2_get_cu): Likewise.
+ (create_cu_from_index_list): Change objfile parameter to
+ dwarf2_per_objfile.
+ (create_cus_from_index_list): Get dwarf2_per_objfile from
+ context, adjust calls.
+ (create_cus_from_index): Likewise.
+ (create_signatured_type_table_from_index): Change objfile
+ parameter to dwarf2_per_objfile.
+ (create_signatured_type_table_from_debug_names): Change objfile
+ parameter to dwarf2_per_objfile.
+ (create_addrmap_from_index): Likewise.
+ (create_addrmap_from_aranges): Likewise.
+ (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
+ (dw2_setup): Remove.
+ (dw2_get_file_names_reader): Get dwarf2_per_objfile from
+ context.
+ (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
+ get_dwarf2_per_objfile.
+ (dw2_forget_cached_source_info): Likewise.
+ (dw2_map_symtabs_matching_filename): Likewise.
+ (struct dw2_symtab_iterator) <index>: Remove.
+ <dwarf2_per_objfile>: New field.
+ (dw2_symtab_iter_init): Replace index parameter with
+ dwarf2_per_objfile.
+ (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
+ (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
+ (dw2_print_stats): Likewise.
+ (dw2_dump): Likewise.
+ (dw2_expand_symtabs_for_function): Likewise.
+ (dw2_expand_all_symtabs): Likewise.
+ (dw2_expand_symtabs_with_fullname): Likewise.
+ (dw2_expand_marked_cus): Replace index and objfile parameters
+ with dwarf2_per_objfile.
+ (dw_expand_symtabs_matching_file_matcher): Add
+ dwarf2_per_objfile parameter and adjust calls.
+ (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
+ adjust calls.
+ (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
+ (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
+ adjust calls.
+ (create_cus_from_debug_names_list): Replace objfile parameter
+ with dwarf2_per_objfile and adjust calls.
+ (create_cus_from_debug_names): Likewise.
+ (dwarf2_read_debug_names): Likewise.
+ (mapped_debug_names::namei_to_name): Adjust call.
+ (dw2_debug_names_iterator::next): Likewise.
+ (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
+ (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
+ (dw2_debug_names_dump): Likewise.
+ (dw2_debug_names_expand_symtabs_for_function): Likewise.
+ (dw2_debug_names_expand_symtabs_matching): Likewise.
+ (dwarf2_initialize_objfile): Likewise.
+ (dwarf2_build_psymtabs): Likewise.
+ (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
+ this_cu.
+ (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
+ (read_and_check_comp_unit_head): Likewise.
+ (read_abbrev_offset): Likewise.
+ (create_debug_type_hash_table): Likewise.
+ (create_debug_types_hash_table): Likewise.
+ (create_all_type_units): Replace objfile parameter with
+ dwarf2_per_objfile.
+ (add_type_unit): Add dwarf2_per_objfile parameter.
+ (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
+ with dwarf2_per_objfile.
+ (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
+ (lookup_dwp_signatured_type): Likewise.
+ (lookup_signatured_type): Likewise.
+ (read_cutu_die_from_dwo): Likewise.
+ (init_tu_and_read_dwo_dies): Likewise.
+ (init_cutu_and_read_dies): Likewise.
+ (init_cutu_and_read_dies_no_follow): Likewise.
+ (allocate_type_unit_groups_table): Add objfile parameter.
+ (create_type_unit_group): Use dwarf2_per_objfile from cu.
+ (get_type_unit_group): Likewise.
+ (process_psymtab_comp_unit): Update call.
+ (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
+ (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
+ (print_tu_stats): Likewise.
+ (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
+ in void* parameter.
+ (build_type_psymtabs): Change objfile parameter to
+ dwarf2_per_objfile.
+ (process_skeletonless_type_unit): Use dwarf2_per_objfile
+ passed in void* parameter.
+ (process_skeletonless_type_units): Change objfile parameter to
+ dwarf2_per_objfile.
+ (set_partial_user): Likewise.
+ (dwarf2_build_psymtabs_hard): Likewise.
+ (read_comp_units_from_section): Likewise.
+ (create_all_comp_units): Likewise.
+ (scan_partial_symbols): Update calls.
+ (add_partial_symbol): Likewise.
+ (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
+ (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
+ (process_queue): Add dwarf2_per_objfile parameter.
+ (get_compunit_symtab): Use dwarf2_per_objfile from cu.
+ (compute_compunit_symtab_includes): Likewise.
+ (process_cu_includes): Add dwarf2_per_objfile parameter.
+ (process_full_comp_unit): Use dwarf2_per_objfile from cu.
+ (process_full_type_unit): Likewise.
+ (process_imported_unit_die): Update call.
+ (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
+ (read_file_scope): Likewise.
+ (allocate_dwo_file_hash_table): Add objfile parameter.
+ (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
+ (create_cus_hash_table): Likewise.
+ (create_dwp_hash_table): Likewise.
+ (create_dwo_unit_in_dwp_v1): Likewise.
+ (create_dwp_v2_section): Likewise.
+ (create_dwo_unit_in_dwp_v2): Likewise.
+ (lookup_dwo_unit_in_dwp): Likewise.
+ (try_open_dwop_file): Likewise.
+ (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
+ (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
+ cleanup to include a reference to dwarf2_per_objfile.
+ (open_dwp_file): Add dwarf2_per_objfile parameter.
+ (open_and_init_dwp_file): Likewise.
+ (get_dwp_file): Likewise.
+ (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
+ (queue_and_load_all_dwo_tus): Update call.
+ (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
+ data.
+ (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
+ (dwarf2_ranges_process): Likewise.
+ (dwarf2_get_pc_bounds): Likewise.
+ (mark_common_block_symbol_computed): Likewise.
+ (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
+ (dwarf2_read_abbrevs): Update call.
+ (read_partial_die): Use dwarf2_per_objfile from cu.
+ (find_partial_die): Likewise.
+ (fixup_partial_die): Likewise.
+ (read_attribute_value): Likewise.
+ (read_indirect_string_at_offset_from): Add objfile parameter.
+ (read_indirect_string_at_offset): Add dwarf2_per_objfile
+ parameter.
+ (read_indirect_string_from_dwz): Add objfile parameter.
+ (read_indirect_string): Add objfile parameter.
+ (read_addr_index_1): Add dwarf2_per_objfile parameter.
+ (read_addr_index): Use dwarf2_per_objfile from cu.
+ (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
+ call dw2_setup.
+ (read_str_index): Use dwarf2_per_objfile from cu.
+ (get_debug_line_section): Likewise.
+ (read_formatted_entries): Add dwarf2_per_objfile parameter.
+ (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
+ (new_symbol_full): Use dwarf2_per_objfile from cu.
+ (build_error_marker_type): Likewise.
+ (lookup_die_type): Likewise.
+ (determine_prefix): Likewise.
+ (follow_die_offset): Likewise.
+ (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
+ (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
+ (dwarf2_fetch_die_type_sect_off): Likewise.
+ (dwarf2_get_die_type): Likewise.
+ (follow_die_sig_1): Use dwarf2_per_objfile from cu.
+ (get_signatured_type): Likewise.
+ (get_DW_AT_signature_type): Likewise.
+ (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
+ (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
+ (cu_debug_loc_section): Likewise.
+ (fill_in_loclist_baton): Likewise.
+ (dwarf2_symbol_mark_computed): Likewise.
+ (dwarf2_find_containing_comp_unit): Change objfile parameter to
+ dwarf2_per_objfile.
+ (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
+ parameter.
+ (age_cached_comp_units): Add dwarf2_per_objfile parameter.
+ (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
+ (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
+ (set_die_type): Use dwarf2_free_objfile from cu.
+ (get_die_type_at_offset): Likewise.
+ (dwarf2_per_objfile_free): Don't assign global variable.
+ (debug_names) <constructor>: Add dwarf2_per_objfile
+ parameter, update m_debugstrlookup construction.
+ (debug_names::debug_str_lookup): Add dwarf2_per_objfile
+ parameter.
+ <m_dwarf2_per_objfile>: New field.
+ <lookup>: Use m_dwarf2_per_objfile.
+ (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
+ (psyms_seen_size): Likewise.
+ (write_gdbindex): Replace objfile parameter with
+ dwarf2_per_objfile.
+ (write_debug_names): Likewise.
+ (write_psymtabs_to_index): Likewise.
+ (save_gdb_index_command): Use get_dwarf2_per_objfile, update
+ calls.
+
+2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
+
+ * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
+ <dwarf2_per_objfile>: New field.
+ (struct dwarf2_per_cu_data) <objfile>: Remove.
+ <dwarf2_per_objfile>: New field.
+ (create_cu_from_index_list): Assign dwarf2_per_objfile instead
+ of objfile.
+ (create_signatured_type_table_from_index): Likewise.
+ (create_debug_type_hash_table): Likewise.
+ (fill_in_sig_entry_from_dwo_entry): Likewise.
+ (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
+ (create_type_unit_group): Assign dwarf2_per_objfile instead of
+ objfile.
+ (create_partial_symtab): Access objfile through
+ dwarf2_per_objfile.
+ (process_psymtab_comp_unit_reader): Likewise.
+ (read_comp_units_from_section): Likewise.
+ (scan_partial_symbols): Likewise.
+ (add_partial_symbol): Likewise.
+ (add_partial_subprogram): Likewise.
+ (peek_die_abbrev): Likewise.
+ (fixup_go_packaging): Likewise.
+ (process_full_comp_unit): Likewise.
+ (process_full_type_unit): Likewise.
+ (process_imported_unit_die): Likewise.
+ (dwarf2_compute_name): Likewise.
+ (dwarf2_physname): Likewise.
+ (read_import_statement): Likewise.
+ (create_cus_hash_table): Assign dwarf2_physname instead of
+ objfile.
+ (read_func_scope): Access objfile through dwarf2_per_objfile.
+ (read_lexical_block_scope): Likewise.
+ (read_call_site_scope): Likewise.
+ (read_variable): Likewise.
+ (dwarf2_rnglists_process): Likewise.
+ (dwarf2_ranges_process): Likewise.
+ (dwarf2_ranges_read): Likewise.
+ (dwarf2_record_block_ranges): Likewise.
+ (dwarf2_add_field): Likewise.
+ (dwarf2_add_member_fn): Likewise.
+ (read_structure_type): Likewise.
+ (process_structure_scope): Likewise.
+ (read_enumeration_type): Likewise.
+ (read_array_type): Likewise.
+ (read_common_block): Likewise.
+ (read_namespace_type): Likewise.
+ (read_namespace): Likewise.
+ (read_module_type): Likewise.
+ (read_tag_pointer_type): Likewise.
+ (read_tag_ptr_to_member_type): Likewise.
+ (read_tag_string_type): Likewise.
+ (read_subroutine_type): Likewise.
+ (read_typedef): Likewise.
+ (read_base_type): Likewise.
+ (attr_to_dynamic_prop): Likewise.
+ (read_subrange_type): Likewise.
+ (read_unspecified_type): Likewise.
+ (load_partial_dies): Likewise.
+ (read_partial_die): Likewise.
+ (find_partial_die): Likewise.
+ (guess_partial_die_structure_name): Likewise.
+ (fixup_partial_die): Likewise.
+ (read_attribute_value): Likewise.
+ (read_addr_index_from_leb128): Likewise.
+ (dwarf2_read_addr_index): Likewise.
+ (dwarf2_string_attr): Likewise.
+ (lnp_state_machine::check_line_address): Likewise.
+ (dwarf_decode_lines_1): Likewise.
+ (dwarf_decode_lines): Likewise.
+ (dwarf2_start_symtab): Likewise.
+ (var_decode_location): Likewise.
+ (new_symbol_full): Likewise.
+ (dwarf2_const_value_data): Likewise.
+ (dwarf2_const_value_attr): Likewise.
+ (dwarf2_const_value): Likewise.
+ (die_type): Likewise.
+ (die_containing_type): Likewise.
+ (lookup_die_type): Likewise.
+ (guess_full_die_structure_name): Likewise.
+ (anonymous_struct_prefix): Likewise.
+ (dwarf2_name): Likewise.
+ (follow_die_ref_or_sig): Likewise.
+ (follow_die_offset): Likewise.
+ (follow_die_ref): Likewise.
+ (dwarf2_fetch_die_loc_sect_off): Likewise.
+ (dwarf2_fetch_constant_bytes): Likewise.
+ (dwarf2_fetch_die_type_sect_off): Likewise.
+ (dwarf2_get_die_type): Likewise.
+ (follow_die_sig): Likewise.
+ (decode_locdesc): Likewise.
+ (dwarf2_per_cu_objfile): Likewise.
+ (dwarf2_per_cu_text_offset): Likewise.
+ (init_one_comp_unit): Assign dwarf2_per_objfile instead of
+ objfile.
+ (set_die_type): Access objfile through
+ dwarf2_per_objfile.
+
+2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
+
+ * valprint.c (converted_character_d): Remove typedef.
+ (DEF_VEC_O (converted_character_d)): Remove.
+ (count_next_character): Use std::vector.
+ (print_converted_chars_to_obstack): Likewise.
+ (generic_printstr): Likewise.
+
+2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * xml-support.h (struct gdb_xml_value): Add constructor.
+ <value>: Change type to unique_xmalloc_ptr.
+ (gdb_xml_value_s): Remove typedef.
+ (DEF_VEC_O (gdb_xml_value_s)): Remove.
+ (gdb_xml_element_start_handler): Change parameter type to
+ std::vector.
+ (xml_find_attribute): Likewise.
+ * xml-support.c (xml_find_attribute): Change parameter type to
+ std::vector and adjust.
+ (gdb_xml_values_cleanup): Remove.
+ (gdb_xml_parser::start_element): Adjust to std::vector.
+ (xinclude_start_include): Change paraeter type to std::vector
+ and adjust.
+ * btrace.c (check_xml_btrace_version): Likewise.
+ (parse_xml_btrace_block): Likewise.
+ (parse_xml_btrace_pt_config_cpu): Likewise.
+ (parse_xml_btrace_pt): Likewise.
+ (parse_xml_btrace_conf_bts): Likewise.
+ (parse_xml_btrace_conf_pt): Likewise.
+ * memory-map.c (memory_map_start_memory): Likewise.
+ (memory_map_start_property): Likewise.
+ * osdata.c (osdata_start_osdata): Likewise.
+ (osdata_start_item): Likewise.
+ (osdata_start_column): Likewise.
+ * remote.c (start_thread): Likewise.
+ * solib-aix.c (library_list_start_library): Likewise.
+ (library_list_start_list): Likewise.
+ * solib-svr4.c (library_list_start_library): Likewise.
+ (svr4_library_list_start_list): Likewise.
+ * solib-target.c (library_list_start_segment): Likewise.
+ (library_list_start_section): Likewise.
+ (library_list_start_library): Likewise.
+ (library_list_start_list): Likewise.
+ * tracepoint.c (traceframe_info_start_memory): Likewise.
+ (traceframe_info_start_tvar): Likewise.
+ * xml-syscall.c (syscall_start_syscall): Likewise.
+ * xml-tdesc.c (tdesc_start_target): Likewise.
+ (tdesc_start_feature): Likewise.
+ (tdesc_start_reg): Likewise.
+ (tdesc_start_union): Likewise.
+ (tdesc_start_struct): Likewise.
+ (tdesc_start_flags): Likewise.
+ (tdesc_start_enum): Likewise.
+ (tdesc_start_field): Likewise.
+ (tdesc_start_enum_value): Likewise.
+ (tdesc_start_vector): Likewise.
+
+2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * extension.h (struct xmethod_worker) <clone>: Remove.
+ * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
+ Remove.
+ (python_xmethod_worker::clone): Remove.
+ * valops.c (find_overload_match): Use std::move instead of
+ clone.
+
+2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
+ (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
+ <free_xmethod_worker_data>: Remove.
+ <get_matching_xmethod_workers>: Chance VEC to std::vector.
+ <get_xmethod_arg_types>: Remove.
+ <get_xmethod_result_type>: Remove.
+ <invoke_xmethod>: Remove.
+ * extension.c (new_xmethod_worker): Remove.
+ (clone_xmethod_worker): Remove.
+ (get_matching_xmethod_workers): Return void, pass std::vector by
+ pointer.
+ (get_xmethod_arg_types): Rename to...
+ (xmethod_worker::get_arg_types): ... this, and adjust.
+ (get_xmethod_result_type): Rename to...
+ (xmethod_worker::get_result_type): ... this, and adjust.
+ (invoke_xmethod): Remove.
+ (free_xmethod_worker): Remove.
+ (free_xmethod_worker_vec): Remove.
+ * extension.h (enum ext_lang_rc): Move here from
+ extension-priv.h.
+ (struct xmethod_worker): Add constructor and destructor.
+ <data>: Remove.
+ <value>: Remove.
+ <invoke, clone, do_get_result_type, do_get_arg_types>: New
+ virtual pure methods.
+ <get_arg_types, get_result_type>: New methods.
+ (xmethod_worker_ptr): Remove typedef.
+ (DEF_VEC_P (xmethod_worker_ptr)): Remove.
+ (xmethod_worker_vec): Remove typedef.
+ (xmethod_worker_up): New typedef.
+ (invoke_xmethod): Remove.
+ (clone_xmethod_worker): Remove.
+ (free_xmethod_worker): Remove.
+ (free_xmethod_worker_vec): Remove.
+ (get_xmethod_arg_types): Remove.
+ (get_xmethod_result_type): Remove.
+ * valops.c (find_method_list): Use std::vector, don't use
+ intermediate vector.
+ (value_find_oload_method_list): Use std::vector.
+ (find_overload_match): Use std::vector.
+ (find_oload_champ): Use std::vector.
+ * value.c (value_free): Use operator delete.
+ (value_of_xmethod): Rename to...
+ (value_from_xmethod): ... this. Don't assign
+ xmethod_worker::value, take rvalue-reference.
+ (result_type_of_xmethod): Adjust.
+ (call_xmethod): Adjust.
+ * value.h: Include extension.h.
+ (struct xmethod_worker): Don't forward-declare.
+ (value_of_xmethod): Rename to...
+ (value_from_xmethod): ... this, take rvalue-reference.
+ * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
+ (struct python_xmethod_worker): ... this, add constructor and
+ destructor.
+ <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
+ (gdbpy_free_xmethod_worker_data): Rename to...
+ (python_xmethod_worker::~python_xmethod_worker): ... this and
+ adjust.
+ (gdbpy_clone_xmethod_worker_data): Rename to...
+ (python_xmethod_worker::clone): ... this and adjust.
+ (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
+ temporary vector.
+ (gdbpy_get_xmethod_arg_types): Rename to...
+ (python_xmethod_worker::do_get_arg_types): ... this and adjust.
+ (gdbpy_get_xmethod_result_type): Rename to...
+ (python_xmethod_worker::do_get_result_type): ... this and
+ adjust.
+ (gdbpy_invoke_xmethod): Rename to...
+ (python_xmethod_worker::invoke): ... this and adjust.
+ (new_python_xmethod_worker): Rename to...
+ (python_xmethod_worker::python_xmethod_worker): ... this and
+ adjust.
+ * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
+ Remove.
+ (gdbpy_free_xmethod_worker_data): Remove.
+ (gdbpy_get_matching_xmethod_workers): Use std::vector.
+ (gdbpy_get_xmethod_arg_types): Remove.
+ (gdbpy_get_xmethod_result_type): Remove.
+ (gdbpy_invoke_xmethod): Remove.
+ * python/python.c (python_extension_ops): Remove obsolete
+ callbacks.
+
+2018-01-05 Pedro Alves <palves@redhat.com>
+
+ PR gdb/18653
+ * common/signals-state-save-restore.c
+ (save_original_signals_state): New parameter 'quiet'. Warn if we
+ find a custom handler preinstalled, instead of internal erroring.
+ But only warn if !quiet.
+ * common/signals-state-save-restore.h
+ (save_original_signals_state): New parameter 'quiet'.
+ * main.c (captured_main_1): Move save_original_signals_state call
+ after option handling, and pass QUIET.
+
+2018-01-05 Pedro Alves <palves@redhat.com>
+
+ * spu-tdep.c (spu_catch_start): Pass
+ symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
+
+2018-01-05 Pedro Alves <palves@redhat.com>
+
+ PR gdb/22670
+ * ada-lang.c (literal_symbol_name_matcher): New function.
+ (ada_get_symbol_name_matcher): Use it for
+ symbol_name_match_type::SEARCH_NAME.
+ * block.c (block_lookup_symbol): New parameter 'match_type'. Pass
+ it down instead of assuming symbol_name_match_type::FULL.
+ * block.h (block_lookup_symbol): New parameter 'match_type'.
+ * c-valprint.c (print_unpacked_pointer): Use
+ lookup_symbol_search_name instead of lookup_symbol.
+ * compile/compile-object-load.c (get_out_value_type): Pass down
+ symbol_name_match_type::SEARCH_NAME.
+ * cp-namespace.c (cp_basic_lookup_symbol): Pass down
+ symbol_name_match_type::FULL.
+ * cp-support.c (cp_get_symbol_name_matcher): Handle
+ symbol_name_match_type::SEARCH_NAME.
+ * infrun.c (insert_exception_resume_breakpoint): Use
+ lookup_symbol_search_name.
+ * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
+ * psymtab.c (maintenance_check_psymtabs): Use
+ symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
+ * stack.c (print_frame_args): Use lookup_symbol_search_name and
+ SYMBOL_SEARCH_NAME.
+ * symtab.c (lookup_local_symbol): Don't demangle the lookup name
+ if symbol_name_match_type::SEARCH_NAME.
+ (lookup_symbol_in_language): Pass down
+ symbol_name_match_type::FULL.
+ (lookup_symbol_search_name): New.
+ (lookup_language_this): Pass down
+ symbol_name_match_type::SEARCH_NAME.
+ (lookup_symbol_aux, lookup_local_symbol): New parameter
+ 'match_type'. Pass it down.
+ * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
+ (lookup_symbol_search_name): New declaration.
+ (lookup_symbol_in_block): New 'match_type' parameter.
+
+2018-01-05 Pedro Alves <palves@redhat.com>
+
+ PR gdb/22670
+ * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
+ ada_lookup_symbol.
+ (ada_lookup_symbol): Reimplement in terms of
+ ada_lookup_symbol_list, bits factored out from
+ ada_lookup_encoded_symbol.
+
+2018-01-05 Joel Brobecker <brobecker@adacore.com>
+
+ * ada-exp.y (write_object_renaming): When subscripting an array
+ using a symbol as the index, pass the block in call to
+ ada_lookup_encoded_symbol when looking that symbol up.
+
+2018-01-05 Jerome Guitton <guitton@adacore.com>
+
+ * ada-lang.c (ada_array_length): Use ada_index_type instead of
+ TYPE_INDEX_TYPE.
+