3 * language.c (language_sniff_from_mangled_name): Fix "langauge"
5 * location.h (string_to_event_location): Likewise.
13 * breakpoint.h (fix_multi_location_breakpoint_output_globally):
14 New variable declaration.
15 * breakpoint.c (fix_multi_location_breakpoint_output_globally):
17 (print_one_breakpoint): Use ui_out::test_flags and new global
18 variable to compute use_fixed_output.
19 * mi/mi-main.h (mi_multi_location_breakpoint_output_fixed):
21 * mi/mi-main.c (fix_multi_location_breakpoint_output): Remove.
22 (mi_multi_location_breakpoint_output_fixed): Remove.
23 (mi_cmd_fix_multi_location_breakpoint_output): Adjust to set the
25 * mi/mi-out.c (mi_ui_out::mi_ui_out): Set
26 fix_multi_location_breakpoint_output flag if version >= 3.
27 * ui-out.h (enum ui_out_flag)
28 <fix_multi_location_breakpoint_output>: New enumerator.
32 * contrib/cc-with-tweaks.sh: Validate dwz's work.
36 * ada-lang.c (catch_ada_completer): New function.
37 (_initialize_ada_language): Use it.
41 * thread.c (print_thread_info): Make "requested_threads" const.
42 * gdbthread.h (print_thread_info): Make "requested_threads"
44 * ada-tasks.c (print_ada_task_info): Make "taskno_str" const.
45 * ada-lang.h (print_ada_task_info): Make "taskno_str" const.
49 * gdbtypes.c (objfile_type_data): Change type.
50 (objfile_type, _initialize_gdbtypes): Update.
54 * dwarf2-frame.c (dwarf2_frame_objfile_data): Change type.
55 (dwarf2_frame_find_fde, dwarf2_build_frame_info)
56 (_initialize_dwarf2_frame): Update.
60 * objc-lang.c (objc_objfile_data): Change type.
61 (find_methods): Update.
62 (_initialize_objc_lang): Remove.
66 * stabsread.c (rs6000_builtin_type_data): Change type.
67 (rs6000_builtin_type, _initialize_stabsread): Update.
71 * mips-tdep.c (mips_pdr_data): Remove.
72 (_initialize_mips_tdep): Update.
76 * hppa-tdep.c (hppa_objfile_priv_data): Change type.
77 (hppa_init_objfile_priv_data, read_unwind_info)
78 (find_unwind_entry, _initialize_hppa_tdep): Update.
82 * elfread.c (elf_objfile_gnu_ifunc_cache_data): Change type.
83 (elf_gnu_ifunc_record_cache): Update. Don't allocate hash table
85 (elf_gnu_ifunc_resolve_by_cache, _initialize_elfread): Update.
89 * mdebugread.c (basic_type_data): Change type.
90 (basic_type, _initialize_mdebugread): Update.
94 * common/gdb_unique_ptr.h (struct noop_deleter): New.
98 * nto-tdep.c (nto_inferior_data_reg): Change type.
99 (nto_inferior_data): Update.
100 (nto_inferior_data_cleanup, nto_new_inferior_data)
101 (_initialize_nto_tdep): Remove.
102 * nto-tdep.h (struct nto_inferior_data): Add initializers.
106 * ada-lang.c (struct ada_inferior_data): Add initializers.
107 (ada_inferior_data): Change type.
108 (ada_inferior_data_cleanup): Remove.
109 (get_ada_inferior_data, ada_inferior_exit)
110 (struct ada_pspace_data): Add initializers, destructor.
111 (ada_pspace_data_handle): Change type.
112 (get_ada_pspace_data): Update.
113 (ada_pspace_data_cleanup): Remove.
117 * coffread.c (struct coff_symfile_info): Add initializers.
118 (coff_objfile_data_key): Move lower. Change type.
119 (coff_symfile_init, coff_symfile_read, _initialize_coffread):
121 (coff_free_info): Remove.
125 * fbsd-tdep.c (struct fbsd_pspace_data): Add initializers.
126 (fbsd_pspace_data_handle): Move lower. Change type.
127 (get_fbsd_pspace_data): Update.
128 (fbsd_pspace_data_cleanup): Remove.
129 (_initialize_fbsd_tdep): Update.
133 * ada-tasks.c (ada_tasks_pspace_data_handle): Change type.
134 (get_ada_tasks_pspace_data): Update.
135 (ada_tasks_pspace_data_cleanup): Remove.
136 (_initialize_tasks): Update.
137 (ada_tasks_inferior_data_handle): Change type.
138 (get_ada_tasks_inferior_data): Update.
139 (ada_tasks_inferior_data_cleanup): Remove.
140 (struct ada_tasks_pspace_data): Add initializers.
144 * symfile.h (struct sym_probe_fns) <sym_get_probes>: Change type.
145 * symfile-debug.c (debug_sym_get_probes): Change type.
146 * stap-probe.c (handle_stap_probe):
147 (stap_static_probe_ops::get_probes): Change type.
148 * probe.h (class static_probe_ops) <get_probes>: Change type.
149 * probe.c (class any_static_probe_ops) <get_probes>: Change type.
150 (parse_probes_in_pspace): Update.
151 (find_probes_in_objfile, find_probe_by_pc, collect_probes):
153 (any_static_probe_ops::get_probes): Change type.
154 * elfread.c (elfread_data): New typedef.
155 (probe_key): Change type.
156 (elf_get_probes): Likewise. Update.
157 (probe_key_free): Remove.
158 (_initialize_elfread): Update.
159 * dtrace-probe.c (class dtrace_static_probe_ops) <get_probes>:
161 (dtrace_process_dof_probe, dtrace_process_dof)
162 (dtrace_static_probe_ops::get_probe): Change type.
166 * xcoffread.c (struct xcoff_symfile_info): Rename from
167 coff_symfile_info. Add initializers.
168 (xcoff_objfile_data_key): Move lower. Change type.
169 (XCOFF_DATA): Rewrite.
170 (xcoff_free_info): Remove.
171 (xcoff_symfile_init, _initialize_xcoffread, read_xcoff_symtab)
172 (read_symbol, read_symbol_lineno, find_linenos, init_stringtab)
173 (xcoff_initial_scan): Update.
177 * solib-svr4.c (struct svr4_info): Add initializers and
179 <probes_table>: Now an htab_up.
180 (solib_svr4_pspace_data): Change type.
181 (free_probes_table): Simplify.
182 (~svr4_info): Rename from svr4_pspace_data_cleanup.
183 (get_svr4_info, probes_table_htab_remove_objfile_probes)
184 (probes_table_remove_objfile_probes, register_solib_event_probe)
185 (solib_event_probe_at, svr4_update_solib_event_breakpoint)
186 (_initialize_svr4_solib): Update.
190 * remote.c (remote_pspace_data): Change type.
191 (remote_pspace_data_cleanup): Remove.
192 (get_remote_exec_file, set_pspace_remote_exec_file)
193 (_initialize_remote): Update.
197 * breakpoint.c (breakpoint_objfile_key): Change type.
198 (get_breakpoint_objfile_data): Update.
199 (free_breakpoint_objfile_data): Remove.
200 (_initialize_breakpoint): Update.
204 * linux-tdep.c (struct linux_info): Add initializers.
205 (linux_inferior_data): Move. Change type.
206 (invalidate_linux_cache_inf): Update.
207 (linux_inferior_data_cleanup): Remove.
208 (get_linux_inferior_data, _initialize_linux_tdep): Update.
212 * auxv.c (auxv_inferior_data): Move. Change type.
213 (auxv_inferior_data_cleanup): Remove.
214 (invalidate_auxv_cache_inf): Rewrite.
215 (get_auxv_inferior_data, _initialize_auxv): Update.
219 * symfile-debug.c (struct debug_sym_fns_data): Add initializers.
220 (symfile_debug_objfile_data_key): Change type.
221 (symfile_debug_installed, debug_qf_has_symbols)
222 (debug_qf_find_last_source_symtab)
223 (debug_qf_forget_cached_source_info)
224 (debug_qf_map_symtabs_matching_filename, debug_qf_lookup_symbol)
225 (debug_qf_print_stats, debug_qf_dump)
226 (debug_qf_expand_symtabs_for_function)
227 (debug_qf_expand_all_symtabs)
228 (debug_qf_expand_symtabs_with_fullname)
229 (debug_qf_map_matching_symbols)
230 (debug_qf_expand_symtabs_matching)
231 (debug_qf_find_pc_sect_compunit_symtab)
232 (debug_qf_map_symbol_filenames)
233 (debug_qf_find_compunit_symtab_by_address, debug_sym_get_probes)
234 (debug_sym_new_init, debug_sym_init, debug_sym_read)
235 (debug_sym_read_psymbols, debug_sym_finish, debug_sym_offsets)
236 (debug_sym_read_linetable, debug_sym_relocate): Update.
237 (symfile_debug_free_objfile): Remove.
238 (install_symfile_debug_logging, _initialize_symfile_debug):
243 * dwarf2read.h (struct dwarf2_per_objfile): Don't inherit from
245 * dwarf2read.c (dwarf2_objfile_data_key): Change type.
246 (get_dwarf2_per_objfile): Update.
247 (set_dwarf2_per_objfile): Remove.
248 (dwarf2_has_info, dwarf2_get_section_info): Update.
249 (dwarf2_free_objfile): Remove.
250 (_initialize_dwarf2_read): Update.
254 * auto-load.c (struct auto_load_pspace_info): Add destructor and
256 <unsupported_script_warning_printed,
257 script_not_found_warning_printed>: Now bool.
258 (auto_load_pspace_data): Change type.
259 (~auto_load_pspace_info): Rename from
260 auto_load_pspace_data_cleanup.
261 (get_auto_load_pspace_data, init_loaded_scripts_info)
262 (clear_section_scripts, maybe_print_unsupported_script_warning)
263 (maybe_print_script_not_found_warning, _initialize_auto_load):
268 * objfiles.c (objfile_pspace_info): Add destructor and
270 (objfiles_pspace_data): Change type.
271 (~objfile_pspace_info): Rename from objfiles_pspace_data_cleanup.
272 (get_objfile_pspace_data): Update.
273 (objfiles_bfd_data): Change type.
274 (get_objfile_bfd_data): Update.
275 (objfile_bfd_data_free, _initialize_objfiles): Remove.
279 * break-catch-syscall.c (catch_syscall_inferior_data): Move.
281 (get_catch_syscall_inferior_data): Update.
282 (catch_syscall_inferior_data_cleanup): Remove.
283 (_initialize_break_catch_syscall): Update.
287 * inflow.c (struct terminal_info): Add destructor and
289 (inflow_inferior_data): Change type.
290 (~terminal_info): Rename from inflow_inferior_data_cleanup.
291 (get_inflow_inferior_data, inflow_inferior_exit)
292 (swap_terminal_info, _initialize_inflow): Update.
296 * target-dcache.c (target_dcache_cleanup): Remove.
297 (target_dcache_aspace_key): Change type.
298 (target_dcache_init_p, target_dcache_invalidate)
299 (target_dcache_get, target_dcache_get_or_init)
300 (_initialize_target_dcache): Update.
301 * dcache.h (struct dcache_deleter): New.
305 * symtab.c (struct symbol_cache): Add destructor and
307 (symbol_cache_key): Move. Change type.
308 (make_symbol_cache, free_symbol_cache): Remove.
309 (get_symbol_cache): Update.
310 (symbol_cache_cleanup): Remove.
311 (ALL_PSPACES, symbol_cache_flush)
312 (maintenance_print_symbol_cache)
313 (maintenance_print_symbol_cache_statistics, _initialize_symtab):
318 * symtab.c (struct main_info): Add destructor and initializers.
319 (main_progspace_key): Move. Change type.
320 (get_main_info): Update.
321 (main_info_cleanup): Remove.
322 (_initialize_symtab): Update.
326 * registry.h (DECLARE_REGISTRY): Define the _key class.
330 * NEWS: Merge two 'New commands' sections.
334 * ada-valprint.c (ada_val_print_gnat_array): Remove language
335 parameter and use Ada language definition instead.
336 (ada_val_print_ptr): Remove unused language parameter.
337 (ada_val_print_num): Remove language parameter and use Ada language
339 (ada_val_print_enum, ada_val_print_flt): Remove unused language
341 (ada_val_print_struct_union, ada_val_print_ref): Remove language
342 parameter and use Ada language definition instead.
343 (ada_val_print_1): Update all ada_val_print_xxx calls.
344 Remove language parameter.
345 (ada_val_print): Update ada_val_print_1 call.
349 * remote.c (remote_hw_watchpoint_limit)
350 (remote_hw_watchpoint_length_limit, remote_hw_breakpoint_limit):
355 * maint.c (_initialize_maint_cmds): Move initialization code to
357 (watchdog, show_watchdog): Move to remote.c.
358 * remote.c (watchdog, show_watchdog): Move from maint.c. Make
360 (_initialize_remote): Move initialization code from maint.c.
361 * defs.h (watchdog): Don't declare.
365 * tui/tui-interp.c: Include main.h.
366 * interps.c: Include main.h.
367 * main.h (interpreter_p): Declare.
368 * defs.h (interpreter_p): Don't declare.
372 * dwarf2loc.c: Include dwarf2read.h.
373 * defs.h (read_unsigned_leb128): Don't declare.
374 * dwarf2read.h (read_unsigned_leb128): Declare.
378 * utils.c (fputs_maybe_filtered): Call can_emit_style_escape as a
383 * utils.c (fputs_maybe_filtered): Reset style after paging, even
384 when no wrap column is set.
388 * c-lang.c (c_get_string): Handle non-C-style arrays.
392 * typeprint.c (print_offset_data::update): Print the bit offset,
393 not the number of bits remaining.
397 * typeprint.c (print_offset_data::maybe_print_hole): Add extra
398 padding at end of comment.
402 * dwarf2loc.c (dwarf2_evaluate_property) <PROP_ADDR_OFFSET>:
407 * common/scoped_mmap.c: Include common-defs.h.
408 * common/scoped_mmap.h: Don't include config.h.
412 * aarch64-tdep.c (stack_item_t): Remove typedef and DEF_VEC.
413 (struct aarch64_call_info): Add initializers.
414 <si>: Now a std::vector.
415 (pass_on_stack, aarch64_push_dummy_call): Update.
420 * ppc-linux-nat.c (thread_points_p): Remove typedef and DEF_VEC.
421 (ppc_threads): Now a std::vector. Now static.
422 (hwdebug_find_thread_points_by_tid)
423 (ppc_linux_nat_target::low_new_thread, ppc_linux_thread_exit):
428 * arc-tdep.c (arc_tdesc_init): Return bool.
432 * arm-linux-nat.c (arm_linux_nat_target::can_use_hw_breakpoint):
433 Use gdb_assert_not_reached.
437 * compile/compile-cplus-types.c (compile_cplus_convert_enum): Use
442 * arc-tdep.c (arc_tdesc_init): Use bool.
446 * stack.c (select_frame_for_mi): Use "false", not "FALSE".
450 * cli/cli-cmds.c (valid_command_p): Return bool.
454 * cli/cli-decode.c (valid_user_defined_cmd_name_p): Return bool.
455 * command.h (valid_user_defined_cmd_name_p): Channge return type.
459 * python/lib/gdb/prompt.py (_ExtendedPrompt)
460 <before_prompt_hook, get_show_string>: Fix incorrect use of 'is'
461 operator for comparison.
465 * psymtab.c (psymbol_name_matches, match_partial_symbol)
466 (lookup_partial_symbol, print_partial_symbols)
467 (recursively_search_psymtabs, sort_pst_symbols, psymbol_hash)
468 (psymbol_compare): Update.
469 (add_psymbol_to_bcache): Clear the entire psymbol.
470 (maintenance_check_psymtabs): Update.
471 * psympriv.h (struct partial_symbol): Don't derive from
473 <obj_section, unrelocated_address, address,
474 set_unrelocated_address>: Update.
476 * dwarf-index-write.c (write_psymbols, debug_names::insert)
477 (debug_names::write_psymbols): Update.
481 * contrib/cc-with-tweaks.sh: Support -n arg.
485 * corelow.c (core_target::detach): Ensure frame cache and
486 register caches are cleared.
487 inferior.c (exit_inferior_1): Likewise.
492 * dictionary.c (collate_pending_symbols_by_language): Remove
493 "struct" from foreach.
494 * symtab.c (lookup_global_symbol_from_objfile)
495 (lookup_symbol_in_objfile_from_linkage_name): Remove "struct" from
497 * ser-tcp.c (net_open): Remove "struct" from foreach.
498 * objfiles.c (objfile_relocate, objfile_rebase)
499 (objfile_has_symbols): Remove "struct" from foreach.
500 * minsyms.c (lookup_minimal_symbol_by_pc_section): Remove "struct"
502 * dwarf2read.c (handle_struct_member_die): Remove "struct" from
504 * darwin-nat.c (thread_info_from_private_thread_info): Remove
505 "struct" from foreach.
506 * ada-lang.c (create_excep_cond_exprs)
507 (ada_exception_catchpoint_cond_string): Remove "struct" from
512 * ada-exp.y (convert_char_literal): Check suffix of each
518 * ada-exp.y (yywrap): Don't define.
519 * ada-lex.l (%option): Add noyywrap
524 * common/common-defs.h [__MINGW32__ || __CYGWIN__]: Define
525 _WIN32_WINNT to the XP level, unless already defined to a higher
528 * unittests/parse-connection-spec-selftests.c:
530 * common/netstuff.c [USE_WIN32API]: Remove the _WIN32_WINNT
533 * symfile.c (find_separate_debug_file): Remove colon from the
534 drive spec of DOS/Windows file names of the target, so that the
535 file name produced from DEBUGDIR and the target's directory will
536 be valid on DOS/Windows systems.
540 * rust-lang.c (val_print_struct): Handle printing structures
545 * valarith.c (_initialize_valarith): Remove.
549 * ada-lang.c (ada_value_primitive_field): Treat more fields as
554 * ada-lang.c (ada_value_assign): Correctly compute starting offset
555 for big-endian copies.
558 * gdb/dwarf2read.c (read_3_bytes): New declaration.
559 (read_attribute_value): Added DW_FORM_strx1-4 cases.
560 (read_3_bytes): New function.
564 * windows-nat.c (main_thread_id): Delete.
565 (handle_output_debug_string): Replace main_thread_id by
566 current_event.dwThreadId.
567 (fake_create_process): Likewise.
568 (get_windows_debug_event) <CREATE_PROCESS_DEBUG_EVENT>:
569 Do not set main_thread_id.
570 <LOAD_DLL_DEBUG_EVENT>: Replace main_thread_id by
571 current_event.dwThreadId.
572 <UNLOAD_DLL_DEBUG_EVENT>: Likewise.
576 * windows-nat.c (get_windows_debug_event) <EXIT_PROCESS_DEBUG_EVENT>:
577 Use current_event.dwThreadId instead of main_thread_id.
581 * ada-lang.c (ada_lookup_simple_minsyms): New function.
582 (create_excep_cond_exprs): Iterate over program spaces.
583 (ada_exception_catchpoint_cond_string): Examine all minimal
584 symbols for exception types.
589 * dwarf2read.c (process_structure_scope): Handle case where type
590 has template parameters but no symbol was created.
595 * f-typeprint.c (f_type_print_base): Print 'allocatable' type
597 * gdbtypes.h (TYPE_IS_ALLOCATABLE): Define.
601 * f-typeprint.c (f_print_type): Update rules for printing
603 (f_type_print_varspec_suffix): Likewise.
608 * f-typeprint.c (f_type_print_varspec_suffix): Handle printing
613 * f-lang.c (build_fortran_types): Change name of void type to
615 * f-typeprint.c (f_type_print_base): Print the name of the void
616 type, rather than a fixed string.
617 * f-valprint.c (f_decorations): Use lower case void string.
622 * dwarf2read.c (dwarf2_init_complex_target_type): Use different
629 * f-exp.y (BINOP_INTRINSIC): New token.
630 (exp): New parser rule handling BINOP_INTRINSIC.
631 (f77_keywords): Add new builtin procedures.
632 * f-lang.c (evaluate_subexp_f): Handle BINOP_MOD, UNOP_FORTRAN_CEILING,
633 UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
634 (operator_length_f): Handle UNOP_FORTRAN_CEILING,
635 UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
636 (print_unop_subexp_f): New function.
637 (print_binop_subexp_f): New function.
638 (print_subexp_f): Handle UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR,
639 BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
640 (dump_subexp_body_f): Likewise.
641 (operator_check_f): Likewise.
642 * fortran-operator.def: Add UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR,
643 BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX
647 * gdb/expprint.c (dump_subexp_body_standard): Remove use of
649 * gdb/expression.h (exp_opcode): Include 'fortran-operator.def'.
650 * gdb/f-exp.y (exp): Rename UNOP_KIND to UNOP_FORTRAN_KIND.
651 * gdb/f-lang.c (evaluate_subexp_f): Likewise.
652 (operator_length_f): New fuction.
653 (print_subexp_f): New function.
654 (op_name_f): New function.
655 (dump_subexp_body_f): New function.
656 (operator_check_f): New function.
657 (exp_descriptor_f): Replace standard expression handling functions
659 * gdb/fortran-operator.def: New file.
660 * gdb/parse.c (operator_length_standard): Remove use of UNOP_KIND.
661 * gdb/std-operator.def: Remove UNOP_KIND.
665 * std-operator.def: Remove unbalanced, stray double quote
674 * cp-valprint.c (cp_print_value_fields): Allow an additional level
675 of depth when printing anonymous structs or unions.
676 * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
677 Don't print either the top-level value, or the children if the
678 max-depth is exceeded.
679 (ppscm_print_children): When printing the key of a map, allow one
680 extra level of depth.
681 * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Don't
682 print either the top-level value, or the children if the max-depth
684 (print_children): When printing the key of a map, allow one extra
686 * python/py-value.c (valpy_format_string): Add max_depth keyword.
687 * valprint.c: (PRINT_MAX_DEPTH_DEFAULT): Define.
688 (user_print_options): Initialise max_depth field.
689 (val_print_scalar_or_string_type_p): New function.
690 (val_print): Check to see if the max depth has been reached.
691 (val_print_check_max_depth): Define new function.
692 (show_print_max_depth): New function.
693 (_initialize_valprint): Add 'print max-depth' option.
694 * valprint.h (struct value_print_options) <max_depth>: New field.
695 (val_print_check_max_depth): Declare new function.
696 * NEWS: Document new feature.
700 * ada-lang.c (ada_language_defn): Initialise new field.
701 * c-lang.c (c_is_string_type_p): New function.
702 (c_language_defn): Initialise new field.
703 (cplus_language_defn): Initialise new field.
704 (asm_language_defn): Initialise new field.
705 (minimal_language_defn): Initialise new field.
706 * c-lang.h (c_is_string_type_p): Declare new function.
707 * d-lang.c (d_language_defn): Initialise new field.
708 * f-lang.c (f_is_string_type_p): New function.
709 (f_language_defn): Initialise new field.
710 * go-lang.c (go_is_string_type_p): New function.
711 (go_language_defn): Initialise new field.
712 * language.c (default_is_string_type_p): New function.
713 (unknown_language_defn): Initialise new field.
714 (auto_language_defn): Initialise new field.
715 * language.h (struct language_defn) <la_is_string_type_p>: New
717 (default_is_string_type_p): Declare new function.
718 * m2-lang.c (m2_language_defn): Initialise new field.
719 * objc-lang.c (objc_language_defn): Initialise new field.
720 * opencl-lang.c (opencl_language_defn): Initialise new field.
721 * p-lang.c (pascal_is_string_type_p): New function.
722 (pascal_language_defn): Initialise new field.
723 * rust-lang.c (rust_is_string_type_p): New function.
724 (rust_language_defn): Initialise new field.
728 * language.h (struct language_defn) <la_struct_too_deep_ellipsis>:
730 * ada-lang.c (ada_language_defn): Initialise new field.
731 * c-lang.c (c_language_defn): Likewise.
732 (cplus_language_defn): Likewise.
733 (asm_language_defn): Likewise.
734 (minimal_language_defn): Likewise.
735 * d-lang.c (d_language_defn): Likewise.
736 * f-lang.c (f_language_defn): Likewise.
737 * go-lang.c (go_language_defn): Likewise.
738 * language.c (unknown_language_defn): Likewise.
739 (auto_language_defn): Likewise.
740 * m2-lang.c (m2_language_defn): Likewise.
741 * objc-lang.c (objc_language_defn): Likewise.
742 * opencl-lang.c (opencl_language_defn): Likewise.
743 * p-lang.c (pascal_language_defn): Likewise.
744 * rust-lang.c (rust_language_defn): Likewise.
748 * ada-lang.c (ada_is_character_type): Change return type to bool.
749 (ada_is_string_type): Likewise.
750 * ada-lang.h (ada_is_character_type): Update declaration
751 (ada_is_string_type): Likewise.
755 Support style in 'frame|thread apply'
757 * gdbcmd.h (execute_command_to_string): New term_out parameter.
758 * record.c (record_start, record_stop): Update callers of
759 execute_command_to_string with false.
760 * guile/guile.c (gdbscm_execute_gdb_command): Likewise.
761 * ui-file.h (class ui_file): New term_out and can_emit_style_escape
763 (class string_file): New constructor with term_out parameter.
764 Override methods term_out and can_emit_style_escape. New member
766 (class stdio_file): Override can_emit_style_escape.
767 (class tee_file): Override term_out and can_emit_style_escape.
768 * utils.h (can_emit_style_escape): Remove.
769 * utils.c (can_emit_style_escape): Likewise.
770 Update all callers of can_emit_style_escape (SOMESTREAM) to
771 SOMESTREAM->can_emit_style_escape.
772 * source-cache.c (source_cache::get_source_lines): Likewise.
773 * stack.c (frame_apply_command_count): Call execute_command_to_string
774 passing the term_out characteristic of the current gdb_stdout.
775 * thread.c (thr_try_catch_cmd): Likewise.
776 * top.c (execute_command_to_string): pass term_out parameter
777 to construct the string_file for the command output.
778 * ui-file.c (term_cli_styling): New function (most code moved
779 from utils.c can_emit_style_escape).
780 (string_file::string_file, string_file::can_emit_style_escape,
781 stdio_file::can_emit_style_escape, tee_file::term_out,
782 tee_file::can_emit_style_escape): New functions.
786 * NEWS: Mention the new set|show may-call-functions.
787 * infcall.c (may_call_functions_p): New variable.
788 (show_may_call_functions_p): New function.
789 (call_function_by_hand_dummy): Throws an error if not
791 (_initialize_infcall): Call add_setshow_boolean_cmd for
797 * cp-support.c (inspect_type): Don't attempt substitutions
798 of symbol with the same name.
803 * event-top.c (gdb_rl_callback_handler): Make "gdb_rl_expt"
808 * xml-support.c (struct gdb_xml_parser) <set_error>: Take an
810 (gdb_xml_start_element_wrapper, gdb_xml_end_element_wrapper)
811 (gdb_xml_parser::parse): Use std::move.
812 * python/python-internal.h (gdbpy_convert_exception): Take a const
814 * python/py-value.c (valpy_getitem, valpy_nonzero): Use
816 * python/py-utils.c (gdbpy_convert_exception): Take a const
818 * python/py-inferior.c (infpy_write_memory, infpy_search_memory):
820 * python/py-breakpoint.c (bppy_set_condition, bppy_set_commands):
822 * mi/mi-main.c (mi_print_exception): Take a const reference.
823 * main.c (handle_command_errors): Take a const reference.
824 * linespec.c (parse_linespec): Use std::move.
825 * infcall.c (run_inferior_call): Use std::move.
826 (call_function_by_hand_dummy): Use std::move.
827 * exec.c (try_open_exec_file): Use std::move.
828 * exceptions.h (exception_print, exception_fprintf)
829 (exception_print_same): Update.
830 * exceptions.c (print_exception, exception_print)
831 (exception_fprintf, exception_print_same): Change parameters to
833 * event-top.c (gdb_rl_callback_read_char_wrapper): Update.
834 * common/new-op.c: Use std::move.
835 * common/common-exceptions.h (struct gdb_exception): Add move
837 (struct gdb_exception_error, struct gdb_exception_quit, struct
838 gdb_quit_bad_alloc): Change constructor to move constructor.
839 (throw_exception): Change parameter to rvalue reference.
840 * common/common-exceptions.c (throw_exception): Take rvalue
842 * cli/cli-interp.c (safe_execute_command): Use std::move.
843 * breakpoint.c (insert_bp_location, location_to_sals): Use
848 * guile/scm-exception.c (gdbscm_scm_from_gdb_exception)
849 (gdbscm_throw_gdb_exception): Take a gdbscm_gdb_exception.
850 * guile/scm-block.c, guile/scm-breakpoint.c, guile/scm-cmd.c,
851 guile/scm-disasm.c, guile/scm-frame.c, guile/scm-lazy-string.c,
852 guile/scm-math.c, guile/scm-param.c, guile/scm-ports.c,
853 guile/scm-symbol.c, guile/scm-symtab.c, guile/scm-type.c,
854 guile/scm-value.c: Use unpack.
855 * guile/guile-internal.h (gdbscm_scm_from_gdb_exception): Take a
856 gdbscm_gdb_exception.
857 (gdbscm_throw_gdb_exception): Likewise.
858 (struct gdbscm_gdb_exception): New.
859 (unpack): New function.
860 (gdbscm_wrap): Use unpack.
864 * event-top.c (gdb_rl_callback_read_char_wrapper_noexcept)
865 (gdb_rl_callback_handler): Use std::move.
866 * common/common-exceptions.h (struct gdb_exception): Add move
868 (throw_exception_sjlj): Change "exception" to const reference.
869 * common/common-exceptions.c (exceptions_state_mc_catch): Update.
870 (throw_exception_sjlj): Change "exception" to const reference.
874 * xml-support.c (gdb_xml_parser::gdb_xml_parser): Update.
875 * python/py-value.c (valpy_getitem, valpy_nonzero): Update.
876 * python/py-inferior.c (infpy_write_memory, infpy_search_memory):
878 * python/py-breakpoint.c (bppy_set_condition, bppy_set_commands):
880 * mi/mi-interp.c (mi_interp::exec): Update.
881 * linespec.c (parse_linespec): Update.
882 * infcall.c (run_inferior_call): Update.
883 * guile/scm-value.c (gdbscm_value_to_lazy_string): Update.
884 * guile/scm-symbol.c (gdbscm_lookup_symbol)
885 (gdbscm_lookup_global_symbol): Update.
886 * guile/scm-param.c (gdbscm_parameter_value): Update.
887 * guile/scm-frame.c (gdbscm_frame_read_register)
888 (gdbscm_frame_read_var): Update.
889 * guile/scm-breakpoint.c (gdbscm_register_breakpoint_x): Update.
890 * exec.c (try_open_exec_file): Update.
891 * event-top.c (gdb_rl_callback_read_char_wrapper_noexcept)
892 (gdb_rl_callback_handler): Update.
893 * common/common-exceptions.h (exception_none): Don't declare.
894 * common/common-exceptions.c (exception_none): Don't define.
895 (struct catcher) <exception>: Update.
896 * cli/cli-interp.c (safe_execute_command): Update.
897 * breakpoint.c (insert_bp_location, location_to_sals): Update.
901 * dwarf2read.c (skip_one_die): Add DW_FORM_strx.
902 (read_attribute_value): Likewise.
903 (dwarf2_read_addr_index): Update comment.
904 (read_str_index): Add DW_FORM_strx.
905 (dwarf2_string_attr): Likewise.
906 (dwarf2_const_value_attr): Likewise.
907 (dump_die_shallow): Likewise.
908 (dwarf2_fetch_constant_bytes): Likewise.
909 (skip_form_bytes): Likewise.
910 * testsuite/lib/dwarf.exp (_handle_DW_FORM): Add DW_FORM_strx.
916 * linux-tdep.c (dump_mapping_p): Add new parameters ADDR and
917 OFFSET. Verify if current mapping contains an ELF header.
918 (linux_find_memory_regions_full): Adjust call to
926 * dwarf2-frame.c (read_initial_length): Be consistent about using
927 unsigned representation of length.
928 (decode_frame_entry_1): Likewise. Check for wraparound of
929 end pointer as well as buffer overflow.
933 * aarch64-tdep.c (aarch64_gdbarch_init): Use "pulongest" to print
938 * amd64-tdep.c (amd64_has_unaligned_fields): Ignore bitfields.
942 * s12z-tdep.c (s12z_unwind_pc): Delete.
943 (s12z_unwind_sp): Delete.
944 (s12z_gdbarch_init): Don't register deleted functions with
949 * rl78-tdep.c (rl78_unwind_sp): Delete.
950 (rl78_gdbarch_init): Don't register deleted function with gdbarch.
954 * xstormy16-tdep.c (xstormy16_unwind_sp): Delete.
955 (xstormy16_unwind_pc): Delete.
956 (xstormy16_dummy_id): Delete.
957 (xstormy16_gdbarch_init): Don't register deleted functions with
962 * vax-tdep.c (vax_unwind_pc): Delete.
963 (vax_gdbarch_init): Don't register deleted function with gdbarch.
967 * v850-tdep.c (v850_unwind_sp): Delete.
968 (v850_unwind_pc): Delete.
969 (v850_dummy_id): Delete.
970 (v850_gdbarch_init): Don't register deleted functions with
975 * tilegx-tdep.c (tilegx_unwind_sp): Delete.
976 (tilegx_unwind_pc): Delete.
977 (tilegx_unwind_dummy_id): Delete.
978 (tilegx_gdbarch_init): Don't register deleted functions with
983 * tic6x-tdep.c (tic6x_unwind_sp): Delete.
984 (tic6x_dummy_id): Delete.
985 (tic6x_gdbarch_init): Don't register deleted functions with
990 * sparc-tdep.c (sparc_unwind_pc): Delete.
991 (sparc32_gdbarch_init): Don't register deleted function with
996 * sh-tdep.c (sh_unwind_sp): Delete.
997 (sh_unwind_pc): Delete.
998 (sh_dummy_id): Delete.
999 (sh_gdbarch_init): Don't register deleted functions with
1004 * score-tdep.c (score_unwind_sp): Delete.
1005 (score_unwind_pc): Delete.
1006 (score_dummy_id): Delete.
1007 (score_gdbarch_init): Don't register deleted functions with
1012 * rx-tdep.c (rx_unwind_pc): Delete.
1013 (rx_unwind_sp): Delete.
1014 (rx_dummy_id): Delete.
1015 (rx_gdbarch_init): Don't register deleted functions with
1016 gdbarch. Update comment.
1020 * rs6000-tdep.c (rs6000_unwind_pc): Delete.
1021 (rs6000_dummy_id): Delete.
1022 (rs6000_gdbarch_init): Don't register deleted functions with
1027 * or1k-tdep.c (or1k_dummy_id): Delete.
1028 (or1k_gdbarch_init): Don't register deleted function with gdbarch.
1032 * nios2-tdep.c (nios2_dummy_id): Delete.
1033 (nios2_unwind_sp): Delete.
1034 (nios2_gdbarch_init): Don't register deleted functions with
1039 * nds32-tdep.c (nds32_dummy_id): Delete.
1040 (nds32_unwind_pc): Delete.
1041 (nds32_unwind_sp): Delete.
1042 (nds32_gdbarch_init): Don't register deleted functions with
1047 * msp430-tdep.c (msp430_unwind_pc): Delete.
1048 (msp430_unwind_sp): Delete.
1049 (msp430_dummy_id): Delete.
1050 (msp430_gdbarch_init): Don't register deleted functions with
1055 * moxie-tdep.c (moxie_unwind_sp): Delete.
1056 (moxie_unwind_pc): Delete.
1057 (moxie_dummy_id): Delete.
1058 (moxie_gdbarch_init): Don't register deleted functions with
1063 * mn10300-tdep.c (mn10300_dummy_id): Delete.
1064 (mn10300_unwind_pc): Delete.
1065 (mn10300_unwind_sp): Delete.
1066 (mn10300_push_dummy_call): Use gdbarch_unwind_sp not
1068 (mn10300_frame_unwind_init): Don't register deleted functions with
1073 * mep-tdep.c (mep_unwind_pc): Delete.
1074 (mep_unwind_sp): Delete.
1075 (mep_dummy_id): Delete.
1076 (mep_gdbarch_init): Don't register deleted functions with
1081 * m68hc11-tdep.c (m68hc11_unwind_pc): Delete.
1082 (m68hc11_unwind_sp): Delete.
1083 (m68hc11_gdbarch_init): Don't register deleted functions with
1088 * m32r-tdep.c (m32r_unwind_sp): Delete.
1089 (m32r_unwind_pc): Delete.
1090 (m32r_dummy_id): Delete.
1091 (m32r_gdbarch_init): Don't register deleted functions with
1096 * m32c-tdep.c (m32c_unwind_pc): Delete.
1097 (m32c_unwind_sp): Delete.
1098 (m32c_dummy_id): Delete.
1099 (m32c_gdbarch_init): Don't register deleted functions with
1104 * gdb/lm32-tdep.c (lm32_unwind_sp): Delete.
1105 (lm32_unwind_pc): Delete.
1106 (lm32_dummy_id): Delete.
1107 (lm32_gdbarch_init): Don't register deleted functions with
1112 * gdb/iq2000-tdep.c (iq2000_unwind_sp): Delete.
1113 (iq2000_unwind_pc): Delete.
1114 (iq2000_dummy_id): Delete.
1115 (iq2000_gdbarch_init): Don't register deleted functions with
1120 * nds32-tdep.c (nds32_type_align): Delete.
1121 (nds32_push_dummy_call): Use type_align instead.
1125 * arm-tdep.c (arm_type_align): Only handle vector override case.
1126 (arm_push_dummy_call): Use type_align.
1127 (arm_gdbarch_init): Register arm_type_align gdbarch function.
1131 * aarch64-tdep.c (aarch64_type_align): Only handle vector override
1133 (pass_on_stack): Use type_align.
1134 (aarch64_gdbarch_init): Register aarch64_type_align gdbarch
1139 * dwarf2read.c (line_header::file_name_at): Remove unused
1145 * contrib/cc-with-tweaks.sh: Remove superfluous .alt file after dwz
1151 * dwarf2-frame.c(dwarf_expr_executor::get_addr_index): Update comment
1152 * dwarf2expr.c(dwarf_expr_context::execute_stack_op): Add DW_OP_addrx
1153 * dwarf2expr.h(dwarf_expr_context::offset): Update comment
1154 (dwarf_expr_context::get_addr_index): Likewise
1155 * dwarf2loc.c(dwarf_evaluate_loc_desc::get_addr_index): Likewise
1156 (symbol_needs_eval_context::get_addr_index): Likewise
1157 (disassemble_dwarf_expression): Add DW_OP_addrx
1158 * dwarf2read.c(attr_value_as_address): Add DW_FORM_addrx
1159 (read_cutu_die_from_dwo): Update comment
1160 (skip_one_die): Add DW_FORM_addrx
1161 (read_attribute_value): Likewise
1162 (var_decode_location): Add DW_OP_addrx
1163 (dwarf2_const_value_attr): Add DW_FORM_addrx
1164 (dump_die_shallow): Likewise
1165 (dwarf2_fetch_constant_bytes): Likewise
1166 (decode_locdesc): Add DW_OP_addrx
1167 (skip_form_bytes): Add DW_FORM_addrx
1171 * MAINTAINERS (Write After Approval): Add self.
1175 * solib-svr4.c (get_svr4_info): Add pspace parameter.
1176 (svr4_keep_data_in_core): Pass current_program_space to get_svr4_info.
1177 (open_symbol_file_object): Likewise.
1178 (svr4_default_sos): Add info parameter.
1179 (svr4_read_so_list): Likewise.
1180 (svr4_current_sos_direct): Adjust functions calls to pass down
1182 (svr4_current_sos_1): Add info parameter.
1183 (svr4_current_sos): Call get_svr4_info, pass info down to
1185 (svr4_fetch_objfile_link_map): Pass objfile->pspace to
1187 (svr4_in_dynsym_resolve_code): Pass current_program_space to
1189 (probes_table_htab_remove_objfile_probes): Pass objfile->pspace
1191 (probes_table_remove_objfile_probes): Likewise.
1192 (register_solib_event_probe): Add info parameter.
1193 (solist_update_incremental): Pass info parameter down to
1195 (disable_probes_interface): Add info parameter.
1196 (svr4_handle_solib_event): Pass current_program_space to
1197 get_svr4_info. Adjust disable_probes_interface cleanup.
1198 (svr4_create_probe_breakpoints): Add info parameter, pass it
1199 down to register_solib_event_probe.
1200 (svr4_create_solib_event_breakpoints): Add info parameter,
1201 pass it down to svr4_create_probe_breakpoints.
1202 (enable_break): Pass info down to
1203 svr4_create_solib_event_breakpoints.
1204 (svr4_solib_create_inferior_hook): Pass current_program_space to
1206 (svr4_clear_solib): Likewise.
1210 * solib-svr4.c (svr4_free_objfile_observer): New.
1211 (probe_and_action::objfile): New field.
1212 (probes_table_htab_remove_objfile_probes)
1213 (probes_table_remove_objfile_probes): New functions.
1214 (register_solib_event_probe): Add 'objfile' parameter. Store it
1215 in the new probe_and_action. Don't store the probe in 'lookup'.
1216 (svr4_create_probe_breakpoints): Pass objfile to
1217 register_solib_event_probe.
1218 (_initialize_svr4_solib): Register a free_objfile observer.
1222 * common/queue.h: Remove.
1226 * event-loop.c: Don't include "common/queue.h".
1230 * remote.c (remote_target): Use delete.
1231 * remote-notif.h: Include <list>, not "common/queue.h".
1232 (notif_client_p): Remove typedef.
1233 (remote_notif_state): Add constructor, destructor, initializer.
1234 <notif_queue>: Now a std::list.
1235 (remote_notif_state_xfree): Don't declare.
1236 * remote-notif.c (remote_notif_process, handle_notification)
1237 (remote_notif_state_allocate): Update.
1238 (~remote_notif_state): Rename from remote_notif_state_xfree.
1242 * symfile.c (reread_symbols): Update.
1243 * objfiles.c (objfile_register_static_link)
1244 (objfile_lookup_static_link): Update
1245 (~objfile) Don't delete static_links.
1246 * objfiles.h (struct objfile) <static_links>: Now an htab_up.
1250 * type-stack.h (struct type_stack) <insert>: Constify string.
1251 * type-stack.c (type_stack::insert): Constify string.
1252 * gdbtypes.h (lookup_template_type): Update.
1253 (address_space_name_to_int): Update.
1254 * gdbtypes.c (address_space_name_to_int): Make space_identifier
1256 (lookup_template_type): Make name const.
1257 * c-exp.y: Update rules.
1258 (lex_one_token, classify_name, classify_inner_name)
1259 (c_print_token): Update.
1260 * p-exp.y: Update rules.
1262 * f-exp.y: Update rules.
1264 * d-exp.y: Update rules.
1265 (lex_one_token, classify_name, classify_inner_name): Update.
1266 * parse.c (write_dollar_variable, copy_name): Return std::string.
1267 * parser-defs.h (copy_name): Change return type.
1268 * m2-exp.y: Update rules.
1270 * go-exp.y (lex_one_token): Update.
1272 (classify_unsafe_function, classify_packaged_name)
1273 (classify_name, yylex): Update.
1277 * configure.ac: add --enable-source-highlight switch.
1278 * configure: Regenerate.
1279 * top.c (print_gdb_version): plumb --enable-source-highlight
1280 status to "show configuration".
1284 * ada-lang.c (ada_is_variant_part, ada_to_fixed_type_1):
1286 (empty_record, ada_template_to_fixed_record_type_1)
1287 (template_to_static_fixed_type)
1288 (to_record_with_fixed_variant_part): Use INIT_NONE_SPECIFIC.
1289 * cp-abi.c (value_rtti_type): Check HAVE_CPLUS_STRUCT.
1290 * gdbtypes.h (INIT_NONE_SPECIFIC, ADA_TYPE_P): New
1296 * source.c (print_source_lines_base): Advance "iter" when a
1297 control character is seen.
1301 * inferior.h (struct infcall_suspend_state_deleter):
1302 Catch exception in destructor to avoid crash.
1306 * cli/cli-cmds.c (_initialize_cli_cmds): Move "shell" "!" alias
1307 close to the add_com "shell".
1311 * process-stratum-target.h (class process_stratum_target)
1312 <stratum>: Add "final".
1316 * dwarf2read.c (dwarf2_init_complex_target_type): Check "tt"
1317 against nullptr before use.
1321 * nat/linux-waitpid.c (linux_debug): Call debug_vprintf.
1326 * riscv-tdep.c (riscv_breakpoint_kind_from_pc): Hanndle case where
1327 code read might fail, assume 4-byte breakpoint in that case.
1331 * amd64-tdep.c (amd64_classify_aggregate): Use cp_pass_by_reference
1332 rather than a hand-rolled POD check when checking for forced MEMORY
1337 * aarch64-linux-nat.c (store_sveregs_to_thread): Set vector length.
1338 * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_set_vq): New
1340 (aarch64_sve_regs_copy_to_reg_buf): Remove VG checks.
1341 (aarch64_sve_regs_copy_from_reg_buf): Likewise.
1342 * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_set_vq): New
1347 * aarch64-linux-nat.c
1348 (aarch64_linux_nat_target::thread_architecture): Add override.
1349 * aarch64-tdep.c (aarch64_gdbarch_init): Ensure different tdesc for
1354 * aarch64-tdep.c (aarch64_gdbarch_init): Move gdbarch lookup.
1358 * dwarf2read.c (dwarf2_init_complex_target_type): Handle complex
1359 target types of size 96-bits, add some additional comments, and
1360 check that the builtin type we found was the correct size.
1364 * utils.c (prompt_for_continue): Don't restore the styling at the
1365 end, as applied_style has the wrong value. This fixes styling in
1366 long lists of file names that are interrupted by the "Continue?"
1371 * ada-lang.c (ada_language_defn): Remove use of LANG_MAGIC.
1372 * c-lang.c (c_language_defn): Likewise.
1373 (cplus_language_defn): Likewise.
1374 (asm_language_defn): Likewise.
1375 (minimal_language_defn): Likewise.
1376 * d-lang.c (d_language_defn): Likewise.
1377 * f-lang.c (f_language_defn): Likewise.
1378 * go-lang.c (go_language_defn): Likewise.
1379 * language.c (unknown_language_defn): Likewise.
1380 (auto_language_defn): Likewise.
1381 * language.h (struct language_defn): Remove la_magic field.
1382 (LANG_MAGIC): Delete.
1383 * m2-lang.c (m2_language_defn): Remove use of LANG_MAGIC.
1384 * objc-lang.c (objc_language_defn): Likewise.
1385 * opencl-lang.c (opencl_language_defn): Likewise.
1386 * p-lang.c (pascal_language_defn): Likewise.
1387 * rust-lang.c (rust_language_defn): Likewise.
1391 * riscv-tdep.c (riscv_type_align): New function.
1392 (riscv_type_alignment): Delete.
1393 (riscv_arg_location): Use 'type_align'.
1394 (riscv_gdbarch_init): Register riscv_type_align gdbarch function.
1398 * gdbtypes.c (type_align): A struct with no non-static fields also
1403 * riscv-tdep.c (riscv_call_arg_complex_float): Fix offset of first
1405 (riscv_struct_info::riscv_struct_info): Initialise m_offsets
1407 (riscv_struct_info::analyse): New implementation using new
1408 analyse_inner member function.
1409 (riscv_struct_info::field_offset): New member function.
1410 (riscv_struct_info::m_offsets): New member variable.
1411 (riscv_struct_info::analyse_inner): New private member function,
1412 takes the old implementation of riscv_struct_info::analyse but
1413 extended to track field offsets.
1414 (riscv_call_arg_struct): Update the struct folding special cases
1415 to handle cases where empty C++ structs, which are non-zero
1417 (riscv_arg_location): Initialise the length of each location, a
1418 non-zero length now indicates the location is in use.
1419 (riscv_push_dummy_call): Allow for the first location having a
1420 non-zero offset when setting up arguments.
1421 (riscv_return_value): Likewise, but for return values.
1425 * utils.c (internal_vproblem): Make "msg" const.
1429 * aarch64-tdep.c (aarch64_analyze_prologue_test): Reset saved regs.
1430 * trad-frame.c (trad_frame_reset_saved_regs): New function.
1431 (trad_frame_alloc_saved_regs): Call trad_frame_reset_saved_regs.
1432 * trad-frame.h (trad_frame_reset_saved_regs): New declaration.
1436 * amd64-linux-nat.c (amd64_linux_collect_native_gregset): New
1438 (fill_gregset): Call amd64_linux_collect_native_gregset instead
1439 of amd64_collect_native_gregset.
1440 (amd64_linux_nat_target::store_registers): Likewise.
1444 * symtab.c (lookup_global_symbol_from_objfile)
1445 (lookup_symbol_in_objfile_from_linkage_name): Use the iterator.
1446 * objfiles.h (class separate_debug_iterator): New.
1447 (class separate_debug_range): New.
1448 (struct objfile) <separate_debug_objfiles>: New method.
1449 (objfile_separate_debug_iterate): Don't declare.
1450 * objfiles.c (separate_debug_iterator::operator++): Rename from
1451 objfile_separate_debug_iterate.
1452 (objfile_relocate, objfile_rebase, objfile_has_symbols): Use the
1454 * minsyms.c (lookup_minimal_symbol_by_pc_section): Use the
1459 * symfile.c (reread_symbols): Remove old comment.
1460 * objfiles.c (free_all_objfiles): Fix a typo.
1464 * ia64-tdep.c (ia64_get_dyn_info_list): Use foreach.
1465 * minsyms.c (lookup_minimal_symbol): Use foreach.
1466 (lookup_minimal_symbol_text, lookup_minimal_symbol_by_pc_name)
1467 (lookup_minimal_symbol_solib_trampoline): Likewise.
1468 * symfile.c (reread_symbols): Use foreach.
1474 * rust-exp.y (rust_parser::lex_number): Use strtoulst.
1475 (rust_lex_int_test): Change "value" to be LONGEST.
1476 (rust_lex_tests): Add test for long integer literal.
1480 * remote.c (remote_target::remote_add_inferior): Change fake_pid_p
1482 (extended_remote_target::attach): Update.
1483 (remote_target::remote_notice_new_inferior): Update.
1484 (remote_target::add_current_inferior_and_thread): Update.
1485 * inferior.c (exit_inferior_1): Use "false".
1486 * corelow.c (add_to_thread_list): Make fake_pid_p bool.
1490 * infcmd.c (run_command_1): Pass -qualified to tbreak when using
1491 the "start" command.
1495 * python/py-inferior.c (infpy_thread_from_thread_handle):
1496 Adjust comments to reflect renaming of thread_from_thread_handle
1497 to thread_from_handle. Adjust keywords. Fix type error message.
1498 (inferior_object_methods): Add thread_from_handle. Retain
1499 thread_from_thread_handle, but mark it as deprecated.
1503 * gdbthread.h (find_thread_by_handle): Revise declaration.
1504 * thread.c (find_thread_by_handle): Likewise. Adjust
1506 * python/py-inferior.c (infpy_thread_from_thread_handle): Add
1507 support for buffer objects as handles.
1511 * python/py-infthread.c (thpy_thread_handle): New function.
1512 (thread_object_methods): Register thpy_thread_handle.
1516 * gdbthread.h (thread_to_thread_handle): Declare.
1517 * thread.c (gdbtypes.h): Include.
1518 (thread_to_thread_handle): New function.
1520 * target.h (struct target_ops): Add thread_info_to_thread_handle.
1521 (target_thread_info_to_thread_handle): Declare.
1522 * target.c (target_thread_info_to_thread_handle): New function.
1523 * target-debug.h (target_debug_print_gdb_byte_vector): Define.
1524 * target-delegates.c: Regenerate.
1526 * linux-thread-db.c (class thread_db_target): Add method
1527 thread_info_to_thread_handle.
1528 (thread_db_target::thread_info_to_thread_handle): Define.
1529 * remote.c (class remote_target): Add new method
1530 thread_info_to_thread_handle.
1531 (remote_target::thread_info_to_thread_handle): Define.
1535 * common/common-exceptions.c (throw_exception): Don't create
1536 named object to throw; throw directly.
1537 (throw_it): Likewise. Don't initialize gdb_exception::message
1538 here, with new; pass FMT and AP to the ctor instead.
1539 * common/common-exceptions.h: Include <string>.
1540 (gdb_exception::gdb_exception(enum return_reason, enum errors,
1541 const char *, va_list)): New ctor. Use std::make_shared.
1542 (gdb_exception_error::gdb_exception_error(enum return_reason, enum
1544 (gdb_exception_error::gdb_exception_error(enum errors, const char
1546 (gdb_exception_error::gdb_exception_error(const gdb_exception &)):
1548 (gdb_exception_quit::gdb_exception_quit(enum return_reason, enum
1550 (gdb_exception_quit::gdb_exception_quit(const char *, va_list)): New.
1551 (gdb_exception_quit::gdb_exception_quit(const gdb_exception &)):
1556 * valops.c (value_rtti_indirect_type): Replace throw_exception
1558 * tracefile-tfile.c (tfile_target_open): Replace throw_exception
1560 * thread.c (thr_try_catch_cmd): Replace throw_exception with
1562 * target.c (target_translate_tls_address): Replace throw_exception
1564 * stack.c (frame_apply_command_count): Replace throw_exception
1566 * solib-spu.c (append_ocl_sos): Replace throw_exception with
1568 * s390-tdep.c (s390_frame_unwind_cache): Replace throw_exception
1570 * rs6000-tdep.c (rs6000_frame_cache)
1571 (rs6000_epilogue_frame_cache): Replace throw_exception with throw.
1572 * remote.c: Replace throw_exception with throw.
1573 * record-full.c (record_full_message, record_full_wait_1)
1574 (record_full_restore): Replace throw_exception with throw.
1576 (get_thread_current_frame_id, record_btrace_start_replaying)
1577 (cmd_record_btrace_bts_start, cmd_record_btrace_pt_start)
1578 (cmd_record_btrace_start): Replace throw_exception with throw.
1579 * parse.c (parse_exp_in_context_1): Replace throw_exception with
1581 * linux-nat.c (detach_one_lwp, linux_resume_one_lwp)
1582 (resume_stopped_resumed_lwps): Replace throw_exception with throw.
1584 (find_linespec_symbols): Replace throw_exception with throw.
1585 * infrun.c (displaced_step_prepare, resume): Replace
1586 throw_exception with throw.
1587 * infcmd.c (post_create_inferior): Replace throw_exception with
1589 * inf-loop.c (inferior_event_handler): Replace throw_exception
1591 * i386-tdep.c (i386_frame_cache, i386_epilogue_frame_cache)
1592 (i386_sigtramp_frame_cache): Replace throw_exception with throw.
1593 * frame.c (frame_unwind_pc, get_prev_frame_if_no_cycle)
1594 (get_prev_frame_always, get_frame_pc_if_available)
1595 (get_frame_address_in_block_if_available, get_frame_language):
1596 Replace throw_exception with throw.
1597 * frame-unwind.c (frame_unwind_try_unwinder): Replace
1598 throw_exception with throw.
1599 * eval.c (fetch_subexp_value, evaluate_var_value)
1600 (evaluate_funcall, evaluate_subexp_standard): Replace
1601 throw_exception with throw.
1602 * dwarf2loc.c (call_site_find_chain)
1603 (dwarf2_evaluate_loc_desc_full, dwarf2_locexpr_baton_eval):
1604 Replace throw_exception with throw.
1605 * dwarf2-frame.c (dwarf2_frame_cache): Replace throw_exception
1607 * darwin-nat.c (darwin_attach_pid): Replace throw_exception with
1609 * cp-abi.c (baseclass_offset): Replace throw_exception with throw.
1610 * completer.c (complete_line_internal): Replace throw_exception
1612 * compile/compile-object-run.c (compile_object_run): Replace
1613 throw_exception with throw.
1614 * cli/cli-script.c (process_next_line): Replace throw_exception
1616 * btrace.c (btrace_compute_ftrace_pt, btrace_compute_ftrace)
1617 (btrace_enable, btrace_maint_update_pt_packets): Replace
1618 throw_exception with throw.
1619 * breakpoint.c (create_breakpoint, save_breakpoints): Replace
1620 throw_exception with throw.
1621 * break-catch-throw.c (re_set_exception_catchpoint): Replace
1622 throw_exception with throw.
1623 * amd64-tdep.c (amd64_frame_cache, amd64_sigtramp_frame_cache)
1624 (amd64_epilogue_frame_cache): Replace throw_exception with throw.
1625 * aarch64-tdep.c (aarch64_make_prologue_cache)
1626 (aarch64_make_stub_cache): Replace throw_exception with throw.
1630 * common/common-exceptions.c (throw_exception): Rename from
1631 throw_exception_cxx. Remove old copy. Make argument const.
1632 (throw_it): Create and throw exception objects directly.
1633 * common/common-exceptions.h (throw_exception): Make argument
1635 (struct gdb_exception_error): Add constructor.
1636 (struct gdb_exception_quit): Add constructor.
1640 * common/common-exceptions.h (exception_rethrow): Don't declare.
1641 (TRY_SJLJ): Update comment.
1642 (TRY, CATCH, END_CATCH): Remove.
1643 * common/common-exceptions.c (exception_rethrow): Remove.
1647 * common/common-exceptions.h (gdb_exception_RETURN_MASK_ALL):
1649 (gdb_exception_error): Rename from
1650 gdb_exception_RETURN_MASK_ERROR.
1651 (gdb_exception_quit): Rename from gdb_exception_RETURN_MASK_QUIT.
1652 (gdb_quit_bad_alloc): Update.
1653 * aarch64-tdep.c: Update.
1654 * ada-lang.c: Update.
1655 * ada-typeprint.c: Update.
1656 * ada-valprint.c: Update.
1657 * amd64-tdep.c: Update.
1658 * arch-utils.c: Update.
1659 * break-catch-throw.c: Update.
1660 * breakpoint.c: Update.
1662 * c-varobj.c: Update.
1663 * cli/cli-cmds.c: Update.
1664 * cli/cli-interp.c: Update.
1665 * cli/cli-script.c: Update.
1666 * common/common-exceptions.c: Update.
1667 * common/new-op.c: Update.
1668 * common/selftest.c: Update.
1669 * compile/compile-c-symbols.c: Update.
1670 * compile/compile-cplus-symbols.c: Update.
1671 * compile/compile-object-load.c: Update.
1672 * compile/compile-object-run.c: Update.
1673 * completer.c: Update.
1674 * corelow.c: Update.
1676 * cp-support.c: Update.
1677 * cp-valprint.c: Update.
1678 * darwin-nat.c: Update.
1679 * disasm-selftests.c: Update.
1680 * dtrace-probe.c: Update.
1681 * dwarf-index-cache.c: Update.
1682 * dwarf-index-write.c: Update.
1683 * dwarf2-frame-tailcall.c: Update.
1684 * dwarf2-frame.c: Update.
1685 * dwarf2loc.c: Update.
1686 * dwarf2read.c: Update.
1688 * event-loop.c: Update.
1689 * event-top.c: Update.
1691 * f-valprint.c: Update.
1692 * fbsd-tdep.c: Update.
1693 * frame-unwind.c: Update.
1695 * gdbtypes.c: Update.
1696 * gnu-v3-abi.c: Update.
1697 * guile/guile-internal.h: Update.
1698 * guile/scm-block.c: Update.
1699 * guile/scm-breakpoint.c: Update.
1700 * guile/scm-cmd.c: Update.
1701 * guile/scm-disasm.c: Update.
1702 * guile/scm-frame.c: Update.
1703 * guile/scm-lazy-string.c: Update.
1704 * guile/scm-math.c: Update.
1705 * guile/scm-param.c: Update.
1706 * guile/scm-ports.c: Update.
1707 * guile/scm-pretty-print.c: Update.
1708 * guile/scm-symbol.c: Update.
1709 * guile/scm-symtab.c: Update.
1710 * guile/scm-type.c: Update.
1711 * guile/scm-value.c: Update.
1712 * i386-linux-tdep.c: Update.
1713 * i386-tdep.c: Update.
1714 * inf-loop.c: Update.
1715 * infcall.c: Update.
1719 * language.c: Update.
1720 * linespec.c: Update.
1721 * linux-fork.c: Update.
1722 * linux-nat.c: Update.
1723 * linux-tdep.c: Update.
1724 * linux-thread-db.c: Update.
1726 * mi/mi-cmd-break.c: Update.
1727 * mi/mi-cmd-stack.c: Update.
1728 * mi/mi-interp.c: Update.
1729 * mi/mi-main.c: Update.
1730 * objc-lang.c: Update.
1731 * p-valprint.c: Update.
1733 * ppc-linux-tdep.c: Update.
1734 * printcmd.c: Update.
1735 * python/py-arch.c: Update.
1736 * python/py-breakpoint.c: Update.
1737 * python/py-cmd.c: Update.
1738 * python/py-finishbreakpoint.c: Update.
1739 * python/py-frame.c: Update.
1740 * python/py-framefilter.c: Update.
1741 * python/py-gdb-readline.c: Update.
1742 * python/py-inferior.c: Update.
1743 * python/py-infthread.c: Update.
1744 * python/py-lazy-string.c: Update.
1745 * python/py-linetable.c: Update.
1746 * python/py-objfile.c: Update.
1747 * python/py-param.c: Update.
1748 * python/py-prettyprint.c: Update.
1749 * python/py-progspace.c: Update.
1750 * python/py-record-btrace.c: Update.
1751 * python/py-record.c: Update.
1752 * python/py-symbol.c: Update.
1753 * python/py-type.c: Update.
1754 * python/py-unwind.c: Update.
1755 * python/py-utils.c: Update.
1756 * python/py-value.c: Update.
1757 * python/python.c: Update.
1758 * record-btrace.c: Update.
1759 * record-full.c: Update.
1760 * remote-fileio.c: Update.
1762 * riscv-tdep.c: Update.
1763 * rs6000-aix-tdep.c: Update.
1764 * rs6000-tdep.c: Update.
1765 * rust-exp.y: Update.
1766 * rust-lang.c: Update.
1767 * s390-tdep.c: Update.
1768 * selftest-arch.c: Update.
1769 * solib-dsbt.c: Update.
1770 * solib-frv.c: Update.
1771 * solib-spu.c: Update.
1772 * solib-svr4.c: Update.
1774 * sparc64-linux-tdep.c: Update.
1776 * symfile-mem.c: Update.
1777 * symmisc.c: Update.
1781 * tracefile-tfile.c: Update.
1782 * tui/tui.c: Update.
1783 * typeprint.c: Update.
1784 * unittests/cli-utils-selftests.c: Update.
1785 * unittests/parse-connection-spec-selftests.c: Update.
1787 * valprint.c: Update.
1790 * windows-nat.c: Update.
1791 * x86-linux-nat.c: Update.
1792 * xml-support.c: Update.
1796 * xml-support.c: Use C++ exception handling.
1797 * x86-linux-nat.c: Use C++ exception handling.
1798 * windows-nat.c: Use C++ exception handling.
1799 * varobj.c: Use C++ exception handling.
1800 * value.c: Use C++ exception handling.
1801 * valprint.c: Use C++ exception handling.
1802 * valops.c: Use C++ exception handling.
1803 * unittests/parse-connection-spec-selftests.c: Use C++ exception
1805 * unittests/cli-utils-selftests.c: Use C++ exception handling.
1806 * typeprint.c: Use C++ exception handling.
1807 * tui/tui.c: Use C++ exception handling.
1808 * tracefile-tfile.c: Use C++ exception handling.
1809 * top.c: Use C++ exception handling.
1810 * thread.c: Use C++ exception handling.
1811 * target.c: Use C++ exception handling.
1812 * symmisc.c: Use C++ exception handling.
1813 * symfile-mem.c: Use C++ exception handling.
1814 * stack.c: Use C++ exception handling.
1815 * sparc64-linux-tdep.c: Use C++ exception handling.
1816 * solib.c: Use C++ exception handling.
1817 * solib-svr4.c: Use C++ exception handling.
1818 * solib-spu.c: Use C++ exception handling.
1819 * solib-frv.c: Use C++ exception handling.
1820 * solib-dsbt.c: Use C++ exception handling.
1821 * selftest-arch.c: Use C++ exception handling.
1822 * s390-tdep.c: Use C++ exception handling.
1823 * rust-lang.c: Use C++ exception handling.
1824 * rust-exp.y: Use C++ exception handling.
1825 * rs6000-tdep.c: Use C++ exception handling.
1826 * rs6000-aix-tdep.c: Use C++ exception handling.
1827 * riscv-tdep.c: Use C++ exception handling.
1828 * remote.c: Use C++ exception handling.
1829 * remote-fileio.c: Use C++ exception handling.
1830 * record-full.c: Use C++ exception handling.
1831 * record-btrace.c: Use C++ exception handling.
1832 * python/python.c: Use C++ exception handling.
1833 * python/py-value.c: Use C++ exception handling.
1834 * python/py-utils.c: Use C++ exception handling.
1835 * python/py-unwind.c: Use C++ exception handling.
1836 * python/py-type.c: Use C++ exception handling.
1837 * python/py-symbol.c: Use C++ exception handling.
1838 * python/py-record.c: Use C++ exception handling.
1839 * python/py-record-btrace.c: Use C++ exception handling.
1840 * python/py-progspace.c: Use C++ exception handling.
1841 * python/py-prettyprint.c: Use C++ exception handling.
1842 * python/py-param.c: Use C++ exception handling.
1843 * python/py-objfile.c: Use C++ exception handling.
1844 * python/py-linetable.c: Use C++ exception handling.
1845 * python/py-lazy-string.c: Use C++ exception handling.
1846 * python/py-infthread.c: Use C++ exception handling.
1847 * python/py-inferior.c: Use C++ exception handling.
1848 * python/py-gdb-readline.c: Use C++ exception handling.
1849 * python/py-framefilter.c: Use C++ exception handling.
1850 * python/py-frame.c: Use C++ exception handling.
1851 * python/py-finishbreakpoint.c: Use C++ exception handling.
1852 * python/py-cmd.c: Use C++ exception handling.
1853 * python/py-breakpoint.c: Use C++ exception handling.
1854 * python/py-arch.c: Use C++ exception handling.
1855 * printcmd.c: Use C++ exception handling.
1856 * ppc-linux-tdep.c: Use C++ exception handling.
1857 * parse.c: Use C++ exception handling.
1858 * p-valprint.c: Use C++ exception handling.
1859 * objc-lang.c: Use C++ exception handling.
1860 * mi/mi-main.c: Use C++ exception handling.
1861 * mi/mi-interp.c: Use C++ exception handling.
1862 * mi/mi-cmd-stack.c: Use C++ exception handling.
1863 * mi/mi-cmd-break.c: Use C++ exception handling.
1864 * main.c: Use C++ exception handling.
1865 * linux-thread-db.c: Use C++ exception handling.
1866 * linux-tdep.c: Use C++ exception handling.
1867 * linux-nat.c: Use C++ exception handling.
1868 * linux-fork.c: Use C++ exception handling.
1869 * linespec.c: Use C++ exception handling.
1870 * language.c: Use C++ exception handling.
1871 * jit.c: Use C++ exception handling.
1872 * infrun.c: Use C++ exception handling.
1873 * infcmd.c: Use C++ exception handling.
1874 * infcall.c: Use C++ exception handling.
1875 * inf-loop.c: Use C++ exception handling.
1876 * i386-tdep.c: Use C++ exception handling.
1877 * i386-linux-tdep.c: Use C++ exception handling.
1878 * guile/scm-value.c: Use C++ exception handling.
1879 * guile/scm-type.c: Use C++ exception handling.
1880 * guile/scm-symtab.c: Use C++ exception handling.
1881 * guile/scm-symbol.c: Use C++ exception handling.
1882 * guile/scm-pretty-print.c: Use C++ exception handling.
1883 * guile/scm-ports.c: Use C++ exception handling.
1884 * guile/scm-param.c: Use C++ exception handling.
1885 * guile/scm-math.c: Use C++ exception handling.
1886 * guile/scm-lazy-string.c: Use C++ exception handling.
1887 * guile/scm-frame.c: Use C++ exception handling.
1888 * guile/scm-disasm.c: Use C++ exception handling.
1889 * guile/scm-cmd.c: Use C++ exception handling.
1890 * guile/scm-breakpoint.c: Use C++ exception handling.
1891 * guile/scm-block.c: Use C++ exception handling.
1892 * guile/guile-internal.h: Use C++ exception handling.
1893 * gnu-v3-abi.c: Use C++ exception handling.
1894 * gdbtypes.c: Use C++ exception handling.
1895 * frame.c: Use C++ exception handling.
1896 * frame-unwind.c: Use C++ exception handling.
1897 * fbsd-tdep.c: Use C++ exception handling.
1898 * f-valprint.c: Use C++ exception handling.
1899 * exec.c: Use C++ exception handling.
1900 * event-top.c: Use C++ exception handling.
1901 * event-loop.c: Use C++ exception handling.
1902 * eval.c: Use C++ exception handling.
1903 * dwarf2read.c: Use C++ exception handling.
1904 * dwarf2loc.c: Use C++ exception handling.
1905 * dwarf2-frame.c: Use C++ exception handling.
1906 * dwarf2-frame-tailcall.c: Use C++ exception handling.
1907 * dwarf-index-write.c: Use C++ exception handling.
1908 * dwarf-index-cache.c: Use C++ exception handling.
1909 * dtrace-probe.c: Use C++ exception handling.
1910 * disasm-selftests.c: Use C++ exception handling.
1911 * darwin-nat.c: Use C++ exception handling.
1912 * cp-valprint.c: Use C++ exception handling.
1913 * cp-support.c: Use C++ exception handling.
1914 * cp-abi.c: Use C++ exception handling.
1915 * corelow.c: Use C++ exception handling.
1916 * completer.c: Use C++ exception handling.
1917 * compile/compile-object-run.c: Use C++ exception handling.
1918 * compile/compile-object-load.c: Use C++ exception handling.
1919 * compile/compile-cplus-symbols.c: Use C++ exception handling.
1920 * compile/compile-c-symbols.c: Use C++ exception handling.
1921 * common/selftest.c: Use C++ exception handling.
1922 * common/new-op.c: Use C++ exception handling.
1923 * cli/cli-script.c: Use C++ exception handling.
1924 * cli/cli-interp.c: Use C++ exception handling.
1925 * cli/cli-cmds.c: Use C++ exception handling.
1926 * c-varobj.c: Use C++ exception handling.
1927 * btrace.c: Use C++ exception handling.
1928 * breakpoint.c: Use C++ exception handling.
1929 * break-catch-throw.c: Use C++ exception handling.
1930 * arch-utils.c: Use C++ exception handling.
1931 * amd64-tdep.c: Use C++ exception handling.
1932 * ada-valprint.c: Use C++ exception handling.
1933 * ada-typeprint.c: Use C++ exception handling.
1934 * ada-lang.c: Use C++ exception handling.
1935 * aarch64-tdep.c: Use C++ exception handling.
1939 * xml-support.c (gdb_xml_parser::parse): Update.
1940 * x86-linux-nat.c (x86_linux_nat_target::enable_btrace): Update.
1941 * value.c (show_convenience): Update.
1942 * unittests/cli-utils-selftests.c (test_number_or_range_parser)
1943 (test_parse_flags_qcs): Update.
1944 * thread.c (thr_try_catch_cmd): Update.
1945 * target.c (target_translate_tls_address): Update.
1946 * stack.c (print_frame_arg, read_frame_local, read_frame_arg)
1947 (info_frame_command_core, frame_apply_command_count): Update.
1948 * rust-exp.y (rust_lex_exception_test): Update.
1949 * riscv-tdep.c (riscv_print_one_register_info): Update.
1950 * remote.c (remote_target::enable_btrace): Update.
1951 * record-btrace.c (record_btrace_enable_warn): Update.
1952 * python/py-utils.c (gdbpy_convert_exception): Update.
1953 * printcmd.c (do_one_display, print_variable_and_value): Update.
1954 * mi/mi-main.c (mi_print_exception): Update.
1955 * mi/mi-interp.c (mi_cmd_interpreter_exec): Use SCOPE_EXIT.
1956 * mi/mi-cmd-stack.c (list_arg_or_local): Update.
1957 * linux-nat.c (linux_nat_target::attach): Update.
1958 * linux-fork.c (class scoped_switch_fork_info): Update.
1959 * infrun.c (displaced_step_prepare): Update.
1960 * infcall.c (call_function_by_hand_dummy): Update.
1961 * guile/scm-exception.c (gdbscm_scm_from_gdb_exception): Update.
1962 * gnu-v3-abi.c (print_one_vtable): Update.
1963 * frame.c (get_prev_frame_always): Update.
1964 * f-valprint.c (info_common_command_for_block): Update.
1965 * exec.c (try_open_exec_file): Update.
1966 * exceptions.c (print_exception, exception_print)
1967 (exception_fprintf, exception_print_same): Update.
1968 * dwarf2-frame.c (dwarf2_build_frame_info): Update.
1969 * dwarf-index-cache.c (index_cache::store)
1970 (index_cache::lookup_gdb_index): Update.
1971 * darwin-nat.c (maybe_cache_shell): Update.
1972 * cp-valprint.c (cp_print_value_fields): Update.
1973 * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol)
1974 (gcc_cplus_symbol_address): Update.
1975 * compile/compile-c-symbols.c (gcc_convert_symbol)
1976 (gcc_symbol_address, generate_c_for_for_one_variable): Update.
1977 * common/selftest.c: Update.
1978 * common/common-exceptions.h (struct gdb_exception) <message>: Now
1980 (exception_try_scope_entry, exception_try_scope_exit): Don't
1982 (struct exception_try_scope): Remove.
1983 (TRY): Don't use exception_try_scope.
1984 (struct gdb_exception): Add constructor, operator=.
1986 (struct gdb_exception_RETURN_MASK_ALL)
1987 (struct gdb_exception_RETURN_MASK_ERROR)
1988 (struct gdb_exception_RETURN_MASK_QUIT): Add constructor.
1989 (struct gdb_quit_bad_alloc): Update.
1990 * common/common-exceptions.c (exception_none): Change
1992 (struct catcher) <state, exception>: Initialize inline.
1993 <prev>: Remove member.
1994 (current_catcher): Remove.
1995 (catchers): New global.
1996 (exceptions_state_mc_init): Simplify.
1997 (catcher_pop): Remove.
1998 (exceptions_state_mc, exceptions_state_mc_catch): Update.
1999 (try_scope_depth, exception_try_scope_entry)
2000 (exception_try_scope_exit): Remove.
2001 (throw_exception_sjlj): Update.
2002 (exception_messages, exception_messages_size): Remove.
2003 (throw_it): Simplify.
2004 (gdb_exception_sliced_copy): Remove.
2005 (throw_exception_cxx): Update.
2006 * cli/cli-script.c (script_from_file): Update.
2007 * breakpoint.c (insert_bp_location, update_breakpoint_locations):
2009 * ada-valprint.c (ada_val_print): Update.
2010 * ada-lang.c (ada_to_fixed_type_1, ada_exception_name_addr)
2011 (create_excep_cond_exprs): Update.
2015 * common/common-exceptions.h (GDB_XCPT_SJMP, GDB_XCPT_TRY)
2016 (GDB_XCPT_RAW_TRY, GDB_XCPT): Remove.
2017 (TRY, CATCH, END_CATCH): Remove some definitions.
2018 * common/common-exceptions.c: Don't use GDB_XCPT.
2019 (catcher_list_size): Remove.
2020 (throw_exception, throw_it): Simplify.
2024 Revert the header-sorting patch.
2025 * ft32-tdep.c: Revert.
2026 * frv-tdep.c: Revert.
2027 * frv-linux-tdep.c: Revert.
2029 * frame-unwind.c: Revert.
2030 * frame-base.c: Revert.
2031 * fork-child.c: Revert.
2032 * findvar.c: Revert.
2033 * findcmd.c: Revert.
2034 * filesystem.c: Revert.
2035 * filename-seen-cache.h: Revert.
2036 * filename-seen-cache.c: Revert.
2037 * fbsd-tdep.c: Revert.
2038 * fbsd-nat.h: Revert.
2039 * fbsd-nat.c: Revert.
2040 * f-valprint.c: Revert.
2041 * f-typeprint.c: Revert.
2043 * extension.h: Revert.
2044 * extension.c: Revert.
2045 * extension-priv.h: Revert.
2046 * expprint.c: Revert.
2049 * exceptions.c: Revert.
2050 * event-top.c: Revert.
2051 * event-loop.c: Revert.
2053 * elfread.c: Revert.
2054 * dwarf2read.h: Revert.
2055 * dwarf2read.c: Revert.
2056 * dwarf2loc.c: Revert.
2057 * dwarf2expr.h: Revert.
2058 * dwarf2expr.c: Revert.
2059 * dwarf2-frame.c: Revert.
2060 * dwarf2-frame-tailcall.c: Revert.
2061 * dwarf-index-write.h: Revert.
2062 * dwarf-index-write.c: Revert.
2063 * dwarf-index-common.c: Revert.
2064 * dwarf-index-cache.h: Revert.
2065 * dwarf-index-cache.c: Revert.
2066 * dummy-frame.c: Revert.
2067 * dtrace-probe.c: Revert.
2070 * disasm-selftests.c: Revert.
2071 * dictionary.c: Revert.
2072 * dicos-tdep.c: Revert.
2073 * demangle.c: Revert.
2076 * darwin-nat.h: Revert.
2077 * darwin-nat.c: Revert.
2078 * darwin-nat-info.c: Revert.
2079 * d-valprint.c: Revert.
2080 * d-namespace.c: Revert.
2083 * csky-tdep.c: Revert.
2084 * csky-linux-tdep.c: Revert.
2085 * cris-tdep.c: Revert.
2086 * cris-linux-tdep.c: Revert.
2087 * cp-valprint.c: Revert.
2088 * cp-support.c: Revert.
2089 * cp-namespace.c: Revert.
2091 * corelow.c: Revert.
2092 * corefile.c: Revert.
2093 * continuations.c: Revert.
2094 * completer.h: Revert.
2095 * completer.c: Revert.
2096 * complaints.c: Revert.
2097 * coffread.c: Revert.
2098 * coff-pe-read.c: Revert.
2099 * cli-out.h: Revert.
2100 * cli-out.c: Revert.
2101 * charset.c: Revert.
2102 * c-varobj.c: Revert.
2103 * c-valprint.c: Revert.
2104 * c-typeprint.c: Revert.
2106 * buildsym.c: Revert.
2107 * buildsym-legacy.c: Revert.
2108 * build-id.h: Revert.
2109 * build-id.c: Revert.
2111 * bsd-uthread.c: Revert.
2112 * breakpoint.h: Revert.
2113 * breakpoint.c: Revert.
2114 * break-catch-throw.c: Revert.
2115 * break-catch-syscall.c: Revert.
2116 * break-catch-sig.c: Revert.
2117 * blockframe.c: Revert.
2119 * bfin-tdep.c: Revert.
2120 * bfin-linux-tdep.c: Revert.
2121 * bfd-target.c: Revert.
2123 * ax-general.c: Revert.
2126 * avr-tdep.c: Revert.
2128 * auto-load.c: Revert.
2129 * arm-wince-tdep.c: Revert.
2130 * arm-tdep.c: Revert.
2131 * arm-symbian-tdep.c: Revert.
2132 * arm-pikeos-tdep.c: Revert.
2133 * arm-obsd-tdep.c: Revert.
2134 * arm-nbsd-tdep.c: Revert.
2135 * arm-nbsd-nat.c: Revert.
2136 * arm-linux-tdep.c: Revert.
2137 * arm-linux-nat.c: Revert.
2138 * arm-fbsd-tdep.c: Revert.
2139 * arm-fbsd-nat.c: Revert.
2140 * arm-bsd-tdep.c: Revert.
2141 * arch-utils.c: Revert.
2142 * arc-tdep.c: Revert.
2143 * arc-newlib-tdep.c: Revert.
2144 * annotate.h: Revert.
2145 * annotate.c: Revert.
2146 * amd64-windows-tdep.c: Revert.
2147 * amd64-windows-nat.c: Revert.
2148 * amd64-tdep.c: Revert.
2149 * amd64-sol2-tdep.c: Revert.
2150 * amd64-obsd-tdep.c: Revert.
2151 * amd64-obsd-nat.c: Revert.
2152 * amd64-nbsd-tdep.c: Revert.
2153 * amd64-nbsd-nat.c: Revert.
2154 * amd64-nat.c: Revert.
2155 * amd64-linux-tdep.c: Revert.
2156 * amd64-linux-nat.c: Revert.
2157 * amd64-fbsd-tdep.c: Revert.
2158 * amd64-fbsd-nat.c: Revert.
2159 * amd64-dicos-tdep.c: Revert.
2160 * amd64-darwin-tdep.c: Revert.
2161 * amd64-bsd-nat.c: Revert.
2162 * alpha-tdep.c: Revert.
2163 * alpha-obsd-tdep.c: Revert.
2164 * alpha-nbsd-tdep.c: Revert.
2165 * alpha-mdebug-tdep.c: Revert.
2166 * alpha-linux-tdep.c: Revert.
2167 * alpha-linux-nat.c: Revert.
2168 * alpha-bsd-tdep.c: Revert.
2169 * alpha-bsd-nat.c: Revert.
2170 * aix-thread.c: Revert.
2172 * addrmap.c: Revert.
2173 * ada-varobj.c: Revert.
2174 * ada-valprint.c: Revert.
2175 * ada-typeprint.c: Revert.
2176 * ada-tasks.c: Revert.
2177 * ada-lang.c: Revert.
2178 * aarch64-tdep.c: Revert.
2179 * aarch64-ravenscar-thread.c: Revert.
2180 * aarch64-newlib-tdep.c: Revert.
2181 * aarch64-linux-tdep.c: Revert.
2182 * aarch64-linux-nat.c: Revert.
2183 * aarch64-fbsd-tdep.c: Revert.
2184 * aarch64-fbsd-nat.c: Revert.
2185 * aarch32-linux-nat.c: Revert.
2189 * ft32-tdep.c: Sort headers.
2190 * frv-tdep.c: Sort headers.
2191 * frv-linux-tdep.c: Sort headers.
2192 * frame.c: Sort headers.
2193 * frame-unwind.c: Sort headers.
2194 * frame-base.c: Sort headers.
2195 * fork-child.c: Sort headers.
2196 * findvar.c: Sort headers.
2197 * findcmd.c: Sort headers.
2198 * filesystem.c: Sort headers.
2199 * filename-seen-cache.h: Sort headers.
2200 * filename-seen-cache.c: Sort headers.
2201 * fbsd-tdep.c: Sort headers.
2202 * fbsd-nat.h: Sort headers.
2203 * fbsd-nat.c: Sort headers.
2204 * f-valprint.c: Sort headers.
2205 * f-typeprint.c: Sort headers.
2206 * f-lang.c: Sort headers.
2207 * extension.h: Sort headers.
2208 * extension.c: Sort headers.
2209 * extension-priv.h: Sort headers.
2210 * expprint.c: Sort headers.
2211 * exec.h: Sort headers.
2212 * exec.c: Sort headers.
2213 * exceptions.c: Sort headers.
2214 * event-top.c: Sort headers.
2215 * event-loop.c: Sort headers.
2216 * eval.c: Sort headers.
2217 * elfread.c: Sort headers.
2218 * dwarf2read.h: Sort headers.
2219 * dwarf2read.c: Sort headers.
2220 * dwarf2loc.c: Sort headers.
2221 * dwarf2expr.h: Sort headers.
2222 * dwarf2expr.c: Sort headers.
2223 * dwarf2-frame.c: Sort headers.
2224 * dwarf2-frame-tailcall.c: Sort headers.
2225 * dwarf-index-write.h: Sort headers.
2226 * dwarf-index-write.c: Sort headers.
2227 * dwarf-index-common.c: Sort headers.
2228 * dwarf-index-cache.h: Sort headers.
2229 * dwarf-index-cache.c: Sort headers.
2230 * dummy-frame.c: Sort headers.
2231 * dtrace-probe.c: Sort headers.
2232 * disasm.h: Sort headers.
2233 * disasm.c: Sort headers.
2234 * disasm-selftests.c: Sort headers.
2235 * dictionary.c: Sort headers.
2236 * dicos-tdep.c: Sort headers.
2237 * demangle.c: Sort headers.
2238 * dcache.h: Sort headers.
2239 * dcache.c: Sort headers.
2240 * darwin-nat.h: Sort headers.
2241 * darwin-nat.c: Sort headers.
2242 * darwin-nat-info.c: Sort headers.
2243 * d-valprint.c: Sort headers.
2244 * d-namespace.c: Sort headers.
2245 * d-lang.c: Sort headers.
2246 * ctf.c: Sort headers.
2247 * csky-tdep.c: Sort headers.
2248 * csky-linux-tdep.c: Sort headers.
2249 * cris-tdep.c: Sort headers.
2250 * cris-linux-tdep.c: Sort headers.
2251 * cp-valprint.c: Sort headers.
2252 * cp-support.c: Sort headers.
2253 * cp-namespace.c: Sort headers.
2254 * cp-abi.c: Sort headers.
2255 * corelow.c: Sort headers.
2256 * corefile.c: Sort headers.
2257 * continuations.c: Sort headers.
2258 * completer.h: Sort headers.
2259 * completer.c: Sort headers.
2260 * complaints.c: Sort headers.
2261 * coffread.c: Sort headers.
2262 * coff-pe-read.c: Sort headers.
2263 * cli-out.h: Sort headers.
2264 * cli-out.c: Sort headers.
2265 * charset.c: Sort headers.
2266 * c-varobj.c: Sort headers.
2267 * c-valprint.c: Sort headers.
2268 * c-typeprint.c: Sort headers.
2269 * c-lang.c: Sort headers.
2270 * buildsym.c: Sort headers.
2271 * buildsym-legacy.c: Sort headers.
2272 * build-id.h: Sort headers.
2273 * build-id.c: Sort headers.
2274 * btrace.c: Sort headers.
2275 * bsd-uthread.c: Sort headers.
2276 * breakpoint.h: Sort headers.
2277 * breakpoint.c: Sort headers.
2278 * break-catch-throw.c: Sort headers.
2279 * break-catch-syscall.c: Sort headers.
2280 * break-catch-sig.c: Sort headers.
2281 * blockframe.c: Sort headers.
2282 * block.c: Sort headers.
2283 * bfin-tdep.c: Sort headers.
2284 * bfin-linux-tdep.c: Sort headers.
2285 * bfd-target.c: Sort headers.
2286 * bcache.c: Sort headers.
2287 * ax-general.c: Sort headers.
2288 * ax-gdb.h: Sort headers.
2289 * ax-gdb.c: Sort headers.
2290 * avr-tdep.c: Sort headers.
2291 * auxv.c: Sort headers.
2292 * auto-load.c: Sort headers.
2293 * arm-wince-tdep.c: Sort headers.
2294 * arm-tdep.c: Sort headers.
2295 * arm-symbian-tdep.c: Sort headers.
2296 * arm-pikeos-tdep.c: Sort headers.
2297 * arm-obsd-tdep.c: Sort headers.
2298 * arm-nbsd-tdep.c: Sort headers.
2299 * arm-nbsd-nat.c: Sort headers.
2300 * arm-linux-tdep.c: Sort headers.
2301 * arm-linux-nat.c: Sort headers.
2302 * arm-fbsd-tdep.c: Sort headers.
2303 * arm-fbsd-nat.c: Sort headers.
2304 * arm-bsd-tdep.c: Sort headers.
2305 * arch-utils.c: Sort headers.
2306 * arc-tdep.c: Sort headers.
2307 * arc-newlib-tdep.c: Sort headers.
2308 * annotate.h: Sort headers.
2309 * annotate.c: Sort headers.
2310 * amd64-windows-tdep.c: Sort headers.
2311 * amd64-windows-nat.c: Sort headers.
2312 * amd64-tdep.c: Sort headers.
2313 * amd64-sol2-tdep.c: Sort headers.
2314 * amd64-obsd-tdep.c: Sort headers.
2315 * amd64-obsd-nat.c: Sort headers.
2316 * amd64-nbsd-tdep.c: Sort headers.
2317 * amd64-nbsd-nat.c: Sort headers.
2318 * amd64-nat.c: Sort headers.
2319 * amd64-linux-tdep.c: Sort headers.
2320 * amd64-linux-nat.c: Sort headers.
2321 * amd64-fbsd-tdep.c: Sort headers.
2322 * amd64-fbsd-nat.c: Sort headers.
2323 * amd64-dicos-tdep.c: Sort headers.
2324 * amd64-darwin-tdep.c: Sort headers.
2325 * amd64-bsd-nat.c: Sort headers.
2326 * alpha-tdep.c: Sort headers.
2327 * alpha-obsd-tdep.c: Sort headers.
2328 * alpha-nbsd-tdep.c: Sort headers.
2329 * alpha-mdebug-tdep.c: Sort headers.
2330 * alpha-linux-tdep.c: Sort headers.
2331 * alpha-linux-nat.c: Sort headers.
2332 * alpha-bsd-tdep.c: Sort headers.
2333 * alpha-bsd-nat.c: Sort headers.
2334 * aix-thread.c: Sort headers.
2335 * agent.c: Sort headers.
2336 * addrmap.c: Sort headers.
2337 * ada-varobj.c: Sort headers.
2338 * ada-valprint.c: Sort headers.
2339 * ada-typeprint.c: Sort headers.
2340 * ada-tasks.c: Sort headers.
2341 * ada-lang.c: Sort headers.
2342 * aarch64-tdep.c: Sort headers.
2343 * aarch64-ravenscar-thread.c: Sort headers.
2344 * aarch64-newlib-tdep.c: Sort headers.
2345 * aarch64-linux-tdep.c: Sort headers.
2346 * aarch64-linux-nat.c: Sort headers.
2347 * aarch64-fbsd-tdep.c: Sort headers.
2348 * aarch64-fbsd-nat.c: Sort headers.
2349 * aarch32-linux-nat.c: Sort headers.
2353 * varobj.c (varobj_create): Update.
2354 * rust-exp.y (struct rust_parser) <update_innermost_block,
2355 lookup_symbol>: New methods.
2356 (rust_parser::update_innermost_block, rust_parser::lookup_symbol):
2358 (rust_parser::rust_lookup_type)
2359 (rust_parser::convert_ast_to_expression, rust_lex_tests): Update.
2360 * printcmd.c (display_command, do_one_display): Update.
2361 * parser-defs.h (struct parser_state) <parser_state>: Add
2362 "tracker" parameter.
2363 (block_tracker): New member.
2364 (class innermost_block_tracker) <innermost_block_tracker>: Add
2366 <reset>: Remove method.
2367 (innermost_block): Don't declare.
2368 (null_post_parser): Update.
2369 * parse.c (innermost_block): Remove global.
2370 (write_dollar_variable): Update.
2371 (parse_exp_1, parse_exp_in_context): Add "tracker" parameter.
2372 Remove "tracker_types" parameter.
2373 (parse_expression): Add "tracker" parameter.
2374 (parse_expression_for_completion): Update.
2375 (null_post_parser): Add "tracker" parameter.
2376 * p-exp.y: Update rules.
2377 * m2-exp.y: Update rules.
2378 * language.h (struct language_defn) <la_post_parser>: Add
2379 "tracker" parameter.
2380 * go-exp.y: Update rules.
2381 * f-exp.y: Update rules.
2382 * expression.h (parse_expression, parse_exp_1): Add "tracker"
2384 * d-exp.y: Update rules.
2385 * c-exp.y: Update rules.
2386 * breakpoint.c (set_breakpoint_condition): Create an
2387 innermost_block_tracker.
2388 (watch_command_1): Likewise.
2389 * ada-lang.c (resolve): Add "tracker" parameter.
2390 (resolve_subexp): Likewise.
2391 * ada-exp.y (write_var_from_sym): Update.
2395 * type-stack.h: New file.
2396 * type-stack.c: New file.
2397 * parser-defs.h (enum type_pieces, union type_stack_elt): Move to
2399 (insert_into_type_stack, insert_type, push_type, push_type_int)
2400 (insert_type_address_space, pop_type, pop_type_int)
2401 (pop_typelist, pop_type_stack, append_type_stack)
2402 (push_type_stack, get_type_stack, push_typelist)
2403 (follow_type_instance_flags, follow_types): Don't declare.
2404 * parse.c (type_stack): Remove global.
2405 (parse_exp_in_context): Update.
2406 (insert_into_type_stack, insert_type, push_type, push_type_int)
2407 (insert_type_address_space, pop_type, pop_type_int)
2408 (pop_typelist, pop_type_stack, append_type_stack)
2409 (push_type_stack, get_type_stack, push_typelist)
2410 (follow_type_instance_flags, follow_types): Remove (moved to
2412 * f-exp.y (type_stack): New global.
2414 (push_kind_type, f_parse): Update.
2415 * d-exp.y (type_stack): New global.
2418 * c-exp.y (struct c_parse_state) <type_stack>: New member.
2420 * Makefile.in (COMMON_SFILES): Add type-stack.c.
2421 (HFILES_NO_SRCDIR): Add type-stack.h.
2425 * rust-exp.y (rust_parser::lex_identifier, rustyylex)
2426 (rust_parser::convert_ast_to_expression, rust_parse)
2427 (rust_lex_test_completion, rust_lex_tests): Update.
2428 * parser-defs.h (struct expr_completion_state): New.
2429 (struct parser_state) <parser_state>: Add completion parameter.
2430 <mark_struct_expression, mark_completion_tag>: New methods.
2431 <parse_completion, m_completion_state>: New members.
2432 (prefixify_expression, null_post_parser): Update.
2433 (mark_struct_expression, mark_completion_tag): Don't declare.
2434 * parse.c (parse_completion, expout_last_struct)
2435 (expout_tag_completion_type, expout_completion_name): Remove
2437 (parser_state::mark_struct_expression)
2438 (parser_state::mark_completion_tag): Now methods.
2439 (prefixify_expression): Add last_struct parameter.
2440 (prefixify_subexp): Likewise.
2441 (parse_exp_1): Update.
2442 (parse_exp_in_context): Add cstate parameter. Update.
2443 (parse_expression_for_completion): Create an
2444 expr_completion_state.
2445 (null_post_parser): Add "completion" parameter.
2446 * p-exp.y: Update rules.
2448 * language.h (struct language_defn) <la_post_parser>: Add
2449 "completing" parameter.
2450 * go-exp.y: Update rules.
2451 (lex_one_token): Update.
2452 * expression.h (parse_completion): Don't declare.
2453 * d-exp.y: Update rules.
2454 (lex_one_token): Update rules.
2455 * c-exp.y: Update rules.
2456 (lex_one_token): Update.
2457 * ada-lang.c (resolve): Add "parse_completion" parameter.
2458 (resolve_subexp): Likewise.
2459 (ada_resolve_function): Likewise.
2463 * parser-defs.h (struct parser_state) <start_arglist,
2464 end_arglist>: New methods.
2465 <arglist_len, m_funcall_chain>: New members.
2466 (arglist_len, start_arglist, end_arglist): Don't declare.
2467 * parse.c (arglist_len, funcall_chain): Remove global.
2468 (start_arglist, end_arglist): Remove functions.
2469 (parse_exp_in_context): Update.
2470 * p-exp.y: Update rules.
2471 * m2-exp.y: Update rules.
2472 * go-exp.y: Update rules.
2473 * f-exp.y: Update rules.
2474 * d-exp.y: Update rules.
2475 * c-exp.y: Update rules.
2479 * rust-exp.y (struct rust_parser) <lex_hex, lex_escape,
2480 lex_operator, push_back>: New methods.
2482 (rust_parser::lex_hex, lex_escape): Rename and update.
2483 (rust_parser::lex_string, rust_parser::lex_identifier): Update.
2484 (rust_parser::lex_operator): Rename and update.
2485 (rust_parser::lex_number, rustyylex, rustyyerror)
2486 (rust_lex_test_init, rust_lex_test_sequence)
2487 (rust_lex_test_push_back, rust_lex_tests): Update.
2488 * parser-defs.h (struct parser_state) <parser_state>: Add "input"
2490 <lexptr, prev_lexptr>: New members.
2491 (lexptr, prev_lexptr): Don't declare.
2492 * parse.c (lexptr, prev_lexptr): Remove globals.
2493 (parse_exp_in_context): Update.
2494 * p-exp.y (yylex, yyerror): Update.
2495 * m2-exp.y (parse_number, yylex, yyerror): Update.
2496 * go-exp.y (lex_one_token, yyerror): Update.
2497 * f-exp.y (match_string_literal, yylex, yyerror): Update.
2498 * d-exp.y (lex_one_token, yyerror): Update.
2499 * c-exp.y (scan_macro_expansion, finished_macro_expansion)
2500 (lex_one_token, yyerror): Update.
2501 * ada-lex.l (YY_INPUT): Update.
2502 (rewind_to_char): Update.
2503 * ada-exp.y (yyerror): Update.
2507 * rust-exp.y (rustyylex, rust_lex_tests): Update.
2508 * parser-defs.h (struct parser_state) <parser_state>: Add new
2510 <comma_terminates>: New member.
2511 (comma_terminates): Don't declare global.
2512 * parse.c (comma_terminates): Remove global.
2513 (parse_exp_in_context): Update.
2514 * p-exp.y (yylex): Update.
2515 * m2-exp.y (yylex): Update.
2516 * go-exp.y (lex_one_token): Update.
2517 * f-exp.y (yylex): Update.
2518 * d-exp.y (lex_one_token): Update.
2519 * c-exp.y (lex_one_token): Update.
2520 * ada-lex.l: Update.
2524 * rust-exp.y (struct rust_parser) <paren_depth>: New member.
2525 (rustyylex, rust_lex_test_init, rust_lex_test_one)
2526 (rust_lex_test_sequence, rust_lex_test_push_back): Update.
2527 * parser-defs.h (paren_depth): Don't declare.
2528 * parse.c (paren_depth): Remove global.
2529 (parse_exp_in_context): Update.
2530 * p-exp.y (paren_depth): New global.
2531 (pascal_parse): Initialize it.
2532 * m2-exp.y (paren_depth): New global.
2533 (m2_parse): Initialize it.
2534 * go-exp.y (paren_depth): New global.
2535 (go_parse): Initialize it.
2536 * f-exp.y (paren_depth): New global.
2537 (f_parse): Initialize it.
2538 * d-exp.y (paren_depth): New global.
2539 (d_parse): Initialize it.
2540 * c-exp.y (paren_depth): New global.
2541 (c_parse): Initialize it.
2542 * ada-lex.l (paren_depth): New global.
2543 (lexer_init): Initialize it.
2547 * rust-exp.y (rust_parser::crate_name, rust_parser::super_name)
2548 (rust_parser::convert_ast_to_type)
2549 (rust_parser::convert_ast_to_expression, rust_lex_tests): Update.
2550 * parser-defs.h (struct parser_state) <parser_state>: Add
2551 parameters. Initialize new members.
2552 <expression_context_block, expression_context_pc>: New members.
2553 * parse.c (expression_context_block, expression_context_pc):
2555 (parse_exp_in_context): Update.
2556 * p-exp.y: Update all rules.
2558 * m2-exp.y: Update all rules.
2560 * go-exp.y (yylex): Update.
2561 * f-exp.y (yylex): Update.
2562 * d-exp.y: Update all rules.
2564 * c-exp.y: Update all rules.
2565 (lex_one_token, classify_name, yylex, c_parse): Update.
2566 * ada-exp.y (write_var_or_type, write_name_assoc): Update.
2570 * gdbarch.h, gdbarch.c: Rebuild.
2571 * gdbarch.sh (dtrace_parse_probe_argument): Change type.
2573 (struct stap_parse_info): Replace "parser_state" with
2575 * parser-defs.h (struct expr_builder): Rename from "parser_state".
2576 (parser_state): New class.
2577 * parse.c (expr_builder): Rename.
2578 (expr_builder::release): Rename.
2579 (write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
2580 (write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
2581 (write_exp_elt_longcst, write_exp_elt_floatcst)
2582 (write_exp_elt_type, write_exp_elt_intern, write_exp_string)
2583 (write_exp_string_vector, write_exp_bitstring)
2584 (write_exp_msymbol, mark_struct_expression)
2585 (write_dollar_variable)
2586 (insert_type_address_space, increase_expout_size): Replace
2587 "parser_state" with "expr_builder".
2588 * dtrace-probe.c: Replace "parser_state" with "expr_builder".
2589 * amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Replace
2590 "parser_state" with "expr_builder".
2594 * rust-exp.y: Replace "parse_language" with method call.
2596 (yylex): Replace "parse_language" with method call.
2598 (yylex): Replace "parse_language" with method call.
2599 * go-exp.y (classify_name): Replace "parse_language" with method
2601 * f-exp.y (yylex): Replace "parse_language" with method call.
2602 * d-exp.y (lex_one_token): Replace "parse_language" with method
2605 (lex_one_token, classify_name, yylex): Replace "parse_language"
2607 * ada-exp.y (find_primitive_type, type_char)
2608 (type_system_address): Replace "parse_language" with method call.
2612 * rust-exp.y: Replace "parse_gdbarch" with method call.
2613 * parse.c (write_dollar_variable, insert_type_address_space):
2614 Replace "parse_gdbarch" with method call.
2615 * p-exp.y (parse_type, yylex): Replace "parse_gdbarch" with method
2617 * objc-lang.c (end_msglist): Replace "parse_gdbarch" with method
2619 * m2-exp.y (parse_type, parse_m2_type, yylex): Replace
2620 "parse_gdbarch" with method call.
2621 * go-exp.y (parse_type, classify_name): Replace "parse_gdbarch"
2623 * f-exp.y (parse_type, parse_f_type, yylex): Replace
2624 "parse_gdbarch" with method call.
2625 * d-exp.y (parse_type, parse_d_type, lex_one_token): Replace
2626 "parse_gdbarch" with method call.
2627 * c-exp.y (parse_type, parse_number, classify_name): Replace
2628 "parse_gdbarch" with method call.
2629 * ada-lex.l: Replace "parse_gdbarch" with method call.
2630 * ada-exp.y (parse_type, find_primitive_type, type_char)
2631 (type_system_address): Replace "parse_gdbarch" with method call.
2635 * dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
2636 * stap-probe.c (stap_parse_argument): Update.
2637 * stap-probe.h (struct stap_parse_info) <stap_parse_info>: Remove
2638 initial_size parameter.
2639 * rust-exp.y (rust_lex_tests): Update.
2640 * parse.c (parser_state): Update.
2641 (parse_exp_in_context): Update.
2642 * parser-defs.h (struct parser_state) <parser_state>: Remove
2643 "initial_size" parameter.
2647 * parser-defs.h (increase_expout_size): Don't declare.
2648 * parse.c (increase_expout_size): Now static.
2652 * gnu-nat.c (gnu_nat_target::wait): Fix
2653 target_waitstatus_to_string call.
2657 * eval.c (evaluate_subexp_standard): Handle internal functions
2658 during Fortran function call handling.
2662 * NEWS: Mention new internal functions.
2663 * dwarf2read.c (dwarf2_init_complex_target_type): New function.
2664 (read_base_type): Use dwarf2_init_complex_target_type.
2665 * value.c (creal_internal_fn): New function.
2666 (cimag_internal_fn): New function.
2667 (_initialize_values): Register new internal functions.
2671 * infrun.c (stop_all_threads): If debug_infrun, always
2672 trace the wait status after wait_one, using
2673 target_waitstatus_to_string and target_pid_to_str.
2674 (handle_inferior_event): Replace various trace of
2675 wait status kind by a single trace.
2676 * gdb/gnu-nat.c (gnu_nat_target::wait): Replace local
2677 wait status kind image by target_waitstatus_to_string.
2678 * target/waitstatus.c (target_waitstatus_to_string): Fix
2684 * dwarf2read.c (partial_die_info::read): Handle DW_AT_ranges.
2689 * top.c (quit_force): Call 'finalize_values'.
2690 * value.c (finalize_values): New function.
2691 * value.h (finalize_values): Declare.
2695 * NEWS: Announce $_gdb_major and $_gdb_minor.
2697 * top.c (init_gdb_version_vars): New function.
2698 (gdb_init): Call init_gdb_version_vars.
2702 * printcmd.c (_initialize_printcmd): Add usage lines. Update some
2703 help text. Remove dead code.
2707 From Siddhesh Poyarekar:
2708 * f-lang.h (f77_get_upperbound): Return LONGEST.
2709 (f77_get_lowerbound): Likewise.
2710 * f-typeprint.c (f_type_print_varspec_suffix): Expand
2711 UPPER_BOUND and LOWER_BOUND to LONGEST. Use plongest to format
2713 (f_type_print_base): Expand UPPER_BOUND to LONGEST. Use
2714 plongest to format print it.
2715 * f-valprint.c (f77_get_lowerbound): Return LONGEST.
2716 (f77_get_upperbound): Likewise.
2717 (f77_get_dynamic_length_of_aggregate): Expand UPPER_BOUND,
2718 LOWER_BOUND to LONGEST.
2719 (f77_create_arrayprint_offset_tbl): Likewise.
2723 * ada-lang.c (ada_template_to_fixed_record_type_1): Use
2724 %s/pulongest for TYPE_LENGTH instead of %d in format
2726 * ada-typerint.c (ada_print_type): Likewise.
2727 * amd64-windows-tdep.c (amd64_windows_store_arg_in_reg): Likewise.
2728 * compile/compile-c-support.c (generate_register_struct): Likewise.
2729 * gdbtypes.c (recursive_dump_type): Likewise.
2730 * gdbtypes.h (struct type) <length>: Change type to ULONGEST.
2731 * m2-typeprint.c (m2_array): Use %s/pulongest for TYPE_LENGTH
2732 instead of %d in format strings.
2733 * riscv-tdep.c (riscv_type_alignment): Cast second argument
2734 to std::min to ULONGEST.
2735 * symmisc.c (print_symbol): Use %s/pulongest for TYPE_LENGTH
2736 instead of %d in format strings.
2737 * tracepoint.c (info_scope_command): Likewise.
2738 * typeprint.c (print_offset_data::update)
2739 (print_offset_data::finish): Likewise.
2740 * xtensa-tdep.c (xtensa_store_return_value)
2741 (xtensa_push_dummy_call): Likewise.
2745 * windows-nat.c (display_selector): Fixed format specifications
2750 * infrun.c (follow_exec): Call target_terminal::ours_for_output.
2754 * nios2-tdep.h (struct gdbarch_tdep): Add is_kernel_helper.
2755 * nios2-tdep.c (nios2_get_next_pc): Skip over kernel helpers.
2756 * nios2-linux-tdep.c (nios2_linux_is_kernel_helper): New.
2757 (nios2_linux_init_abi): Install it.
2761 * aarch64-tdep.c (aarch64_vnv_type): Use vector types.
2765 * features/aarch64-sve.c (create_feature_aarch64_sve): Add q view.
2770 * minsyms.c (minimal_symbol_upper_bound): Fix buffer overflow.
2774 * gdb-gdb.py.in (StructMainTypePrettyPrinter.bound_img): New method.
2775 (StructMainTypePrettyPrinter.bounds_img): Use new "bound_img"
2776 method to compute the bounds of range types. Also print "[evaluated]"
2777 if the bounds' values come from a dynamic evaluation.
2781 * cp-valprint.c (cp_print_value_fields): Don't print trailing
2782 whitespace when pretty printing is on.
2786 * ppc-linux-nat.c: Add include.
2790 * NEWS: Mention AArch64 Pointer Authentication.
2794 * arm-linux-nat.c: Add include.
2798 * source-cache.c (source_cache::get_source_lines): Re-read
2799 fullname after calling open_source_file.
2803 * NEWS: Mention TLS support for FreeBSD.
2807 * minsyms.c (BUNCH_SIZE): Update comment.
2808 (~minimal_symbol_reader): Remove old comment.
2809 (compact_minimal_symbols): Update comment.
2810 (minimal_symbol_reader::install): Remove old comment. Update
2815 * s390-linux-nat.c: Add include.
2819 * aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
2820 Call linux_get_hwcap.
2821 * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
2823 (aarch64_linux_get_hwcap): Remove function.
2824 * aarch64-linux-tdep.h (aarch64_linux_get_hwcap): Remove
2826 * arm-linux-nat.c (arm_linux_nat_target::read_description):Call
2828 * arm-linux-tdep.c (arm_linux_core_read_description): Likewise.
2829 * linux-tdep.c (linux_get_hwcap): Add function.
2830 (linux_get_hwcap2): Likewise.
2831 * linux-tdep.h (linux_get_hwcap): Add declaration.
2832 (linux_get_hwcap2): Likewise.
2833 * ppc-linux-nat.c (ppc_linux_get_hwcap): Remove function.
2834 (ppc_linux_get_hwcap2): Likewise.
2835 (ppc_linux_nat_target::region_ok_for_hw_watchpoint): Call
2837 (ppc_linux_nat_target::insert_watchpoint): Likewise.
2838 (ppc_linux_nat_target::watchpoint_addr_within_range): Likewise.
2839 (ppc_linux_nat_target::read_description): Likewise.
2840 * ppc-linux-tdep.c (ppc_linux_core_read_description): Likewise.
2841 * s390-linux-nat.c: Likewise.
2842 * s390-linux-tdep.c (s390_core_read_description): Likewise.
2846 * ada-lang.c (standard_lookup): Simplify initialization.
2847 (ada_lookup_symbol_nonlocal): Simplify return.
2848 * solib-spu.c (spu_lookup_lib_symbol): Simplify return.
2849 * solib-darwin.c (darwin_lookup_lib_symbol): Simplify return.
2850 * solib-svr4.c (elf_lookup_lib_symbol): Simplify return.
2851 * rust-lang.c (rust_lookup_symbol_nonlocal): Simplify
2853 * solib.c (solib_global_lookup): Simplify.
2854 * symtab.c (null_block_symbol): Remove.
2855 (symbol_cache_lookup): Simplify returns.
2856 (lookup_language_this): Simplify returns.
2857 (lookup_symbol_aux): Simplify return.
2858 (lookup_local_symbol): Simplify returns.
2859 (lookup_global_symbol_from_objfile): Simplify return.
2860 (lookup_symbol_in_objfile_symtabs)
2861 (lookup_symbol_in_objfile_from_linkage_name): Simplify return.
2862 (lookup_symbol_via_quick_fns, lookup_symbol_in_static_block)
2863 (lookup_static_symbol, lookup_global_symbol): Simplify return.
2864 * cp-namespace.c (cp_lookup_bare_symbol)
2865 (cp_search_static_and_baseclasses, cp_lookup_symbol_via_imports)
2866 (cp_lookup_symbol_via_all_imports, cp_lookup_nested_symbol_1)
2867 (cp_lookup_nested_symbol): Don't use null_block_symbol.
2868 (cp_lookup_symbol_via_imports): Simplify initialization.
2869 (find_symbol_in_baseclass): Likewise.
2870 * symtab.h (null_block_symbol): Remove.
2871 * d-namespace.c (d_lookup_symbol): Don't use null_block_symbol.
2872 (d_lookup_nested_symbol, d_lookup_symbol_imports)
2873 (d_lookup_symbol_module): Likewise.
2874 (find_symbol_in_baseclass): Simplify initialization.
2878 * expression.h: Don't include symtab.h.
2879 (struct block): Forward declare.
2883 * c-exp.y (typebase): Remove casts.
2884 * gdbtypes.c (lookup_unsigned_typename, )
2885 (lookup_signed_typename): Remove cast.
2886 * eval.c (parse_to_comma_and_eval): Remove cast.
2887 * parse.c (write_dollar_variable): Remove cast.
2888 * block.h (struct block) <superblock>: Now const.
2889 * symfile-debug.c (debug_qf_map_matching_symbols): Update.
2890 * psymtab.c (psym_map_matching_symbols): Make "block" const.
2891 (map_block): Make "block" const.
2892 * symfile.h (struct quick_symbol_functions)
2893 <map_matching_symbols>: Constify block argument to "callback".
2894 * symtab.c (basic_lookup_transparent_type_quick): Make "block"
2896 (find_pc_sect_compunit_symtab): Make "b" const.
2897 (find_symbol_at_address): Likewise.
2898 (search_symbols): Likewise.
2899 * dwarf2read.c (dw2_lookup_symbol): Make "block" const.
2900 (dw2_debug_names_lookup_symbol): Likewise.
2901 (dw2_map_matching_symbols): Update.
2902 * p-valprint.c (pascal_val_print): Remove "block".
2903 * ada-lang.c (ada_add_global_exceptions): Make "b" const.
2904 (aux_add_nonlocal_symbols): Make "block" const.
2905 (resolve_subexp): Remove cast.
2906 * linespec.c (iterate_over_all_matching_symtabs): Make "block"
2908 (iterate_over_file_blocks): Likewise.
2909 * f-exp.y (%union) <bval>: Remove.
2910 * coffread.c (patch_opaque_types): Make "b" const.
2911 * spu-tdep.c (spu_catch_start): Make "block" const.
2912 * c-valprint.c (print_unpacked_pointer): Remove "block".
2913 * symmisc.c (dump_symtab_1): Make "b" const.
2914 (block_depth): Make "block" const.
2915 * d-exp.y (%union) <bval>: Remove.
2916 * cp-support.h (cp_lookup_rtti_type): Update.
2917 * cp-support.c (cp_lookup_rtti_type): Make "block" const.
2918 * psymtab.c (psym_lookup_symbol): Make "block" const.
2919 (maintenance_check_psymtabs): Make "b" const.
2920 * python/py-framefilter.c (extract_sym): Make "sym_block" const.
2921 (enumerate_locals, enumerate_args): Update.
2922 * python/py-symtab.c (stpy_global_block): Make "block" const.
2923 (stpy_static_block): Likewise.
2924 * inline-frame.c (block_starting_point_at): Make "new_block"
2926 * block.c (find_block_in_blockvector): Make return type const.
2927 (blockvector_for_pc_sect): Make "b" const.
2928 (find_block_in_blockvector): Make "b" const.
2932 * varobj.c (varobj_create): Update.
2933 * symfile.c (clear_symtab_users): Don't reset innermost_block.
2934 * printcmd.c (display_command, do_one_display): Don't reset
2936 * parser-defs.h (enum innermost_block_tracker_type): Move to
2938 (innermost_block): Update comment.
2939 * parse.c (parse_exp_1): Add tracker_types parameter.
2940 (parse_exp_in_context): Rename from parse_exp_in_context_1. Add
2941 tracker_types parameter. Reset innermost_block.
2942 (parse_exp_in_context): Remove.
2943 (parse_expression_for_completion): Update.
2944 * objfiles.c (~objfile): Don't reset expression_context_block or
2946 * expression.h (enum innermost_block_tracker_type): Move from
2948 (parse_exp_1): Add tracker_types parameter.
2949 * breakpoint.c (set_breakpoint_condition, watch_command_1): Don't
2950 reset innermost_block.
2954 * objfiles.h: Include bcache.h.
2958 * linespec.c (get_current_search_block): Use
2959 scoped_restore_current_language.
2960 * symmisc.c (dump_symtab): Use scoped_restore_current_language.
2965 * aarch64-linux-tdep.c
2966 (aarch64_linux_iterate_over_regset_sections): Check for pauth
2968 * aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_PAUTH): New define.
2973 * aarch64-tdep.c (aarch64_analyze_prologue): Check for pauth
2975 (aarch64_analyze_prologue_test): Add PACIASP test.
2976 (aarch64_prologue_prev_register): Unmask PC value.
2981 * aarch64-tdep.c (aarch64_frame_unmask_address): New function.
2982 (aarch64_dwarf2_prev_register): Unmask PC value.
2983 (aarch64_dwarf2_frame_init_reg): Init pauth registers.
2984 (aarch64_execute_dwarf_cfa_vendor_op): Check for
2985 DW_CFA_AARCH64_negate_ra_state.
2986 (aarch64_gdbarch_init): Add aarch64_execute_dwarf_cfa_vendor_op.
2991 * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Check for pauth
2993 (aarch64_pseudo_register_name): Likewise.
2994 (aarch64_pseudo_register_type): Likewise.
2995 (aarch64_pseudo_register_reggroup_p): Likewise.
2996 (aarch64_gdbarch_init): Add pauth registers.
2997 * aarch64-tdep.h (AARCH64_DWARF_PAUTH_RA_STATE): New define.
2998 (AARCH64_DWARF_PAUTH_DMASK): Likewise.
2999 (AARCH64_DWARF_PAUTH_CMASK): Likewise.
3000 (struct gdbarch_tdep): Add regnum for ra_state.
3005 * arch/aarch64.h (AARCH64_PAUTH_REGS_SIZE): New define.
3010 * aarch64-linux-nat.c (fetch_pauth_masks_from_thread): New
3012 (aarch64_linux_nat_target::fetch_registers): Read pauth registers.
3013 * aarch64-tdep.c (aarch64_cannot_store_register): New function.
3014 (aarch64_gdbarch_init): Add puth registers.
3015 * aarch64-tdep.h (struct gdbarch_tdep): Add pauth features.
3016 * arch/aarch64.h (AARCH64_PAUTH_DMASK_REGNUM): New define.
3017 (AARCH64_PAUTH_CMASK_REGNUM): Likewise.
3022 * aarch64-linux-nat.c
3023 (aarch64_linux_nat_target::read_description): Read PACA hwcap.
3024 * aarch64-linux-tdep.c
3025 (aarch64_linux_core_read_description): Likewise.
3026 (aarch64_linux_get_hwcap): New function.
3027 * aarch64-linux-tdep.h (AARCH64_HWCAP_PACA): New define.
3028 (aarch64_linux_get_hwcap): New declaration.
3033 * aarch64-linux-nat.c
3034 (aarch64_linux_nat_target::read_description): Add pauth param.
3035 * aarch64-linux-tdep.c
3036 (aarch64_linux_core_read_description): Likewise.
3037 * aarch64-tdep.c (struct target_desc): Add in pauth.
3038 (aarch64_read_description): Add pauth param.
3039 (aarch64_gdbarch_init): Likewise.
3040 * aarch64-tdep.h (aarch64_read_description): Likewise.
3041 * arch/aarch64.c (aarch64_create_target_description): Likewise.
3042 * arch/aarch64.h (aarch64_create_target_description): Likewise.
3043 * features/Makefile: Add new files.
3044 * features/aarch64-pauth.c: New file.
3045 * features/aarch64-pauth.xml: New file.
3049 * infrun.c (handle_inferior_event): Rename from
3050 handle_inferior_event_1. Create a scoped_value_mark.
3051 (handle_inferior_event): Remove.
3055 * mi/mi-interp.c (mi_on_normal_stop_1): Only show displays once.
3056 * infrun.h (print_stop_event): Add "displays" parameter.
3057 * infrun.c (print_stop_event): Add "displays" parameter.
3061 * tui/tui-out.c (tui_ui_out::do_field_string): Simplify.
3062 (tui_ui_out::do_text): Add comments. Reset M_LINE to 0 instead of
3063 to -1. Fix TABs vs spaces.
3064 (tui_ui_out::tui_ui_out): Don't initialize fields here.
3065 * tui/tui-out.h (tui_ui_out) Add intro comments.
3066 <m_line, m_start_of_line>: In-class initialize, and add describing
3071 * arm-linux-nat.c (arm_linux_insert_hw_breakpoint1): Fix
3073 (arm_linux_remove_hw_breakpoint1): Use a gdb::function_view.
3078 * tui/tui-out.c (tui_ui_out::tui_ui_out): Fix initialization of
3079 m_line and m_start_of_line.
3083 * tui/tui-io.c (gdb_wgetch): Don't echo CR.
3084 (tui_getc): When gdb_wgetch returns a CR, behave the same as when
3085 it returns a newline. This fixes a regression in TU mode, whereby
3086 the next line is output on the same screen line as the user input.
3090 * minsyms.c (minimal_symbol_reader::install): Remove call to
3095 * tui/tui-io.c (reverse_mode_p, reverse_save_bg, reverse_save_fg):
3097 (apply_style): New, factored out from ...
3098 (apply_ansi_escape): ... this. Handle reverse video mode.
3099 (tui_set_reverse_mode): New function.
3100 * tui/tui-io.h (tui_set_reverse_mode): New declaration.
3101 * tui/tui-winsource.c (tui_show_source_line): Use
3102 tui_set_reverse_mode instead of setting A_STANDOUT.
3103 * ui-style.h (struct ui_file_style) <set_reverse, set_fg, set_bg>:
3108 * tui/tui-source.c (copy_source_line): Fix handling of 'column'.
3113 * ada-lang.c (empty_array): Add "high" parameter.
3114 (ada_evaluate_subexp): Update.
3118 * unittests/string_view-selftests.c: Define
3119 _initialize_string_view_selftests unconditionally.
3124 * windows-nat.c (windows_make_so): Remove unused text_vma variable.
3129 * windows-nat.c (display_selector): Fix format specifiers.
3133 * tui/tui-winsource.c (tui_set_is_exec_point_at): Call
3134 tui_refill_source_window instead of tui_refresh_win, to update the
3135 current execution line. This fixes redisplay of the current line
3136 when stepping through the code with "next" or "step".
3140 * source-cache.c (source_cache::get_source_lines): Call
3141 find_source_lines to initialize s->nlines. This fixes vertical
3142 scrolling of TUI source window when the DOWN arrow is pressed.
3146 * auto-load.c (_initialize_auto_load): Fix 'This options has'.
3147 linux-thread-db.c (_initialize_thread_db): Likewise.
3151 * tui/tui-winsource.c (tui_show_source_line): Revert "Use
3152 wclrtoeol in tui_show_source_line". This reverts changes made in
3153 commit 4a3045920bbe4e50a0f4920b0fdc4e88ef23015c.
3157 * symtab.h (struct minimal_symbol): Derive from
3158 general_symbol_info.
3159 (MSYMBOL_VALUE, MSYMBOL_VALUE_RAW_ADDRESS)
3160 (MSYMBOL_VALUE_ADDRESS, MSYMBOL_VALUE_BYTES)
3161 (MSYMBOL_BLOCK_VALUE, MSYMBOL_VALUE_CHAIN, MSYMBOL_LANGUAGE)
3162 (MSYMBOL_SECTION, MSYMBOL_OBJ_SECTION, MSYMBOL_NATURAL_NAME)
3163 (MSYMBOL_LINKAGE_NAME, MSYMBOL_DEMANGLED_NAME)
3164 (MSYMBOL_SEARCH_NAME): Update.
3165 (MSYMBOL_SET_LANGUAGE, MSYMBOL_SET_NAMES): Remove.
3166 * solib.c (gdb_bfd_lookup_symbol_from_symtab): Don't use memset.
3167 * minsyms.c (minimal_symbol_reader::record_full): Update.
3171 * minsyms.c (minimal_symbol_reader::install): Use memcpy.
3175 * objfiles.h (struct objfile_per_bfd_storage) <msymbols>: Now a
3177 (objfile::msymbols_range::begin, objfile::msymbols_range::end):
3179 * minsyms.c (lookup_minimal_symbol_by_pc_section)
3180 (build_minimal_symbol_hash_tables)
3181 (minimal_symbol_reader::install): Update.
3185 * symtab.c (create_demangled_names_hash): Update.
3186 (symbol_set_names): Update.
3187 * objfiles.h (struct objfile_per_bfd_storage)
3188 <demangled_names_hash>: Now an htab_up.
3189 * objfiles.c (objfile_per_bfd_storage): Simplify.
3193 * objfiles.h (struct objfile_per_bfd_storage): Declare
3195 * objfiles.c (objfile_per_bfd_storage::~objfile_per_bfd_storage):
3197 (get_objfile_bfd_data): Use new. Don't initialize
3199 (free_objfile_per_bfd_storage): Remove.
3200 (objfile_bfd_data_free, objfile::~objfile): Use delete.
3204 * symfile.c (reread_symbols): Update.
3205 * objfiles.c (objfile::objfile): Update.
3206 * minsyms.h (terminate_minimal_symbol_table): Don't declare.
3207 * minsyms.c (lookup_minimal_symbol_by_pc_section): Update
3209 (minimal_symbol_reader::install): Update.
3210 (terminate_minimal_symbol_table): Remove.
3211 * jit.c (jit_object_close_impl): Update.
3215 * minsyms.c (minimal_symbol_reader::record_full): Remove some
3220 * objfiles.h (struct objfile_per_bfd_storage)
3221 <demangled_hash_languages>: Now a bitset.
3222 * minsyms.c (add_minsym_to_demangled_hash_table): Update.
3223 (lookup_minimal_symbol): Update.
3227 * minsyms.h (class minimal_symbol_reader) <record_with_info>:
3228 Don't return the symbol.
3229 * coffread.c (record_minimal_symbol): Use record_full.
3233 The MS-Windows port of ncurses fails to switch to a color pair if
3234 one or both of the colors are the implicit default colors. This
3235 change records the default colors when TUI is initialized, and
3236 then specifies them explicitly when a color pair uses the default
3237 colors. This allows color styling in TUI mode on MS-Windows.
3239 * tui/tui-io.c [__MINGW32__]: Include windows.h. Declare
3241 (tui_initialize_io) [__MINGW32__]: Record the default terminal
3242 colors in ncurses_norm_attr.
3243 (apply_ansi_escape) [__MINGW32__]: If a color in a color pair is
3244 "none", replace it with the default color recorded in
3249 * source-cache.h (class source_cache) <get_source_lines>: Return
3251 * source-cache.c (source_cache::extract_lines): Handle case where
3252 first_pos==npos. Return std::string.
3253 (source_cache::get_source_lines): Update.
3257 * NEWS: Add item for "style sources" commands.
3258 * source-cache.c (source_cache::get_source_lines): Check
3260 * cli/cli-style.c (source_styling): New global.
3261 (_initialize_cli_style): Add "style sources" commands.
3262 (show_style_sources): New function.
3263 * cli/cli-style.h (source_styling): Declare.
3268 * tui/tui-winsource.h (tui_refill_source_window): Declare.
3269 * tui/tui-winsource.c (tui_refill_source_window): New function,
3271 (tui_horizontal_source_scroll): ... here. Move some logic.
3272 * cli/cli-style.c (set_style_enabled): Notify new observable.
3273 * tui/tui-hooks.c (tui_redisplay_source): New function.
3274 (tui_attach_detach_observers): Attach or detach
3275 tui_redisplay_source.
3276 * observable.h (source_styling_changed): New observable.
3277 * observable.c: Define source_styling_changed observable.
3281 * i386-gnu-nat.c (i386_gnu_nat_target::fetch_registers)
3282 (i386_gnu_nat_target::store_registers): Update.
3283 * target-debug.h (target_debug_print_std_string): New macro.
3284 * x86-linux-nat.c (x86_linux_nat_target::enable_btrace): Update.
3285 * windows-tdep.c (display_one_tib): Update.
3286 * tui/tui-stack.c (tui_make_status_line): Update.
3287 * top.c (print_inferior_quit_action): Update.
3288 * thread.c (thr_try_catch_cmd): Update.
3289 (add_thread_with_info): Update.
3290 (thread_target_id_str): Update.
3291 (thr_try_catch_cmd): Update.
3292 (thread_command): Update.
3293 (thread_find_command): Update.
3294 * record-btrace.c (record_btrace_target::info_record)
3295 (record_btrace_resume_thread, record_btrace_target::resume)
3296 (record_btrace_cancel_resume, record_btrace_step_thread)
3297 (record_btrace_target::wait, record_btrace_target::wait)
3298 (record_btrace_target::wait, record_btrace_target::stop): Update.
3299 * progspace.c (print_program_space): Update.
3300 * process-stratum-target.c
3301 (process_stratum_target::thread_address_space): Update.
3302 * linux-fork.c (linux_fork_mourn_inferior)
3303 (detach_checkpoint_command, info_checkpoints_command)
3304 (linux_fork_context): Update.
3305 (linux_fork_detach): Update.
3306 (class scoped_switch_fork_info): Update.
3307 (delete_checkpoint_command): Update.
3308 * infrun.c (follow_fork_inferior): Update.
3309 (follow_fork_inferior): Update.
3310 (proceed_after_vfork_done): Update.
3311 (handle_vfork_child_exec_or_exit): Update.
3312 (follow_exec): Update.
3313 (displaced_step_prepare_throw): Update.
3314 (displaced_step_restore): Update.
3315 (start_step_over): Update.
3317 (clear_proceed_status_thread): Update.
3319 (print_target_wait_results): Update.
3320 (do_target_wait): Update.
3321 (context_switch): Update.
3322 (stop_all_threads): Update.
3323 (restart_threads): Update.
3324 (finish_step_over): Update.
3325 (handle_signal_stop): Update.
3326 (switch_back_to_stepped_thread): Update.
3327 (keep_going_pass_signal): Update.
3328 (print_exited_reason): Update.
3329 (normal_stop): Update.
3330 * inferior.c (inferior_pid_to_str): Change return type.
3331 (print_selected_inferior): Update.
3332 (add_inferior): Update.
3333 (detach_inferior): Update.
3334 * dummy-frame.c (fprint_dummy_frames): Update.
3335 * dcache.c (dcache_info_1): Update.
3336 * btrace.c (btrace_enable, btrace_disable, btrace_teardown)
3337 (btrace_fetch, btrace_clear): Update.
3338 * linux-tdep.c (linux_core_pid_to_str): Change return type.
3339 * i386-cygwin-tdep.c (i386_windows_core_pid_to_str): Change return
3341 * fbsd-tdep.c (fbsd_core_pid_to_str): Change return type.
3342 * sol2-tdep.h (sol2_core_pid_to_str): Change return type.
3343 * sol2-tdep.c (sol2_core_pid_to_str): Change return type.
3344 * gdbarch.c, gdbarch.h: Rebuild.
3345 * gdbarch.sh (core_pid_to_str): Change return type.
3346 * windows-nat.c (struct windows_nat_target) <pid_to_str>: Change
3348 (windows_nat_target::pid_to_str): Change return type.
3349 (windows_delete_thread): Update.
3350 (windows_nat_target::attach): Update.
3351 (windows_nat_target::files_info): Update.
3352 * target-delegates.c: Rebuild.
3353 * sol-thread.c (class sol_thread_target) <pid_to_str>: Change
3355 (sol_thread_target::pid_to_str): Change return type.
3356 * remote.c (class remote_target) <pid_to_str>: Change return
3358 (remote_target::pid_to_str): Change return type.
3359 (extended_remote_target::attach, remote_target::remote_stop_ns)
3360 (remote_target::remote_notif_remove_queued_reply)
3361 (remote_target::push_stop_reply, remote_target::disable_btrace):
3363 (extended_remote_target::attach): Update.
3364 * remote-sim.c (struct gdbsim_target) <pid_to_str>: Change return
3366 (gdbsim_target::pid_to_str): Change return type.
3367 * ravenscar-thread.c (struct ravenscar_thread_target)
3368 <pid_to_str>: Change return type.
3369 (ravenscar_thread_target::pid_to_str): Change return type.
3370 * procfs.c (class procfs_target) <pid_to_str>: Change return
3372 (procfs_target::pid_to_str): Change return type.
3373 (procfs_target::attach): Update.
3374 (procfs_target::detach): Update.
3375 (procfs_target::fetch_registers): Update.
3376 (procfs_target::store_registers): Update.
3377 (procfs_target::wait): Update.
3378 (procfs_target::files_info): Update.
3379 * obsd-nat.c (obsd_nat_target::pid_to_str): Change return type.
3380 * nto-procfs.c (struct nto_procfs_target) <pid_to_str>: Change
3382 (nto_procfs_target::pid_to_str): Change return type.
3383 (nto_procfs_target::files_info, nto_procfs_target::attach): Update.
3384 * linux-thread-db.c (class thread_db_target) <pid_to_str>: Change
3386 * linux-nat.c (linux_nat_target::pid_to_str): Change return type.
3388 (attach_proc_task_lwp_callback, get_detach_signal)
3389 (detach_one_lwp, resume_lwp, linux_nat_target::resume)
3390 (linux_nat_target::resume, wait_lwp, stop_callback)
3391 (maybe_clear_ignore_sigint, stop_wait_callback, status_callback)
3392 (save_stop_reason, select_event_lwp, linux_nat_filter_event)
3393 (linux_nat_wait_1, resume_stopped_resumed_lwps)
3394 (linux_nat_target::wait, linux_nat_stop_lwp): Update.
3395 * inf-ptrace.c (inf_ptrace_target::pid_to_str): Change return
3397 (inf_ptrace_target::attach): Update.
3398 (inf_ptrace_target::files_info): Update.
3399 * go32-nat.c (struct go32_nat_target) <pid_to_str>: Change return
3401 (go32_nat_target::pid_to_str): Change return type.
3402 * gnu-nat.c (gnu_nat_target::pid_to_str): Change return type.
3403 (gnu_nat_target::wait): Update.
3404 (gnu_nat_target::wait): Update.
3405 (gnu_nat_target::resume): Update.
3406 * fbsd-nat.c (fbsd_nat_target::pid_to_str): Change return type.
3407 (fbsd_nat_target::wait): Update.
3408 * darwin-nat.c (darwin_nat_target::pid_to_str): Change return
3410 (darwin_nat_target::attach): Update.
3411 * corelow.c (class core_target) <pid_to_str>: Change return type.
3412 (core_target::pid_to_str): Change return type.
3413 * target.c (normal_pid_to_str): Change return type.
3414 (default_pid_to_str): Likewise.
3415 (target_pid_to_str): Change return type.
3416 (target_translate_tls_address): Update.
3417 (target_announce_detach): Update.
3418 * bsd-uthread.c (struct bsd_uthread_target) <pid_to_str>: Change
3420 (bsd_uthread_target::pid_to_str): Change return type.
3421 * bsd-kvm.c (class bsd_kvm_target) <pid_to_str>: Change return
3423 (bsd_kvm_target::pid_to_str): Change return type.
3424 * aix-thread.c (class aix_thread_target) <pid_to_str>: Change
3426 (aix_thread_target::pid_to_str): Change return type.
3427 * target.h (struct target_ops) <pid_to_str>: Change return type.
3428 (target_pid_to_str, normal_pid_to_str): Likewise.
3429 * obsd-nat.h (class obsd_nat_target) <pid_to_str>: Change return
3431 * linux-nat.h (class linux_nat_target) <pid_to_str>: Change return
3433 * inf-ptrace.h (struct inf_ptrace_target) <pid_to_str>: Change
3435 * gnu-nat.h (struct gnu_nat_target) <pid_to_str>: Change return
3437 * fbsd-nat.h (class fbsd_nat_target) <pid_to_str>: Change return
3439 * darwin-nat.h (class darwin_nat_target) <pid_to_str>: Change
3444 * NEWS: Mention that the new default MI version is 3. Mention
3445 changes to the output of commands and events that deal with
3446 multi-location breakpoints.
3447 * breakpoint.c: Include "mi/mi-out.h".
3448 (print_one_breakpoint): Change output syntax if using MI version
3450 * mi/mi-main.h (mi_cmd_fix_multi_location_breakpoint_output):
3452 (mi_multi_location_breakpoint_output_fixed): New.
3453 * mi/mi-main.c (fix_multi_location_breakpoint_output): New.
3454 (mi_cmd_fix_multi_location_breakpoint_output): New.
3455 (mi_multi_location_breakpoint_output_fixed): New.
3456 * mi/mi-cmds.c (mi_cmds): Register command
3457 -fix-multi-location-breakpoint-output.
3458 * mi/mi-out.c (mi_out_new): Instantiate version 3 when using
3463 * mi/mi-out.h (mi_out_new): Change parameter to const char *.
3464 * mi/mi-out.c (mi_out_new): Change parameter to const char *,
3465 instantiate mi_ui_out based on interpreter name.
3466 * mi/mi-interp.c (mi_interp::init): Use the new mi_out_new.
3467 * mi/mi-main.c (mi_load_progress): Likewise.
3471 * NEWS: Combine separate "New targets" sections for 8.3.
3475 * ppc-fbsd-tdep.c (ppcfbsd_get_thread_local_address): New.
3476 (ppcfbsd_init_abi): Install gdbarch
3477 "fetch_tls_load_module_address" and "get_thread_local_address"
3482 * riscv-fbsd-tdep.c (riscv_fbsd_get_thread_local_address): New.
3483 (riscv_fbsd_init_abi): Install gdbarch
3484 "fetch_tls_load_module_address" and "get_thread_local_address"
3489 * i386-fbsd-tdep.c (i386fbsd_get_thread_local_address): New.
3490 (i386fbsd_init_abi): Install gdbarch
3491 "fetch_tls_load_module_address" and "get_thread_local_address"
3496 * amd64-fbsd-tdep.c (amd64fbsd_get_thread_local_address): New.
3497 (amd64fbsd_init_abi): Install gdbarch
3498 "fetch_tls_load_module_address" and "get_thread_local_address"
3503 * fbsd-tdep.c (fbsd_pspace_data_handle): New variable.
3504 (struct fbsd_pspace_data): New type.
3505 (get_fbsd_pspace_data, fbsd_pspace_data_cleanup)
3506 (fbsd_read_integer_by_name, fbsd_fetch_rtld_offsets)
3507 (fbsd_get_tls_index, fbsd_get_thread_local_address): New function.
3508 (_initialize_fbsd_tdep): Initialize 'fbsd_pspace_data_handle'.
3509 * fbsd-tdep.c (fbsd_get_thread_local_address): New prototype.
3513 * gdbtypes.c (lookup_struct_elt): New function.
3514 (lookup_struct_elt_type): Reimplement via lookup_struct_elt.
3515 * gdbtypes.h (struct struct_elt): New type.
3516 (lookup_struct_elt): New prototype.
3520 * gdbtypes.c (lookup_struct_elt_type): Update comment and
3521 remove disabled code block.
3525 * gdbarch.sh (get_thread_local_address): New method.
3526 * gdbarch.h, gdbarch.c: Regenerate.
3527 * target.c (target_translate_tls_address): Use
3528 gdbarch_get_thread_local_address if present instead of
3529 target::get_thread_local_address.
3533 * target.h (target::get_thread_local_address): Update comment.
3537 * solib-svr4.c (svr4_fetch_objfile_link_map): Look for
3538 objfile->separate_debug_objfile_backlink if not NULL.
3542 * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers): Use
3543 tdep->fsbase_regnum instead of constants for fs_base and gs_base.
3544 (amd64bsd_store_inferior_registers): Likewise.
3545 * amd64-fbsd-nat.c (amd64_fbsd_nat_target::read_description):
3546 Enable segment base registers.
3547 * i386-bsd-nat.c (i386bsd_fetch_inferior_registers): Use
3548 PT_GETFSBASE and PT_GETGSBASE.
3549 (i386bsd_store_inferior_registers): Use PT_SETFSBASE and
3551 * i386-fbsd-nat.c (i386_fbsd_nat_target::read_description): Enable
3552 segment base registers.
3553 * i386-fbsd-tdep.c (i386fbsd_core_read_description): Likewise.
3557 * amd64-fbsd-nat.c (amd64_fbsd_nat_target::read_description):
3558 Update calls to i386_target_description to add 'segments'
3560 * amd64-tdep.c (amd64_init_abi): Set tdep->fsbase_regnum. Don't
3561 add segment base registers.
3562 * arch/i386.c (i386_create_target_description): Add 'segments'
3563 parameter to enable segment base registers.
3564 * arch/i386.h (i386_create_target_description): Likewise.
3565 * features/i386/32bit-segments.xml: New file.
3566 * features/i386/32bit-segments.c: Generate.
3567 * i386-fbsd-nat.c (i386_fbsd_nat_target::read_description): Update
3568 call to i386_target_description to add 'segments' parameter.
3569 * i386-fbsd-tdep.c (i386fbsd_core_read_description): Likewise.
3570 * i386-go32-tdep.c (i386_go32_init_abi): Likewise.
3571 * i386-linux-tdep.c (i386_linux_read_description): Likewise.
3572 * i386-tdep.c (i386_validate_tdesc_p): Add segment base registers
3573 if feature is present.
3574 (i386_gdbarch_init): Pass I386_NUM_REGS to set_gdbarch_num_regs.
3575 Add 'segments' parameter to call to i386_target_description.
3576 (i386_target_description): Add 'segments' parameter to enable
3577 segment base registers.
3578 (_initialize_i386_tdep) [GDB_SELF_TEST]: Add 'segments' parameter
3579 to call to i386_target_description.
3580 * i386-tdep.h (struct gdbarch_tdep): Add 'fsbase_regnum'.
3581 (enum i386_regnum): Add I386_FSBASE_REGNUM and I386_GSBASE_REGNUM.
3582 Define I386_NUM_REGS.
3583 (i386_target_description): Add 'segments' parameter to enable
3584 segment base registers.
3589 * source-cache.c: #undef open and close, to avoid unresolved
3590 externals during linking.
3594 * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): Now
3595 const. Add initializers.
3596 (_initialize_remote): Don't initialize ptid globals.
3600 * yy-remap.h [TEST_CPNAMES] (YYFPRINTF): Don't define.
3604 * cp-name-parser.y (main): Remove unused 'len' variable.
3608 * common/ptid.c (null_ptid, minus_one_ptid): Now const.
3609 * common/ptid.h (null_ptid, minus_one_ptid): Now const.
3613 * linux-nat.c (iterate_over_lwps): Update.
3614 (stop_callback): Remove parameter.
3615 (stop_wait_callback, detach_callback, resume_set_callback)
3616 (select_singlestep_lwp_callback, set_ignore_sigint)
3617 (status_callback, resumed_callback, resume_clear_callback)
3618 (kill_callback, kill_wait_callback, linux_nat_stop_lwp): Remove
3620 (linux_nat_target::detach, linux_nat_target::resume)
3621 (linux_stop_and_wait_all_lwps, select_event_lwp)
3622 (linux_nat_filter_event, linux_nat_wait_1)
3623 (linux_nat_target::kill, linux_nat_target::stop)
3624 (linux_nat_target::stop): Update.
3625 (linux_nat_resume_callback): Change type.
3626 (resume_stopped_resumed_lwps, count_events_callback)
3627 (select_event_lwp_callback): Likewise.
3628 (linux_stop_lwp, linux_nat_stop_lwp): Update.
3629 * arm-linux-nat.c (struct update_registers_data): Remove.
3630 (update_registers_callback): Change type.
3631 (arm_linux_insert_hw_breakpoint1): Update.
3632 * nat/x86-linux-dregs.c (update_debug_registers_callback): Remove
3634 (x86_linux_dr_set_addr): Update.
3635 (x86_linux_dr_set_control): Update.
3636 * nat/linux-nat.h (iterate_over_lwps_ftype): Remove parameter.
3637 (iterate_over_lwps): Use gdb::function_view.
3638 * nat/aarch64-linux-hw-point.c (struct
3639 aarch64_dr_update_callback_param): Remove.
3640 (debug_reg_change_callback): Change type.
3641 (aarch64_notify_debug_reg_change): Update.
3642 * s390-linux-nat.c (s390_refresh_per_info): Update.
3646 * dwarf2read.c (dwarf2_find_containing_comp_unit): Remove
3647 redundant assignment to "this_cu".
3651 * gdbtypes.c (rank_one_type): Remove unnecessary cases from switch.
3655 * gdbtypes.c (rank_one_type_parm_set): New function extracted
3657 (rank_one_type): ... this.
3661 * gdbtypes.c (rank_one_type_parm_struct): New function extracted
3663 (rank_one_type): ... this.
3667 * gdbtypes.c (rank_one_type_parm_complex): New function extracted
3669 (rank_one_type): ... this.
3673 * gdbtypes.c (rank_one_type_parm_float): New function extracted
3675 (rank_one_type): ... this.
3679 * gdbtypes.c (rank_one_type_parm_bool): New function extracted
3681 (rank_one_type): ... this.
3685 * gdbtypes.c (rank_one_type_parm_range): New function extracted
3687 (rank_one_type): ... this.
3691 * gdbtypes.c (rank_one_type_parm_char): New function extracted
3693 (rank_one_type): ... this.
3697 * gdbtypes.c (rank_one_type_parm_enum): New function extracted
3699 (rank_one_type): ... this.
3703 * gdbtypes.c (rank_one_type_parm_int): New function extracted
3705 (rank_one_type): ... this.
3709 * gdbtypes.c (rank_one_type_parm_func): New function extracted
3711 (rank_one_type): ... this.
3715 * gdbtypes.c (rank_one_type_parm_array): New function extracted
3717 (rank_one_type): ... this.
3721 * gdbtypes.c (rank_one_type_parm_ptr): New function extracted
3723 (rank_one_type): ... this.
3727 * inferior.c (initialize_inferiors): Ensure 'help set/show print
3728 inferior-events' shows the example events.
3732 Support styling on native MS-Windows console
3735 * utils.c (can_emit_style_escape) [_WIN32]: Don't disable styling
3736 on MS-Windows if $TERM is not defined.
3738 * cli/cli-style.c: Set cli_styling to 1 in the MinGW build.
3740 * posix-hdep.c (gdb_console_fputs):
3741 * mingw-hdep.c (rgb_to_16colors, gdb_console_fputs): New
3743 * ui-file.h (gdb_console_fputs): Add prototype.
3745 * ui-file.c (stdio_file::puts): Call gdb_console_fputs, and fall
3746 back to fputs only if the former returns zero.
3750 * symmisc.c (print_symbol_bcache_statistics): Update.
3751 (print_objfile_statistics): Update.
3752 * symfile.c (allocate_symtab): Update.
3753 * stabsread.c: Don't include bcache.h.
3754 * psymtab.h (struct psymbol_bcache): Don't declare.
3755 (class psymtab_storage) <psymbol_cache>: Now a bcache.
3756 (psymbol_bcache_init, psymbol_bcache_free)
3757 (psymbol_bcache_get_bcache): Don't declare.
3758 * psymtab.c (struct psymbol_bcache): Remove.
3759 (psymtab_storage::psymtab_storage): Update.
3760 (psymtab_storage::~psymtab_storage): Update.
3761 (psymbol_bcache_init, psymbol_bcache_free)
3762 (psymbol_bcache_get_bcache, psymbol_bcache_full): Remove.
3763 (add_psymbol_to_bcache): Update.
3764 (allocate_psymtab): Update.
3765 * objfiles.h (struct objfile_per_bfd_storage) <filename_cache,
3766 macro_cache>: No longer pointers.
3767 * objfiles.c (get_objfile_bfd_data): Don't call bcache_xmalloc.
3768 (free_objfile_per_bfd_storage): Don't call bcache_xfree.
3769 * macrotab.c (macro_bcache): Update.
3770 * macroexp.c: Don't include bcache.h.
3771 * gdbtypes.c (check_types_worklist): Update.
3772 (types_deeply_equal): Remove TRY/CATCH. Update.
3773 * elfread.c (elf_symtab_read): Update.
3774 * dwarf2read.c: Don't include bcache.h.
3775 * buildsym.c (buildsym_compunit::get_macro_table): Update.
3776 * bcache.h (bcache, bcache_full, bcache_xffree, bcache_xmalloc)
3777 (print_bcache_statistics, bcache_memory_used): Don't declare.
3778 (struct bcache): Move from bcache.c. Add constructor, destructor,
3779 methods. Rename all data members.
3780 * bcache.c (struct bcache): Move to bcache.h.
3781 (bcache::expand_hash_table): Rename from expand_hash_table.
3783 (bcache::insert): Rename from bcache_full.
3784 (bcache::compare): Rename from bcache_compare.
3785 (bcache_xmalloc): Remove.
3786 (bcache::~bcache): Rename from bcache_xfree.
3787 (bcache::print_statistics): Rename from print_bcache_statistics.
3788 (bcache::memory_used): Rename from bcache_memory_used.
3792 * infrun.c (normal_stop): Also check for
3793 TARGET_WAITKIND_NO_RESUMED before referring to inferior_thread().
3797 * f-lang.c (value_from_host_double): Moved to...
3798 * value.c (value_from_host_double): ...here.
3799 * value.h (value_from_host_double): Declare.
3800 * guile/scm-math.c (vlscm_convert_typed_number): Use
3801 value_from_host_double.
3802 (vlscm_convert_number): Likewise.
3803 * guile/scm-value.c (gdbscm_value_to_real): Likewise.
3804 * python/py-value.c (convert_value_from_python): Likewise.
3808 * gcore.c (write_gcore_file): Use SCOPE_EXIT.
3812 * utils.h (free_current_contents): Don't declare.
3813 * utils.c (free_current_contents): Remove.
3817 * top.c (quit_force): Update.
3818 * main.c (captured_command_loop): Update.
3819 * common/new-op.c (operator new): Update.
3820 * common/common-exceptions.c (struct catcher)
3821 <save_cleanup_chain>: Remove member.
3822 (exceptions_state_mc_init): Update.
3823 (exception_try_scope_entry): Return nullptr.
3824 (exception_try_scope_exit, exception_rethrow)
3825 (throw_exception_sjlj, throw_exception_cxx): Update.
3826 * common/cleanups.h (make_cleanup, make_cleanup_dtor)
3827 (all_cleanups, do_cleanups, discard_cleanups)
3828 (discard_final_cleanups, save_cleanups, save_final_cleanups)
3829 (restore_cleanups, restore_final_cleanups): Don't declare.
3830 (do_final_cleanups): Remove parameter.
3831 * common/cleanups.c (cleanup_chain, make_cleanup)
3832 (make_cleanup_dtor, all_cleanups, do_cleanups)
3833 (discard_my_cleanups, discard_cleanups)
3834 (discard_final_cleanups, save_my_cleanups, save_cleanups)
3835 (save_final_cleanups, restore_my_cleanups, restore_cleanups)
3836 (null_cleanup): Remove.
3837 (do_final_cleanups): Remove parameter.
3841 * remote.c (remote_target::remote_parse_stop_reply): Use
3846 * stabsread.c (struct stabs_field_info): Rename from field_info.
3847 <list, fnlist>: Add initializers.
3848 <obstack>: New member.
3849 (read_member_functions, read_struct_fields, read_baseclasses):
3850 Allocate on obstack. Don't use cleanups.
3851 (read_one_struct_field, read_member_functions, read_struct_fields)
3852 (read_baseclasses, read_tilde_fields, attach_fn_fields_to_type)
3853 (attach_fields_to_type, read_cpp_abbrev, read_member_functions)
3854 (read_struct_type): Update.
3858 * nat/linux-namespaces.c (linux_mntns_access_fs): Use SCOPE_EXIT.
3859 * common/filestuff.h (make_cleanup_close): Don't declare.
3860 * common/filestuff.c (do_close_cleanup, make_cleanup_close):
3865 * solib-aix.c: Use make_scope_exit.
3869 * solib-svr4.c (svr4_parse_libraries, svr4_current_sos_direct):
3870 Use make_scope_exit.
3874 * solib-svr4.c (disable_probes_interface): Remove parameter.
3875 (svr4_handle_solib_event): Use make_scope_exit.
3879 * remote.c (struct stop_reply_deleter): Remove.
3880 (stop_reply_up): Update.
3881 (struct stop_reply): Derive from notif_event. Don't typedef.
3882 <regcache>: Now a std::vector.
3883 (stop_reply_xfree): Remove.
3884 (stop_reply::~stop_reply): Rename from stop_reply_dtr.
3885 (remote_notif_stop_alloc_reply): Return a unique_ptr. Use new.
3886 (remote_target::discard_pending_stop_replies): Use delete.
3887 (remote_target::remote_parse_stop_reply): Update.
3888 (remote_target::process_stop_reply): Update.
3889 * remote-notif.h (struct notif_event): Add virtual destructor.
3890 Remove "dtr" member.
3891 (struct notif_client) <alloc_event>: Return a unique_ptr.
3892 (notif_event_xfree): Don't declare.
3893 (notif_event_up): New typedef.
3894 * remote-notif.c (remote_notif_ack, remote_notif_parse): Update.
3895 (notif_event_xfree, do_notif_event_xfree): Remove.
3896 (remote_notif_state_xfree): Update.
3900 * infrun.c (displaced_step_clear_cleanup): Now a
3901 forward_scope_exit type.
3902 (displaced_step_prepare_throw): Update.
3903 (displaced_step_fixup): Update.
3907 * inferior.h (class inferior): Update comment.
3908 * gdbthread.h (class thread_info): Update comment.
3913 * stabsread.h (struct stab_section_list): Remove.
3914 (coffstab_build_psymtabs): Update.
3915 * dbxread.c (symbuf_sections): Now a std::vector.
3916 (sect_idx): New global.
3917 (fill_symbuf): Update.
3918 (coffstab_build_psymtabs): Change type of stabsects parameter.
3920 * coffread.c (struct coff_symfile_info) <stabsects>: Now a
3922 (linetab, linetab_offset, linetab_size, stringtab): Move earlier.
3923 (coff_locate_sections): Update.
3924 (coff_symfile_read): Remove cleanups. Update.
3925 (init_stringtab): Add storage parameter.
3926 (free_stringtab, free_stringtab_cleanup): Remove.
3927 (init_lineno): Add storage parameter.
3928 (free_linetab, free_linetab_cleanup): Remove.
3932 * linux-fork.c (fork_info::clobber_regs): Delete.
3933 (fork_load_infrun_state): Remove reference to 'clobber_regs'.
3934 (fork_save_infrun_state): Remove 'clobber_regs' parameter. Update
3936 (scoped_switch_fork_info::scoped_switch_fork_info)
3937 (checkpoint_command, linux_fork_context): Adjust
3938 fork_save_infrun_state calls.
3942 * linux-fork.c (inf_has_multiple_thread_cb): Delete.
3943 (inf_has_multiple_threads): Return 'bool' and rewrite using
3944 inferior_info::threads().
3948 * linux-fork.c: Include <list>.
3949 (fork_list): Now a std::list instance.
3950 (fork_info): Add ctor, dtor, and in-class initialize all fields.
3951 (forks_exist_p, find_last_fork): Adjust.
3955 (free_fork): Delete, folded into fork_info::~fork_info().
3956 (delete_fork, find_fork_ptid, find_fork_id, find_fork_pid):
3958 (init_fork_list): Delete.
3959 (linux_fork_killall, linux_fork_mourn_inferior)
3960 (linux_fork_detach, info_checkpoints_command): Adjust.
3961 (_initialize_linux_fork): No longer call init_fork_list.
3965 * linux-fork.c (new_fork): New, split out of ...
3966 (add_fork): ... this. Return void. Move "first fork" special
3967 case from here, to ...
3968 (checkpoint_command): ... here.
3969 * linux-linux.h (add_fork): Return void.
3973 * f-exp.y (direct_abs_decl): Handle TYPE*SIZE type names.
3979 * f-exp.y: New token, UNOP_INTRINSIC.
3980 (exp): New pattern using UNOP_INTRINSIC token.
3981 (f77_keywords): Add 'abs' keyword.
3982 * f-lang.c: Add 'target-float.h' and 'math.h' includes.
3983 (value_from_host_double): New function.
3984 (evaluate_subexp_f): Support UNOP_ABS.
3988 * f-lang.c (build_fortran_types): Use TYPE_CODE_CHAR for character
3993 * f-exp.y (convert_to_kind_type): Handle integer (kind=8).
3994 * f-lang.c (build_fortran_types): Setup builtin_integer_s8.
3995 * f-lang.h (struct builtin_f_type): Add builtin_integer_s8 field.
3999 * f-exp.y (convert_to_kind_type): Handle more type kinds.
4004 * expprint.c (dump_subexp_body_standard): Support UNOP_KIND.
4005 * f-exp.y: Define 'KIND' token.
4006 (exp): New pattern for KIND expressions.
4007 (ptype): Handle types with a kind extension.
4008 (direct_abs_decl): Extend to spot kind extensions.
4009 (f77_keywords): Add 'kind' to the list.
4010 (push_kind_type): New function.
4011 (convert_to_kind_type): New function.
4012 * f-lang.c (evaluate_subexp_f): Support UNOP_KIND.
4013 * parse.c (operator_length_standard): Likewise.
4014 * parser-defs.h (enum type_pieces): Add tp_kind.
4015 * std-operator.def: Add UNOP_KIND.
4019 * f-exp.y (f_parse): Set yydebug.
4023 * f-lang.c (evaluate_subexp_f): New function.
4024 (exp_descriptor_f): New global.
4025 (f_language_defn): Use exp_descriptor_f instead of
4026 exp_descriptor_standard.
4030 * f-exp.y (struct token): Add comments.
4031 (dot_ops): Remove uppercase versions and the end marker.
4032 (f77_keywords): Likewise.
4033 (yylex): Use ARRAY_SIZE to iterate over dot_ops, assert all
4034 entries in the dot_ops array are case insensitive, and use
4035 strncasecmp to compare strings. Also some whitespace cleanup in
4036 this area. Similar for the f77_keywords array, except entries in
4037 this list might be case sensitive.
4041 * f-exp.y (struct f77_boolean_val): Add comments.
4042 (boolean_values): Remove uppercase versions, and end marker.
4043 (yylex): Use ARRAY_SIZE for iterating over boolean_values array,
4044 and use strncasecmp to achieve case insensitivity. Additionally,
4045 perform whitespace cleanup around this code.
4049 * remote-sim.c (gdbsim_target_open): Use result of
4056 * eval.c (evaluate_subexp_standard): Call Fortran argument
4058 * f-lang.c (struct value): A value which can be passed into a
4059 Fortran function call.
4060 (fortran_argument_convert): Wrap Fortran arguments in a pointer
4062 (struct type): Value ready for a Fortran function call.
4063 (fortran_preserve_arg_pointer): Undo check_typedef, the pointer
4065 * f-lang.h (fortran_argument_convert): Declaration.
4066 (fortran_preserve_arg_pointer): Declaration.
4067 * infcall.c (value_arg_coerce): Call Fortran argument logic.
4071 * python/py-prettyprint.c (print_string_repr): Remove #if.
4072 * python/py-utils.c (unicode_to_encoded_string): Remove #if.
4076 * target.c (the_dummy_target): Move later. Change type to
4078 (initialize_targets): Don't initialize the_dummy_target.
4082 * gdb_bfd.c (gdb_bfd_fdopenr): Remove.
4083 * gdb_bfd.h (gdb_bfd_fdopenr): Don't declare.
4087 * windows-nat.c (windows_nat_target::attach)
4088 (windows_nat_target::detach): Don't call gdb_flush.
4089 * valprint.c (generic_val_print, val_print, val_print_string):
4090 Don't call gdb_flush.
4091 * utils.c (defaulted_query): Don't call gdb_flush.
4092 * typeprint.c (print_type_scalar): Don't call gdb_flush.
4093 * target.c (target_announce_detach): Don't call gdb_flush.
4094 * sparc64-tdep.c (adi_print_versions): Don't call gdb_flush.
4095 * remote.c (extended_remote_target::attach): Don't call
4097 * procfs.c (procfs_target::detach): Don't call gdb_flush.
4098 * printcmd.c (do_examine): Don't call gdb_flush.
4099 (info_display_command): Don't call gdb_flush.
4100 * p-valprint.c (pascal_val_print): Don't call gdb_flush.
4101 * nto-procfs.c (nto_procfs_target::attach): Don't call gdb_flush.
4102 * memattr.c (info_mem_command): Don't call gdb_flush.
4103 * mdebugread.c (mdebug_build_psymtabs): Don't call gdb_flush.
4104 * m2-valprint.c (m2_val_print): Don't call gdb_flush.
4105 * infrun.c (follow_exec, handle_command): Don't call gdb_flush.
4106 * inf-ptrace.c (inf_ptrace_target::attach): Don't call gdb_flush.
4107 * hppa-tdep.c (unwind_command): Don't call gdb_flush.
4108 * gnu-nat.c (gnu_nat_target::attach): Don't call gdb_flush.
4109 (gnu_nat_target::detach): Don't call gdb_flush.
4110 * f-valprint.c (f_val_print): Don't call gdb_flush.
4111 * darwin-nat.c (darwin_nat_target::attach): Don't call gdb_flush.
4112 * cli/cli-script.c (read_command_lines): Don't call gdb_flush.
4113 * cli/cli-cmds.c (shell_escape, print_disassembly): Don't call
4115 * c-valprint.c (c_val_print): Don't call gdb_flush.
4116 * ada-valprint.c (ada_print_scalar): Don't call gdb_flush.
4120 * varobj.c (update_dynamic_varobj_children): Update.
4121 (install_default_visualizer): Use reset, not release.
4122 * value.c (set_internalvar): Update.
4123 * dwarf2loc.c (value_of_dwarf_reg_entry): Update.
4124 * common/gdb_ref_ptr.h (class ref_ptr) <release>: Add
4125 ATTRIBUTE_UNUSED_RESULT.
4129 * remote.c (class scoped_remote_fd) <release>: Add
4130 ATTRIBUTE_UNUSED_RESULT.
4134 * macroexp.c (struct macro_buffer) <release>: Add
4135 ATTRIBUTE_UNUSED_RESULT.
4139 * nat/linux-btrace.c (linux_enable_bts, linux_enable_pt): Update.
4140 * common/scoped_mmap.h (class scoped_mmap) <release>: Add
4141 ATTRIBUTE_UNUSED_RESULT.
4145 * common/scoped_fd.h (class scoped_fd) <release>: Add
4146 ATTRIBUTE_UNUSED_RESULT.
4150 * parser-defs.h (struct parser_state) <release>: Add
4151 ATTRIBUTE_UNUSED_RESULT.
4155 * utils.h (class gdb_argv) <release>: Add
4156 ATTRIBUTE_UNUSED_RESULT.
4157 * common/common-defs.h (ATTRIBUTE_UNUSED_RESULT): Define.
4161 * xml-syscall.c (xml_list_syscalls_by_group): Drop 'struct' from
4162 for-loop range, to avoid compiler warnings.
4164 * tui/tui.c (tui_enable) [__MINGW32__]: Don't declare 'cap', to
4165 avoid compiler warnings about unused variables.
4167 * NEWS: Mention end of support for native debugging on MS-Windows
4171 * common/netstuff.c:
4172 * gdbserver/gdbreplay.c
4173 * gdbserver/remote-utils.c:
4175 * unittests/parse-connection-spec-selftests.c [USE_WIN32API]:
4176 Include ws2tcpip.h instead of wsiapi.h and winsock2.h. Redefine
4177 _WIN32_WINNT to 0x0501 if defined to a smaller value, as
4178 'getaddrinfo' and 'freeaddrinfo' were not available before
4179 Windows XP, and mingw.org's MinGW headers by default define
4180 _WIN32_WINNT to 0x500.
4184 * coffread.c (coff_start_symtab): Remove unnecessary xstrdup.
4190 * procfs.c (proc_wait_for_stop): Wrap write of PCWSTOP in
4191 set_sigint_trap, clear_sigint_trap.
4195 * target.c (target_detach): Clear the regcache and the
4200 * utils.c (set_screen_size): When we cap the height/width sizes,
4201 tweak the corresponding command variable to show "unlimited":
4206 * utils.c (set_screen_size): Reduce "infinite" rows and columns
4207 before calling rl_set_screen_size.
4211 * configure.ac (HAVE_LIBPYTHON2_4, HAVE_LIBPYTHON2_5): Never
4213 * python/py-value.c: Remove Python 2.4 workaround.
4214 * python/py-utils.c (gdb_pymodule_addobject): Remove Python 2.4
4216 * python/py-type.c (convert_field, gdbpy_initialize_types): Remove
4217 Python 2.4 workaround.
4218 * python/python-internal.h: Remove Python 2.4 comment.
4219 (Py_ssize_t): Don't define.
4220 (PyVarObject_HEAD_INIT, Py_TYPE): Don't define.
4221 (gdb_Py_DECREF): Remove Python 2.4 workaround.
4222 (gdb_PyObject_GetAttrString, PyObject_GetAttrString): Remove.
4223 (gdb_PyObject_HasAttrString, PyObject_HasAttrString): Remove.
4224 * python/python.c (do_start_initialization): Remove Python 2.4
4226 * python/py-prettyprint.c (class dummy_python_frame): Remove.
4227 (print_children): Remove Python 2.4 workaround.
4228 * python/py-inferior.c (buffer_procs): Remove Python 2.4
4230 (CHARBUFFERPROC_NAME): Remove.
4231 * python/py-breakpoint.c (gdbpy_initialize_breakpoints): Remove
4232 Python 2.4 workaround.
4236 * NEWS: Note minimum Python version.
4240 * python/py-inferior.c (infpy_write_memory): Remove non-IS_PY3K
4241 code from these functions. Remove corresponding ifdefs. Use
4242 Py_buffer_up instead of explicit calls to PyBuffer_Release.
4243 Remove gotos and target of gotos.
4244 (infpy_search_memory): Likewise.
4248 * gdb/hppa-tdep.c (hppa_dummy_id): Delete.
4249 (hppa_gdbarch_init): Don't register deleted functions with
4254 * gdb/h8300-tdep.c (h8300_unwind_pc): Delete.
4255 (h8300_unwind_sp): Delete.
4256 (h8300_dummy_id): Delete.
4257 (h8300_gdbarch_init): Don't register deleted functions with
4262 * gdb/ft32-tdep.c (ft32_dummy_id): Delete.
4263 (ft32_unwind_pc): Delete.
4264 (ft32_unwind_sp): Delete.
4265 (ft32_gdbarch_init): Don't register deleted functions with
4270 * gdb/frv-tdep.c (frv_dummy_id): Delete.
4271 (frv_unwind_pc): Delete.
4272 (frv_unwind_sp): Delete.
4273 (frv_gdbarch_init): Don't register deleted functions with
4278 * gdb/riscv-tdep.c (riscv_dummy_id): Delete.
4279 (riscv_unwind_pc): Delete.
4280 (riscv_unwind_sp): Delete.
4281 (riscv_gdbarch_init): Don't register deleted functions with
4286 * gdb/csky-tdep.c (csky_dummy_id): Delete.
4287 (csky_unwind_pc): Delete.
4288 (csky_unwind_sp): Delete.
4289 (csky_gdbarch_init): Don't register deleted functions with
4294 * gdb/cris-tdep.c (cris_dummy_id): Delete.
4295 (cris_unwind_pc): Delete.
4296 (cris_unwind_sp): Delete.
4297 (cris_gdbarch_init): Don't register deleted functions with
4302 * gdb/bfin-tdep.c (bfin_dummy_id): Delete.
4303 (bfin_unwind_pc): Delete.
4304 (bfin_gdbarch_init): Don't register deleted functions with gdbarch.
4308 * gdb/arm-tdep.c (arm_dummy_id): Delete.
4309 (arm_unwind_pc): Delete.
4310 (arm_unwind_sp): Delete.
4311 (arm_gdbarch_init): Don't register deleted functions with gdbarch.
4315 * gdb/arc-tdep.c (arc_dummy_id): Delete.
4316 (arc_unwind_pc): Delete.
4317 (arc_unwind_sp): Delete.
4318 (arc_gdbarch_init): Don't register deleted functions with gdbarch.
4322 * gdb/alpha-tdep.c (alpha_dummy_id): Delete.
4323 (alpha_unwind_pc): Delete.
4324 (alpha_gdbarch_init): Don't register deleted functions with
4329 * gdb/aarch64-tdep.c (aarch64_dummy_id): Delete.
4330 (aarch64_unwind_pc): Delete.
4331 (aarch64_unwind_sp): Delete.
4332 (aarch64_gdbarch_init): Don't register deleted functions with
4337 * gdbtypes.c (type_align): Don't consider static members when
4338 computing structure alignment.
4342 * arc-tdep.c (arc_type_align): Provide alignment for basic types,
4343 return 0 for other types.
4344 * arch-utils.c (default_type_align): Always return 0.
4345 * gdbarch.h: Regenerate.
4346 * gdbarch.sh (type_align): Extend comment.
4347 * gdbtypes.c (type_align): Add additional comments, always call
4348 gdbarch_type_align before applying the default rules.
4349 * i386-tdep.c (i386_type_align): Return 0 as the default rule,
4350 generic code will then apply a suitable default.
4351 * nios2-tdep.c (nios2_type_align): Provide alignment for basic
4352 types, return 0 for other types.
4356 * NEWS: Create a new section for the next release branch.
4357 Rename the section of the current branch, now that it has
4362 GDB 8.3 branch created (143420fb0d5ae54323ba9953f0818c194635228d):
4363 * version.in: Bump version to 8.3.50.DATE-git.
4367 * aix-thread.c (ptid_cmp): Remove unused variable.
4368 (get_signaled_thread): Likewise.
4369 (store_regs_user_thread): Likewise.
4370 (store_regs_kernel_thread): Likewise.
4371 (fetch_regs_kernel_thread): Remove shadowed variable.
4375 * features/riscv/32bit-cpu.xml: Add register numbers.
4376 * features/riscv/32bit-fpu.c: Regenerate.
4377 * features/riscv/32bit-fpu.xml: Add register numbers.
4378 * features/riscv/64bit-cpu.xml: Add register numbers.
4379 * features/riscv/64bit-fpu.c: Regenerate.
4380 * features/riscv/64bit-fpu.xml: Add register numbers.
4384 * NEWS: Mention two argument form of gdb.Value constructor.
4385 * python/py-value.c (convert_buffer_and_type_to_value): New
4387 (valpy_new): Parse arguments via gdb_PyArg_ParseTupleAndKeywords.
4388 Add support for handling an optional second argument. Call
4389 convert_buffer_and_type_to_value as appropriate.
4390 * python/python-internal.h (Py_buffer_deleter): New struct.
4391 (Py_buffer_up): New typedef.
4395 * dwarf2read.c (dwarf2_get_dwz_file): Reset dwz_bfd to nullptr
4396 instead of releasing ownership.
4400 * dwarf2read.c (open_and_init_dwp_file): Call
4401 elf_numsections instead of bfd_count_sections to initialize
4402 dwp_file->num_sections.
4406 * solib-darwin.c (darwin_get_dyld_bfd): Don't release dyld_bfd.
4410 * gcore.in: Add '--readnever' option when invoking GDB.
4414 * MAINTAINERS: Update my email address.
4418 * build-id.c (build_id_to_debug_bfd_1): New function.
4419 (build_id_to_debug_bfd): Look for separate debug file in
4424 * gdbarch.sh: Update the copyright year range that is placed into
4430 * linespec.c (create_sals_line_offset): Search for the default
4431 symtab's filename instead of its fullname.
4435 * NEWS: Update style defaults.
4439 * main.c (captured_main_1): Disable styling in batch mode.
4443 * symtab.c (symtab_symbol_info): Fix typos.
4447 * findcmd.c (_initialize_mem_search): Use upper case for
4448 metasyntactic variables.
4452 * aarch64-tdep.c (aarch64_add_reggroups): New function.
4453 (aarch64_gdbarch_init): Call aarch64_add_reggroups.
4457 * top.h (source_file_name): Change to std::string.
4458 * top.c (source_file_name): Likewise.
4459 (command_line_input): Adjust.
4460 * cli/cli-script.c (script_from_file): Adjust.
4464 * ravenscar-thread.c
4465 (ravenscar_thread_target::update_thread_list): Don't call
4466 ada_build_task_list.
4467 * ada-lang.h (ada_build_task_list): Don't declare.
4468 * ada-tasks.c (struct ada_tasks_inferior_data)
4469 <task_list_valid_p>: Now bool.
4470 (read_known_tasks, ada_task_list_changed)
4471 (ada_tasks_invalidate_inferior_data): Update.
4472 (read_known_tasks_array): Return bool.
4473 (read_known_tasks_list): Likewise.
4474 (read_known_tasks): Return void.
4475 (ada_build_task_list): Now static.
4479 * gdbtypes.c (type_align): Allow alignment of TYPE_CODE_METHODPTR
4480 and TYPE_CODE_MEMBERPTR to be overridden by the gdbarch.
4484 * ada-task.c (_initialize_tasks): Use 'with_cleanup' register
4485 variant for ada_tasks_pspace_data_handle and
4486 ada_tasks_inferior_data_handle.
4487 (ada_tasks_pspace_data_cleanup): New function.
4488 (ada_tasks_inferior_data_cleanup): New function.
4492 * macrotab.h (macro_source_fullname): Return a std::string.
4493 * macrotab.c (macro_include, check_for_redefinition)
4494 (macro_undef, macro_lookup_definition, foreach_macro)
4495 (foreach_macro_in_scope): Update.
4496 (macro_source_fullname): Return a std::string.
4497 * macrocmd.c (show_pp_source_pos): Update.
4501 * macrocmd.c (show_pp_source_pos): Style the file names.
4506 * tui/tui-source.c (tui_set_source_content_nil): Rewrite.
4510 * ada-lang.c (user_select_syms): Use filtered printing.
4511 * utils.c (wrap_style): New global.
4512 (desired_style): Remove.
4513 (emit_style_escape): Add stream parameter.
4514 (set_output_style, reset_terminal_style, prompt_for_continue):
4516 (flush_wrap_buffer): Only flush gdb_stdout.
4517 (wrap_here): Set wrap_style.
4518 (fputs_maybe_filtered): Clear the wrap buffer on exception. Don't
4519 treat escape sequences as a character. Change when wrap buffer is
4521 (fputs_styled): Do not set the output style when the default is
4523 * ui-style.h (struct ui_file_style) <is_default>: New method.
4524 * source.c (print_source_lines_base): Emit escape sequences in one
4529 * gdbtypes.c (type_align): Handle TYPE_CODE_RANGE the same as
4530 integers and enumeration types.
4534 * ada-lang.c (standard_lookup): Use ada_lookup_encoded_symbol
4535 instead of lookup_symbol_in_language
4536 (do_exact_match): New function.
4537 (ada_get_symbol_name_matcher): Return do_exact_match when
4538 doing a verbatim match.
4542 * ravenscar-thread.c (ravenscar_thread_target::resume)
4543 (ravenscar_thread_target::wait): Special case wildcard requests.
4547 * ravenscar-thread.c (base_ptid): Remove.
4548 (struct ravenscar_thread_target) <close>: New method.
4549 <m_base_ptid>: New member.
4550 <update_inferior_ptid, active_task, task_is_currently_active,
4551 runtime_initialized>: Declare methods.
4552 <ravenscar_thread_target>: Add constructor.
4553 (ravenscar_thread_target::task_is_currently_active)
4554 (ravenscar_thread_target::update_inferior_ptid)
4555 (ravenscar_runtime_initialized): Rename. Now methods.
4556 (ravenscar_thread_target::resume, ravenscar_thread_target::wait)
4557 (ravenscar_thread_target::update_thread_list): Update.
4558 (ravenscar_thread_target::active_task): Now method.
4559 (ravenscar_thread_target::store_registers)
4560 (ravenscar_thread_target::prepare_to_store)
4561 (ravenscar_thread_target::prepare_to_store)
4562 (ravenscar_thread_target::mourn_inferior): Update.
4563 (ravenscar_inferior_created): Use "new" to create target.
4564 (ravenscar_thread_target::get_ada_task_ptid): Update.
4565 (_initialize_ravenscar): Don't initialize base_ptid.
4566 (ravenscar_ops): Remove global.
4570 * target.h (push_target): Declare new overload.
4571 * target.c (push_target): New overload, taking an rvalue reference.
4572 * remote.c (remote_target::open_1): Use push_target overload.
4573 * corelow.c (core_target_open): Use push_target overload.
4577 * ravenscar-thread.c (is_ravenscar_task)
4578 (ravenscar_task_is_currently_active): Return bool.
4579 (ravenscar_update_inferior_ptid, get_running_thread_msymbol)
4580 (_initialize_ravenscar): Remove "(void)".
4581 (has_ravenscar_runtime, ravenscar_runtime_initialized): Likewise.
4586 * ravenscar-thread.c (ravenscar_runtime_initializer)
4587 (has_ravenscar_runtime, get_running_thread_id)
4588 (ravenscar_thread_target::resume): Fix indentation.
4592 * sparc-ravenscar-thread.c (struct sparc_ravenscar_ops): Derive
4593 from ravenscar_arch_ops.
4594 (sparc_ravenscar_ops::fetch_registers)
4595 (sparc_ravenscar_ops::store_registers): Now methods.
4596 (sparc_ravenscar_prepare_to_store): Remove.
4597 (sparc_ravenscar_ops): Redefine.
4598 * ravenscar-thread.h (struct ravenscar_arch_ops): Add virtual
4599 methods and destructor. Remove members.
4600 * ravenscar-thread.c (ravenscar_thread_target::fetch_registers)
4601 (ravenscar_thread_target::store_registers)
4602 (ravenscar_thread_target::prepare_to_store): Update.
4603 * ppc-ravenscar-thread.c (ppc_ravenscar_generic_prepare_to_store):
4605 (struct ppc_ravenscar_powerpc_ops): Derive from
4607 (ppc_ravenscar_powerpc_ops::fetch_registers)
4608 (ppc_ravenscar_powerpc_ops::store_registers): Now methods.
4609 (ppc_ravenscar_powerpc_ops): Redefine.
4610 (struct ppc_ravenscar_e500_ops): Derive from ravenscar_arch_ops.
4611 (ppc_ravenscar_e500_ops::fetch_registers)
4612 (ppc_ravenscar_e500_ops::store_registers): Now methods.
4613 (ppc_ravenscar_e500_ops): Redefine.
4614 * aarch64-ravenscar-thread.c
4615 (aarch64_ravenscar_generic_prepare_to_store): Remove.
4616 (struct aarch64_ravenscar_ops): Derive from ravenscar_arch_ops.
4617 (aarch64_ravenscar_fetch_registers)
4618 (aarch64_ravenscar_store_registers): Now methods.
4619 (aarch64_ravenscar_ops): Redefine.
4623 * ravenscar-thread.c (ravenscar_thread_target::stopped_by_sw_breakpoint)
4624 (ravenscar_thread_target::stopped_by_hw_breakpoint)
4625 (ravenscar_thread_target::stopped_by_watchpoint)
4626 (ravenscar_thread_target::stopped_data_address)
4627 (ravenscar_thread_target::core_of_thread): Use scoped_restore.
4631 * ravenscar-thread.c: Fix some typos.
4636 * ada-lang.c (ada_exception_sal): Change addr_string to a
4638 (create_ada_exception_catchpoint): Update.
4643 * breakpoint.c (~bp_location): Rename from bp_location_dtor.
4644 (bp_location_ops): Remove.
4645 (base_breakpoint_allocate_location): Update.
4646 (free_bp_location): Update.
4647 * ada-lang.c (class ada_catchpoint_location)
4648 <ada_catchpoint_location>: Remove ops parameter.
4649 (ada_catchpoint_location_dtor): Remove.
4650 (ada_catchpoint_location_ops): Remove.
4651 (allocate_location_exception): Update.
4652 * breakpoint.h (struct bp_location_ops): Remove.
4653 (class bp_location) <bp_location>: Remove bp_location_ops
4655 <~bp_location>: Add destructor.
4661 * remote.c (remote_target::remote_parse_stop_reply): Avoid using
4668 * gnu-nat.c (S_proc_getmsgport_reply, S_proc_task2proc_reply)
4669 (S_proc_pid2proc_reply): Adjust to Hurd "proc" interface changes.
4673 * gnu-nat.c (gnu_write_inferior, parse_int_arg, _parse_bool_arg)
4674 (check_empty): Use "const char *".
4676 * gnu-nat.c (gnu_nat_target::detach): Instead of
4677 'detach_inferior (pid)' call
4678 'detach_inferior (find_inferior_pid (pid))'.
4680 * configure.nat [gdb_host == i386gnu] (NATDEPFILES): Add
4681 'nat/fork-inferior.o'.
4682 * gnu-nat.c: #include "nat/fork-inferior.h".
4684 * gnu-nat.c (gnu_nat_target::detach): Instead of
4685 'inf_child_maybe_unpush_target (ops)' call 'maybe_unpush_target'.
4686 * gnu-nat.h: #include "inf-child.h".
4687 * i386-gnu-nat.c (gnu_fetch_registers): Rename/move to
4688 'i386_gnu_nat_target::fetch_registers'.
4689 (gnu_store_registers): Rename/move to
4690 'i386_gnu_nat_target::store_registers'.
4692 * config/i386/nm-i386gnu.h: Don't "#include" any files.
4693 * gnu-nat.h (mach_thread_info): New function.
4694 * gnu-nat.c (thread_takeover_sc_cmd): Use it.
4696 * config/i386/nm-i386gnu.h (gnu_target_pid_to_str): Remove.
4700 * riscv-rdep.c (riscv_type_alignment): Handle TYPE_CODE_RANGE.
4704 * windows-nat.c (windows_add_thread): Add new parameter
4705 "main_thread_p" with default value set to false. Update
4706 function documentation as well as all callers.
4707 (windows_delete_thread): Likewise.
4708 (fake_create_process): Update call to windows_add_thread.
4709 (get_windows_debug_event) <CREATE_THREAD_DEBUG_EVENT>
4710 <CREATE_PROCESS_DEBUG_EVENT>: Likewise.
4711 <EXIT_THREAD_DEBUG_EVENT, EXIT_PROCESS_DEBUG_EVENT>: Update
4712 call to windows_delete_thread.
4716 * MAINTAINERS: Add Andrew Burgess as global maintainer.
4720 * symfile.c (find_separate_debug_file): Use canonical path of
4721 sysroot with child_path instead of gdb_sysroot if it is valid.
4725 * symfile.c (find_separate_debug_file): Use child_path to
4726 determine if an object file is under a sysroot.
4730 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4731 unittests/child-path-selftests.c.
4732 * common/pathstuff.c (child_path): New function.
4733 * common/pathstuff.h (child_path): New prototype.
4734 * unittests/child-path-selftests.c: New file.
4738 * symfile.c (find_separate_debug_file): Look for separate debug
4739 files in debug directories under the sysroot.
4743 * symtab.h (struct minimal_symbol data_p): New const method.
4744 (struct minimal_symbol text_p): Likewise.
4745 * symtab.c (output_source_filename): Use file name style
4747 (print_symbol_info): Likewise.
4748 (print_msymbol_info): Use address style to print addresses.
4749 Use function name style to print executable text symbols.
4750 (expand_symtab_containing_pc): Use data_p.
4751 (find_pc_sect_compunit_symtab): Likewise.
4755 * breakpoint.c (describe_other_breakpoints): Use address style
4757 (say_where): Likewise.
4761 * ada-typeprint.c (print_func_type): Print function name
4762 style to print function name.
4763 * c-typeprint.c (c_print_type_1): Likewise.
4767 * aarch64-linux-tdep.c (aarch64_linux_get_syscall_number): Check
4772 * c-exp.y (direct_abs_decl): Use emplace_back to record the
4777 * ada-varobj.c (ada_value_is_changeable_p): Add handling of
4778 TYPE_CODE_REF types.
4782 * riscv-linux-tdep.c (riscv_linux_fregmap): New.
4783 (riscv_linux_fregset): New.
4784 (riscv_linux_iterate_over_regset_sections): Call cb for .reg2 section.
4788 * thread.c (thread_cancel_execution_command): Update.
4789 * thread-fsm.h (struct thread_fsm): Add constructor, destructor,
4791 (struct thread_fsm_ops): Remove.
4792 (thread_fsm_ctor, thread_fsm_delete, thread_fsm_clean_up)
4793 (thread_fsm_should_stop, thread_fsm_return_value)
4794 (thread_fsm_set_finished, thread_fsm_finished_p)
4795 (thread_fsm_async_reply_reason, thread_fsm_should_notify_stop):
4797 * mi/mi-interp.c (mi_on_normal_stop_1): Update.
4798 * infrun.c (clear_proceed_status_thread)
4799 (clean_up_just_stopped_threads_fsms, fetch_inferior_event)
4800 (print_stop_event): Update.
4801 * infcmd.c (struct step_command_fsm): Inherit from thread_fsm.
4803 (step_command_fsm_ops): Remove.
4804 (new_step_command_fsm): Remove.
4806 (step_command_fsm::should_stop): Rename from
4807 step_command_fsm_should_stop.
4808 (step_command_fsm::clean_up): Rename from
4809 step_command_fsm_clean_up.
4810 (step_command_fsm::do_async_reply_reason): Rename from
4811 step_command_fsm_async_reply_reason.
4812 (struct until_next_fsm): Inherit from thread_fsm. Add
4814 (until_next_fsm_ops): Remove.
4815 (new_until_next_fsm): Remove.
4816 (until_next_fsm::should_stop): Rename from
4817 until_next_fsm_should_stop.
4818 (until_next_fsm::clean_up): Rename from until_next_fsm_clean_up.
4819 (until_next_fsm::do_async_reply_reason): Rename from
4820 until_next_fsm_async_reply_reason.
4821 (struct finish_command_fsm): Inherit from thread_fsm. Add
4822 constructor. Change type of breakpoint.
4823 (finish_command_fsm_ops): Remove.
4824 (new_finish_command_fsm): Remove.
4825 (finish_command_fsm::should_stop): Rename from
4826 finish_command_fsm_should_stop.
4827 (finish_command_fsm::clean_up): Rename from
4828 finish_command_fsm_clean_up.
4829 (finish_command_fsm::return_value): Rename from
4830 finish_command_fsm_return_value.
4831 (finish_command_fsm::do_async_reply_reason): Rename from
4832 finish_command_fsm_async_reply_reason.
4833 (finish_command): Update.
4834 * infcall.c (struct call_thread_fsm): Inherit from thread_fsm.
4836 (call_thread_fsm_ops): Remove.
4837 (call_thread_fsm::call_thread_fsm): Rename from
4838 new_call_thread_fsm.
4839 (call_thread_fsm::should_stop): Rename from
4840 call_thread_fsm_should_stop.
4841 (call_thread_fsm::should_notify_stop): Rename from
4842 call_thread_fsm_should_notify_stop.
4843 (run_inferior_call, call_function_by_hand_dummy): Update.
4844 * cli/cli-interp.c (should_print_stop_to_console): Update.
4845 * breakpoint.c (struct until_break_fsm): Inherit from thread_fsm.
4846 Add constructor. Change type of location_breakpoint,
4848 (until_break_fsm_ops): Remove.
4849 (new_until_break_fsm): Remove.
4850 (until_break_fsm::should_stop): Rename from
4851 until_break_fsm_should_stop.
4852 (until_break_fsm::clean_up): Rename from
4853 until_break_fsm_clean_up.
4854 (until_break_fsm::do_async_reply_reason): Rename from
4855 until_break_fsm_async_reply_reason.
4856 (until_break_command): Update.
4857 * thread-fsm.c: Remove.
4858 * Makefile.in (COMMON_SFILES): Remove thread-fsm.c.
4862 * yy-remap.h: Add include guard.
4863 * xtensa-tdep.h: Add include guard.
4864 * xcoffread.h: Rename include guard.
4865 * varobj-iter.h: Add include guard.
4866 * tui/tui.h: Rename include guard.
4867 * tui/tui-winsource.h: Rename include guard.
4868 * tui/tui-wingeneral.h: Rename include guard.
4869 * tui/tui-windata.h: Rename include guard.
4870 * tui/tui-win.h: Rename include guard.
4871 * tui/tui-stack.h: Rename include guard.
4872 * tui/tui-source.h: Rename include guard.
4873 * tui/tui-regs.h: Rename include guard.
4874 * tui/tui-out.h: Rename include guard.
4875 * tui/tui-layout.h: Rename include guard.
4876 * tui/tui-io.h: Rename include guard.
4877 * tui/tui-hooks.h: Rename include guard.
4878 * tui/tui-file.h: Rename include guard.
4879 * tui/tui-disasm.h: Rename include guard.
4880 * tui/tui-data.h: Rename include guard.
4881 * tui/tui-command.h: Rename include guard.
4882 * tic6x-tdep.h: Add include guard.
4883 * target/waitstatus.h: Rename include guard.
4884 * target/wait.h: Rename include guard.
4885 * target/target.h: Rename include guard.
4886 * target/resume.h: Rename include guard.
4887 * target-float.h: Rename include guard.
4888 * stabsread.h: Add include guard.
4889 * rs6000-tdep.h: Add include guard.
4890 * riscv-fbsd-tdep.h: Add include guard.
4891 * regformats/regdef.h: Rename include guard.
4892 * record.h: Rename include guard.
4893 * python/python.h: Rename include guard.
4894 * python/python-internal.h: Rename include guard.
4895 * python/py-stopevent.h: Rename include guard.
4896 * python/py-ref.h: Rename include guard.
4897 * python/py-record.h: Rename include guard.
4898 * python/py-record-full.h: Rename include guard.
4899 * python/py-record-btrace.h: Rename include guard.
4900 * python/py-instruction.h: Rename include guard.
4901 * python/py-events.h: Rename include guard.
4902 * python/py-event.h: Rename include guard.
4903 * procfs.h: Add include guard.
4904 * proc-utils.h: Add include guard.
4905 * p-lang.h: Add include guard.
4906 * or1k-tdep.h: Rename include guard.
4907 * observable.h: Rename include guard.
4908 * nto-tdep.h: Rename include guard.
4909 * nat/x86-linux.h: Rename include guard.
4910 * nat/x86-linux-dregs.h: Rename include guard.
4911 * nat/x86-gcc-cpuid.h: Add include guard.
4912 * nat/x86-dregs.h: Rename include guard.
4913 * nat/x86-cpuid.h: Rename include guard.
4914 * nat/ppc-linux.h: Rename include guard.
4915 * nat/mips-linux-watch.h: Rename include guard.
4916 * nat/linux-waitpid.h: Rename include guard.
4917 * nat/linux-ptrace.h: Rename include guard.
4918 * nat/linux-procfs.h: Rename include guard.
4919 * nat/linux-osdata.h: Rename include guard.
4920 * nat/linux-nat.h: Rename include guard.
4921 * nat/linux-namespaces.h: Rename include guard.
4922 * nat/linux-btrace.h: Rename include guard.
4923 * nat/glibc_thread_db.h: Rename include guard.
4924 * nat/gdb_thread_db.h: Rename include guard.
4925 * nat/gdb_ptrace.h: Rename include guard.
4926 * nat/fork-inferior.h: Rename include guard.
4927 * nat/amd64-linux-siginfo.h: Rename include guard.
4928 * nat/aarch64-sve-linux-sigcontext.h: Rename include guard.
4929 * nat/aarch64-sve-linux-ptrace.h: Rename include guard.
4930 * nat/aarch64-linux.h: Rename include guard.
4931 * nat/aarch64-linux-hw-point.h: Rename include guard.
4932 * mn10300-tdep.h: Add include guard.
4933 * mips-linux-tdep.h: Add include guard.
4934 * mi/mi-parse.h: Rename include guard.
4935 * mi/mi-out.h: Rename include guard.
4936 * mi/mi-main.h: Rename include guard.
4937 * mi/mi-interp.h: Rename include guard.
4938 * mi/mi-getopt.h: Rename include guard.
4939 * mi/mi-console.h: Rename include guard.
4940 * mi/mi-common.h: Rename include guard.
4941 * mi/mi-cmds.h: Rename include guard.
4942 * mi/mi-cmd-break.h: Rename include guard.
4943 * m2-lang.h: Add include guard.
4944 * location.h: Rename include guard.
4945 * linux-record.h: Rename include guard.
4946 * linux-nat.h: Add include guard.
4947 * linux-fork.h: Add include guard.
4948 * i386-darwin-tdep.h: Rename include guard.
4949 * hppa-linux-offsets.h: Add include guard.
4950 * guile/guile.h: Rename include guard.
4951 * guile/guile-internal.h: Rename include guard.
4952 * gnu-nat.h: Rename include guard.
4953 * gdb-stabs.h: Rename include guard.
4954 * frv-tdep.h: Add include guard.
4955 * f-lang.h: Add include guard.
4956 * event-loop.h: Add include guard.
4957 * darwin-nat.h: Rename include guard.
4958 * cp-abi.h: Rename include guard.
4959 * config/sparc/nm-sol2.h: Rename include guard.
4960 * config/nm-nto.h: Rename include guard.
4961 * config/nm-linux.h: Add include guard.
4962 * config/i386/nm-i386gnu.h: Rename include guard.
4963 * config/djgpp/nl_types.h: Rename include guard.
4964 * config/djgpp/langinfo.h: Rename include guard.
4965 * compile/gcc-cp-plugin.h: Add include guard.
4966 * compile/gcc-c-plugin.h: Add include guard.
4967 * compile/compile.h: Rename include guard.
4968 * compile/compile-object-run.h: Rename include guard.
4969 * compile/compile-object-load.h: Rename include guard.
4970 * compile/compile-internal.h: Rename include guard.
4971 * compile/compile-cplus.h: Rename include guard.
4972 * compile/compile-c.h: Rename include guard.
4973 * common/xml-utils.h: Rename include guard.
4974 * common/x86-xstate.h: Rename include guard.
4975 * common/version.h: Rename include guard.
4976 * common/vec.h: Rename include guard.
4977 * common/tdesc.h: Rename include guard.
4978 * common/selftest.h: Rename include guard.
4979 * common/scoped_restore.h: Rename include guard.
4980 * common/scoped_mmap.h: Rename include guard.
4981 * common/scoped_fd.h: Rename include guard.
4982 * common/safe-iterator.h: Rename include guard.
4983 * common/run-time-clock.h: Rename include guard.
4984 * common/refcounted-object.h: Rename include guard.
4985 * common/queue.h: Rename include guard.
4986 * common/ptid.h: Rename include guard.
4987 * common/print-utils.h: Rename include guard.
4988 * common/preprocessor.h: Rename include guard.
4989 * common/pathstuff.h: Rename include guard.
4990 * common/observable.h: Rename include guard.
4991 * common/netstuff.h: Rename include guard.
4992 * common/job-control.h: Rename include guard.
4993 * common/host-defs.h: Rename include guard.
4994 * common/gdb_wait.h: Rename include guard.
4995 * common/gdb_vecs.h: Rename include guard.
4996 * common/gdb_unlinker.h: Rename include guard.
4997 * common/gdb_unique_ptr.h: Rename include guard.
4998 * common/gdb_tilde_expand.h: Rename include guard.
4999 * common/gdb_sys_time.h: Rename include guard.
5000 * common/gdb_string_view.h: Rename include guard.
5001 * common/gdb_splay_tree.h: Rename include guard.
5002 * common/gdb_setjmp.h: Rename include guard.
5003 * common/gdb_ref_ptr.h: Rename include guard.
5004 * common/gdb_optional.h: Rename include guard.
5005 * common/gdb_locale.h: Rename include guard.
5006 * common/gdb_assert.h: Rename include guard.
5007 * common/filtered-iterator.h: Rename include guard.
5008 * common/filestuff.h: Rename include guard.
5009 * common/fileio.h: Rename include guard.
5010 * common/environ.h: Rename include guard.
5011 * common/common-utils.h: Rename include guard.
5012 * common/common-types.h: Rename include guard.
5013 * common/common-regcache.h: Rename include guard.
5014 * common/common-inferior.h: Rename include guard.
5015 * common/common-gdbthread.h: Rename include guard.
5016 * common/common-exceptions.h: Rename include guard.
5017 * common/common-defs.h: Rename include guard.
5018 * common/common-debug.h: Rename include guard.
5019 * common/cleanups.h: Rename include guard.
5020 * common/buffer.h: Rename include guard.
5021 * common/btrace-common.h: Rename include guard.
5022 * common/break-common.h: Rename include guard.
5023 * cli/cli-utils.h: Rename include guard.
5024 * cli/cli-style.h: Rename include guard.
5025 * cli/cli-setshow.h: Rename include guard.
5026 * cli/cli-script.h: Rename include guard.
5027 * cli/cli-interp.h: Rename include guard.
5028 * cli/cli-decode.h: Rename include guard.
5029 * cli/cli-cmds.h: Rename include guard.
5030 * charset-list.h: Add include guard.
5031 * buildsym-legacy.h: Rename include guard.
5032 * bfin-tdep.h: Add include guard.
5033 * ax.h: Rename include guard.
5034 * arm-linux-tdep.h: Add include guard.
5035 * arm-fbsd-tdep.h: Add include guard.
5036 * arch/xtensa.h: Rename include guard.
5037 * arch/tic6x.h: Add include guard.
5038 * arch/i386.h: Add include guard.
5039 * arch/arm.h: Rename include guard.
5040 * arch/arm-linux.h: Rename include guard.
5041 * arch/arm-get-next-pcs.h: Rename include guard.
5042 * arch/amd64.h: Add include guard.
5043 * arch/aarch64-insn.h: Rename include guard.
5044 * arch-utils.h: Rename include guard.
5045 * annotate.h: Add include guard.
5046 * amd64-darwin-tdep.h: Rename include guard.
5047 * aarch64-linux-tdep.h: Add include guard.
5048 * aarch64-fbsd-tdep.h: Add include guard.
5049 * aarch32-linux-nat.h: Add include guard.
5053 * macrotab.c (macro_define_internal): New function that
5054 factorizes macro_define_object_internal and macro_define_function
5056 (macro_define_object_internal): Use macro_define_internal.
5057 (macro_define_function): Likewise.
5061 * macrocmd.c (extract_identifier): Return
5062 a gdb::unique_xmalloc_ptr<char> instead of a char *, and update
5067 * fbsd-nat.c (fbsd_fetch_cmdline): Join arguments with spaces.
5071 * target.c (target_stack::unpush): Move assertion earlier.
5076 * python/python.c (execute_gdb_command): Use gdbpy_allow_threads.
5077 (gdbpy_parse_and_eval): Likewise.
5078 * python/python-internal.h (gdbpy_allow_threads): New class.
5082 * aarch64-fbsd-tdep.c (aarch64_fbsd_gregmap)
5083 (aarch64_fbsd_fpregmap): Move earlier.
5084 (AARCH64_MCONTEXT_REG_SIZE, AARCH64_MCONTEXT_FPREG_SIZE): Delete.
5085 (aarch64_fbsd_sigframe_init): Use trad_frame_set_reg_regmap
5086 instead of individual calls to trad_frame_set_reg_addr.
5087 * arm-fbsd-tdep.c (arm_fbsd_gregmap, arm_fbsd_vfpregmap): Move
5089 (ARM_MCONTEXT_REG_SIZE, ARM_MCONTEXT_VFP_REG_SIZE): Delete.
5090 (arm_fbsd_sigframe_init): Use trad_frame_set_reg_regmap
5091 instead of individual calls to trad_frame_set_reg_addr.
5095 * CONTRIBUTE: Replace contribution list with wiki link.
5099 * Makefile.in (GDB_CFLAGS): Don't add -I for common.
5103 * xtensa-linux-nat.c: Fix common/ includes.
5104 * xml-support.h: Fix common/ includes.
5105 * xml-support.c: Fix common/ includes.
5106 * x86-linux-nat.c: Fix common/ includes.
5107 * windows-nat.c: Fix common/ includes.
5108 * varobj.h: Fix common/ includes.
5109 * varobj.c: Fix common/ includes.
5110 * value.c: Fix common/ includes.
5111 * valops.c: Fix common/ includes.
5112 * utils.c: Fix common/ includes.
5113 * unittests/xml-utils-selftests.c: Fix common/ includes.
5114 * unittests/utils-selftests.c: Fix common/ includes.
5115 * unittests/unpack-selftests.c: Fix common/ includes.
5116 * unittests/tracepoint-selftests.c: Fix common/ includes.
5117 * unittests/style-selftests.c: Fix common/ includes.
5118 * unittests/string_view-selftests.c: Fix common/ includes.
5119 * unittests/scoped_restore-selftests.c: Fix common/ includes.
5120 * unittests/scoped_mmap-selftests.c: Fix common/ includes.
5121 * unittests/scoped_fd-selftests.c: Fix common/ includes.
5122 * unittests/rsp-low-selftests.c: Fix common/ includes.
5123 * unittests/parse-connection-spec-selftests.c: Fix common/
5125 * unittests/optional-selftests.c: Fix common/ includes.
5126 * unittests/offset-type-selftests.c: Fix common/ includes.
5127 * unittests/observable-selftests.c: Fix common/ includes.
5128 * unittests/mkdir-recursive-selftests.c: Fix common/ includes.
5129 * unittests/memrange-selftests.c: Fix common/ includes.
5130 * unittests/memory-map-selftests.c: Fix common/ includes.
5131 * unittests/lookup_name_info-selftests.c: Fix common/ includes.
5132 * unittests/function-view-selftests.c: Fix common/ includes.
5133 * unittests/environ-selftests.c: Fix common/ includes.
5134 * unittests/copy_bitwise-selftests.c: Fix common/ includes.
5135 * unittests/common-utils-selftests.c: Fix common/ includes.
5136 * unittests/cli-utils-selftests.c: Fix common/ includes.
5137 * unittests/array-view-selftests.c: Fix common/ includes.
5138 * ui-file.c: Fix common/ includes.
5139 * tui/tui-io.c: Fix common/ includes.
5140 * tracepoint.h: Fix common/ includes.
5141 * tracepoint.c: Fix common/ includes.
5142 * tracefile-tfile.c: Fix common/ includes.
5143 * top.h: Fix common/ includes.
5144 * top.c: Fix common/ includes.
5145 * thread.c: Fix common/ includes.
5146 * target/waitstatus.h: Fix common/ includes.
5147 * target/waitstatus.c: Fix common/ includes.
5148 * target.h: Fix common/ includes.
5149 * target.c: Fix common/ includes.
5150 * target-memory.c: Fix common/ includes.
5151 * target-descriptions.c: Fix common/ includes.
5152 * symtab.h: Fix common/ includes.
5153 * symfile.c: Fix common/ includes.
5154 * stap-probe.c: Fix common/ includes.
5155 * spu-linux-nat.c: Fix common/ includes.
5156 * sparc-nat.c: Fix common/ includes.
5157 * source.c: Fix common/ includes.
5158 * solib.c: Fix common/ includes.
5159 * solib-target.c: Fix common/ includes.
5160 * ser-unix.c: Fix common/ includes.
5161 * ser-tcp.c: Fix common/ includes.
5162 * ser-pipe.c: Fix common/ includes.
5163 * ser-base.c: Fix common/ includes.
5164 * selftest-arch.c: Fix common/ includes.
5165 * s12z-tdep.c: Fix common/ includes.
5166 * rust-exp.y: Fix common/ includes.
5167 * rs6000-aix-tdep.c: Fix common/ includes.
5168 * riscv-tdep.c: Fix common/ includes.
5169 * remote.c: Fix common/ includes.
5170 * remote-notif.h: Fix common/ includes.
5171 * remote-fileio.h: Fix common/ includes.
5172 * remote-fileio.c: Fix common/ includes.
5173 * regcache.h: Fix common/ includes.
5174 * regcache.c: Fix common/ includes.
5175 * record-btrace.c: Fix common/ includes.
5176 * python/python.c: Fix common/ includes.
5177 * python/py-type.c: Fix common/ includes.
5178 * python/py-inferior.c: Fix common/ includes.
5179 * progspace.h: Fix common/ includes.
5180 * producer.c: Fix common/ includes.
5181 * procfs.c: Fix common/ includes.
5182 * proc-api.c: Fix common/ includes.
5183 * printcmd.c: Fix common/ includes.
5184 * ppc-linux-nat.c: Fix common/ includes.
5185 * parser-defs.h: Fix common/ includes.
5186 * osdata.c: Fix common/ includes.
5187 * obsd-nat.c: Fix common/ includes.
5188 * nat/x86-linux.c: Fix common/ includes.
5189 * nat/x86-linux-dregs.c: Fix common/ includes.
5190 * nat/x86-dregs.h: Fix common/ includes.
5191 * nat/x86-dregs.c: Fix common/ includes.
5192 * nat/ppc-linux.c: Fix common/ includes.
5193 * nat/mips-linux-watch.h: Fix common/ includes.
5194 * nat/mips-linux-watch.c: Fix common/ includes.
5195 * nat/linux-waitpid.c: Fix common/ includes.
5196 * nat/linux-ptrace.h: Fix common/ includes.
5197 * nat/linux-ptrace.c: Fix common/ includes.
5198 * nat/linux-procfs.c: Fix common/ includes.
5199 * nat/linux-personality.c: Fix common/ includes.
5200 * nat/linux-osdata.c: Fix common/ includes.
5201 * nat/linux-namespaces.c: Fix common/ includes.
5202 * nat/linux-btrace.h: Fix common/ includes.
5203 * nat/linux-btrace.c: Fix common/ includes.
5204 * nat/fork-inferior.c: Fix common/ includes.
5205 * nat/amd64-linux-siginfo.c: Fix common/ includes.
5206 * nat/aarch64-sve-linux-ptrace.c: Fix common/ includes.
5207 * nat/aarch64-linux.c: Fix common/ includes.
5208 * nat/aarch64-linux-hw-point.h: Fix common/ includes.
5209 * nat/aarch64-linux-hw-point.c: Fix common/ includes.
5210 * namespace.h: Fix common/ includes.
5211 * mips-linux-tdep.c: Fix common/ includes.
5212 * minsyms.c: Fix common/ includes.
5213 * mi/mi-parse.h: Fix common/ includes.
5214 * mi/mi-main.c: Fix common/ includes.
5215 * mi/mi-cmd-env.c: Fix common/ includes.
5216 * memrange.h: Fix common/ includes.
5217 * memattr.c: Fix common/ includes.
5218 * maint.h: Fix common/ includes.
5219 * maint.c: Fix common/ includes.
5220 * main.c: Fix common/ includes.
5221 * machoread.c: Fix common/ includes.
5222 * location.c: Fix common/ includes.
5223 * linux-thread-db.c: Fix common/ includes.
5224 * linux-nat.c: Fix common/ includes.
5225 * linux-fork.c: Fix common/ includes.
5226 * inline-frame.c: Fix common/ includes.
5227 * infrun.c: Fix common/ includes.
5228 * inflow.c: Fix common/ includes.
5229 * inferior.h: Fix common/ includes.
5230 * inferior.c: Fix common/ includes.
5231 * infcmd.c: Fix common/ includes.
5232 * inf-ptrace.c: Fix common/ includes.
5233 * inf-child.c: Fix common/ includes.
5234 * ia64-linux-nat.c: Fix common/ includes.
5235 * i387-tdep.c: Fix common/ includes.
5236 * i386-tdep.c: Fix common/ includes.
5237 * i386-linux-tdep.c: Fix common/ includes.
5238 * i386-linux-nat.c: Fix common/ includes.
5239 * i386-go32-tdep.c: Fix common/ includes.
5240 * i386-fbsd-tdep.c: Fix common/ includes.
5241 * i386-fbsd-nat.c: Fix common/ includes.
5242 * guile/scm-type.c: Fix common/ includes.
5243 * guile/guile.c: Fix common/ includes.
5244 * go32-nat.c: Fix common/ includes.
5245 * gnu-nat.c: Fix common/ includes.
5246 * gdbthread.h: Fix common/ includes.
5247 * gdbarch-selftests.c: Fix common/ includes.
5248 * gdb_usleep.c: Fix common/ includes.
5249 * gdb_select.h: Fix common/ includes.
5250 * gdb_bfd.c: Fix common/ includes.
5251 * gcore.c: Fix common/ includes.
5252 * fork-child.c: Fix common/ includes.
5253 * findvar.c: Fix common/ includes.
5254 * fbsd-nat.c: Fix common/ includes.
5255 * event-top.c: Fix common/ includes.
5256 * event-loop.c: Fix common/ includes.
5257 * dwarf2read.c: Fix common/ includes.
5258 * dwarf2loc.c: Fix common/ includes.
5259 * dwarf2-frame.c: Fix common/ includes.
5260 * dwarf-index-cache.c: Fix common/ includes.
5261 * dtrace-probe.c: Fix common/ includes.
5262 * disasm-selftests.c: Fix common/ includes.
5263 * defs.h: Fix common/ includes.
5264 * csky-tdep.c: Fix common/ includes.
5265 * cp-valprint.c: Fix common/ includes.
5266 * cp-support.h: Fix common/ includes.
5267 * cp-support.c: Fix common/ includes.
5268 * corelow.c: Fix common/ includes.
5269 * completer.h: Fix common/ includes.
5270 * completer.c: Fix common/ includes.
5271 * compile/compile.c: Fix common/ includes.
5272 * compile/compile-loc2c.c: Fix common/ includes.
5273 * compile/compile-cplus-types.c: Fix common/ includes.
5274 * compile/compile-cplus-symbols.c: Fix common/ includes.
5275 * command.h: Fix common/ includes.
5276 * cli/cli-dump.c: Fix common/ includes.
5277 * cli/cli-cmds.c: Fix common/ includes.
5278 * charset.c: Fix common/ includes.
5279 * build-id.c: Fix common/ includes.
5280 * btrace.h: Fix common/ includes.
5281 * btrace.c: Fix common/ includes.
5282 * breakpoint.h: Fix common/ includes.
5283 * breakpoint.c: Fix common/ includes.
5285 (enum agent_op): Fix common/ includes.
5286 * ax-general.c (struct aop_map): Fix common/ includes.
5287 * ax-gdb.c: Fix common/ includes.
5288 * auxv.c: Fix common/ includes.
5289 * auto-load.c: Fix common/ includes.
5290 * arm-tdep.c: Fix common/ includes.
5291 * arch/riscv.c: Fix common/ includes.
5292 * arch/ppc-linux-common.c: Fix common/ includes.
5293 * arch/i386.c: Fix common/ includes.
5294 * arch/arm.c: Fix common/ includes.
5295 * arch/arm-linux.c: Fix common/ includes.
5296 * arch/arm-get-next-pcs.c: Fix common/ includes.
5297 * arch/amd64.c: Fix common/ includes.
5298 * arch/aarch64.c: Fix common/ includes.
5299 * arch/aarch64-insn.c: Fix common/ includes.
5300 * arch-utils.c: Fix common/ includes.
5301 * amd64-windows-tdep.c: Fix common/ includes.
5302 * amd64-tdep.c: Fix common/ includes.
5303 * amd64-sol2-tdep.c: Fix common/ includes.
5304 * amd64-obsd-tdep.c: Fix common/ includes.
5305 * amd64-nbsd-tdep.c: Fix common/ includes.
5306 * amd64-linux-tdep.c: Fix common/ includes.
5307 * amd64-linux-nat.c: Fix common/ includes.
5308 * amd64-fbsd-tdep.c: Fix common/ includes.
5309 * amd64-fbsd-nat.c: Fix common/ includes.
5310 * amd64-dicos-tdep.c: Fix common/ includes.
5311 * amd64-darwin-tdep.c: Fix common/ includes.
5312 * agent.c: Fix common/ includes.
5313 * ada-lang.h: Fix common/ includes.
5314 * ada-lang.c: Fix common/ includes.
5315 * aarch64-tdep.c: Fix common/ includes.
5319 * common/create-version.sh: Use common/version.h.
5323 * infrun.c (signal_stop, signal_print, signal_program)
5324 (signal_catch, signal_pass): Now arrays instead of pointers.
5325 (update_signals_program_target, do_target_resume)
5326 (signal_catch_update, handle_command, _initialize_infrun): Adjust.
5327 * linux-nat.c (linux_nat_target::pass_signals)
5328 (linux_nat_target::create_inferior, linux_nat_target::attach):
5330 * linux-nat.h (linux_nat_target::pass_signals): Adjust.
5331 * nto-procfs.c (nto_procfs_target::pass_signals): Adjust.
5332 * procfs.c (procfs_target::pass_signals): Adjust.
5333 * record-full.c (record_full_target::resume): Adjust.
5334 * remote.c (remote_target::pass_signals)
5335 (remote_target::program_signals): Adjust.
5336 * target-debug.h (target_debug_print_signals): Now takes a
5337 gdb::array_view as parameter. Adjust.
5338 * target.h (target_ops) <pass_signals, program_signals>: Replace
5339 pointer and length parameters with gdb::array_view.
5340 (target_pass_signals, target_program_signals): Likewise.
5341 * target-delegates.c: Regenerate.
5345 * common/forward-scope-exit.h
5346 (forward_scope_exit::forward_scope_exit): Pass arguments to
5347 m_bind_function directly, instead of creating a std::bind and
5352 * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
5354 (pass_in_v_vfp_candidate): Likewise.
5359 * regcache.c (class regcache_invalidator): Remove.
5360 (regcache::raw_write): Use make_scope_exit.
5364 * ui-out.h (class ui_out_emit_type): Update comment.
5368 * infrun.c (fetch_inferior_event): Update comment.
5373 * infrun.c (reinstall_readline_callback_handler_cleanup): Remove
5375 (fetch_inferior_event): Use SCOPE_EXIT.
5381 * infrun.c (disable_thread_events): Delete.
5382 (stop_all_threads): Use SCOPE_EXIT.
5387 * symfile.c: Include forward-scope-exit.h.
5388 (clear_symtab_users_cleanup): Replace forward declaration with
5389 a FORWARD_SCOPE_EXIT.
5390 (syms_from_objfile_1): Use the forward_scope_exit and
5391 gdb::optional instead of cleanup_function.
5392 (reread_symbols): Use the forward_scope_exit instead of
5394 (clear_symtab_users_cleanup): Remove function.
5399 * linux-nat.c: Include scope-exit.h.
5400 (cleanup_target_stop): Remove.
5401 (linux_nat_target::static_tracepoint_markers_by_strid): Use
5407 * infcall.c (cleanup_delete_std_terminate_breakpoint): Remove.
5408 (call_function_by_hand_dummy): Use SCOPE_EXIT.
5414 * infrun.c (fetch_inferior_event): Use scope_exit.
5415 * utils.h (make_bpstat_clear_actions_cleanup): Don't declare.
5416 * top.c (execute_command): Use scope_exit.
5417 * breakpoint.c (bpstat_do_actions): Use scope_exit.
5418 * utils.c (do_bpstat_clear_actions_cleanup)
5419 (make_bpstat_clear_actions_cleanup): Remove.
5424 * infrun.c: Include "common/scope-exit.h"
5425 (delete_just_stopped_threads_infrun_breakpoints_cleanup): Remove.
5426 (wait_for_inferior): Use SCOPE_EXIT.
5427 (fetch_inferior_event): Use scope_exit.
5432 * breakpoint.c (create_breakpoint): Remove cleanup.
5440 * gdbarch-selftests.c (struct on_exit): Use SCOPE_EXIT.
5445 * gdbthread.h: Include "common/forward-scope-exit.h".
5446 (scoped_finish_thread_state): Redefine custom class in terms of
5452 * common/forward-scope-exit.h: New file.
5458 * common/scope-exit.h: New file.
5462 * common/preprocessor.h (ESC): Rename to ...
5463 (ESC_PARENS): ... this.
5464 * common/valid-expr.h (CHECK_VALID_EXPR_1, CHECK_VALID_EXPR_2)
5465 (CHECK_VALID_EXPR_3, CHECK_VALID_EXPR_4): Adjust.
5469 * language.h (class scoped_switch_to_sym_language_if_auto):
5470 Initialize m_lang in both cases.
5474 * nat/aarch64-linux.c (aarch64_linux_new_thread): Replace XNEW
5479 * corelow.c: Do not include sys/file.h.
5483 * tui/tui-wingeneral.h: Include gdb_curses.h.
5487 * source-cache.h (class source_cache) <get_source_lines,
5488 get_plain_source_lines, extract_lines>: Rename "lines" parameter.
5492 * remote-fileio.h (struct remote_target): Declare.
5496 * python/py-arch.c: Do not include py-ref.h.
5497 * python/py-bpevent.c: Do not include py-ref.h.
5498 * python/py-cmd.c: Do not include py-ref.h.
5499 * python/py-continueevent.c: Do not include py-ref.h.
5500 * python/py-event.h: Do not include py-ref.h.
5501 * python/py-evtregistry.c: Do not include py-ref.h.
5502 * python/py-finishbreakpoint.c: Do not include py-ref.h.
5503 * python/py-frame.c: Do not include py-ref.h.
5504 * python/py-framefilter.c: Do not include py-ref.h.
5505 * python/py-function.c: Do not include py-ref.h.
5506 * python/py-infevents.c: Do not include py-ref.h.
5507 * python/py-linetable.c: Do not include py-ref.h.
5508 * python/py-objfile.c: Do not include py-ref.h.
5509 * python/py-param.c: Do not include py-ref.h.
5510 * python/py-prettyprint.c: Do not include py-ref.h.
5511 * python/py-progspace.c: Do not include py-ref.h.
5512 * python/py-symbol.c: Do not include py-ref.h.
5513 * python/py-symtab.c: Do not include py-ref.h.
5514 * python/py-type.c: Do not include py-ref.h.
5515 * python/py-unwind.c: Do not include py-ref.h.
5516 * python/py-utils.c: Do not include py-ref.h.
5517 * python/py-value.c: Do not include py-ref.h.
5518 * python/py-varobj.c: Do not include py-ref.h.
5519 * python/py-xmethods.c: Do not include py-ref.h.
5520 * python/python.c: Do not include py-ref.h.
5521 * varobj.c: Do not include py-ref.h.
5525 * objfiles.h (struct objfile_per_bfd_storage): Use "struct"
5530 * compile/compile-cplus-types.c: Remove a comment by #include.
5534 * compile/gcc-c-plugin.h: Include compile-internal.h.
5538 * stabsread.c (EXTERN): Do not define.
5539 (symnum, next_symbol_text_func, processing_gcc_compilation)
5540 (within_function, global_sym_chain, global_stabs)
5541 (previous_stab_code, this_object_header_files)
5542 (n_this_object_header_files)
5543 (n_allocated_this_object_header_files): Define.
5544 * stabsread.h (EXTERN): Never define. Use "extern".
5548 * event-top.c (handle_line_of_input): use unique_xmalloc_ptr for
5553 * ui-out.c: Fix includes.
5554 * tui/tui-source.c: Fix includes.
5555 * target.c: Fix includes.
5556 * remote.c: Fix includes.
5557 * regcache.c: Fix includes.
5558 * python/py-block.c: Fix includes.
5559 * printcmd.c: Fix includes.
5560 * or1k-tdep.c: Fix includes.
5561 * mi/mi-main.c: Fix includes.
5562 * m32r-tdep.c: Fix includes.
5563 * csky-tdep.c: Fix includes.
5564 * compile/compile-cplus-types.c: Fix includes.
5565 * cli/cli-interp.c: Fix includes.
5569 * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
5574 * objfiles.h (struct minimal_symbol_iterator): Rename. Move
5576 (struct objfile) <msymbols_range>: Move from top level.
5577 <msymbols>: New method.
5578 (class objfile_msymbols): Remove.
5579 * symtab.c (default_collect_symbol_completion_matches_break_on):
5581 * symmisc.c (dump_msymbols): Update.
5582 * stabsread.c (scan_file_globals): Update.
5583 * objc-lang.c (info_selectors_command, info_classes_command)
5584 (find_methods): Update.
5585 * minsyms.c (find_solib_trampoline_target): Update.
5586 * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Update.
5587 * coffread.c (coff_symfile_read): Update.
5588 * ada-lang.c (ada_lookup_simple_minsym)
5589 (ada_collect_symbol_completion_matches): Update.
5593 * objfiles.h (class objfile_msymbols) <iterator>: Change argument
5594 type. Remove no-argument constructor.
5595 <iterator::operator++>: Simplify.
5597 <end>: Use minimal_symbol_count.
5601 * objfiles.h (struct objfile) <psymtabs>: New method.
5602 (class objfile_psymtabs): Remove.
5603 * psymtab.h (class psymtab_storage) <partial_symtab_range>: New
5605 <range>: New method.
5606 (require_partial_symbols): Change return type.
5607 * psymtab.c (require_partial_symbols)
5608 (psym_expand_symtabs_matching): Update.
5609 * mdebugread.c (parse_partial_symbols): Update.
5610 * dbxread.c (dbx_end_psymtab): Update.
5614 * symtab.c (lookup_objfile_from_block)
5615 (lookup_symbol_in_objfile_symtabs)
5616 (basic_lookup_transparent_type_1, find_pc_sect_compunit_symtab)
5617 (find_line_symtab, info_sources_command)
5618 (default_collect_symbol_completion_matches_break_on)
5619 (make_source_files_completion_list): Update.
5620 * symmisc.c (print_objfile_statistics, dump_objfile)
5621 (maintenance_print_symbols, maintenance_info_symtabs)
5622 (maintenance_check_symtabs, maintenance_info_line_tables):
5624 * source.c (select_source_symtab)
5625 (forget_cached_source_info_for_objfile): Update.
5626 * objfiles.h (class objfile_compunits): Remove.
5627 (struct objfile) <compunits_range>: New typedef.
5628 (compunits): New method.
5629 * objfiles.c (objfile_relocate1): Update.
5630 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
5631 * maint.c (count_symtabs_and_blocks): Update.
5632 * linespec.c (iterate_over_all_matching_symtabs): Update.
5633 * cp-support.c (add_symbol_overload_list_qualified): Update.
5634 * coffread.c (coff_symtab_read): Update.
5635 * ada-lang.c (add_nonlocal_symbols)
5636 (ada_collect_symbol_completion_matches)
5637 (ada_add_global_exceptions): Update.
5641 * progspace.h (program_space) <objfiles_safe_range>: New
5643 <objfiles_safe>: New method.
5644 * objfiles.h (class all_objfiles_safe): Remove.
5645 * objfiles.c (free_all_objfiles, objfile_purge_solibs): Update.
5646 * jit.c (jit_inferior_exit_hook): Update.
5650 * progspace.h (program_space) <objfiles_range>: New typedef.
5651 <objfiles>: New method.
5652 <objfiles_head>: Rename from objfiles.
5653 (object_files): Update.
5654 * guile/scm-progspace.c (gdbscm_progspace_objfiles): Update.
5655 * guile/scm-pretty-print.c
5656 (ppscm_find_pretty_printer_from_objfiles): Update.
5657 * guile/scm-objfile.c (gdbscm_objfiles): Update.
5658 * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
5660 * python/py-progspace.c (pspy_get_objfiles): Update.
5661 * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
5663 * python/py-objfile.c (objfpy_lookup_objfile_by_name)
5664 (objfpy_lookup_objfile_by_build_id): Update.
5665 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
5666 * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
5668 * symtab.c (iterate_over_symtabs, matching_obj_sections)
5669 (expand_symtab_containing_pc, lookup_objfile_from_block)
5670 (lookup_static_symbol, basic_lookup_transparent_type)
5671 (find_pc_sect_compunit_symtab, find_symbol_at_address)
5672 (find_line_symtab, info_sources_command)
5673 (default_collect_symbol_completion_matches_break_on)
5674 (make_source_files_completion_list, find_main_name): Update.
5675 * symmisc.c (print_symbol_bcache_statistics)
5676 (print_objfile_statistics, maintenance_print_symbols)
5677 (maintenance_print_msymbols, maintenance_print_objfiles)
5678 (maintenance_info_symtabs, maintenance_check_symtabs)
5679 (maintenance_expand_symtabs, maintenance_info_line_tables):
5681 * symfile.c (remove_symbol_file_command, overlay_invalidate_all)
5682 (find_pc_overlay, find_pc_mapped_section, list_overlays_command)
5683 (map_overlay_command, unmap_overlay_command)
5684 (simple_overlay_update, expand_symtabs_matching)
5685 (map_symbol_filenames): Update.
5686 * symfile-debug.c (set_debug_symfile): Update.
5687 * spu-tdep.c (spu_overlay_update, spu_objfile_from_frame):
5689 * source.c (select_source_symtab, forget_cached_source_info):
5691 * solib.c (solib_read_symbols): Update.
5692 * solib-spu.c (append_ocl_sos): Update.
5693 * psymtab.c (maintenance_print_psymbols)
5694 (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5695 * probe.c (parse_probes_in_pspace, find_probe_by_pc): Update.
5696 * printcmd.c (info_symbol_command): Update.
5697 * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created):
5699 * objfiles.h (class all_objfiles): Remove.
5700 * objfiles.c (have_partial_symbols, have_full_symbols)
5701 (have_minimal_symbols, qsort_cmp, update_section_map)
5702 (shared_objfile_contains_address_p)
5703 (default_iterate_over_objfiles_in_search_order): Update.
5704 * objc-lang.c (info_selectors_command, info_classes_command)
5705 (find_methods): Update.
5706 * minsyms.c (find_solib_trampoline_target): Update.
5707 * maint.c (maintenance_info_sections)
5708 (maintenance_translate_address, count_symtabs_and_blocks):
5710 * main.c (captured_main_1): Update.
5711 * linux-thread-db.c (try_thread_db_load_from_pdir)
5712 (has_libpthread): Update.
5713 * linespec.c (iterate_over_all_matching_symtabs)
5714 (search_minsyms_for_name): Update.
5715 * jit.c (jit_find_objf_with_entry_addr): Update.
5716 * hppa-tdep.c (find_unwind_entry)
5717 (hppa_lookup_stub_minimal_symbol): Update.
5718 * gcore.c (gcore_create_callback, objfile_find_memory_regions):
5720 * elfread.c (elf_gnu_ifunc_resolve_by_cache)
5721 (elf_gnu_ifunc_resolve_by_got): Update.
5722 * dwarf2-frame.c (dwarf2_frame_find_fde): Update.
5723 * dwarf-index-write.c (save_gdb_index_command): Update.
5724 * cp-support.c (add_symbol_overload_list_qualified): Update.
5725 * breakpoint.c (create_overlay_event_breakpoint)
5726 (create_longjmp_master_breakpoint)
5727 (create_std_terminate_master_breakpoint)
5728 (create_exception_master_breakpoint): Update.
5729 * blockframe.c (find_pc_partial_function): Update.
5730 * ada-lang.c (ada_lookup_simple_minsym, add_nonlocal_symbols)
5731 (ada_collect_symbol_completion_matches)
5732 (ada_add_global_exceptions): Update.
5736 * solib-target.c (lm_info_target_p): Remove typedef. Don't
5738 (solib_target_parse_libraries): Change return type.
5739 (library_list_start_segment, library_list_start_section)
5740 (library_list_end_library, library_list_start_library); Update.
5741 (solib_target_free_library_list): Remove.
5742 (solib_target_parse_libraries): Remove cleanup. Change return
5744 (solib_target_current_sos): Update.
5746 2019-01-17 Tom Tromey <tromey@bapiya>
5748 * valprint.c: Replace "the the" with "the".
5749 * symtab.c: Replace "the the" with "the".
5750 * solib.c: Replace "the the" with "the".
5751 * solib-dsbt.c: Replace "the the" with "the".
5752 * linespec.c: Replace "the the" with "the".
5753 * dwarf2loc.h: Replace "the the" with "the".
5754 * amd64-windows-tdep.c: Replace "the the" with "the".
5755 * aarch64-tdep.c: Replace "the the" with "the".
5760 * dwarf2read.c (dwarf2_cu) <ancestor>: New field.
5761 <builder>: Rename to ..
5762 <m_builder>: ... this and make private.
5763 (dwarf2_cu::get_builder): New method. Change all users of
5764 `builder' to use this method.
5765 (dwarf2_start_symtab): Move to ...
5766 (dwarf2_cu::start_symtab): ... here. Update all callers
5767 (setup_type_unit_groups): Move to ...
5768 (dwarf2_cu::setup_type_unit_groups): ... here. Update all
5770 (dwarf2_cu::reset_builder): New method.
5771 (process_full_compunit, process_full_type_unit): Use
5772 dwarf2_cu::reset_builder.
5773 (follow_die_offset): Record the ancestor CU if it is different
5774 from the followed DIE's CU.
5775 (follow_die_sig_1): Likewise.
5779 * remote.c (class remote_state) <buf>: Now a char_vector.
5781 (remote_target::getpkt): Change type of buf. Remove sizeof_buf
5783 (remote_target::getpkt_or_notif_sane_1)
5784 (remote_target::getpkt_sane)
5785 (remote_target::getpkt_or_notif_sane): Likewise.
5786 (class remote_target) <putpkt>: New overload.
5787 (remote_target::read_frame): Change type of "buf_p". Remove
5789 (packet_ok): New overload.
5790 (packet_check_result): New overload.
5795 * remote-notif.c (handle_notification, remote_notif_ack)
5796 (remote_notif_parse): Make "buf" const.
5797 * remote-notif.h (struct notif_client) <parse, ack>: Make "buf"
5799 (remote_notif_parse, remote_notif_ack, handle_notification):
5801 * remote.c (remote_notif_stop_parse): Make "buf" const.
5802 (remote_target::remote_parse_stop_reply): Make "buf" const.
5803 (remote_notif_stop_ack): Make "buf" const.
5807 * remote.c (remote_console_output): Make parameter const.
5811 * target-debug.h (target_debug_print_signals): Constify.
5812 * nto-procfs.c (nto_procfs_target::pass_signals): Update.
5813 * procfs.c (procfs_target::pass_signals): Update.
5814 * linux-nat.c (linux_nat_target::pass_signals): Update.
5815 * linux-nat.h (class linux_nat_target) <pass_signals>: Update.
5816 * target-delegates.c: Rebuild.
5817 * remote.c (remote_target::program_signals): Update.
5818 (remote_target::pass_signals): Update.
5819 * target.c (target_pass_signals): Constify argument.
5820 (target_program_signals): Likewise.
5821 * target.h (struct target_ops) <pass_signals, program_signals>:
5823 (target_pass_signals, target_program_signals): Constify argument.
5828 * tui/tui-io.c (gdb_wgetch): Print \r when needed.
5832 * ppc-tdep.h (struct gdbarch_tdep) <ppc_v0_alias_regnum>: New
5834 * rs6000-tdep.c: Include reggroups.h.
5835 (IS_V_ALIAS_PSEUDOREG): Define.
5836 (rs6000_register_name): Return names for the "vX" aliases.
5837 (rs6000_pseudo_register_type): Return type for the "vX" aliases.
5838 (rs6000_pseudo_register_reggroup_p): Restore. Handle "vX"
5839 aliases. Call default_register_reggroup_p for all other
5841 (v_alias_pseudo_register_read, v_alias_pseudo_register_write):
5843 (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
5844 Handle "vX" aliases.
5845 (v_alias_pseudo_register_collect): New function.
5846 (rs6000_ax_pseudo_register_collect): Handle "vX" aliases.
5847 (rs6000_gdbarch_init): Initialize "vX" aliases as
5848 pseudo-registers. Restore registration of
5849 rs6000_pseudo_register_reggroup_p with
5850 set_tdesc_pseudo_register_reggroup_p.
5854 * xtensa-linux-tdep.c (xtensa_linux_init_abi): Update
5855 tdep->num_pseudo_regs. Add calls to set_gdbarch_num_regs and
5856 set_gdbarch_num_pseudo_regs.
5860 * cli/cli-style.h (class cli_style_option): <add_setshow_commands>
5861 Remove arg prefixname, add do_set and do_show.
5862 Add member functions set_list and show_list.
5863 * cli/cli-style.c (class cli_style_option): Update accordingly.
5864 (style_set_list): Move to file scope.
5865 (style_show_list): Likewise.
5866 (set_style): Call help_list.
5867 (show_style): Call cmd_show_list.
5868 (_initialize_cli_style): New macro STYLE_ADD_SETSHOW_COMMANDS.
5869 Update to use the new macro.
5873 * ada-lang.c (_initialize_ada_language): Expand the help text
5874 for the "catch exception" command.
5878 * symtab.c (matching_obj_sections): Initialize obj,
5879 declare it closer to its usage.
5883 * thread-iter.h (inf_threads_iterator): Use next_iterator.
5884 (basic_inf_threads_range): Remove.
5885 (inf_threads_range, inf_non_exited_threads_range)
5886 (safe_inf_threads_range): Use next_adapter.
5892 * dwarf2read.c (dw2_add_symbol_to_list): Remove.
5893 (fixup_go_packaging, new_symbol): Use add_symbol_to_list.
5899 * dictionary.c (pending_to_vector): Remove.
5900 (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
5901 Remove _1 suffix, replacing functions of the same name. Update
5903 (dict_create_hashed, dict_create_hashed_expandable)
5904 (dict_create_linear, dict_create_linear_expandable, dict_free)
5905 (dict_add_symbol, dict_add_pending, dict_size, dict_empty):
5906 Make functions static.
5912 * dictionary.h (struct dictionary): Replace declaration with
5914 (dict_create_hashed, dict_create_hashed_expandable)
5915 (dict_create_linear, dict_create_linear_expandable)
5916 (dict_free, dict_add_symbol, dict_add_pending, dict_empty)
5917 (dict_iterator_first, dict_iterator_next, dict_iter_match_first)
5918 (dict_iter_match_next, dict_size): Rename to "mdict_" versions
5919 taking multidictionary argument.
5920 [ALL_DICT_SYMBOLS]: Update for multidictionary.
5921 * block.h (struct block) <dict>: Change to multidictionary
5922 and rename `multidict'.
5923 * block.c, buildsym.c, jit.c, mdebugread.c, objfiles.c,
5924 symmisc.c: Update all dictionary references to multidictionary.
5930 * dictionary.c: Include unordered_map.
5931 (pending_to_vector): New function.
5932 (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
5933 Rewrite the non-"_1" functions to take vector instead
5935 (dict_create_hashed, dict_create_linear, dict_add_pending): Use the
5936 "new" _1 versions of the same name.
5937 (multidictionary): Define.
5938 (std::hash<enum language): New definition.
5939 (collate_pending_symbols_by_language, mdict_create_hashed)
5940 (mdict_create_hashed_expandable, mdict_create_linear)
5941 (mdict_create_linear_expandable, mdict_free)
5942 (find_language_dictionary, create_new_language_dictionary)
5943 (mdict_add_symbol, mdict_add_pending, mdict_iterator_first)
5944 (mdict_iterator_next, mdict_iter_match_first, mdict_iter_match_next)
5945 (mdict_size, mdict_empty): New functions.
5946 * dictionary.h (mdict_iterator): Define.
5950 * breakpoint.c (read_uploaded_action)
5951 (create_tracepoint_from_upload): Adjust to use
5952 gdb::unique_xmalloc_ptr.
5953 * ctf.c (ctf_write_uploaded_tp):
5954 (SET_ARRAY_FIELD): Use emplace_back.
5955 (SET_STRING_FIELD): Adjust to use gdb::unique_xmalloc_ptr.
5956 * tracefile-tfile.c (tfile_write_uploaded_tp):
5957 * tracepoint.c (parse_tracepoint_definition): Adjust to use
5958 gdb::unique_xmalloc_ptr.
5959 * tracepoint.h (struct uploaded_tp) <cond, actions, step_actions,
5960 at_string, cond_string, cmd_strings>: Replace char pointers
5961 with gdb::unique_xmalloc_ptr.
5965 * solib-target.c (library_list_start_library): Don't xstrdup name.
5969 * mdebugread.c (parse_partial_symbols): Use
5970 gdb::unique_xmalloc_ptr to manage heap-allocated 'stabsstring'.
5974 * linux-fork.c (scoped_switch_fork_info)
5975 <~scoped_switch_fork_info>: Fix incorrect variable name.
5979 * linux-fork.c (scoped_switch_fork_info)
5980 <scoped_switch_fork_info>: Make explicit.
5981 <~scoped_switch_fork_info>: Wrap core in TRY/CATCH.
5985 * objfiles.h (objfile::reset_psymtabs): Update.
5986 * objfiles.c (objfile::objfile): Update.
5987 * psymtab.h (psymtab_storage::obstack): Update.
5988 (psymtab_storage::m_obstack): Use gdb::optional.
5989 (class psymtab_storage): Update comment. Remove objfile
5991 * psymtab.c (psymtab_storage::psymtab_storage): Update.
5995 * psymtab.h (psymtab_storage::allocate_psymtab): New method.
5996 <free_psymtabs>: Now private.
5997 * psymtab.c (psymtab_storage::allocate_psymtab): Implement.
5998 (allocate_psymtab): Use new method.
6002 * xcoffread.c (xcoff_end_psymtab): Use allocate_dependencies.
6003 * psymtab.h (psymtab_storage::allocate_dependencies): New method.
6004 * mdebugread.c (parse_partial_symbols): Use
6005 allocate_dependencies.
6006 * dwarf2read.c (dwarf2_create_include_psymtab): Use
6007 allocate_dependencies.
6008 (process_psymtab_comp_unit_reader)
6009 (build_type_psymtab_dependencies): Likewise.
6010 * dbxread.c (dbx_end_psymtab): Use allocate_dependencies.
6014 * psymtab.c (add_psymbol_to_bcache): Pass psymtab obstack to
6015 PSYMBOL_SET_LANGUAGE.
6016 (allocate_psymtab): Allocate psymtab on the psymtab obstack.
6020 * psymtab.h (psymtab_storage::obstack): New method.
6021 <m_obstack>: Rename from obstack; now private.
6022 * psymtab.c (psymtab_storage): Update.
6023 * dwarf2read.c (create_addrmap_from_index)
6024 (create_addrmap_from_aranges, dwarf2_build_psymtabs_hard):
6029 * symfile.c (reread_symbols): Call objfile->reset_psymtabs.
6030 * objfiles.h (objfile::reset_psymtabs): New method.
6034 * symmisc.c (print_symbol_bcache_statistics): Update.
6035 (print_objfile_statistics): Update.
6036 * symfile.c (reread_symbols): Update.
6037 * psymtab.h (class psymtab_storage): New.
6038 * psymtab.c (psymtab_storage): New constructor.
6039 (~psymtab_storage): New destructor.
6040 (require_partial_symbols): Update.
6041 (ALL_OBJFILE_PSYMTABS_REQUIRED): Rewrite.
6042 (find_pc_sect_psymtab, find_pc_sect_psymbol)
6043 (match_partial_symbol, lookup_partial_symbol, dump_psymtab)
6044 (psym_dump, recursively_search_psymtabs, psym_has_symbols)
6045 (psym_find_compunit_symtab_by_address, sort_pst_symbols)
6046 (start_psymtab_common, end_psymtab_common)
6047 (add_psymbol_to_bcache, add_psymbol_to_list, init_psymbol_list)
6048 (allocate_psymtab): Update.
6049 (psymtab_storage::discard_psymtab): Rename from discard_psymtab.
6051 (dump_psymtab_addrmap, maintenance_print_psymbols)
6052 (maintenance_check_psymtabs): Update.
6053 (class objfile_psymtabs): Move to objfiles.h.
6054 * psympriv.h (discard_psymtab): Now inline.
6055 (psymtab_discarder::psymtab_discarder): Update.
6056 (psymtab_discarder::~psymtab_discarder): Update.
6057 (ALL_OBJFILE_PSYMTABS): Rewrite.
6058 * objfiles.h (struct objfile) <psymtabs, psymtabs_addrmap,
6059 free_psymtabs, psymbol_cache, global_psymbols, static_psymbols>:
6061 <partial_symtabs>: New field.
6062 (class objfile_psymtabs): Move from psymtab.h. Update.
6063 * objfiles.c (objfile::objfile): Initialize partial_symtabs, not
6065 (objfile::~objfile): Don't destroy psymbol_cache.
6066 * mdebugread.c (parse_partial_symbols): Update.
6067 * dwarf2read.c (create_addrmap_from_index)
6068 (create_addrmap_from_aranges, dw2_find_pc_sect_compunit_symtab)
6069 (process_psymtab_comp_unit_reader, dwarf2_build_psymtabs_hard)
6070 (add_partial_subprogram, dwarf2_ranges_read): Update.
6071 * dwarf-index-write.c (write_address_map)
6072 (write_one_signatured_type, recursively_write_psymbols)
6073 (class debug_names, class debug_names, write_psymtabs_to_index):
6078 * symtab.h (SYMBOL_SET_NAMES): Update.
6079 (symbol_set_names): Update.
6080 (MSYMBOL_SET_NAMES): Update.
6081 * symtab.c (symbol_set_names): Change argument to be an
6082 objfile_per_bfd_storage.
6083 * psymtab.c (add_psymbol_to_bcache): Update.
6084 * psympriv.h (PSYMBOL_SET_NAMES): Take per_bfd argument.
6088 * symtab.c (create_demangled_names_hash): Change argument to be an
6089 objfile_per_bfd_storage.
6090 (symbol_set_names): Update.
6094 * xcoffread.c (xcoff_initial_scan): Unconditionally call
6096 * psymtab.c (init_psymbol_list): Do nothing if already called.
6097 * psympriv.h (init_psymbol_list): Add comment.
6098 * dwarf2read.c (dwarf2_build_psymtabs): Unconditionally call
6100 * dbxread.c (dbx_symfile_read): Unconditionally call
6105 * xcoffread.c (scan_xcoff_symtab): Update.
6106 * psymtab.c (add_psymbol_to_list): Replace "list" parameter with
6108 * mdebugread.c (parse_partial_symbols)
6109 (handle_psymbol_enumerators): Update.
6110 * dwarf2read.c (add_partial_symbol, load_partial_dies): Update.
6111 * dbxread.c (read_dbx_symtab): Update.
6112 * psympriv.h (psymbol_placement): New enum.
6113 (add_psymbol_to_list): Update.
6117 * xcoffread.c (xcoff_start_psymtab): Remove global_psymbols and
6118 static_psymbols parameters.
6119 (scan_xcoff_symtab): Update.
6120 * psymtab.c (start_psymtab_common): Remove global_psymbols and
6121 static_psymbols parameters.
6122 * psympriv.h (start_psymtab_common): Update.
6123 * mdebugread.c (parse_partial_symbols): Update.
6124 * dwarf2read.c (create_partial_symtab): Update.
6125 * dbxread.c (read_dbx_symtab): Update.
6126 (start_psymtab): Remove global_psymbols and static_psymbols
6131 * xcoffread.c (xcoff_end_psymtab): Remove some initializations.
6132 * psymtab.c (allocate_psymtab): Add comment.
6133 * psympriv.h (allocate_psymtab): Add comment.
6134 * dwarf2read.c (dwarf2_create_include_psymtab): Remove some
6136 * dbxread.c (dbx_end_psymtab): Remove some initializations.
6140 * symfile.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
6142 * mipsread.c: Include mdebugread.h.
6143 * mdebugread.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
6145 * elfread.c: Include mdebugread.h.
6149 * dbxread.c (dbx_end_psymtab): Use objfile_psymtabs.
6150 * mdebugread.c (parse_partial_symbols): Use objfile_psymtabs.
6151 * psymtab.c (ALL_OBJFILE_PSYMTABS_REQUIRED): Remove.
6152 (psym_map_symtabs_matching_filename, find_pc_sect_psymtab)
6153 (psym_lookup_symbol, psym_find_last_source_symtab)
6154 (psym_forget_cached_source_info, psym_print_stats)
6155 (psym_expand_symtabs_for_function, psym_expand_all_symtabs)
6156 (psym_expand_symtabs_with_fullname, psym_map_symbol_filenames)
6157 (psym_map_matching_symbols, psym_expand_symtabs_matching)
6158 (psym_find_compunit_symtab_by_address)
6159 (maintenance_print_psymbols, maintenance_info_psymtabs)
6160 (maintenance_check_psymtabs): Use ranged for.
6161 * psymtab.h (class objfile_psymtabs): New.
6162 (require_partial_symbols): Return objfile_psymtabs.
6163 * psympriv.h (ALL_OBJFILE_PSYMTABS): Remove.
6167 * symfile.c (overlay_invalidate_all, find_pc_overlay)
6168 (find_pc_mapped_section, list_overlays_command)
6169 (map_overlay_command, unmap_overlay_command)
6170 (simple_overlay_update): Use all_objfiles.
6171 * spu-tdep.c (spu_overlay_update): Use all_objfiles.
6172 * printcmd.c (info_symbol_command): Use all_objfiles.
6173 * objfiles.h (ALL_OBJSECTIONS): Remove.
6174 * maint.c (maintenance_translate_address): Use all_objfiles.
6175 * gcore.c (gcore_create_callback): Use all_objfiles.
6176 (objfile_find_memory_regions): Likewise.
6180 * symtab.c (find_line_symtab, info_sources_command)
6181 (make_source_files_completion_list): Use objfile_compunits.
6182 * source.c (select_source_symtab): Use objfile_compunits.
6183 * objfiles.h (struct objfile): Update comment.
6184 (ALL_OBJFILES): Remove.
6185 (ALL_FILETABS): Remove.
6186 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Use
6191 * symmisc.c (print_objfile_statistics, dump_objfile)
6192 (maintenance_print_symbols): Use compunit_filetabs.
6193 * source.c (forget_cached_source_info_for_objfile): Use
6195 * objfiles.h (ALL_OBJFILE_FILETABS): Remove.
6196 (ALL_FILETABS): Use compunit_filetabs.
6197 * objfiles.c (objfile_relocate1): Use compunit_filetabs.
6198 * coffread.c (coff_symtab_read): Use compunit_filetabs.
6202 * symtab.h (ALL_COMPUNIT_FILETABS): Remove.
6203 (compunit_filetabs): New.
6204 * symtab.c (iterate_over_some_symtabs, find_pc_sect_line): Use
6206 (info_sources_command, make_source_files_completion_list): Remove
6208 * symmisc.c (print_objfile_statistics, dump_objfile)
6209 (maintenance_print_symbols): Remove declaration.
6210 (maintenance_info_symtabs): Use compunit_filetabs.
6211 (maintenance_info_line_tables): Likewise.
6212 * source.c (select_source_symtab): Change local variable name.
6213 (forget_cached_source_info_for_objfile): Remove declaration.
6214 * objfiles.h (ALL_OBJFILE_FILETABS): Use compunit_filetabs.
6215 * objfiles.c (objfile_relocate1): Remove declaration.
6216 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
6218 * maint.c (count_symtabs_and_blocks): Use compunit_filetabs.
6219 * coffread.c (coff_symtab_read): Remove declaration.
6220 * buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Use
6225 * symtab.c (lookup_objfile_from_block)
6226 (find_pc_sect_compunit_symtab, search_symbols)
6227 (default_collect_symbol_completion_matches_break_on): Use
6229 * objfiles.h (ALL_COMPUNITS): Remove.
6230 * maint.c (count_symtabs_and_blocks): Use objfile_compunits.
6231 * cp-support.c (add_symbol_overload_list_qualified): Use
6233 * ada-lang.c (ada_collect_symbol_completion_matches)
6234 (ada_add_global_exceptions): Use objfile_compunits.
6238 * source.c (select_source_symtab)
6239 (forget_cached_source_info_for_objfile): Remove declaration.
6240 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
6242 * maint.c (count_symtabs_and_blocks): Remove declaration.
6243 * cp-support.c (add_symbol_overload_list_qualified): Remove
6245 * coffread.c (coff_symtab_read): Remove declaration.
6246 * symtab.c (lookup_symbol_in_objfile_symtabs)
6247 (basic_lookup_transparent_type_1): Use objfile_compunits.
6248 (lookup_objfile_from_block, find_pc_sect_compunit_symtab)
6249 (info_sources_command, search_symbols)
6250 (default_collect_symbol_completion_matches_break_on)
6251 (make_source_files_completion_list): Remove declaration.
6252 * ada-lang.c (add_nonlocal_symbols): Use objfile_compunits.
6253 (ada_collect_symbol_completion_matches)
6254 (ada_add_global_exceptions): Remove declaration.
6255 * linespec.c (iterate_over_all_matching_symtabs): Use
6257 * objfiles.h (ALL_OBJFILE_COMPUNITS): Remove.
6258 (class objfile_compunits): New.
6259 (ALL_COMPUNITS): Use objfile_compunits.
6260 * symmisc.c (print_objfile_statistics, maintenance_info_symtabs)
6261 (maintenance_check_symtabs, maintenance_info_line_tables): Use
6263 * objfiles.c (objfile_relocate1): Use objfile_compunits.
6267 * symtab.c (search_symbols)
6268 (default_collect_symbol_completion_matches_break_on): Use
6270 * ada-lang.c (ada_lookup_simple_minsym)
6271 (ada_collect_symbol_completion_matches): Use objfile_msymbols.
6272 * minsyms.c (find_solib_trampoline_target): Use objfile_msymbols.
6273 * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Use
6275 * coffread.c (coff_symfile_read): Use objfile_msymbols.
6276 * symmisc.c (dump_msymbols): Use objfile_msymbols.
6277 * objc-lang.c (find_methods): Use objfile_msymbols.
6278 (info_selectors_command, info_classes_command): Likewise.
6279 * stabsread.c (scan_file_globals): Use objfile_msymbols.
6280 * objfiles.h (class objfile_msymbols): New.
6281 (ALL_OBJFILE_MSYMBOLS): Remove.
6282 (ALL_MSYMBOLS): Remove.
6286 * common/next-iterator.h (next_adapter): Add Iterator template
6288 * objfiles.h (ALL_OBJFILES_SAFE): Remove.
6289 (class all_objfiles_safe): New.
6290 * jit.c (jit_inferior_exit_hook): Use all_objfiles_safe.
6291 * objfiles.c (put_objfile_before): Update comment.
6292 (add_separate_debug_objfile): Likewise.
6293 (free_all_objfiles): Use all_objfiles_safe.
6294 (objfile_purge_solibs): Likewise.
6298 * symtab.c (iterate_over_symtabs, matching_obj_sections)
6299 (expand_symtab_containing_pc, lookup_static_symbol)
6300 (basic_lookup_transparent_type, find_pc_sect_compunit_symtab)
6301 (find_symbol_at_address, find_line_symtab, find_main_name): Use
6303 * probe.c (find_probe_by_pc, collect_probes): Use all_objfiles.
6304 * breakpoint.c (create_overlay_event_breakpoint)
6305 (create_longjmp_master_breakpoint)
6306 (create_std_terminate_master_breakpoint)
6307 (create_exception_master_breakpoint): Use all_objfiles.
6308 * linux-thread-db.c (try_thread_db_load_from_pdir)
6309 (has_libpthread): Use all_objfiles.
6310 * ada-lang.c (add_nonlocal_symbols): Use all_objfiles.
6311 * linespec.c (iterate_over_all_matching_symtabs)
6312 (search_minsyms_for_name): Use all_objfiles.
6313 * maint.c (maintenance_info_sections): Use all_objfiles.
6314 * main.c (captured_main_1): Use all_objfiles.
6315 * spu-tdep.c (spu_objfile_from_frame): Use all_objfiles.
6316 * guile/scm-objfile.c (gdbscm_objfiles): Use all_objfiles.
6317 * guile/scm-pretty-print.c
6318 (ppscm_find_pretty_printer_from_objfiles): Use all_objfiles.
6319 * solib-spu.c (append_ocl_sos): Use all_objfiles.
6320 * symmisc.c (maintenance_print_symbols): Use all_objfiles.
6321 (maintenance_print_msymbols): Use all_objfiles.
6322 * source.c (select_source_symtab): Use all_objfiles.
6323 * jit.c (jit_find_objf_with_entry_addr): Use all_objfiles.
6324 * symfile.c (remove_symbol_file_command)
6325 (expand_symtabs_matching, map_symbol_filenames): Use
6327 * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created): Use
6329 * dwarf2-frame.c (dwarf2_frame_find_fde): Use all_objfiles.
6330 * objc-lang.c (find_methods): Use all_objfiles.
6331 * objfiles.c (have_partial_symbols, have_full_symbols)
6332 (have_minimal_symbols, qsort_cmp)
6333 (default_iterate_over_objfiles_in_search_order): Use
6335 * hppa-tdep.c (find_unwind_entry): Use all_objfiles.
6336 * psymtab.c (maintenance_print_psymbols): Use all_objfiles.
6337 (maintenance_check_psymtabs): Use all_objfiles.
6338 (ALL_PSYMTABS): Remove.
6339 * compile/compile-object-run.c (do_module_cleanup): Use
6341 * blockframe.c (find_pc_partial_function): Use all_objfiles.
6342 * cp-support.c (add_symbol_overload_list_qualified): Use
6344 * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
6346 * dwarf-index-write.c (save_gdb_index_command): Use all_objfiles.
6347 * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers): Use
6349 * python/py-objfile.c (objfpy_lookup_objfile_by_name)
6350 (objfpy_lookup_objfile_by_build_id): Use all_objfiles.
6351 * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
6353 * solib.c (solib_read_symbols): Use all_objfiles
6357 * probe.c (parse_probes_in_pspace): Use all_objfiles.
6358 * guile/scm-progspace.c (gdbscm_progspace_objfiles): Use
6360 * objfiles.h (ALL_PSPACE_OBJFILES): Remove.
6361 * symmisc.c (print_symbol_bcache_statistics)
6362 (print_objfile_statistics, maintenance_print_objfiles)
6363 (maintenance_info_symtabs, maintenance_check_symtabs)
6364 (maintenance_expand_symtabs, maintenance_info_line_tables): Use
6366 * source.c (forget_cached_source_info): Use all_objfiles.
6367 * symfile-debug.c (set_debug_symfile): Use all_objfiles.
6368 * elfread.c (elf_gnu_ifunc_resolve_by_cache)
6369 (elf_gnu_ifunc_resolve_by_got): Use all_objfiles.
6370 * objfiles.c (update_section_map): Use all_objfiles.
6371 (shared_objfile_contains_address_p): Likewise.
6372 * psymtab.c (maintenance_info_psymtabs): Use all_objfiles.
6373 * python/py-progspace.c (pspy_get_objfiles): Use all_objfiles.
6377 * common/next-iterator.h: New file.
6378 * objfiles.h (class all_objfiles): New.
6379 (struct objfile_iterator): New.
6383 * NEWS: Move the description of the changed "frame", "select-frame",
6384 and "info frame" commands to the Changed commands section.
6388 * gdbtypes.c (check_stub_method_group): Remove handling of old
6390 * linespec.c (find_methods): Likewise.
6391 * stabsread.c (read_member_functions): Likewise.
6392 * valops.c (search_struct_method): Likewise.
6393 (value_struct_elt_for_reference): Likewise.
6394 * NEWS: Mention this change.
6398 * cli/cli-cmds.c (list_command): Pass a source_lines_range to
6400 * source.c (print_source_lines_base): Update line number check.
6401 (print_source_lines): New function.
6402 (source_lines_range::source_lines_range): New function.
6403 * source.h (class source_lines_range): New class.
6404 (print_source_lines): New declaration.
6408 * linespec.c (linespec_state_destructor): Free self->canonical_names.
6414 * ada-exp.y (DOLLAR_VARIABLE): Rename from SPECIAL_VARIABLE.
6415 * ada-lex.l (DOLLAR_VARIABLE): Likewise.
6416 * c-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
6417 * f-exp.y (DOLLAR_VARIABLE): Likewise.
6418 * m2-exp.y (DOLLAR_VARIABLE): Rename from INTERNAL_VAR.
6419 * p-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
6423 * source.c (select_source_symtab): Move header comment to
6424 declaration in source.h.
6425 (forget_cached_source_info_for_objfile): Likewise.
6426 (forget_cached_source_info): Likewise.
6427 (identify_source_line): Likewise.
6428 * source.h (identify_source_line): Move declaration from symtab.h
6429 and add comment from source.c
6430 (print_source_lines): Likewise.
6431 (forget_cached_source_info_for_objfile): Likewise.
6432 (forget_cached_source_info): Likewise.
6433 (select_source_symtab): Likewise.
6434 (enum print_source_lines_flag): Move definition from symtab.h.
6435 * symtab.h (identify_source_line): Move declaration to source.h.
6436 (print_source_lines): Likewise.
6437 (forget_cached_source_info_for_objfile): Likewise.
6438 (forget_cached_source_info): Likewise.
6439 (select_source_symtab): Likewise.
6440 (enum print_source_lines_flag): Move definition to source.h.
6441 * tui/tui-hooks.c: Add 'source.h' include.
6445 * source.c (print_source_lines_base): Handle requests to print
6446 reverse line number sequences, and guard against empty lines
6451 * source.c (print_source_lines_base): Fix skip of '\r' if next
6456 * c-exp.y (struct c_parse_state) <macro_original_text,
6457 expansion_obstack>: New member.
6458 (macro_original_text, expansion_obstack): Remove globals.
6459 (scan_macro_expansion, scanning_macro_expansion)
6460 (finished_macro_expansion): Update.
6461 (scan_macro_cleanup): Remove.
6462 (yylex, c_parse): Update.
6466 * c-exp.y (struct c_parse_state) <strings>: New member.
6467 (operator_stoken): Update.
6471 * parser-defs.h (type_ptr): Remove typedef. Don't declare VEC.
6472 (union type_stack_elt) <typelist_val>: Now a pointer to
6474 (type_stack_cleanup): Don't declare.
6475 (push_typelist): Update.
6476 * parse.c (pop_typelist): Return a std::vector.
6477 (push_typelist): Take a std::vector.
6478 (follow_types): Update. Do not free args.
6479 (type_stack_cleanup): Remove.
6480 * c-exp.y (struct c_parse_state): New.
6481 (cpstate): New global.
6482 (type_aggregate_p, exp, ptr_operator, parameter_typelist)
6483 (nonempty_typelist): Update.
6484 (func_mod): Create a new vector.
6485 (c_parse): Create a c_parse_state.
6486 (check_parameter_typelist): Do not delete params.
6487 (function_method): Update. Do not delete type_list.
6492 * python/py-finishbreakpoint.c (bpfinishpy_init): Use
6494 * infcmd.c (finish_command_fsm_should_stop): Use check_typedef.
6495 (print_return_value): Likewise.
6499 * contrib/cleanup_check.py: Remove.
6500 * contrib/gcc-with-excheck: Remove.
6501 * contrib/exsummary.py: Remove.
6502 * contrib/excheck.py: Remove.
6506 * thread.c (delete_thread_1): Add gdb_assert that THR is not
6507 NULL. Initialize tpprev to NULL instead of assigning it
6508 to NULL on the next statement.
6509 * windows-nat.c (windows_delete_thread): Remove check for
6510 main_thread_id before printing thread exit notifications.
6511 (get_windows_debug_event) <EXIT_THREAD_DEBUG_EVENT>:
6512 Remove thread ID check against main_thread_id.
6513 <CREATE_PROCESS_DEBUG_EVENT>: Remove call to
6514 windows_delete_thread.
6515 <EXIT_PROCESS_DEBUG_EVENT>: Add call to windows_delete_thread.
6519 * compile/compile.c (_initialize_compile): Use upper case for
6520 metasyntactic variables.
6521 * symmisc.c (_initialize_symmisc): Use upper case for
6522 metasyntactic variables.
6523 * psymtab.c (_initialize_psymtab): Use upper case for
6524 metasyntactic variables.
6525 * demangle.c (demangle_command): Use upper case for metasyntactic
6527 (_initialize_demangler): Likewise.
6528 * ax-gdb.c (_initialize_ax_gdb): Use upper case for metasyntactic
6533 * tui/tui-source.c (tui_set_source_content): Use xstrdup.
6537 * python/py-symtab.c (salpy_str): Update.
6538 (struct salpy_sal_object) <symtab>: Now a PyObject.
6539 (salpy_dealloc): Update.
6540 (del_objfile_sal): Use gdbpy_ref.
6544 * python/py-type.c (convert_field): Use new_reference. Return
6546 (make_fielditem): Return gdbpy_ref.
6547 (typy_fields): Update.
6548 (typy_getitem): Update.
6549 (field_name): Return gdbpy_ref. Use new_reference.
6550 (typy_iterator_iternext): Update.
6554 * python/py-record.c (gdbpy_stop_recording): Use Py_RETURN_NONE.
6558 * python/py-value.c (valpy_dealloc): Use Py_XDECREF.
6559 * python/py-type.c (typy_fields_items): Use gdbpy_ref.
6560 * python/py-progspace.c (pspy_set_printers): Use gdbpy_ref.
6561 (pspy_set_frame_filters, pspy_set_frame_unwinders)
6562 (pspy_set_type_printers): Likewise.
6563 * python/py-function.c (fnpy_init): Use gdbpy_ref.
6564 * python/py-cmd.c (cmdpy_init): Use gdbpy_ref.
6565 * python/py-objfile.c (objfpy_set_printers): Use gdbpy_ref.
6566 (objfpy_set_frame_filters, objfpy_set_frame_unwinders)
6567 (objfpy_set_type_printers): Likewise.
6571 * python/python.c (gdbpy_enter, ~gdbpy_enter): Update.
6572 (gdbpy_print_stack): Use gdbpy_err_fetch.
6573 * python/python-internal.h (class gdbpy_err_fetch): New class.
6574 (class gdbpy_enter) <m_error_type, m_error_value,
6575 m_error_traceback>: Remove.
6576 <m_error>: New member.
6577 (gdbpy_exception_to_string): Don't declare.
6578 * python/py-varobj.c (py_varobj_iter_next): Use gdbpy_err_fetch.
6579 * python/py-value.c (convert_value_from_python): Use
6581 * python/py-utils.c (gdbpy_err_fetch::to_string): Rename from
6582 gdbpy_exception_to_string.
6583 (gdbpy_handle_exception): Use gdbpy_err_fetch.
6584 * python/py-prettyprint.c (print_stack_unless_memory_error): Use
6589 * linux-nat.c (delete_lwp_cleanup): Delete.
6590 (struct lwp_deleter): New struct.
6591 (lwp_info_up): New typedef.
6592 (linux_nat_target::follow_fork): Delete cleanup, and make use of
6597 * linux-fork.c (class scoped_switch_fork_info): New class.
6598 (inferior_call_waitpid): Update to use scoped_switch_fork_info.
6602 * valops.c (find_overload_match): Remove use of null_cleanup, and
6603 calls to do_cleanups.
6607 * compile/compile-cplus-types.c
6608 (compile_cplus_instance::decl_name): Handle changes to
6610 * cp-support.c (cp_func_name): Update header comment, update
6612 * cp-support.h (cp_func_name): Update return type in declaration.
6613 * valops.c (find_overload_match): Move temp_func local to top
6614 level of function and change its type. Use temp_func to hold and
6615 delete temporary string obtained from cp_func_name.
6619 * remote.c (remote_target::remote_check_symbols): Convert `msg` to
6620 gdb::char_vector, remove cleanup, and update uses of `msg`.
6624 * riscv-tdep.c (riscv_freg_feature): Drop s0 name from f8.
6628 * xml-tdesc.c (xml_cache): Hold a target_desc_up.
6629 (tdesc_parse_xml): Remove cleanups.
6630 * target-descriptions.h (make_cleanup_free_target_description):
6632 (target_desc_deleter): New struct.
6633 (target_desc_up): New typedef.
6634 * target-descriptions.c (target_desc_deleter::operator()): Rename
6635 from free_target_description.
6636 (make_cleanup_free_target_description): Remove.
6640 * linespec.c (struct linespec_parser): Rename from ls_parser. Add
6641 constructor, destructor.
6642 (linespec_parser): Remove typedef.
6643 (~linespec_parser): Rename from linespec_parser_delete.
6644 (linespec_lex_to_end, linespec_complete_label)
6645 (linespec_complete): Update.
6646 (decode_line_full): Remove cleanups.
6647 (decode_line_1): Update.
6651 * python/python-internal.h (inferior_to_inferior_object): Change
6653 * python/py-exitedevent.c (create_exited_event_object): Update.
6654 * python/py-inferior.c (inferior_to_inferior_object): Return
6656 (python_new_inferior, python_inferior_deleted)
6657 (thread_to_thread_object, delete_thread_object)
6658 (build_inferior_list, gdbpy_selected_inferior): Update.
6659 * python/py-infthread.c (create_thread_object): Update. Also fail
6660 if inferior_to_inferior_object fails.
6664 * inferior.h (class inferior) <displaced_step_state>: New field.
6665 * infrun.h (struct displaced_step_state): Move here from
6666 infrun.c. Initialize fields, add constructor.
6667 <inf>: Remove field.
6668 <reset>: New method.
6669 * infrun.c (struct displaced_step_inferior_state): Move to
6671 (displaced_step_inferior_states): Remove.
6672 (get_displaced_stepping_state): Adust.
6673 (displaced_step_in_progress_any_inferior): Adjust.
6674 (displaced_step_in_progress_thread): Adjust.
6675 (displaced_step_in_progress): Adjust.
6676 (add_displaced_stepping_state): Remove.
6677 (get_displaced_step_closure_by_addr): Adjust.
6678 (remove_displaced_stepping_state): Remove.
6679 (infrun_inferior_exit): Call displaced_step_state.reset.
6680 (use_displaced_stepping): Don't check for NULL.
6681 (displaced_step_prepare_throw): Call
6682 get_displaced_stepping_state.
6683 (displaced_step_fixup): Don't check for NULL.
6684 (prepare_for_detach): Don't check for NULL.
6688 * infcall.c (call_function_by_hand_dummy): cleanup/destroy sm
6689 in case of call that did not complete.
6693 * symfile.c (find_separate_debug_file): Fix search of debug files for
6698 * python/py-inferior.c (gdbpy_initialize_inferior): Fix
6700 * python/py-frame.c (frapy_older): Remove cast.
6701 (frapy_newer): Likewise.
6702 * python/py-breakpoint.c (local_setattro): Remove cast.
6703 * python/py-arch.c (archpy_name): Remove local variable.
6704 * python/py-type.c (gdbpy_lookup_type): Remove cast.
6708 * unittests/basic_string_view/element_access/char/empty.cc:
6709 Fix year range in copyright header.
6713 * arch/riscv.h (struct riscv_gdbarch_features) <hw_float_abi>:
6715 <operator==>: Update with for removed field.
6717 * riscv-tdep.h (struct gdbarch_tdep) <features>: Renamed to...
6718 <isa_features>: ...this.
6719 <abi_features>: New field.
6720 (riscv_isa_flen): Update comment.
6721 (riscv_abi_xlen): New declaration.
6722 (riscv_abi_flen): New declaration.
6723 * riscv-tdep.c (riscv_isa_xlen): Update to get answer from
6725 (riscv_abi_xlen): New function.
6726 (riscv_isa_flen): Update to get answer from isa_features.
6727 (riscv_abi_flen): New function.
6728 (riscv_has_fp_abi): Update to get answer from abi_features.
6729 (riscv_call_info::riscv_call_info): Use abi xlen and flen, not isa
6731 (riscv_call_info) <xlen, flen>: Update comment.
6732 (riscv_call_arg_struct): Remove invalid assertions
6733 (riscv_features_from_gdbarch_info): Update now hw_float_abi field
6735 (riscv_gdbarch_init): Gather isa features and abi features
6736 separately, ensure both match on the gdbarch when reusing an old
6737 gdbarch. Relax an error check to allow 32-bit abi float to run on
6738 a target with 64-bit float hardware.
6742 * source.c (search_command_helper): Stop reverse search
6743 when line 1 has been searched.
6747 * record-full.c (record_full_base_target::close): Rewrite
6748 record_full_core_buf_list free logic.
6752 * break-catch-syscall.c (print_one_catch_syscall): xfree
6757 * top.c (print_gdb_version): Update Copyright year in version
6762 Update copyright year range in all GDB files.
6766 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2018.
6768 For older changes see ChangeLog-2018.
6774 version-control: never