+2018-04-17 Tom Tromey <tom@tromey.com>
+
+ * dwarf2read.c (quirk_rust_enum): Conditionally drop the
+ discriminant field.
+
+2018-04-17 Tom Tromey <tom@tromey.com>
+
+ * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
+
+2018-04-17 Andreas Arnez <arnez@linux.vnet.ibm.com>
+
+ * symtab.c (print_symbol_info): Skip printing filename and line
+ number when `last' is NULL.
+ (symtab_symbol_info): Use empty string instead of NULL for first
+ invocation of print_symbol_info.
+ (rbreak_command): Pass NULL to `last' parameter of
+ print_symbol_info.
+
+2018-04-16 Simon Marchi <simon.marchi@ericsson.com>
+
+ * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
+ instead of nullptr.
+
+2018-04-16 Pedro Alves <palves@redhat.com>
+
+ * MAINTAINERS (sh): Remove.
+ * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
+ (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
+ (ALLDEPFILES): Remove sh64-tdep.c.
+ * NEWS: Mentions that support for SH-5/SH64 is removed.
+ * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
+ (sh*-*-openbsd*): Ditto.
+ (sh64-*-elf*): Remove.
+ (sh*): Remove.
+ * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
+ * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
+ * sh-tdep.c: No longer include "sh64-tdep.h".
+ (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
+ * sh64-tdep.c, sh64-tdep.h: Remove files.
+
+2018-04-16 Pedro Alves <palves@redhat.com>
+
+ * MAINTAINERS: Remove m88k.
+ * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
+ (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
+ (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
+ * NEWS: Mention that support for m88k was removed.
+ * configure.host (m88*-*-*): Remove support.
+ * configure.nat (m88k-*-*): Remove support.
+ * configure.tgt (m88*-*-openbsd*): Remove.
+ * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
+
+2018-04-15 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * configure.tgt (x86_tobjs): New variable.
+ (amd64_tobjs, i386_tobjs): Use it.
+
+2018-04-13 Andreas Arnez <arnez@linux.vnet.ibm.com>
+
+ * symtab.c (print_symbol_info): Precede the symbol definition by
+ the line number when available.
+ * NEWS: Advertise this enhancement.
+
+2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
+
+ * NEWS (New options): announce set/show record btrace cpu.
+ * btrace.c: Include record-btrace.h.
+ (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
+ the vendor is unknown.
+ (btrace_compute_ftrace_1): Add cpu parameter. Update callers.
+ Maybe overwrite the btrace configuration's cpu.
+ (btrace_compute_ftrace): Add cpu parameter. Update callers.
+ (btrace_fetch): Add cpu parameter. Update callers.
+ (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
+ Maybe overwrite the btrace configuration's cpu. Skip enabling
+ errata workarounds if the vendor is unknown.
+ * python/py-record-btrace.c: Include record-btrace.h.
+ (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
+ (recpy_bt_function_call_history): Call record_btrace_get_cpu.
+ * record-btrace.c (record_btrace_cpu_state_kind): New.
+ (record_btrace_cpu): New.
+ (set_record_btrace_cpu_cmdlist): New.
+ (record_btrace_get_cpu): New.
+ (require_btrace_thread, record_btrace_info)
+ (record_btrace_resume_thread): Call record_btrace_get_cpu.
+ (cmd_set_record_btrace_cpu_none): New.
+ (cmd_set_record_btrace_cpu_auto): New.
+ (cmd_set_record_btrace_cpu): New.
+ (cmd_show_record_btrace_cpu): New.
+ (_initialize_record_btrace): Initialize set/show record btrace cpu
+ commands.
+ * record-btrace.h (record_btrace_get_cpu): New.
+
+2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
+
+ * record.c (set_record_command): Fix typo in message.
+
+2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
+
+ * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
+
+2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
+
+ * infrun.c (process_event_stop_test): Call
+ gdbarch_in_indirect_branch_thunk.
+ * gdbarch.sh (in_indirect_branch_thunk): New.
+ * gdbarch.c: Regenerated.
+ * gdbarch.h: Regenerated.
+ * x86-tdep.h: New.
+ * x86-tdep.c: New.
+ * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
+ (HFILES_NO_SRCDIR): Add x86-tdep.h.
+ (ALLDEPFILES): Add x86-tdep.c.
+ * arch-utils.h (default_in_indirect_branch_thunk): New.
+ * arch-utils.c (default_in_indirect_branch_thunk): New.
+ * i386-tdep: Include x86-tdep.h.
+ (i386_in_indirect_branch_thunk): New.
+ (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
+ function.
+ * amd64-tdep: Include x86-tdep.h.
+ (amd64_in_indirect_branch_thunk): New.
+ (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
+
+2018-04-12 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ PR gdb/23053
+ * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
+ (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
+ (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
+ regression.
+
+2018-04-12 Tom Tromey <tom@tromey.com>
+
+ * rust-lang.c (rust_print_struct_def): Remove univariant code.
+ (rust_evaluate_subexp): Likewise.
+
+2018-04-12 Pedro Alves <palves@redhat.com>
+
+ * procfs.c (procfs_detach): Make forward declaration's prototype
+ match definition's protototype.
+ (proc_get_LDT_entry): Remove stale do_cleanups call.
+
+2018-04-12 Pedro Alves <palves@redhat.com>
+
+ * target.h (target_ops::to_has_exited): Delete.
+ (target_has_exited): Delete.
+ * target-delegates.c: Regenerate.
+
+2018-04-11 Pedro Alves <palves@redhat.com>
+
+ * target.c (fileio_fh_t::t): Add comment.
+ (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
+ (target_fileio_close): Handle a NULL target.
+ (invalidate_fileio_fh): New.
+ (target_close): Call it.
+ * remote.c (remote_hostio_send_command): No longer check whether
+ remote_desc is open.
+
+2018-04-11 Pedro Alves <palves@redhat.com>
+
+ * target.c (fileio_fh_t): Make it a named struct instead of a
+ typedef.
+ (fileio_fh_t::is_closed): New method.
+ (DEF_VEC_O (fileio_fh_t)): Remove.
+ (fileio_fhandles): Now a std::vector.
+ (is_closed_fileio_fh): Delete.
+ (acquire_fileio_fd): Adjust. Rename parameters.
+ (release_fileio_fd): Adjust.
+ (fileio_fd_to_fh): Reimplement as a function instead of a macro.
+ (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
+ (target_fileio_close): Adjust.
+
+2018-04-10 Simon Marchi <simon.marchi@ericsson.com>
+
+ * auto-load.c (auto_load_safe_path_vec_update): Iterate by
+ index.
+
+2018-04-10 Pedro Alves <palves@redhat.com>
+
+ * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
+ (scoped_finish_thread_state): New class.
+ * infcmd.c (run_command_1): Use it instead of finish_thread_state
+ cleanup.
+ * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
+ (fetch_inferior_event, normal_stop): Likewise.
+ * thread.c (finish_thread_state_cleanup): Delete.
+
+2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
+ Pedro Alves <palves@redhat.com>
+
+ * value.c: Include "selftest.h" and "common/array-view.h".
+ (struct range) <operator ==>: New.
+ (test_ranges_contain): New.
+ (check_ranges_vector): New.
+ (test_insert_into_bit_range_vector): New.
+ (_initialize_values): Register selftests.
+ * common/array-view.h (operator==, operator!=): New.
+
+2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * common/gdb_vecs.h (unordered_remove): Add overload that takes
+ an iterator.
+ * inline-frame.c: Include <algorithm>.
+ (struct inline_state): Add constructor.
+ (inline_state_s): Remove.
+ (DEF_VEC_O(inline_state_s)): Remove.
+ (inline_states): Change type to std::vector.
+ (find_inline_frame_state): Adjust to std::vector.
+ (allocate_inline_frame_state): Remove.
+ (clear_inline_frame_state): Adjust to std::vector.
+ (skip_inline_frames): Adjust to std::vector.
+
+2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * tracepoint.h (struct trace_state_variable): Add constructor.
+ <name>: Change type to std::string.
+ * tracepoint.c (tsv_s): Remove.
+ (DEF_VEC_O(tsv_s)): Remove.
+ (tvariables): Change to std::vector.
+ (create_trace_state_variable): Adjust to std::vector.
+ (find_trace_state_variable): Likewise.
+ (find_trace_state_variable_by_number): Likewise.
+ (delete_trace_state_variable): Likewise.
+ (trace_variable_command): Adjust to std::string.
+ (delete_trace_variable_command): Likewise.
+ (tvariables_info_1): Adjust to std::vector.
+ (save_trace_state_variables): Likewise.
+ (start_tracing): Likewise.
+ (merge_uploaded_trace_state_variables): Adjust to std::vector
+ and std::string.
+ * target.h (struct target_ops)
+ <to_download_trace_state_variable>: Pass reference to
+ trace_state_variable.
+ * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
+ * target-delegates.c: Re-generate.
+ * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
+ (mi_tsv_deleted): Likewise.
+ * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
+ * remote.c (remote_download_trace_state_variable): Change
+ pointer to reference and adjust.
+ * make-target-delegates (parse_argtypes): Handle references.
+ (write_function_header): Likewise.
+ (munge_type): Likewise.
+
+2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
+ string_view-selftests.c.
+ * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
+ testsuite.
+ * unittests/basic_string_view/cons/char/1.cc: Likewise.
+ * unittests/basic_string_view/cons/char/2.cc: Likewise.
+ * unittests/basic_string_view/cons/char/3.cc: Likewise.
+ * unittests/basic_string_view/element_access/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/element_access/char/empty.cc:
+ Likewise.
+ * unittests/basic_string_view/element_access/char/front_back.cc:
+ Likewise.
+ * unittests/basic_string_view/inserters/char/2.cc: Likewise.
+ * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/modifiers/swap/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/compare/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/compare/char/13650.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/copy/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/data/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/find/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/find/char/2.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/find/char/3.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/find/char/4.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/rfind/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/rfind/char/2.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/rfind/char/3.cc:
+ Likewise.
+ * unittests/basic_string_view/operations/substr/char/1.cc:
+ Likewise.
+ * unittests/basic_string_view/operators/char/2.cc: Likewise.
+ * unittests/string_view-selftests.c: New file.
+
+2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * unittests/basic_string_view/capacity/1.cc: New file.
+ * unittests/basic_string_view/capacity/empty_neg.cc: New file.
+ * unittests/basic_string_view/cons/char/1.cc: New file.
+ * unittests/basic_string_view/cons/char/2.cc: New file.
+ * unittests/basic_string_view/cons/char/3.cc: New file.
+ * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
+ * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
+ * unittests/basic_string_view/element_access/char/1.cc: New file.
+ * unittests/basic_string_view/element_access/char/2.cc: New file.
+ * unittests/basic_string_view/element_access/char/empty.cc: New file.
+ * unittests/basic_string_view/element_access/char/front_back.cc: New file.
+ * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
+ * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
+ * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
+ * unittests/basic_string_view/include.cc: New file.
+ * unittests/basic_string_view/inserters/char/1.cc: New file.
+ * unittests/basic_string_view/inserters/char/2.cc: New file.
+ * unittests/basic_string_view/inserters/char/3.cc: New file.
+ * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
+ * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
+ * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
+ * unittests/basic_string_view/literals/types.cc: New file.
+ * unittests/basic_string_view/literals/values.cc: New file.
+ * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
+ * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
+ * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
+ * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/operations/compare/char/1.cc: New file.
+ * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
+ * unittests/basic_string_view/operations/compare/char/2.cc: New file.
+ * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
+ * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
+ * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
+ * unittests/basic_string_view/operations/copy/char/1.cc: New file.
+ * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/operations/data/char/1.cc: New file.
+ * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/operations/find/char/1.cc: New file.
+ * unittests/basic_string_view/operations/find/char/2.cc: New file.
+ * unittests/basic_string_view/operations/find/char/3.cc: New file.
+ * unittests/basic_string_view/operations/find/char/4.cc: New file.
+ * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
+ * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
+ * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
+ * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
+ * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
+ * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
+ * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
+ * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
+ * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
+ * unittests/basic_string_view/operations/substr/char/1.cc: New file.
+ * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/operators/char/2.cc: New file.
+ * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
+ * unittests/basic_string_view/range_access/char/1.cc: New file.
+ * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
+ * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
+ * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
+ * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
+ * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
+ * unittests/basic_string_view/requirements/typedefs.cc: New file.
+ * unittests/basic_string_view/typedefs.cc: New file.
+ * unittests/basic_string_view/types/1.cc: New file.
+
+2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * common/gdb_string_view.h: Remove libstdc++ implementation
+ details, adjust to gdb reality.
+ * common/gdb_string_view.tcc: Likewise.
+ * cli/cli-script.c (struct string_view): Remove.
+ (user_args) <m_args>: Change element type to gdb::string_view.
+ (user_args::insert_args): Adjust.
+
+2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * common/gdb_string_view.h: New file.
+ * common/gdb_string_view.tcc: New file.
+
+2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * ax_cxx_compile_stdcxx.m4: Sync with upstream.
+ * configure: Re-generate.
+
+2018-04-09 Pedro Alves <palves@redhat.com>
+
+ * gdbarch.sh: Include "observable.h" instead of "observer.h".
+ (set_target_gdbarch): Call
+ gdb::observers::architecture_changed.notify instead of
+ observer_notify_architecture_changed.
+
+2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * tracepoint.c (struct current_traceframe_cleanup): Remove.
+ (do_restore_current_traceframe_cleanup): Remove.
+ (restore_current_traceframe_cleanup_dtor): Remove.
+ (make_cleanup_restore_current_traceframe): Remove.
+ (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
+ New.
+ * tracepoint.h (struct scoped_restore_current_traceframe): New.
+ * infrun.c (fetch_inferior_event): Use
+ scoped_restore_current_traceframe.
+
+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.