+2019-12-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ * dwarf2read.c (is_valid_DW_AT_calling_convention_for_subroutine):
+ New function.
+ (read_subroutine_type): Validate the parsed
+ DW_AT_calling_convention value before assigning it to a
+ subroutine's calling_convention attribute.
+ * gdbtypes.h (struct func_type) <calling_convention>: Use
+ an enum bitfield as its type, instead of plain unsigned.
+
+2019-12-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ PR gdb/25054
+ * infcall.c (call_function_by_hand_dummy): Update the argument-
+ passing section for call-by-value parameters.
+ (struct destructor_info): New struct.
+ (call_destructors): New auxiliary function.
+
+2019-12-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ * gnu-v3-abi.c (enum definition_style): New enum type.
+ (get_def_style): New function.
+ (is_user_provided_def): New function.
+ (is_implicit_def): New function.
+ (is_copy_or_move_constructor_type): New function.
+ (is_copy_constructor_type): New function.
+ (is_move_constructor_type): New function.
+ (gnuv3_pass_by_reference): Collect language_pass_by_ref_info
+ for a given type.
+
+2019-12-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ * language.h (struct language_pass_by_ref_info): New struct.
+ (struct language_defn)<la_pass_by_reference>: Change the signature
+ to return a language_pass_by_ref_info instead of an int.
+ (language_pass_by_reference): Ditto.
+ (default_pass_by_reference): Ditto.
+ Adjust the users listed below.
+ * arch-utils.c (default_return_in_first_hidden_param_p):
+ Update.
+ * cp-abi.c (cp_pass_by_reference): Update.
+ * cp-abi.h (cp_pass_by_reference): Update declaration.
+ (struct cp_abi_ops)<pass_by_reference>: Update.
+ * gnu-v3-abi.c (gnuv3_pass_by_reference): Update.
+ * infcall.c (call_function_by_hand_dummy): Update.
+ * language.c (language_pass_by_reference): Update.
+ (default_pass_by_reference): Update.
+ * tic6x-tdep.c (tic6x_return_value): Update.
+
+2019-12-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
+
+ * dwarf2read.c (dwarf2_add_member_fn): Read the DW_AT_defaulted
+ and DW_AT_deleted attributes of a function.
+ (read_structure_type): Read the DW_AT_calling_convention attribute
+ of a type.
+ (is_valid_DW_AT_defaulted): New function.
+ (is_valid_DW_AT_calling_convention_for_type): New function.
+ * gdbtypes.h: Include dwarf2.h.
+ (struct fn_field)<defaulted>: New field to store the
+ DW_AT_defaulted attribute.
+ (struct fn_field)<is_deleted>: New field to store the
+ DW_AT_deleted attribute.
+ (struct cplus_struct_type)<calling_convention>: New field to store
+ the DW_AT_calling_convention attribute.
+ (TYPE_FN_FIELD_DEFAULTED): New macro.
+ (TYPE_FN_FIELD_DELETED): New macro.
+ (TYPE_CPLUS_CALLING_CONVENTION): New macro.
+ * gdbtypes.c (dump_fn_fieldlists): Update for the changes made
+ to the .h file.
+ (print_cplus_stuff): Likewise.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui.c (tui_show_source): Remove.
+ * tui/tui.h (tui_show_source): Don't declare.
+ * tui/tui-out.c (tui_ui_out::do_field_string): Don't call
+ tui_show_source.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-stack.h (tui_show_frame_info): Return bool.
+ * tui/tui-stack.c (tui_show_frame_info): Return bool.
+ * tui/tui-hooks.c (tui_refresh_frame_and_register_information):
+ Update.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ PR tui/18932:
+ * tui/tui-hooks.c (tui_refresh_frame_and_register_information):
+ Rename parameters. Handle the not-from-stack-frame case.
+ (from_stack, from_source_symtab): New globals.
+ (tui_before_prompt, tui_normal_stop): Update.
+ (tui_context_changed, tui_symtab_changed): New functions.
+ (tui_attach_detach_observers): Attach new observers.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * source.c (struct current_source_location) <set, symtab, line>:
+ New methods.
+ <m_symtab, m_line>: Rename. Now private.
+ (get_current_source_symtab_and_line)
+ (set_default_source_symtab_and_line)
+ (set_current_source_symtab_and_line)
+ (clear_current_source_symtab_and_line, select_source_symtab)
+ (info_source_command, print_source_lines_base)
+ (info_line_command, search_command_helper): Update.
+ * observable.h (current_source_symtab_and_line_changed): Declare
+ observable.
+ * observable.c (current_source_symtab_and_line_changed): Define
+ observable.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-hooks.c (tui_before_prompt): Change parameter to bool.
+ (tui_before_prompt, tui_normal_stop): Update.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.c
+ (tui_source_window_base::update_source_window_as_is): Don't call
+ set_current_source_symtab_and_line.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-stack.h (struct tui_locator_window) <set_locator_info>:
+ Take a symtab_and_line.
+ * tui/tui-stack.c (tui_locator_window::set_locator_info): Take a
+ symtab_and_line.
+ (tui_show_frame_info): Update.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-stack.c (tui_show_frame_info): Don't call
+ update_exec_info.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui.c (tui_enable): Call tui_display_main.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-disasm.c (tui_get_begin_asm_address): Use
+ get_current_source_symtab_and_line, and main_name.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui.c (tui_show_source): Update.
+ * tui/tui-winsource.h (tui_update_source_windows_with_line): Update.
+ * tui/tui-winsource.c (tui_update_source_windows_with_line): Take
+ a symtab_symbol_info, not a separate symtab and line. Simplify.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.c (tui_update_source_windows_with_addr):
+ Simplify.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.h (struct tui_source_window_base)
+ <set_contents, update_source_window_as_is, update_source_window>:
+ Take a sal, not a separate symtab and tui_line_or_address.
+ * tui/tui-winsource.c (tui_source_window_base::update_source_window)
+ (tui_source_window_base::update_source_window_as_is): Take a sal,
+ not a separate symtab and tui_line_or_address.
+ (tui_update_source_windows_with_addr)
+ (tui_update_source_windows_with_line)
+ (tui_source_window_base::rerender)
+ (tui_source_window_base::refill): Update.
+ * tui/tui-source.h (struct tui_source_window) <set_contents>: Take
+ a sal, not a separate symtab and tui_line_or_address.
+ * tui/tui-source.c (tui_source_window::set_contents): Take a sal,
+ not a separate symtab and tui_line_or_address.
+ (tui_source_window::maybe_update): Update.
+ * tui/tui-disasm.h (struct tui_disasm_window) <set_contents>: Take
+ a sal, not a separate symtab and tui_line_or_address.
+ * tui/tui-disasm.c (tui_disasm_window::set_contents): Take a sal,
+ not a separate symtab and tui_line_or_address.
+ (tui_disasm_window::do_scroll_vertical)
+ (tui_disasm_window::maybe_update): Update.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.c (tui_source_window_base::refill): Use
+ start_line_or_addr.
+ * tui/tui-source.c (tui_source_window::do_scroll_vertical): Use
+ start_line_or_addr.
+ * tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Use
+ start_line_or_addr.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.h (struct tui_source_window_base)
+ <set_contents>: Return bool.
+ * tui/tui-winsource.c
+ (tui_source_window_base::update_source_window_as_is): Update.
+ * tui/tui-source.h (struct tui_source_window) <set_contents>:
+ Return bool.
+ * tui/tui-source.c (tui_source_window::set_contents): Return
+ bool. Simplify.
+ * tui/tui-disasm.h (struct tui_disasm_window) <set_contents>:
+ Return bool.
+ * tui/tui-disasm.c (tui_disasm_window::set_contents): Return
+ bool.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.c (tui_update_source_windows_with_addr)
+ (tui_update_source_windows_with_line): Call update_source_window.
+ * tui/tui-source.h (struct tui_source_window)
+ <show_symtab_source>: Don't declare.
+ * tui/tui-source.c (tui_source_window::show_symtab_source):
+ Remove.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.c (tui_update_source_windows_with_addr): Call
+ update_source_window directly.
+ * tui/tui-disasm.h (tui_show_disassem): Don't declare.
+ * tui/tui-disasm.c (tui_show_disassem): Remove.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.c
+ (tui_source_window_base::update_source_window_as_is): Don't switch focus.
+ * tui/tui-disasm.c (tui_show_disassem): Don't switch focus.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.h (struct tui_source_window_base)
+ <maybe_update>: Remove line_no and addr parameters.
+ * tui/tui-stack.c (tui_show_frame_info): Set PC on sal. Update.
+ * tui/tui-source.h (struct tui_source_window) <maybe_update>:
+ Update.
+ * tui/tui-source.c (tui_source_window::maybe_update): Remove
+ line_no and addr parameters.
+ * tui/tui-disasm.h (struct tui_disasm_window) <maybe_update>:
+ Update.
+ * tui/tui-disasm.c (tui_disasm_window::maybe_update): Remove
+ line_no and addr parameters.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.c (tui_source_window_base::set_is_exec_point_at)
+ (tui_source_window_base::update_breakpoint_info): Remove asserts.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui-winsource.c (tui_update_source_windows_with_addr): Call
+ tui_show_disassem.
+ * tui/tui-disasm.h (tui_show_disassem_and_update_source): Don't
+ declare.
+ * tui/tui-disasm.c (tui_show_disassem_and_update_source): Remove.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui.h (tui_show_source): Remove parameters.
+ * tui/tui.c (tui_show_source): Remove parameters.
+ * tui/tui-out.c (tui_ui_out::do_field_string): Update.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ * tui/tui.c (tui_show_source): Update.
+ * tui/tui-winsource.c (tui_display_main): Update.
+ * tui/tui-stack.h (tui_update_locator_fullname): Change parameter
+ to symtab.
+ * tui/tui-stack.c (tui_update_locator_fullname): Change parameter
+ to symtab.
+ * tui/tui-disasm.c (tui_show_disassem_and_update_source): Update.
+
+2019-12-20 Tom Tromey <tom@tromey.com>
+
+ PR tui/23619:
+ * tui/tui-io.c (tui_rl_saved_prompt): Remove.
+ (tui_redisplay_readline): Use rl_display_prompt.
+ (tui_prep_terminal): Update.
+
+2019-12-19 Christian Biesinger <cbiesinger@google.com>
+
+ * configure: Regenerate.
+ * configure.ac: Quote variable arguments of test.
+ * gdbsupport/common.m4: Likewise.
+
+2019-12-19 Christian Biesinger <cbiesinger@google.com>
+
+ * score-tdep.c (score7_analyze_prologue): Pass 2.0 instead of
+ 2 to pow ().
+
+2019-12-19 Christian Biesinger <cbiesinger@google.com>
+
+ * tui/tui-source.c (tui_source_window::set_contents): Cast argument of
+ log10 to double to fix Solaris 11 with gcc 5.5.
+
+2019-12-19 Christian Biesinger <cbiesinger@google.com>
+
+ * fbsd-tdep.c (fbsd_info_proc_files_entry): Rename local var
+ "sun" to "saddr_un".
+
+2019-12-19 Tom Tromey <tromey@adacore.com>
+
+ * ui-out.h (enum class field_kind): Fix comment.
+
+2019-12-11 Tom Tromey <tromey@adacore.com>
+
+ * xml-support.c (xml_fetch_content_from_file): Use FOPEN_RB.
+
+2019-12-18 Tom Tromey <tromey@adacore.com>
+
+ PR build/25268:
+ * gdbsupport/thread-pool.c (set_thread_name): Expect "int" return
+ type on macOS. Add comment.
+
+2019-12-18 Simon Marchi <simon.marchi@efficios.com>
+
+ * c-lang.c (c_get_string, asm_language_defn): Remove space
+ before tab.
+
+2019-12-18 Tom Tromey <tromey@adacore.com>
+
+ PR build/25250:
+ * ui-out.c (ui_out::vmessage): Update.
+ * ui-out.h (enum class field_kind) <FIELD_STRING, FIELD_SIGNED>:
+ Rename.
+ (string_field): Update.
+ (signed_field): Update.
+
+2019-12-18 Simon Marchi <simon.marchi@efficios.com>
+
+ * top.c (print_gdb_configuration): Adjust indentation.
+
+2019-12-17 Christian Biesinger <cbiesinger@google.com>
+
+ * bsd-kvm.c: Include gdbsupport/pathstuff.h.
+
+2019-12-17 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * tui/tui-layout.h (class tui_layout_base): Add virtual
+ destructor.
+
+2019-12-16 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ * infcmd.c (prepare_one_step): Step over skipped inline functions.
+ * infrun.c (inline_frame_is_marked_for_skip): New helper function.
+ (process_event_stop_test): Keep stepping over skipped inline functions.
+
+2019-12-16 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * jit.c (struct gdb_block) <next>: Remove field.
+ (struct gdb_symtab) <~gdb_symtab>: Remove.
+ <blocks>: Change type to std::forward_list<gdb_block>.
+ (compare_block): Remove.
+ (jit_block_open_impl): Adjust to std::forward_list. Place the new
+ block at the beginning, don't mind about sorting.
+ (finalize_symtab): Adjust to std::forward_list, sort the blocks list
+ before using it.
+
+2019-12-16 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * jit.c (struct gdb_block): Add constructor, initialize
+ real_block and next fields.
+ <name>: Change type to gdb::unique_xmalloc_ptr.
+ (struct gdb_symtab) <~gdb_symtab>: Free blocks with delete.
+ (jit_block_open_impl): Allocate gdb_block with new.
+ (finalize_symtab): Adjust to gdb::unique_xmalloc_ptr.
+
+2019-12-16 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * jit.c: Include forward_list.
+ (struct gdb_symtab) <next>: Remove field.
+ (struct gdb_object) <symtabs>: Change type to
+ std::forward_list<gdb_symtab>.
+ (jit_object_open_impl): Allocate gdb_object with new.
+ (jit_symtab_open_impl): Adjust to std::forward_list.
+ (finalize_symtab): Don't delete symtab.
+ (jit_object_close_impl): Adjust to std::forward_list. Free
+ gdb_object with delete.
+
+2019-12-16 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * jit.c (struct gdb_symtab): Add constructor, destructor,
+ initialize fields.
+ <linetable>: Change type to unique_xmalloc_ptr.
+ <file_name>: Change type to std::string.
+ (jit_symtab_open_impl): Allocate gdb_symtab with new.
+ (jit_symtab_line_mapping_add_impl): Adjust.
+ (finalize_symtab): Adjust, call delete on stab.
+
+2019-12-16 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * jit.c (finalize_symtab): Set gdb_block_iter_tmp in loop.
+
+2019-12-16 Tom Tromey <tromey@adacore.com>
+
+ * windows-nat.c (windows_nat_target::attach): Update.
+ * remote.c (extended_remote_target::attach): Update.
+ * procfs.c (procfs_target::attach): Update.
+ * nto-procfs.c (nto_procfs_target::attach): Update.
+ (nto_procfs_target::create_inferior): Update.
+ * inf-ptrace.c (inf_ptrace_target::attach): Update.
+ * gnu-nat.c (gnu_nat_target::attach): Update.
+ (gnu_nat_target::detach): Update.
+ * darwin-nat.c (darwin_nat_target::attach): Update.
+ * corefile.c (get_exec_file): Constify result. Remove extraneous
+ return.
+ * bsd-kvm.c (bsd_kvm_target_open): Update.
+ * gdbsupport/common-inferior.h (get_exec_file): Constify result.
+
+2019-12-16 Christian Biesinger <cbiesinger@google.com>
+
+ * gdbsupport/common-defs.h: Remove workaround for a gnulib bug
+ (we no longer need to include time.h before pathmax.h)
+
+2019-12-15 Christian Biesinger <cbiesinger@google.com>
+
+ * ada-exp.y (write_ambiguous_var): Update.
+ * coffread.c (process_coff_symbol): Update.
+ * ctfread.c (ctf_add_enum_member_cb): Update.
+ (new_symbol): Update.
+ * dwarf2read.c (fixup_go_packaging): Update.
+ (new_symbol): Update.
+ * language.c (language_alloc_type_symbol): Update.
+ * mdebugread.c (new_symbol): Update.
+ * minsyms.c (minimal_symbol_reader::record_full): Update.
+ * psymtab.c (add_psymbol_to_bcache): Update.
+ * stabsread.c (define_symbol): Update.
+ (read_enum_type): Update.
+ * symtab.c (symbol_set_language): Make this a member function...
+ (general_symbol_info::set_language): ... here.
+ * symtab.h (struct general_symbol_info) <set_language>: New function.
+ (SYMBOL_SET_LANGUAGE): Remove.
+ (symbol_set_language): Remove.
+
+2019-12-15 Christian Biesinger <cbiesinger@google.com>
+
+ * ada-lang.c (ada_add_block_symbols): Update.
+ (ada_collect_symbol_completion_matches): Update.
+ * ax-gdb.c (gen_expr): Update.
+ * block.c (block_lookup_symbol): Update.
+ (block_lookup_symbol_primary): Update.
+ (block_find_symbol): Update.
+ * cp-namespace.c (cp_lookup_symbol_imports_or_template): Update.
+ * dbxread.c (process_one_symbol): Update.
+ * dictionary.c (insert_symbol_hashed): Update.
+ (collate_pending_symbols_by_language): Update.
+ (mdict_add_symbol): Update.
+ * dwarf-index-write.c (write_psymbols): Update.
+ * dwarf2read.c (fixup_go_packaging): Update.
+ * findvar.c (read_var_value): Update.
+ * ft32-tdep.c (ft32_skip_prologue): Update.
+ * go-lang.c (go_symbol_package_name): Update.
+ * language.h (scoped_switch_to_sym_language_if_auto::
+ scoped_switch_to_sym_language_if_auto): Update.
+ * linespec.c (find_method): Update.
+ (find_label_symbols_in_block): Update.
+ * mdebugread.c (parse_symbol): Update.
+ * mi/mi-cmd-stack.c (list_arg_or_local): Update.
+ * minsyms.c (add_minsym_to_demangled_hash_table): Update.
+ (minimal_symbol_reader::install): Update.
+ * moxie-tdep.c (moxie_skip_prologue): Update.
+ * parse.c (parse_exp_in_context): Update.
+ * psymtab.c (psymbol_name_matches): Update.
+ (match_partial_symbol): Update.
+ (lookup_partial_symbol): Update.
+ (psymbol_hash): Update.
+ (psymbol_compare): Update.
+ * python/py-framefilter.c (extract_sym): Update.
+ (py_print_single_arg): Update.
+ * stabsread.c (define_symbol): Update.
+ * stack.c (print_frame_arg): Update.
+ (find_frame_funname): Update.
+ (info_frame_command_core): Update.
+ * symfile.c (set_initial_language): Update.
+ * symtab.c (symbol_set_demangled_name): Update.
+ (symbol_get_demangled_name): Update.
+ (symbol_set_language): Update.
+ (symbol_find_demangled_name): Update.
+ (symbol_set_names): Update.
+ (general_symbol_info::natural_name): Update.
+ (general_symbol_info::demangled_name): Update.
+ (general_symbol_info::search_name): Update.
+ (symbol_matches_search_name): Update.
+ (eq_symbol_entry): Update.
+ (iterate_over_symbols): Update.
+ (completion_list_add_symbol): Update.
+ (completion_list_add_msymbol): Update.
+ (completion_list_add_fields): Update.
+ * symtab.h (struct general_symbol_info) <language>: New function.
+ <language>: Rename to...
+ <m_language>: ...this.
+ (SYMBOL_LANGUAGE): Remove.
+ (MSYMBOL_LANGUAGE): Remove.
+ (struct symbol) <ctor>: Update.
+ * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
+
+2019-12-15 Christian Biesinger <cbiesinger@google.com>
+
+ * ada-exp.y (write_ambiguous_var): Call symbol_set_language to
+ set the language of sym.
+ * language.c (language_alloc_type_symbol): Likewise.
+
+2019-12-14 Sergio Durigan Junior <sergiodj@redhat.com>
+
+ https://bugzilla.redhat.com/show_bug.cgi?id=1728147
+ PR gdb/23613
+ * bsd-kvm.c (bsd_kvm_target_open): Use 'gdb_abspath'.
+ * corelow.c: Include 'gdbsupport/pathstuff.h'.
+ (core_target_open): Use 'gdb_abspath'.
+ * gdbsupport/pathstuff.c (gdb_abspath): Guard against
+ 'current_directory == NULL' case.
+ * gdbsupport/pathstuff.h (gdb_abspath): Expand comment and
+ explain what happens when 'current_directory' is NULL.
+ * go32-nat.c (go32_nat_target::wait): Check if
+ 'current_directory' is NULL before call to 'chdir'.
+ * source.c (add_path): Use 'gdb_abspath'.
+ * top.c: Include 'gdbsupport/pathstuff.h'.
+ (init_history): Use 'gdb_abspath'.
+ (set_history_filename): Likewise.
+ * tracefile-tfile.c: Include 'gdbsupport/pathstuff.h'.
+ (tfile_target_open): Use 'gdb_abspath'.
+
2019-12-13 Tom Tromey <tromey@adacore.com>
* contrib/ari/gdb_ari.sh: Remove check for multiple calls to