+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
+ Remove.
+ <n_allocated_type_units>: Remove.
+ <all_type_units>: Change to std::vector.
+ * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
+ to std::vector change.
+ (dwarf2_per_objfile::get_cutu): Likewise.
+ (dwarf2_per_objfile::get_tu): Likewise.
+ (create_signatured_type_table_from_index): Likewise.
+ (create_signatured_type_table_from_debug_names): Likewise.
+ (dw2_symtab_iter_next): Likewise.
+ (dw2_print_stats): Likewise.
+ (dw2_expand_all_symtabs): Likewise.
+ (dw2_expand_marked_cus): Likewise.
+ (dw2_debug_names_iterator::next): Likewise.
+ (dwarf2_initialize_objfile): Likewise.
+ (add_signatured_type_cu_to_table): Likewise.
+ (create_all_type_units): Likewise.
+ (add_type_unit): Likewise.
+ (struct tu_abbrev_offset): Add constructor.
+ (build_type_psymtabs_1): Adjust to std::vector change.
+ (print_tu_stats): Likewise.
+ * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
+ (write_debug_names): Likewise.
+
+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
+ Make an std::vector.
+ <n_comp_units>: Remove.
+ * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
+ to std::vector change.
+ (dwarf2_per_objfile::get_cutu): Likewise.
+ (dwarf2_per_objfile::get_cu): Likewise.
+ (create_cus_from_index): Likewise.
+ (create_addrmap_from_index): Likewise.
+ (create_addrmap_from_aranges): Likewise.
+ (dwarf2_read_index): Likewise.
+ (dw2_find_last_source_symtab): Likewise.
+ (dw2_map_symtabs_matching_filename): Likewise.
+ (dw2_symtab_iter_next): Likewise.
+ (dw2_print_stats): Likewise.
+ (dw2_expand_all_symtabs): Likewise.
+ (dw2_expand_symtabs_with_fullname): Likewise.
+ (dw2_expand_marked_cus): Likewise.
+ (dw2_map_symbol_filenames): Likewise.
+ (create_cus_from_debug_names): Likewise.
+ (dwarf2_read_debug_names): Likewise.
+ (dw2_debug_names_iterator::next): Likewise.
+ (dwarf2_initialize_objfile): Likewise.
+ (set_partial_user): Likewise.
+ (dwarf2_build_psymtabs_hard): Likewise.
+ (read_comp_units_from_section): Remove arguments, adjust to
+ std::vector change.
+ (create_all_comp_units): Adjust to std::vector and
+ read_comp_units_from_section changes.
+ (dwarf2_find_containing_comp_unit): Adjust to std::vector
+ change.
+ * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
+ (psyms_seen_size): Likewise.
+ (write_gdbindex): Likewise.
+ (write_debug_names): Likewise.
+
+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
+ with dwarf2_per_objfile.
+ (create_cus_from_index): Likewise.
+ (create_signatured_type_table_from_index): Likewise.
+ (dwarf2_read_index): Likewise.
+ (dwarf2_initialize_objfile): Likewise.
+ (dwarf2_fetch_die_loc_sect_off): Get dwarf2_per_objfile from
+ per_cu rather than get_dwarf2_per_objfile.
+
+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * dwarf2read.h (struct signatured_type): Forward declare.
+ (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
+ New methods.
+ * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
+ (dw2_get_cutu): ...this.
+ (dwarf2_per_objfile::get_cu): Rename from...
+ (dw2_get_cu): ...this.
+ (dwarf2_per_objfile::get_tu): New.
+ (create_addrmap_from_index): Adjust.
+ (create_addrmap_from_aranges): Adjust.
+ (dw2_find_last_source_symtab): Adjust.
+ (dw2_map_symtabs_matching_filename): Adjust.
+ (dw2_symtab_iter_next): Adjust.
+ (dw2_print_stats): Adjust.
+ (dw2_expand_all_symtabs): Adjust.
+ (dw2_expand_symtabs_with_fullname): Adjust.
+ (dw2_expand_marked_cus): Adjust.
+ (dw_expand_symtabs_matching_file_matcher): Adjust.
+ (dw2_map_symbol_filenames): Adjust.
+ (dw2_debug_names_iterator::next): Adjust.
+ (dwarf2_initialize_objfile): Adjust.
+ (set_partial_user): Adjust.
+ (dwarf2_build_psymtabs_hard): Adjust.
+
+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * dwarf2read.c (create_signatured_type_table_from_debug_names):
+ Remove unused variables.
+ (dw2_map_symtabs_matching_filename): Likewise.
+ (dwarf2_record_block_ranges): Likewise.
+ (dwarf2_read_addr_index): Likewise.
+ (follow_die_offset): Likewise.
+
+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
+ to symbol_file_add_main.
+
+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ PR mi/22299
+ * mi/mi-console.c (do_fputc_async_safe): New.
+ (mi_console_file::write_async_safe): New.
+ (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
+ * mi/mi-console.h (class mi_console_file) <write_async_safe>:
+ New.
+ * ui-file.c (ui_file::putstrn): Adjust call to
+ fputstrn_unfiltered.
+ * utils.c (printchar): Replace do_fputs and do_fprintf
+ parameters by do_fputc.
+ (fputstr_filtered): Adjust call to printchar.
+ (fputstr_unfiltered): Likewise.
+ (fputstrn_filtered): Likewise.
+ (fputstrn_unfiltered): Add do_fputc parameter, pass to
+ printchar.
+ * utils.h (do_fputc_ftype): New typedef.
+ (fputstrn_unfiltered): Add do_fputc parameter.
+
+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * regformats/i386/i386-avx.dat: Remove.
+
+2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
+
+ PR gdb/22979
+ * amd64-tdep.c (amd64_none_init_abi): New function.
+ (amd64_x32_none_init_abi): New function.
+ (_initialize_amd64_tdep): Register handlers for x86-64 and
+ x64_32 with GDB_OSABI_NONE.
+ * osabi.c (gdbarch_init_osabi): Allow running handlers for the
+ GDB_OSABI_NONE osabi.
+
+2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
+
+ PR gdb/22980
+ * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
+ GDB_OSABI_NONE.
+ * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
+ * osabi.c (gdb_osabi_names): Add "unknown" entry.
+
+2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
+
+ * common/byte-vector.h (char_vector): New type.
+ * target.h (target_read_alloc): Return
+ gdb::optional<byte_vector>.
+ (target_read_stralloc): Return gdb::optional<char_vector>.
+ (target_get_osdata): Return gdb::optional<char_vector>.
+ * target.c (target_read_alloc_1): Templatize. Replacement
+ manual memory management with vector.
+ (target_read_alloc): Change return type, adjust.
+ (target_read_stralloc): Change return type, adjust.
+ (target_get_osdata): Change return type, adjust.
+ * auxv.c (struct auxv_info) <length>: Remove.
+ <data>: Change type to gdb::optional<byte_vector>.
+ (auxv_inferior_data_cleanup): Free auxv_info with delete.
+ (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
+ (target_auxv_search): Adjust.
+ (fprint_target_auxv): Adjust.
+ * avr-tdep.c (avr_io_reg_read_command): Adjust.
+ * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
+ (linux_make_corefile_notes): Adjust.
+ * osdata.c (get_osdata): Adjust.
+ * remote.c (remote_get_threads_with_qxfer): Adjust.
+ (remote_memory_map): Adjust.
+ (remote_traceframe_info): Adjust.
+ (btrace_read_config): Adjust.
+ (remote_read_btrace): Adjust.
+ (remote_pid_to_exec_file): Adjust.
+ * solib-aix.c (solib_aix_get_library_list): Adjust.
+ * solib-dsbt.c (decode_loadmap): Don't free buf.
+ (dsbt_get_initial_loadmaps): Adjust.
+ * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
+ * solib-target.c (solib_target_current_sos): Adjust.
+ * tracepoint.c (sdata_make_value): Adjust.
+ * xml-support.c (xinclude_start_include): Adjust.
+ (xml_fetch_content_from_file): Adjust.
+ * xml-support.h (xml_fetch_another): Change return type.
+ (xml_fetch_content_from_file): Change return type.
+ * xml-syscall.c (xml_init_syscalls_info): Adjust.
+ * xml-tdesc.c (file_read_description_xml): Adjust.
+ (fetch_available_features_from_target): Change return type.
+ (target_fetch_description_xml): Adjust.
+ (target_read_description_xml): Adjust.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.c (~value): Update.
+ (struct value) <contents>: Now unique_xmalloc_ptr.
+ (value_contents_bits_eq, allocate_value_contents)
+ (value_contents_raw, value_contents_all_raw)
+ (value_contents_for_printing, value_contents_for_printing_const)
+ (set_value_enclosing_type): Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.c (range_s): Remove typedef, VEC.
+ (struct range): Add operator<.
+ (range_lessthan): Remove.
+ (ranges_contain): Change type.
+ (~value): Update.
+ (struct value) <unavailable, optimized_out>: Now std::vector.
+ (value_entirely_available)
+ (value_entirely_covered_by_range_vector)
+ (value_entirely_unavailable, value_entirely_optimized_out):
+ Update.
+ (insert_into_bit_range_vector): Change argument type.
+ (find_first_range_overlap): Likewise.
+ (struct ranges_and_idx, value_contents_bits_eq)
+ (require_not_optimized_out, require_available): Update.
+ (ranges_copy_adjusted): Change argument types.
+ (value_optimized_out, value_copy, value_fetch_lazy): Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.c (~value): Update.
+ (struct value) <parent>: Now a value_ref_ptr.
+ (value_parent, set_value_parent, value_address, value_copy):
+ Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.c (struct value): Add constructor, destructor, and member
+ initializers.
+ (allocate_value_lazy, value_decref): Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.c (struct value) <released, next>: Remove.
+ (all_values): Now a std::vector.
+ (allocate_value_lazy): Update.
+ (value_next): Remove.
+ (value_mark, value_free_to_mark, release_value)
+ (value_release_to_mark): Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.h (fetch_subexp_value, value_release_to_mark): Update.
+ (free_value_chain): Remove.
+ * value.c (free_value_chain): Remove.
+ (value_release_to_mark): Return a std::vector.
+ * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
+ std::vector.
+ (check_condition): Update.
+ * eval.c (fetch_subexp_value): Change "val_chain" to a
+ std::vector.
+ * breakpoint.c (update_watchpoint): Update.
+ (can_use_hardware_watchpoint): Change "vals" to a std::vector.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.h (free_all_values): Remove.
+ * value.c (free_all_values): Remove.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
+ (value_history_chain, value_history_count): Remove.
+ (value_history): New global.
+ (record_latest_value, access_value_history, show_values)
+ (preserve_values): Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
+ * varobj.c (varobj_set_display_format, varobj_set_value)
+ (install_default_visualizer, construct_visualizer)
+ (install_new_value, ~varobj, varobj_get_value_type)
+ (my_value_of_variable, varobj_editable_p): Update.
+ * c-varobj.c (c_describe_child, c_value_of_variable)
+ (cplus_number_of_children, cplus_describe_child): Update.
+ * ada-varobj.c (ada_number_of_children, ada_name_of_child)
+ (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
+ (ada_value_of_variable, ada_value_is_changeable_p): Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * printcmd.c (last_examine_address): Change type to
+ value_ref_ptr.
+ (do_examine, x_command): Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * value.c (release_value): Update.
+ * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
+ (struct bpstats) <val>: Now a value_ref_ptr.
+ * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
+ (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
+ (~watchpoint, print_it_watchpoint, watch_command_1)
+ (invalidate_bp_value_on_memory_change): Update.
+
+2018-04-06 Tom Tromey <tom@tromey.com>
+
+ * varobj.c (varobj_clear_saved_item)
+ (update_dynamic_varobj_children, install_new_value, ~varobj):
+ Update.
+ * value.h (value_incref): Move declaration earlier.
+ (value_decref): Rename from value_free.
+ (struct value_ref_policy): New.
+ (value_ref_ptr): New typedef.
+ (struct value_deleter): Remove.
+ (gdb_value_up): Remove typedef.
+ (release_value): Change return type.
+ (release_value_or_incref): Remove.
+ * value.c (set_value_parent): Update.
+ (value_incref): Change return type.
+ (value_decref): Rename from value_free.
+ (value_free_to_mark, free_all_values, free_value_chain): Update.
+ (release_value): Return value_ref_ptr.
+ (release_value_or_incref): Remove.
+ (record_latest_value, set_internalvar, clear_internalvar):
+ Update.
+ * stack.c (info_frame_command): Don't call value_free.
+ * python/py-value.c (valpy_dealloc, valpy_new)
+ (value_to_value_object): Update.
+ * printcmd.c (do_examine): Update.
+ * opencl-lang.c (lval_func_free_closure): Update.
+ * mi/mi-main.c (register_changed_p): Don't call value_free.
+ * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
+ * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
+ * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
+ value_free.
+ * guile/scm-value.c (vlscm_free_value_smob)
+ (vlscm_scm_from_value): Update.
+ * frame.c (frame_register_unwind, frame_unwind_register_signed)
+ (frame_unwind_register_unsigned, get_frame_register_bytes)
+ (put_frame_register_bytes): Don't call value_free.
+ * findvar.c (address_from_register): Don't call value_free.
+ * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
+ * dwarf2loc.c (entry_data_value_free_closure)
+ (value_of_dwarf_reg_entry, free_pieced_value_closure)
+ (dwarf2_evaluate_loc_desc_full): Update.
+ * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
+ (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
+ (~watchpoint, watch_command_1)
+ (invalidate_bp_value_on_memory_change): Update.
+ * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
+
+2018-04-06 Simon Marchi <simon.marchi@polymtl.ca>
+
+ PR gdb/23022
+ * warning.m4: Add -Wno-error=deprecated-register.
+ * configure: Re-generate.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * linespec.h: Remove include of "vec.h".
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * linespec.c (typep): Remove typedef.
+ (find_methods, find_superclass_methods): Take a std::vector.
+ (find_method): Use std::vector.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * utils.c (compare_strings): Remove.
+ * utils.h (compare_strings): Remove.
+ * objc-lang.h (find_imps): Update.
+ * objc-lang.c (find_methods): Take a std::vector.
+ (uniquify_strings, find_imps): Likewise.
+ * linespec.c (find_methods): Take a std::vector.
+ (decode_objc): Use std::vector.
+ (add_all_symbol_names_from_pspace, find_superclass_methods): Take
+ a std::vector.
+ (find_method, find_function_symbols): Use std::vector.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * completer.c (completion_tracker::completion_tracker): Remove
+ cast.
+ (completion_tracker::discard_completions): Likewise.
+ * breakpoint.c (ambiguous_names_p): Remove cast.
+ * ada-lang.c (_initialize_ada_language): Remove cast.
+ * utils.h (streq): Update.
+ (streq_hash): Add new declaration.
+ * utils.c (streq): Return bool.
+ (streq_hash): New function.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
+ Remove a string copy.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * linespec.c (filter_results): Use std::vector.
+ (decode_line_2, decode_line_full): Update.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * linespec.c (canonical_to_fullform): Return std::string.
+ (filter_results): Update.
+ (struct decode_line_2_item): Add constructor.
+ <fullform, displayform>: Now std::string.
+ (decode_line_2_compare_items): Now a std::sort comparator.
+ (decode_line_2): Update.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
+ (unexpected_linespec_error): Update.
+ (linespec_parse_basic, parse_linespec): Update.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * linespec.c (linespec_parse_basic): Reindent.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
+ * minsyms.h (iterate_over_minimal_symbols): Update.
+ * minsyms.c (iterate_over_minimal_symbols): Take a
+ gdb::function_view.
+ * linespec.c (struct collect_minsyms): Remove.
+ (compare_msyms): Now a std::sort comparator.
+ (add_minsym): Add parameters.
+ (search_minsyms_for_name): Update. Use std::vector.
+
+2018-04-03 Tom Tromey <tom@tromey.com>
+
+ * mipsread.c (read_alphacoff_dynamic_symtab): Use
+ gdb::byte_vector.
+
+2018-04-02 Weimin Pan <weimin.pan@oracle.com>
+
+ * MAINTAINERS (Write After Approval): Add Weimin Pan.
+
+2018-04-02 Weimin Pan <weimin.pan@oracle.com>
+
+ PR gdb/16959
+ * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when
+ printing static type.
+
+2018-04-01 Tom Tromey <tom@tromey.com>
+
+ * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
+ (rs6000_xfer_shared_libraries): Update.
+
+2018-04-01 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * common/gdb_vecs.h (char_ptr): Remove.
+ * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
+
+2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
+ with std::vector.
+ * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
+
+2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * tracepoint.h (struct uploaded_tp): Initialize fields.
+ <actions, step_actions, cmd_strings>: Change type to
+ std::vector<char *>.
+ * tracepoint.c (get_uploaded_tp): Allocate with new.
+ (free_uploaded_tps): Free with delete.
+ (parse_tracepoint_definition): Adjust to std::vector change.
+ * breakpoint.c (read_uploaded_action): Likewise.
+ (create_tracepoint_from_upload): Likewise.
+ * ctf.c (ctf_write_uploaded_tp): Likewise.
+ (SET_ARRAY_FIELD): Likewise.
+ * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
+
+2018-03-30 Tom Tromey <tom@tromey.com>
+
+ * solib-svr4.c (lm_info_read): Use gdb::byte_vector. Return
+ std::unique_ptr.
+ (svr4_keep_data_in_core): Update.
+ (svr4_read_so_list): Update.
+
+2018-03-30 Tom Tromey <tom@tromey.com>
+
+ * windows-nat.c (handle_output_debug_string, handle_exception):
+ Update.
+ * target.h (target_read_string): Update.
+ * target.c (target_read_string): Change "string" to
+ unique_xmalloc_ptr.
+ * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
+ Update.
+ * solib-frv.c (frv_current_sos): Update.
+ * solib-dsbt.c (dsbt_current_sos): Update.
+ * solib-darwin.c (darwin_current_sos): Update.
+ * linux-thread-db.c (inferior_has_bug): Update.
+ * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
+ Update. Remove alloca.
+ * ada-lang.c (ada_main_name): Update.
+
+2018-03-30 Tom Tromey <tom@tromey.com>
+
+ * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
+ (struct dwo_file_deleter): New.
+ (dwo_file_up): New typedef.
+ (open_and_init_dwo_file): Use dwo_file_up.
+ (free_dwo_file_cleanup): Remove.
+
+2018-03-30 Tom Tromey <tom@tromey.com>
+
+ * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
+ (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
+
+2018-03-30 Tom Tromey <tom@tromey.com>
+
+ * dwarf2read.c (class free_cached_comp_units): New class.
+ (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
+ (free_cached_comp_units): Remove function.
+
+2018-03-30 Tom Tromey <tom@tromey.com>
+
+ * utils.h (make_cleanup_unpush_target): Remove.
+ * inf-ptrace.c (struct target_unpusher): New.
+ (target_unpush_up) New typedef.
+ (inf_ptrace_create_inferior, inf_ptrace_attach): Use
+ target_unpush_up.
+ * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
+
+2018-03-27 Tom Tromey <tom@tromey.com>
+
+ * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
+
+2018-03-27 Pedro Alves <palves@redhat.com>
+ Tom Tromey <tom@tromey.com>
+
+ * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
+ destructor. Now a class.
+ (gdb_readline_wrapper_cleanup): Remove function.
+ (gdb_readline_wrapper): Remove cleanups.
+
+2018-03-27 Tom Tromey <tom@tromey.com>
+
+ * typeprint.h (struct type_print_options) <local_typedefs,
+ global_typedefs>: Remove "struct" keyword.
+ (class typedef_hash_table): New class.
+ (recursively_update_typedef_hash, add_template_parameters)
+ (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
+ (find_typedef_in_hash): Don't declare.
+ * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
+ (typedef_hash_table::recursively_update): Rename from
+ recursively_update_typedef_hash. Now a member.
+ (typedef_hash_table::add_template_parameters): Rename from
+ add_template_parameters. Now a member.
+ (typedef_hash_table::typedef_hash_table): Now a constructor;
+ rename from create_typedef_hash.
+ (typedef_hash_table::~typedef_hash_table): Now a destructor;
+ rename from free_typedef_hash.
+ (do_free_typedef_hash, make_cleanup_free_typedef_hash)
+ (do_free_global_table): Remove.
+ (typedef_hash_table::typedef_hash_table): New constructor; renamed
+ from copy_type_recursive.
+ (create_global_typedef_table): Remove.
+ (typedef_hash_table::find_global_typedef): Now a member of
+ typedef_hash_table.
+ (typedef_hash_table::find_typedef): Rename from
+ find_typedef_in_hash; now a member.
+ (whatis_exp): Update.
+ * extension.h (struct ext_lang_type_printers): Add constructor and
+ destructor.
+ (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
+ declare.
+ * extension.c (ext_lang_type_printers::ext_lang_type_printers):
+ Now a constructor; rename from start_ext_lang_type_printers.
+ (ext_lang_type_printers): Now a destructor; rename from
+ free_ext_lang_type_printers.
+ * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
+ Update.
+ (c_type_print_base_struct_union): Update. Remove cleanups.
+
+2018-03-27 Tom Tromey <tom@tromey.com>
+
+ * dwarf-index-write.c: Include <cmath>.
+
+2018-03-27 Joel Brobecker <brobecker@adacore.com>
+
+ * NEWS: Add entry describing new "set|show varsize-limit" command.
+ * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
+ command.
+ * printcmd.c (_initialize_printcmd): Add "set var" alias of
+ "set variable".
+
+2018-03-27 Simon Marchi <simon.marchi@ericsson.com>
+
+ * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
+ dwarf-index-write.c
+ (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
+ * dwarf-index-common.c: New file.
+ * dwarf-index-common.h: New file.
+ * dwarf-index-write.c: New file.
+ * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
+ (struct dwarf2_section_info): Move from here.
+ (dwarf2_section_info_def): Likewise.
+ (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
+ (offset_type): Likewise.
+ (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
+ (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
+ (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
+ (byte_swap): Likewise.
+ (MAYBE_SWAP): Likewise.
+ (dwarf2_per_cu_ptr): Likewise.
+ (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
+ (struct tu_stats): Likewise.
+ (struct dwarf2_per_objfile): Likewise.
+ (struct dwarf2_per_cu_data): Likewise.
+ (struct signatured_type): Likewise.
+ (sig_type_ptr): Likewise.
+ (DEF_VEC_P (sig_type_ptr)): Likewise.
+ (INDEX4_SUFFIX): Likewise.
+ (INDEX5_SUFFIX): Likewise.
+ (DEBUG_STR_SUFFIX): Likewise.
+ (dwarf2_read_section): Make non-static.
+ (mapped_index_string_hash): Move from here.
+ (dwarf5_djb_hash): Likewise.
+ (file_write): Likewise.
+ (class data_buf): Likewise.
+ (struct symtab_index_entry): Likewise.
+ (struct mapped_symtab): Likewise.
+ (find_slot): Likewise.
+ (hash_expand): Likewise.
+ (add_index_entry): Likewise.
+ (uniquify_cu_indices): Likewise.
+ (class c_str_view): Likewise.
+ (class c_str_view_hasher): Likewise.
+ (class vector_hasher): Likewise.
+ (write_hash_table): Likewise.
+ (psym_index_map): Likewise.
+ (struct addrmap_index_data): Likewise.
+ (add_address_entry): Likewise.
+ (add_address_entry_worker): Likewise.
+ (write_address_map): Likewise.
+ (symbol_kind): Likewise.
+ (write_psymbols): Likewise.
+ (struct signatured_type_index_data): Likewise.
+ (write_one_signatured_type): Likewise.
+ (recursively_count_psymbols): Likewise.
+ (recursively_write_psymbols): Likewise.
+ (class debug_names): Likewise.
+ (check_dwarf64_offsets): Likewise.
+ (psyms_seen_size): Likewise.
+ (write_gdbindex): Likewise.
+ (write_debug_names): Likewise.
+ (assert_file_size): Likewise.
+ (write_psymtabs_to_index): Likewise.
+ (save_gdb_index_command): Likewise.
+ (_initialize_dwarf2_read): Don't register the "save gdb-index"
+ command.
+ * dwarf2read.h: New file.
+
+2018-03-27 Joel Brobecker <brobecker@adacore.com>
+
+ PR gdb/22670
+ * dwarf2read.c (dwarf2_physname): Do not return the demangled
+ symbol name if the CU's language stores symbol names in linkage
+ format.
+ * language.h (struct language_defn)
+ <la_store_sym_names_in_linkage_form_p>: New field. Adjust
+ all instances of this struct.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * stack.c (backtrace_command_1): Remove verbose code.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * python/py-framefilter.c (py_print_type): Don't catch
+ exceptions. Return void.
+ (py_print_value): Likewise.
+ (py_print_single_arg): Likewise.
+ (enumerate_args): Don't catch exceptions.
+ (py_print_args): Likewise.
+ (py_print_frame): Likewise.
+ (gdbpy_apply_frame_filter): Catch exceptions here.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * stack.c (_initialize_stack): Remove trailing newlines from help
+ text. Add "Usage" line to "backtrace" help.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ PR python/16486:
+ * python/py-framefilter.c (py_print_args): Call wrap_hint.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * python/py-framefilter.c (py_print_single_arg): Return
+ EXT_LANG_BT_ERROR from catch.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ PR backtrace/15584:
+ * stack.c (backtrace_command_1): Move some code into no-filters
+ "if".
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * python/py-framefilter.c (throw_quit_or_print_exception): New
+ function.
+ (gdbpy_apply_frame_filter): Use it.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ PR cli/17716:
+ * python/py-framefilter.c (py_print_type, py_print_value)
+ (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
+ RETURN_MASK_ERROR.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * python/py-framefilter.c (enumerate_args): Use
+ gdb::unique_xmalloc_ptr.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * python/py-framefilter.c (py_print_frame): Return
+ EXT_LANG_BT_OK.
+ (gdbpy_apply_frame_filter): Update comment.
+ * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
+ Remove.
+ <EXT_LANG_BT_NO_FILTERS>: Change value.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ PR backtrace/15582:
+ * stack.c (backtrace_command): Parse "hide" argument.
+ * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
+ * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
+ constant.
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * stack.c (backtrace_command_1): Remove "show_locals" parameter,
+ add "flags".
+ (backtrace_command): Remove "fulltrace", add "flags".
+
+2018-03-26 Tom Tromey <tom@tromey.com>
+
+ * stack.c (backtrace_command): Rewrite command line parsing.
+
+2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
+
+ * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
+
+2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
+
+ * filename-seen-cache.h: Add include guard.
+
+2018-03-26 Keith Seitz <keiths@redhat.com>
+
+ * symfile.c (place_section): Remove "struct" from section_addr_info
+ in comment.
+ * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
+ "struct" keyword from section_addr_info.
+
+2018-03-26 Alan Hayward <alan.hayward@arm.com>
+
+ * regformats/regdef.h (reg): Add constructors.
+
+2018-03-25 Pedro Alves <palves@redhat.com>
+
+ * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
+ if then/else bodies in var_func_name extraction.
+
+2018-03-23 Weimin Pan <weimin.pan@oracle.com>
+
+ * minsyms.c (lookup_minimal_symbol_and_objfile): Use
+ lookup_minimal_symbol() to find symbol entry.
+ * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
+
+2018-03-23 Keith Seitz <keiths@redhat.com>
+
+ PR c++/22968
+ * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
+ nested type definitions for C++, too.
+
+2018-03-23 Tom Tromey <tom@tromey.com>
+
+ * machoread.c (struct oso_el): Add a constructor. Don't define as
+ a typedef.
+ (macho_register_oso): Remove.
+ (macho_symtab_read): Take a std::vector.
+ (oso_el_compare_name): Now a std::sort comparator.
+ (macho_symfile_read_all_oso): Take a std::vector.
+ (macho_symfile_read): Use std::vector. Remove cleanups.
+
+2018-03-22 Tom Tromey <tom@tromey.com>
+
+ * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
+ (record_full_goto_bookmark): Use std::string.
+
+2018-03-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
+
+ PR tdep/18295
+ * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
+ a single mask.
+
+2018-03-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
+
+ * rs6000-tdep.c (store_insn_p): New function.
+ (skip_prologue): New variable alloca_reg_offset. Set lr_reg
+ and cr_reg to their unshifted values. Use store_insn_p to
+ match LR saves using either R1 or fdata->alloca_reg. Use
+ store_insn_p to match CR saves. Set alloca_reg_offset
+ when alloca_reg and framep are set. Remove lr_reg shift
+ when assigning to fdata->lr_register.
+
+2018-03-22 Andreas Arnez <arnez@linux.vnet.ibm.com>
+
+ * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
+ command line args instead of emitting a warning.
+
+2018-03-22 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * tracepoint.h (struct static_tracepoint_marker): Initialize
+ fields, define default constructor, move constructor and move
+ assignment, disable the rest.
+ <str_id, extra>: Make std::string.
+ (release_static_tracepoint_marker): Remove.
+ (free_current_marker): Remove.
+ * tracepoint.c (free_current_marker): Remove.
+ (parse_static_tracepoint_marker_definition): Adjust to
+ std::string, use new hex2str overload.
+ (release_static_tracepoint_marker): Remove.
+ (print_one_static_tracepoint_marker): Get marker by reference
+ and adjust to std::string.
+ (info_static_tracepoint_markers_command): Adjust to std::vector
+ changes
+ * target.h (static_tracepoint_marker_p): Remove typedef.
+ (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
+ (struct target_ops) <to_static_tracepoint_marker_at>: Return
+ bool.
+ <to_static_tracepoint_markers_by_strid>: Return std::vector.
+ * target-debug.h
+ (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
+ (target_debug_print_std_vector_static_tracepoint_marker): New.
+ (target_debug_print_struct_static_tracepoint_marker_p): Rename
+ to...
+ (target_debug_print_static_tracepoint_marker_p): ... this.
+ * target-delegates.c: Re-generate.
+ * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
+ Make std::string.
+ * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
+ (decode_static_tracepoint_spec): Adjust to std::vector.
+ (tracepoint_print_one_detail): Adjust to std::string.
+ (strace_marker_decode_location): Adjust to std::string.
+ (update_static_tracepoint): Adjust to std::string, remove call
+ to release_static_tracepoint_marker.
+ * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
+ Adjust to std::vector.
+ * remote.c (remote_static_tracepoint_marker_at): Return bool.
+ (remote_static_tracepoint_markers_by_strid): Adjust to
+ std::vector.
+ * common/rsp-low.h (hex2str): New overload with explicit count
+ of bytes.
+ * common/rsp-low.c (hex2str): New overload with explicit count
+ of bytes.
+ * unittests/rsp-low-selftests.c (test_hex2str): New function.
+ (_initialize_rsp_low_selftests): Add test_hex2str test.
+ * unittests/tracepoint-selftests.c
+ (test_parse_static_tracepoint_marker_definition): Adjust to
+ std::string.
+
+2018-03-22 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * tracepoint.c (parse_static_tracepoint_marker_definition):
+ Consider case where the definition is followed by more
+ definitions.
+ * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
+ tracepoint-selftests.c.
+ * unittests/tracepoint-selftests.c: New.
+
+2018-03-21 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
+
+ * MAINTAINERS (Write After Approval): Add Pedro Franco de
+ Carvalho.
+
+2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
+
+ * symtab.c (find_pc_sect_line): fixed indentation.
+
+2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
+
+ * symtab.c (find_pc_sect_line): now uses binary search.
+
+2018-03-19 Tom Tromey <tom@tromey.com>
+
+ * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
+ "IDENT" production.
+
+2018-03-19 Pedro Alves <palves@redhat.com>
+ Tom Tromey <tom@tromey.com>
+
+ * unittests/observable-selftests.c: New file.
+ * common/observable.h: New file.
+ * observable.h: New file.
+ * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
+ arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
+ breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
+ corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
+ extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
+ infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
+ linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
+ mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
+ ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
+ python/py-breakpoint.c, python/py-finishbreakpoint.c,
+ python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
+ record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
+ riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
+ spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
+ symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
+ tui/tui-interp.c, valops.c: Update all users.
+ * tui/tui-hooks.c (tui_bp_created_observer)
+ (tui_bp_deleted_observer, tui_bp_modified_observer)
+ (tui_inferior_exit_observer, tui_before_prompt_observer)
+ (tui_normal_stop_observer, tui_register_changed_observer):
+ Remove.
+ (tui_observers_token): New global.
+ (attach_or_detach, tui_attach_detach_observers): New functions.
+ (tui_install_hooks, tui_remove_hooks): Use
+ tui_attach_detach_observers.
+ * record-btrace.c (record_btrace_thread_observer): Remove.
+ (record_btrace_thread_observer_token): New global.
+ * observer.sh: Remove.
+ * observer.c: Rename to observable.c.
+ * observable.c (namespace gdb_observers): Define new objects.
+ (observer_debug): Move into gdb_observers namespace.
+ (struct observer, struct observer_list, xalloc_observer_list_node)
+ (xfree_observer_list_node, generic_observer_attach)
+ (generic_observer_detach, generic_observer_notify): Remove.
+ (_initialize_observer): Update.
+ Don't include observer.inc.
+ * Makefile.in (generated_files): Remove observer.h, observer.inc.
+ (clean mostlyclean): Likewise.
+ (observer.h, observer.inc): Remove targets.
+ (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
+ (COMMON_SFILES): Use observable.c, not observer.c.
+ * .gitignore: Remove observer.h.
+
+2018-03-18 Tom Tromey <tom@tromey.com>
+
+ * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
+ gdb::def_vector.
+ (bfd_lookup_symbol_from_dyn_symtab): Likewise.
+
+2018-03-17 Tom Tromey <tom@tromey.com>
+
+ * auto-load.c (auto_load_objfile_script_1): Use std::string.
+
+2018-03-17 Tom Tromey <tom@tromey.com>
+
+ * target.c (class scoped_target_fd): New.
+ (target_fileio_close_cleanup): Remove.
+ (target_fileio_read_alloc_1): Use scoped_target_fd.
+
+2018-03-16 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * silent-rules.mk: New.
+ * Makefile.in: Include silent-rules.mk
+ (srcdir, VPATH, top_srcdir): Move up.
+ (COMPILE): Add ECHO_CXX.
+ (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
+ (init.c): Add ECHO_INIT_C.
+ (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
+ (version.c): Add ECHO_GEN.
+ (printcmd.o): Add ECHO_CXX.
+ (target-float.o): Add ECHO_CXX.
+ (ada-exp.o): Add ECHO_CXX.
+ (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
+ (insight$(EXEEXT)): Add ECHO_CXXLD.
+ * gnulib/configure.ac: Add AM_SILENT_RULES.
+ * gnulib/aclocal.m4: Re-generate.
+ * gnulib/configure: Re-generate.
+ * gnulib/import/Makefile.in: Re-generate.
+
+2018-03-16 Tom Tromey <tom@tromey.com>
+
+ * 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) <sym_offsets>: 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.
+
+2018-03-15 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
+ unittests/utils-selftests.c.
+ * unittests/utils-selftests.c: New file.
+
+2018-03-14 Tom Tromey <tom@tromey.com>
+
+ PR cli/14977:
+ * printcmd.c (printf_c_string, printf_wide_c_string): Special case
+ for NULL.
+
2018-03-14 Tom Tromey <tom@tromey.com>
PR cli/19918: