+2020-06-05 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ Revert commit 982a38f60b0.
+ * python/py-tui.c (gdbpy_tui_set_title): Restore use of get.
+
+2020-06-05 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * python/py-tui.c (gdbpy_tui_set_title): Use release, not get, to
+ avoid use after free.
+
+2020-06-05 Tom de Vries <tdevries@suse.de>
+
+ * NEWS: Fix typos.
+
+2020-06-04 Simon Marchi <simon.marchi@efficios.com>
+
+ * dwarf2/read.c (dwarf2_read_gdb_index): Save partial_symtabs in
+ the per_bfd object.
+ (dwarf2_read_debug_names): Likewise.
+ (dwarf2_initialize_objfile): Use partial_symtabs from per_bfd
+ object when re-using a per_bfd object with an index.
+
+2020-06-03 Tom de Vries <tdevries@suse.de>
+
+ PR symtab/26046
+ * dwarf2/read.c (scan_partial_symbols): Recurse into DW_TAG_subprogram
+ children for C++.
+ (load_partial_dies): Don't skip DW_TAG_inlined_subroutine child of
+ DW_TAG_subprogram.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_language_data): Delete skip_trampoline
+ initializer.
+ * c-lang.c (c_language_data): Likewise.
+ (cplus_language_data): Likewise.
+ (cplus_language::skip_trampoline): New member function.
+ (asm_language_data): Delete skip_trampoline initializer.
+ (minimal_language_data): Likewise.
+ * d-lang.c (d_language_data): Likewise.
+ * f-lang.c (f_language_data): Likewise.
+ * go-lang.c (go_language_data): Likewise.
+ * language.c (unk_lang_trampoline): Delete function.
+ (skip_language_trampoline): Update.
+ (unknown_language_data): Delete skip_trampoline initializer.
+ (auto_language_data): Likewise.
+ * language.h (language_data): Delete skip_trampoline field.
+ (language_defn::skip_trampoline): New function.
+ * m2-lang.c (m2_language_data): Delete skip_trampoline
+ initializer.
+ * objc-lang.c (objc_skip_trampoline): Delete function, move
+ implementation to objc_language::skip_trampoline.
+ (objc_language_data): Delete skip_trampoline initializer.
+ (objc_language::skip_trampoline): New member function with
+ implementation from objc_skip_trampoline.
+ * opencl-lang.c (opencl_language_data): Delete skip_trampoline
+ initializer.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_language_data): Likewise.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_language_data): Delete la_demangle initializer.
+ (ada_language::demangle): New member function.
+ * c-lang.c (c_language_data): Delete la_demangle initializer.
+ (cplus_language_data): Delete la_demangle initializer.
+ (cplus_language::demangle): New member function.
+ (asm_language_data): Delete la_demangle initializer.
+ (minimal_language_data): Delete la_demangle initializer.
+ * d-lang.c (d_language_data): Delete la_demangle initializer.
+ (d_language::demangle): New member function.
+ * f-lang.c (f_language_data): Delete la_demangle initializer.
+ (f_language::demangle): New member function.
+ * go-lang.c (go_language_data): Delete la_demangle initializer.
+ (go_language::demangle): New member function.
+ * language.c (language_demangle): Update.
+ (unk_lang_demangle): Delete.
+ (unknown_language_data): Delete la_demangle initializer.
+ (unknown_language::demangle): New member function.
+ (auto_language_data): Delete la_demangle initializer.
+ (auto_language::demangle): New member function.
+ * language.h (language_data): Delete la_demangle field.
+ (language_defn::demangle): New function.
+ * m2-lang.c (m2_language_data): Delete la_demangle initializer.
+ * objc-lang.c (objc_language_data): Delete la_demangle
+ initializer.
+ (objc_language::demangle): New member function.
+ * opencl-lang.c (opencl_language_data): Delete la_demangle
+ initializer.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_language_data): Likewise.
+ (rust_language::demangle): New member function.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_language_data): Delete la_print_type
+ initializer.
+ (ada_language::print_type): New member function.
+ * c-lang.c (c_language_data): Delete la_print_type initializer.
+ (c_language::print_type): New member function.
+ (cplus_language_data): Delete la_print_type initializer.
+ (cplus_language::print_type): New member function.
+ (asm_language_data): Delete la_print_type initializer.
+ (asm_language::print_type): New member function.
+ (minimal_language_data): Delete la_print_type initializer.
+ (minimal_language::print_type): New member function.
+ * d-lang.c (d_language_data): Delete la_print_type initializer.
+ (d_language::print_type): New member function.
+ * f-lang.c (f_language_data): Delete la_print_type initializer.
+ (f_language::print_type): New member function.
+ * go-lang.c (go_language_data): Delete la_print_type initializer.
+ (go_language::print_type): New member function.
+ * language.c (unk_lang_print_type): Delete.
+ (unknown_language_data): Delete la_print_type initializer.
+ (unknown_language::print_type): New member function.
+ (auto_language_data): Delete la_print_type initializer.
+ (auto_language::print_type): New member function.
+ * language.h (language_data): Delete la_print_type field.
+ (language_defn::print_type): New function.
+ (LA_PRINT_TYPE): Update.
+ * m2-lang.c (m2_language_data): Delete la_print_type initializer.
+ (m2_language::print_type): New member function.
+ * objc-lang.c (objc_language_data): Delete la_print_type
+ initializer.
+ (objc_language::print_type): New member function.
+ * opencl-lang.c (opencl_print_type): Delete, implementation moved
+ to opencl_language::print_type.
+ (opencl_language_data): Delete la_print_type initializer.
+ (opencl_language::print_type): New member function, implementation
+ from opencl_print_type.
+ * p-lang.c (pascal_language_data): Delete la_print_type
+ initializer.
+ (pascal_language::print_type): New member function.
+ * rust-lang.c (rust_print_type): Delete, implementation moved to
+ rust_language::print_type.
+ (rust_language_data): Delete la_print_type initializer.
+ (rust_language::print_type): New member function, implementation
+ from rust_print_type.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_sniff_from_mangled_name): Delete function,
+ implementation moves to...
+ (ada_language::sniff_from_mangled_name): ...here. Update return
+ type.
+ (ada_language_data): Delete la_sniff_from_mangled_name
+ initializer.
+ * c-lang.c (c_language_data): Likewise.
+ (cplus_language_data): Likewise.
+ (cplus_language::sniff_from_mangled_name): New member function,
+ implementation taken from gdb_sniff_from_mangled_name.
+ (asm_language_data): Delete la_sniff_from_mangled_name
+ initializer.
+ (minimal_language_data): Likewise.
+ * cp-support.c (gdb_sniff_from_mangled_name): Delete,
+ implementation moves to cplus_language::sniff_from_mangled_name.
+ * cp-support.h (gdb_sniff_from_mangled_name): Delete declaration.
+ * d-lang.c (d_sniff_from_mangled_name): Delete, implementation
+ moves to...
+ (d_language::sniff_from_mangled_name): ...here.
+ (d_language_data): Delete la_sniff_from_mangled_name initializer.
+ * f-lang.c (f_language_data): Likewise.
+ * go-lang.c (go_sniff_from_mangled_name): Delete, implementation
+ moves to...
+ (go_language::sniff_from_mangled_name): ...here.
+ (go_language_data): Delete la_sniff_from_mangled_name initializer.
+ * language.c (language_sniff_from_mangled_name): Delete.
+ (unknown_language_data): Delete la_sniff_from_mangled_name
+ initializer.
+ (auto_language_data): Likewise.
+ * language.h (language_data): Delete la_sniff_from_mangled_name
+ field.
+ (language_defn::sniff_from_mangled_name): New function.
+ (language_sniff_from_mangled_name): Delete declaration.
+ * m2-lang.c (m2_language_data): Delete la_sniff_from_mangled_name
+ field.
+ * objc-lang.c (objc_sniff_from_mangled_name): Delete,
+ implementation moves to...
+ (objc_language::sniff_from_mangled_name): ...here.
+ (objc_language_data): Delete la_sniff_from_mangled_name initializer.
+ * opencl-lang.c (opencl_language_data): Likewise.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_sniff_from_mangled_name): Delete,
+ implementation moves to...
+ (rust_language::sniff_from_mangled_name): ...here.
+ (rust_language_data): Delete la_sniff_from_mangled_name
+ initializer.
+ * symtab.c (symbol_find_demangled_name): Call
+ sniff_from_mangled_name member function.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_language_data): Delete la_search_name_hash
+ initializer.
+ * c-lang.c (c_language_data): Likewise.
+ (cplus_language_data): Likewise.
+ (cplus_language::search_name_hash): New member function.
+ (asm_language_data): Delete la_search_name_hash initializer.
+ (minimal_language_data): Likewise.
+ * d-lang.c (d_language_data): Likewise.
+ * dictionary.c (default_search_name_hash): Rename to...
+ (language_defn::search_name_hash): ...this.
+ * f-lang.c (f_language_data): Likewise.
+ (f_language::search_name_hash): New member function.
+ * go-lang.c (go_language_data): Delete la_search_name_hash
+ initializer.
+ * language.c (unknown_language_data): Likewise.
+ (auto_language_data): Likewise.
+ * language.h (struct language_data): Delete la_search_name_hash
+ field.
+ (language_defn::search_name_hash): Declare new member function.
+ (default_search_name_hash): Delete declaration.
+ * m2-lang.c (m2_language_data): Delete la_search_name_hash
+ initializer.
+ * objc-lang.c (objc_language_data): Likewise.
+ * opencl-lang.c (opencl_language_data): Likewise.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_language_data): Likewise.
+ * symtab.c (search_name_hash): Update call.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_language_data): Delete la_get_compile_instance
+ initializer.
+ * c-lang.c (class compile_instance): Declare.
+ (c_language_data): Delete la_get_compile_instance initializer.
+ (c_language::get_compile_instance): New member function.
+ (cplus_language_data): Delete la_get_compile_instance initializer.
+ (cplus_language::get_compile_instance): New member function.
+ (asm_language_data): Delete la_get_compile_instance initializer.
+ (minimal_language_data): Likewise.
+ * c-lang.h (c_get_compile_context): Update comment.
+ (cplus_get_compile_context): Update comment.
+ * compile/compile.c (compile_to_object): Update calls, don't rely
+ on function pointer being NULL.
+ * d-lang.c (d_language_data): Delete la_get_compile_instance
+ initializer.
+ * f-lang.c (f_language_data): Likewise.
+ * go-lang.c (go_language_data): Likewise.
+ * language.c (unknown_language_data): Likewise.
+ (auto_language_data): Likewise.
+ * language.h (language_data): Delete la_get_compile_instance field.
+ (language_defn::get_compile_instance): New member function.
+ * m2-lang.c (m2_language_data): Delete la_get_compile_instance
+ initializer.
+ * objc-lang.c (objc_language_data): Likewise.
+ * opencl-lang.c (opencl_language_data): Likewise.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_language_data): Likewise.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_add_all_symbols): Update comment.
+ (ada_iterate_over_symbols): Delete, move implementation to...
+ (ada_language::iterate_over_symbols): ...here, a new member
+ function, rewrite to use range based for loop.
+ (ada_language_data): Delete la_iterate_over_symbols initializer.
+ * c-lang.c (c_language_data): Likewise.
+ (cplus_language_data): Likewise.
+ (asm_language_data): Likewise.
+ (minimal_language_data): Likewise.
+ * d-lang.c (d_language_data): Likewise.
+ * f-lang.c (f_language_data): Likewise.
+ * go-lang.c (go_language_data): Likewise.
+ * language.c (unknown_language_data): Likewise.
+ (auto_language_data): Likewise.
+ * language.h (language_data): Delete la_iterate_over_symbols field.
+ (language_defn::iterate_over_symbols): New member function.
+ (LA_ITERATE_OVER_SYMBOLS): Update.
+ * linespec.c (iterate_over_all_matching_symtabs): Update.
+ * m2-lang.c (m2_language_data): Delete la_iterate_over_symbols
+ initializer.
+ * objc-lang.c (objc_language_data): Likewise.
+ * opencl-lang.c (opencl_language_data): Likewise.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_language_data): Likewise.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_language_data): Delete
+ la_lookup_transparent_type initializer.
+ * c-lang.c (c_language_data): Likewise.
+ (cplus_language_data): Likewise.
+ (cplus_language::lookup_transparent_type): New member function.
+ (asm_language_data): Delete la_lookup_transparent_type
+ initializer.
+ (minimal_language_data): Likewise.
+ * d-lang.c (d_language_data): Likewise.
+ * f-lang.c (f_language_data): Likewise.
+ * go-lang.c (go_language_data): Likewise.
+ * language.c (unknown_language_data): Likewise.
+ (auto_language_data): Likewise.
+ * language.h (struct language_data): Delete
+ la_lookup_transparent_type field.
+ (language_defn::lookup_transparent_type): New member function.
+ * m2-lang.c (m2_language_data): Delete la_lookup_transparent_type
+ initializer.
+ * objc-lang.c (objc_language_data): Likewise.
+ * opencl-lang.c (opencl_language_data): Likewise.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_language_data): Likewise.
+ * symtab.c (symbol_matches_domain): Update call.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_language_arch_info): Delete function, move
+ implementation to...
+ (ada_language::language_arch_info): ...here, a new member
+ function.
+ (ada_language_data): Delete la_language_arch_info.
+ * c-lang.c (c_language_data): Likewise.
+ (c_language::language_arch_info): New member function.
+ (cplus_language_arch_info): Delete function, move
+ implementation to...
+ (cplus_language::language_arch_info): ...here, a new member
+ function.
+ (cplus_language_data): Delete la_language_arch_info.
+ (asm_language_data): Likewise.
+ (asm_language::language_arch_info): New member function.
+ (minimal_language_data): Delete la_language_arch_info.
+ (minimal_language::language_arch_info): New member function.
+ * d-lang.c (d_language_arch_info): Delete function, move
+ implementation to...
+ (d_language::language_arch_info): ...here, a new member
+ function.
+ (d_language_data): Delete la_language_arch_info.
+ * f-lang.c (f_language_arch_info): Delete function, move
+ implementation to...
+ (f_language::language_arch_info): ...here, a new member
+ function.
+ (f_language_data): Delete la_language_arch_info.
+ * go-lang.c (go_language_arch_info): Delete function, move
+ implementation to...
+ (go_language::language_arch_info): ...here, a new member
+ function.
+ (go_language_data): Delete la_language_arch_info.
+ * language.c (unknown_language_data): Likewise.
+ (unknown_language::language_arch_info): New member function.
+ (auto_language_data): Delete la_language_arch_info.
+ (auto_language::language_arch_info): New member function.
+ (language_gdbarch_post_init): Update call to
+ la_language_arch_info.
+ * language.h (language_data): Delete la_language_arch_info
+ function pointer.
+ (language_defn::language_arch_info): New function.
+ * m2-lang.c (m2_language_arch_info): Delete function, move
+ implementation to...
+ (m2_language::language_arch_info): ...here, a new member
+ function.
+ (m2_language_data): Delete la_language_arch_info.
+ * objc-lang.c (objc_language_arch_info): Delete function, move
+ implementation to...
+ (objc_language::language_arch_info): ...here, a new member
+ function.
+ (objc_language_data): Delete la_language_arch_info.
+ * opencl-lang.c (opencl_language_arch_info): Delete function, move
+ implementation to...
+ (opencl_language::language_arch_info): ...here, a new member
+ function.
+ (opencl_language_data): Delete la_language_arch_info.
+ * p-lang.c (pascal_language_arch_info): Delete function, move
+ implementation to...
+ (pascal_language::language_arch_info): ...here, a new member
+ function.
+ (pascal_language_data): Delete la_language_arch_info.
+ * rust-lang.c (rust_language_arch_info): Delete function, move
+ implementation to...
+ (rust_language::language_arch_info): ...here, a new member
+ function.
+ (rust_language_data): Delete la_language_arch_info.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_language_data): Delete la_pass_by_reference
+ initializer.
+ * c-lang.c (c_language_data): Likewise.
+ (cplus_language_data): Likewise.
+ (cplus_language::pass_by_reference_info): New method.
+ (asm_language_data): Delete la_pass_by_reference initializer.
+ (minimal_language_data): Likewise.
+ * cp-abi.c (cp_pass_by_reference): Remove use of
+ default_pass_by_reference.
+ * d-lang.c (d_language_data): Likewise.
+ * f-lang.c (f_language_data): Likewise.
+ * gnu-v3-abi.c (gnuv3_pass_by_reference): Remove use of
+ default_pass_by_reference.
+ * go-lang.c (go_language_data): Likewise.
+ * language.c (language_pass_by_reference): Update.
+ (default_pass_by_reference): Delete.
+ (unknown_language_data): Delete la_pass_by_reference
+ initializer.
+ (auto_language_data): Likewise.
+ * language.h (struct language_data): Delete la_pass_by_reference
+ field.
+ (language_defn::pass_by_reference_info): New member function.
+ (default_pass_by_reference): Delete declaration.
+ * m2-lang.c (m2_language_data): Delete la_pass_by_reference
+ initializer.
+ * objc-lang.c (objc_language_data): Likewise.
+ * opencl-lang.c (opencl_language_data): Likewise.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_language_data): Likewise.
+
+2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * ada-lang.c (ada_read_var_value): Delete function, move
+ implementation to...
+ (ada_language::read_var_value): ...here.
+ (ada_language_data): Delete la_read_var_value initializer.
+ * c-lang.c (c_language_data): Likewise.
+ (cplus_language_data): Likewise.
+ (minimal_language_data): Likewise.
+ * d-lang.c (d_language_data): Likewise.
+ * f-lang.c (f_language_data): Likewise.
+ * findvar.c (default_read_var_value): Rename to...
+ (language_defn::read_var_value): ...this.
+ * findvar.c (read_var_value): Update header comment, and change to
+ call member function instead of function pointer.
+ * go-lang.c (go_language_data): Likewise.
+ * language.c (unknown_language_data): Delete la_read_var_value
+ initializer.
+ (auto_language_data): Likewise.
+ * language.h (struct language_data): Delete la_read_var_value
+ field.
+ (language_defn::read_var_value): New member function.
+ (default_read_var_value): Delete declaration.
+ * m2-lang.c (m2_language_data): Delete la_read_var_value
+ initializer.
+ * objc-lang.c (objc_language_data): Likewise.
+ * opencl-lang.c (opencl_language_data): Likewise.
+ * p-lang.c (pascal_language_data): Likewise.
+ * rust-lang.c (rust_language_data): Likewise.
+ * value.h (default_read_var_value): Delete declaration.
+
2020-06-02 Andrew Burgess <andrew.burgess@embecosm.com>
* ada-lang.c (ada_print_array_index): Delete function, move