3 * stack.c (print_frame_arg, read_frame_local, read_frame_arg)
4 (print_frame_args): Update.
5 * python/py-framefilter.c (py_print_single_arg, enumerate_args):
7 * mi/mi-cmd-stack.c (list_arg_or_local): Update.
8 * frame.h (struct frame_arg): Add initializers.
9 <error>: Now a unique_xmalloc_ptr.
13 * NEWS: Expand the Pointer Authentication entry.
14 * aarch64-tdep.c (aarch64_frame_unmask_address): Rename from this.
15 (aarch64_frame_unmask_lr): ... to this.
16 (aarch64_prologue_prev_register, aarch64_dwarf2_prev_register):
17 Call aarch64_frame_unmask_lr.
18 * frame.c (struct frame_info): Add "masked" variable.
19 (frame_set_previous_pc_masked) (frame_get_pc_masked): New functions.
20 (fprint_frame): Check for masked pc.
21 * frame.h (frame_set_previous_pc_masked) (frame_get_pc_masked): New
23 * python/py-framefilter.c (py_print_frame): Check for masked pc.
24 * stack.c (print_frame): Check for masked pc.
28 * stabsread.c (patch_block_stabs, read_one_struct_field)
29 (read_enum_type): Use obstack_strndup.
30 * rust-exp.y (rust_parser::copy_name): Use obstack_strndup.
31 * gdb_obstack.h (obstack_strndup): Use obstack_strndup.
32 * dwarf2read.c (guess_full_die_structure_name)
33 (anonymous_struct_prefix): Use obstack_strndup.
34 * dbxread.c (cp_set_block_scope): Use obstack_strndup.
35 * c-exp.y (yylex): Use obstack_strndup.
36 * ada-exp.y (write_object_renaming, write_ambiguous_var)
37 (write_var_or_type): Use obstack_strndup.
41 * symfile.c (reread_symbols): Use obstack_strdup.
42 * stabsread.c (read_type): Use obstack_strdup.
43 * gdb_obstack.h (obstack_strdup): New overload.
44 * dwarf2read.c (dwarf2_compute_name, create_dwo_unit_in_dwp_v1)
45 (create_dwo_unit_in_dwp_v2, build_error_marker_type)
46 (dwarf2_canonicalize_name): Use obstack_strdup.
47 * dbxread.c (read_dbx_symtab): Use obstack_strdup.
48 * cp-support.c (inspect_type, replace_typedefs_qualified_name):
53 * gdb_obstack.h (obstack_strdup): Define.
54 * gdb_obstack.c (obstack_strdup): Don't define.
58 * xcoffread.c (SYMNAME_ALLOC, process_xcoff_symbol): Use
60 * typeprint.c (typedef_hash_table::find_global_typedef): Use
62 * symfile.c (allocate_compunit_symtab): Use obstack_strdup.
63 * stabsread.c (common_block_start): Use obstack_strdup.
64 * objfiles.c (set_objfile_main_name, objfile): Use
66 * namespace.c (add_using_directive): Use obstack_strdup.
67 * mdebugread.c (parse_symbol, parse_type): Use obstack_strdup.
68 * jit.c (finalize_symtab): Use obstack_strdup.
69 * dwarf2read.c (fixup_go_packaging, dwarf2_physname)
70 (guess_partial_die_structure_name, partial_die_info::fixup)
71 (dwarf2_name): Use obstack_strdup.
72 * coffread.c (coff_read_struct_type, coff_read_enum_type): Use
74 * c-exp.y (scan_macro_expansion): Use obstack_strdup.
75 * buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Use
77 * ada-lang.c (ada_decode_symbol): Use obstack_strdup.
81 * unittests/help-doc-selftests.c: New file.
82 * Makefile.in: Add the new file.
86 * cli/cli-decode.h (print_doc_line): Add for_value_prefix argument.
87 * cli/cli-decode.c (print_doc_line): Likewise. It now prints
88 the full first line, except when FOR_VALUE_PREFIX. In this case,
89 the trailing '.' is not output, and the first character is uppercased.
90 (print_help_for_command): Update call to print_doc_line.
91 (print_doc_of_command): Likewise.
92 * cli/cli-setshow.c (deprecated_show_value_hack): Likewise.
93 * cli/cli-option.c (append_indented_doc): Do not append newline.
94 (build_help_option): Append newline after first appended_indented_doc
95 only if a second call is done.
96 (build_help): Append 2 new lines before each option, except the first
98 * compile/compile.c (_initialize_compile): Add new lines after
99 %OPTIONS%, when not at the end of the help.
100 Change help doc or code
101 producing the help doc to respect the invariants.
102 * maint-test-options.c (_initialize_maint_test_options): Likewise.
103 Also removed the new line after 'Options:', as all other commands
104 do not put an empty line between 'Options:' and the first option.
105 * printcmd.c (_initialize_printcmd): Likewise.
106 * stack.c (_initialize_stack): Likewise.
107 * interps.c (interpreter_exec_cmd): Fix "Usage:" line that was
108 incorrectly telling COMMAND is optional.
109 * ada-lang.c (_initialize_ada_language): Change help doc or code
110 producing the help doc to respect the invariants.
111 * ada-tasks.c (_initialize_ada_tasks): Likewise.
112 * breakpoint.c (_initialize_breakpoint): Likewise.
113 * cli/cli-cmds.c (_initialize_cli_cmds): Likewise.
114 * cli/cli-logging.c (_initialize_cli_logging): Likewise.
115 * cli/cli-setshow.c (_initialize_cli_setshow): Likewise.
116 * cli/cli-style.c (cli_style_option::add_setshow_commands,
117 _initialize_cli_style): Likewise.
118 * corelow.c (core_target_info): Likewise.
119 * dwarf-index-cache.c (_initialize_index_cache): Likewise.
120 * dwarf2read.c (_initialize_dwarf2_read): Likewise.
121 * filesystem.c (_initialize_filesystem): Likewise.
122 * frame.c (_initialize_frame): Likewise.
123 * gnu-nat.c (add_task_commands): Likewise.
124 * infcall.c (_initialize_infcall): Likewise.
125 * infcmd.c (_initialize_infcmd): Likewise.
126 * interps.c (_initialize_interpreter): Likewise.
127 * language.c (_initialize_language): Likewise.
128 * linux-fork.c (_initialize_linux_fork): Likewise.
129 * maint-test-settings.c (_initialize_maint_test_settings): Likewise.
130 * maint.c (_initialize_maint_cmds): Likewise.
131 * memattr.c (_initialize_mem): Likewise.
132 * printcmd.c (_initialize_printcmd): Likewise.
133 * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq,
135 * ravenscar-thread.c (_initialize_ravenscar): Likewise.
136 * record-btrace.c (_initialize_record_btrace): Likewise.
137 * record-full.c (_initialize_record_full): Likewise.
138 * record.c (_initialize_record): Likewise.
139 * regcache-dump.c (_initialize_regcache_dump): Likewise.
140 * regcache.c (_initialize_regcache): Likewise.
141 * remote.c (add_packet_config_cmd, init_remote_threadtests,
142 _initialize_remote): Likewise.
143 * ser-tcp.c (_initialize_ser_tcp): Likewise.
144 * serial.c (_initialize_serial): Likewise.
145 * skip.c (_initialize_step_skip): Likewise.
146 * source.c (_initialize_source): Likewise.
147 * stack.c (_initialize_stack): Likewise.
148 * symfile.c (_initialize_symfile): Likewise.
149 * symtab.c (_initialize_symtab): Likewise.
150 * target-descriptions.c (_initialize_target_descriptions): Likewise.
151 * top.c (init_main): Likewise.
152 * tracefile-tfile.c (tfile_target_info): Likewise.
153 * tracepoint.c (_initialize_tracepoint): Likewise.
154 * tui/tui-win.c (_initialize_tui_win): Likewise.
155 * utils.c (add_internal_problem_command): Likewise.
156 * valprint.c (value_print_option_defs): Likewise.
161 * configure.ac: Drop enable-libmcheck support.
162 * configure, config.in: Rebuild.
163 * libmcheck.m4: Remove.
164 * acinclude.m4: Don't include it.
165 * Makefile.in: Don't distribute it.
166 * top.c (print_gdb_configuration): Don't mention it.
170 * utils.c (set_output_style): Sometimes pass stream to
172 * ui-out.h (class ui_out) <can_emit_style_escape>: Declare.
173 * record-btrace.c (btrace_insn_history): Update.
174 * mi/mi-out.h (class mi_ui_out) <can_emit_style_escape>: New
176 * disasm.h (gdb_pretty_print_disassembler): Add uiout parameter.
178 <m_uiout>: New field.
180 * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
181 Remove "uiout" parameter.
182 (dump_insns): Update.
183 * cli-out.h (class cli_ui_out) <can_emit_style_escape>: Declare.
184 * cli-out.c (cli_ui_out::can_emit_style_escape): New method.
188 * symtab.c (symbol_cache_lookup): Change int to enum block_enum.
189 (error_in_psymtab_expansion): Likewise.
190 (lookup_symbol_via_quick_fns): Likewise.
191 (basic_lookup_transparent_type_quick): Likewise.
192 (basic_lookup_transparent_type_1): Likewise.
196 * source.c (last_source_error): Now bool.
197 (print_source_lines_base): Make "noprint" bool. Only open
198 source file when last_source_visited changes.
202 * annotate.c (annotate_source_line): Use g_source_cache.
203 * source-cache.c (source_cache::get_plain_source_lines): Change
204 parameters. Populate m_offset_cache.
205 (source_cache::ensure): New method.
206 (source_cache::get_line_charpos): New method.
207 (extract_lines): Move lower. Change parameters.
208 (source_cache::get_source_lines): Move lower.
209 * source-cache.h (class source_cache): Update comment.
210 <get_line_charpos>: New method.
211 <get_source_lines>: Update comment.
212 <clear>: Clear m_offset_cache.
213 <get_plain_source_lines>: Change parameters.
215 <m_offset_cache>: New member.
216 * source.c (forget_cached_source_info_for_objfile): Update.
217 (info_source_command): Use g_source_cache.
218 (find_source_lines, open_source_file_with_line_charpos): Remove.
219 (print_source_lines_base, search_command_helper): Use g_source_cache.
220 * source.h (open_source_file_with_line_charpos): Don't declare.
221 * symtab.h (struct symtab) <nlines, line_charpos>: Remove.
222 * tui/tui-source.c (tui_source_window::do_scroll_vertical):
227 * source-cache.c (source_cache::get_plain_source_lines):
228 Remove "first_line" and "last_line" parameters.
229 (source_cache::get_source_lines): Cache plain text.
230 * source-cache.h (class source_cache)
231 <get_plain_source_lines>: Update.
235 * source-cache.c (extract_lines): No longer a method.
236 Changed type of parameter. Include final newline.
237 (selftests::extract_lines_test): New function.
238 (_initialize_source_cache): Likewise.
239 * source-cache.h (class source_cache)
240 <extract_lines>: Don't declare.
244 * breakpoint.c (init_breakpoint_sal): Update.
245 (breakpoint): Update.
246 * breakpoint.h (struct breakpoint) <filter>: Now a
251 * NEWS: Mention dictionary access on blocks.
252 * python/py-block.c (blpy_getitem): New function.
253 (block_object_as_mapping): New struct.
254 (block_object_type): Use new struct for tp_as_mapping field.
258 * objfiles.h (objfile): Add a comment describing partial symbols.
262 * compile/compile.c (_initialize_compile): Use _(), not N_().
263 * thread.c (_initialize_thread): Use _(), not N_().
264 * stack.c (_initialize_stack): Use _(), not N_().
265 * printcmd.c (_initialize_printcmd): Use _(), not N_().
269 * dwarf2read.c (struct dw2_symtab_iterator):
270 <want_specific_block>: Remove.
271 <block_index>: Change type to gdb::optional.
272 (dw2_symtab_iter_init): Remove WANT_SPECIFIC_BLOCK parameter,
273 change type of BLOCK_INDEX parameter to gdb::optional.
274 (dw2_symtab_iter_next): Re-write in function of gdb::optional.
275 (dw2_lookup_symbol): Don't pass argument for
277 (dw2_expand_symtabs_for_function): Don't pass argument for
278 WANT_SPECIFIC_BLOCK, pass empty optional for BLOCK_INDEX.
279 (class dw2_debug_names_iterator)
280 <dw2_debug_names_iterator>: Remove WANT_SPECIFIC_BLOCK
281 parameter, change BLOCK_INDEX type to gdb::optional.
282 <m_want_specific_block>: Remove.
283 <m_block_index>: Change type to gdb::optional.
284 (dw2_debug_names_iterator::next): Change type of IS_STATIC to
285 gdb::optional. Re-write in function of gdb::optional.
286 (dw2_debug_names_lookup_symbol): Don't pass argument for
288 (dw2_debug_names_expand_symtabs_for_function): Don't pass
289 argument for WANT_SPECIFIC_BLOCK, pass empty optional for
294 * NEWS: Mention changes to "info sources" command.
298 * symtab.c (filename_partial_match_opts): New struct type.
299 (struct output_source_filename_data): New members
300 regexp, c_regexp, partial_match.
301 (output_source_filename): Use new members to decide to print file.
302 (info_sources_option_defs): New variable.
303 (make_info_sources_options_def_group, print_info_sources_header,
304 info_sources_command_completer):
306 (info_sources_command): Read new optional arguments.
307 (_initialize_symtab): Update info sources help.
311 * ada-lang.c (exception_support_info_v0): Renamed from...
312 (default_exception_support_info): ... this. Create new
314 (ada_has_this_exception_support): Look up catch_handlers_sym.
315 (ada_exception_support_info_sniffer): Try v0 after default.
319 * ia64-libunwind-tdep.h (struct libunwind_descr): Include
324 * s12z-tdep.c: Fix include path for s12z-opc.h.
328 * NEWS: Require GNU make 3.82.
332 * tui/tui-wingeneral.h (tui_copy_win, tui_box_win): Don't
337 * block.c (contained_in): Remove BLOCK_FUNCTION check.
341 * printcmd.c (print_address_symbolic): Print negative offsets.
342 (build_address_symbolic): Force signed arithmetic when computing
347 PR/24474: Add a function to lookup static variables.
348 * NEWS: Mention this new function.
349 * python/py-symbol.c (gdbpy_lookup_static_symbol): New function.
350 * python/python-internal.h (gdbpy_lookup_static_symbol): New function.
351 * python/python.c (python_GdbMethods): Add new function.
355 * NEWS: Mention new functions Objfile.lookup_{global,static}_symbol.
356 * python/py-objfile.c (objfpy_lookup_global_symbol): New function.
357 (objfpy_lookup_static_symbol): New function.
358 (objfile_object_methods): Add new functions.
362 * NEWS: Mention 'set|show print frame-info'. Mention new
363 'presence' value for 'frame-arguments'. Mention new '-frame-info'
364 backtrace argument. Mention that python frame filtering code
365 is now consistent with what 'backtrace' command prints.
369 * frame.h (enum print_what): New value 'SHORT_LOCATION', update
371 (print_frame_info_auto, print_frame_info_source_line,
372 print_frame_info_location, print_frame_info_source_and_location,
373 print_frame_info_location_and_address, print_frame_info_short_location):
375 (struct frame_print_options): New member print_frame_info.
376 * extension.h (enum ext_lang_frame_args): New value CLI_PRESENCE.
377 * stack.h (get_user_print_what_frame_info): New declaration.
378 (frame_show_address): New declaration.
379 * stack.c (print_frame_arguments_choices): New value 'presence'.
380 (print_frame_info_auto, print_frame_info_source_line,
381 print_frame_info_location, print_frame_info_source_and_location,
382 print_frame_info_location_and_address, print_frame_info_short_location,
383 print_frame_info_choices, print_frame_info_print_what): New definitions.
384 (print_frame_args): Only print dots for args if print frame-arguments
386 (frame_print_option_defs): New element for "frame-info".
387 (get_user_print_what_frame_info): New function.
388 (frame_show_address): Make non static. Move comment to stack.h.
389 (print_frame_info_to_print_what): New function.
390 (print_frame_info): Update comment. Use fp_opts.print_frame_info
391 to decide what to print.
392 (backtrace_command_1): Handle the new print_frame_arguments_presence
394 (_initialize_stack): Call add_setshow_enum_cmd for frame-info.
395 * python/py-framefilter.c (py_print_args): Handle CLI_PRESENCE.
396 (py_print_frame): In non-mi mode, use LOCATION as default for
397 print_what, similarly to frame information printed directly by
398 backtrace command. Handle frame-info user option in non MI mode.
402 * linux-thread-db.c (thread_db_target::thread_handle_to_thread_info):
403 Add case for debugging 32-bit target on 64-bit host. Revise
408 * infrun.c (fill_in_stop_func): Use find_pc_partial_function
409 instead of find_function_entry_range_from_pc.
413 * stack.c (find_frame_funname): Remove code which preferred
414 minsym over symtab sym in "certain pathological cases".
416 * valprint.h (build_address_symbolic): Add "prefer_sym_over_minsym"
417 parameter. Change type of "do_demangle" to bool.
418 * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
419 Pass suitable "prefer_sym_over_minsym" flag to
420 build_address_symbolic(). Don't output "+" for negative offsets.
421 * printcmd.c (print_address_symbolic): Update invocation of
422 build_address_symbolic to include a "prefer_sym_over_minsym"
424 (build_address_symbolic): Add "prefer_sym_over_minsym" parameter.
425 Restrict cases in which use of minimal symbol is preferred to that
426 of a found symbol. Update comments.
428 * dwarf2-frame.c (dwarf2_frame_cache): Don't decode FDE instructions
429 for entry pc when entry pc is out of range for that FDE.
434 * gdb/obsd-nat.c (obsd_nat_target::pid_to_str): Fix typo in return
439 * python/py-objfile.c (add_separate_debug_file): Fix comment about
440 this function's Python signature.
445 * compile/compile-object-load.c (compile_object_load): Pass GLOBAL_SCOPE.
446 * solib-spu.c (spu_lookup_lib_symbol): Pass GLOBAL_SCOPE.
447 * solib-svr4.c (elf_lookup_lib_symbol): Pass GLOBAL_SCOPE.
448 * symtab.c (lookup_global_symbol_from_objfile): Add a scope parameter.
449 * symtab.h (lookup_global_symbol_from_objfile): Likewise.
454 * h8300-tdep.c (h8300_register_name_common): New.
455 h8300_register_name): Use h8300_register_name_common.
456 (h8300s_register_name): Likewise.
457 (h8300sx_register_name): Likewise.
458 (h8300h_register_nam): New.
459 (h8300_gdbarch_init): Use h8300h_register_name in h8300h machine.
464 * arm-tdep.c (arm_skip_cmse_entry): New function.
465 (arm_is_sgstubs_section): New function.
466 (arm_skip_stub): Add call to arm_skip_cmse_entry function.
470 * tui/tui-win.c (tui_win_info::make_invisible_and_set_new_height):
475 * c-typeprint.c (c_print_typedef): Pass -1 instead of 0 to
480 * symtab.c (search_symbols): Adjust msymbol matching type arrays
481 so that GDB doesn't match any msymbols when searching in the
483 (print_symbol_info): Print using typedef_print or type_print based
484 on the type of the symbol. Add updated FIXME comment moved from...
485 (_initialize_symtab): ... move and update FIXME comment to above.
489 * NEWS: Mention adding -q option to "info types".
490 * symtab.c (struct info_types_options): New struct.
491 (info_types_options_defs): New variable.
492 (make_info_types_options_def_group): New function.
493 (info_types_command): Use gdb::option framework to parse options.
494 (info_types_command_completer): New function.
495 (_initialize_symtab): Extend the help text on "info types" and
496 register command completer.
500 * symtab.c (lookup_symbol_in_objfile_symtabs): Change int to block_enum.
501 (lookup_symbol_in_objfile): Change int to block_enum and add a
502 gdb_assert to make sure block_index is GLOBAL_BLOCK or STATIC_BLOCK.
506 * MAINTAINERS (Write After Approval): Add self.
510 * riscv-tdep.c (riscv_push_dummy_code): Write a 4-byte nop
511 instruction to the dummy code region.
515 * contrib/ari/gdb_ari.sh: Mention C++11, not ISO C 90.
516 (ARGSUSED, PARAMS, __func__): Remove rules.
520 * arm-tdep.c (_initialize_arm_tdep): Remove xml tests.
521 * features/arm/arm-with-iwmmxt.c: Remove.
522 * features/arm/arm-with-iwmmxt.xml: Remove.
523 * features/arm/arm-with-m-fpa-layout.c: Remove.
524 * features/arm/arm-with-m-fpa-layout.xml: Remove.
525 * features/arm/arm-with-m-vfp-d16.c: Remove.
526 * features/arm/arm-with-m-vfp-d16.xml: Remove.
527 * features/arm/arm-with-m.c: Remove.
528 * features/arm/arm-with-m.xml: Remove.
529 * features/arm/arm-with-neon.c: Remove.
530 * features/arm/arm-with-neon.xml: Remove.
531 * features/arm/arm-with-vfpv2.c: Remove.
532 * features/arm/arm-with-vfpv2.xml: Remove.
533 * features/arm/arm-with-vfpv3.c: Remove.
534 * features/arm/arm-with-vfpv3.xml: Remove.
538 * arm-tdep.c (_initialize_arm_tdep): Add xml regression tests.
542 * arch/aarch32.c (aarch32_create_target_description): Create
543 target descriptions using features.
544 * arch/arm.c (arm_create_target_description)
545 (arm_create_mprofile_target_description): Likewise.
546 * arm-tdep.c (_initialize_arm_tdep): Remove tdesc init calls.
550 * Makefile.in: Add new files.
551 * aarch32-tdep.c: New file.
552 * aarch32-tdep.h: New file.
553 * aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
554 Call aarch32_read_description.
555 * arch/aarch32.c: New file.
556 * arch/aarch32.h: New file.
557 * arch/arm.c (arm_create_target_description)
558 (arm_create_mprofile_target_description): New function.
559 * arch/arm.h (arm_fp_type, arm_m_profile_type): New enum.
560 (arm_create_target_description)
561 (arm_create_mprofile_target_description): New declaration.
562 * arm-fbsd-tdep.c (arm_fbsd_read_description_auxv): Call
563 read_description functions.
564 * arm-linux-nat.c (arm_linux_nat_target::read_description):
566 * arm-linux-tdep.c (arm_linux_core_read_description): Likewise.
567 * arm-tdep.c (tdesc_arm_list): New variable.
568 (arm_register_g_packet_guesses): Call create description functions.
569 (arm_read_description) (arm_read_mprofile_description): New
571 * arm-tdep.h (arm_read_description)
572 (arm_read_mprofile_description): Add declaration.
573 * configure.tgt: Add new files.
577 * top.c (new_ui_command): Open specified terminal just once.
581 * symtab.c (main_name): Constify return type.
582 * symfile.c (set_initial_language): Update.
583 * symtab.h (main_name): Constify return type.
587 * tui/tui-winsource.c (tui_update_source_window)
588 (tui_update_source_window_as_is)
589 (tui_update_source_windows_with_line): Remove return.
590 * tui/tui-disasm.c (tui_show_disassem)
591 (tui_show_disassem_and_update_source): Remove return.
592 * tui/tui.c (tui_reset): Remove return.
593 * tui/tui-wingeneral.c
594 (tui_check_and_display_highlight_if_needed): Remove return.
598 * tui/tui-win.c (parse_scrolling_args): Throw separate errors.
602 * tui/tui-winsource.h (struct tui_exec_info_window)
603 (struct tui_source_window_base): Move from tui-data.h.
604 * tui/tui-winsource.c: Move many method definitions from
605 elsewhere. Remove "structuring" comments.
606 * tui/tui-wingeneral.c (tui_source_window_base::make_visible)
607 (tui_source_window_base::refresh_window): Move to
609 * tui/tui-win.c (tui_source_window_base::refresh_all)
610 (tui_source_window_base::update_tab_width)
611 (tui_source_window_base::set_new_height)
612 (tui_source_window_base::do_make_visible_with_new_height): Move to
614 * tui/tui-source.h: Update.
615 * tui/tui-source.c (tui_source_window_base::reset): Move to
617 * tui/tui-disasm.h: Update.
618 * tui/tui-data.h (struct tui_exec_info_window): Move to
620 (struct tui_source_window_base): Likewise.
621 * tui/tui-data.c (tui_source_window_base::clear_detail)
622 (tui_source_window_base, ~tui_source_window_base): Move to
627 * tui/tui-win.c (tui_resize_all)
628 (tui_source_window_base::update_tab_width)
629 (tui_adjust_win_heights): Update.
630 (tui_win_info::make_invisible_and_set_new_height): Rename from
631 make_invisible_and_set_new_height.
632 * tui/tui-data.h (struct tui_win_info)
633 <make_invisible_and_set_new_height>: New method.
638 * tui/tui-source.h (struct tui_source_window): Move from
640 * tui/tui-layout.c: Update.
641 * tui/tui-disasm.c: Update.
642 * tui/tui-data.h (struct tui_source_window): Move to
647 * tui/tui-disasm.h (struct tui_disasm_window): Move from
649 * tui/tui-data.h (struct tui_disasm_window): Move to
654 * tui/tui-regs.h (struct tui_data_item_window): Move from
656 * tui/tui-regs.c (tui_data_item_window): Move from tui-data.c.
657 * tui/tui-data.h (struct tui_data_item_window): Move to
659 * tui/tui-data.c (~tui_data_item_window): Move to tui-regs.c.
664 * tui/tui-win.c (tui_cmd_window::do_make_visible_with_new_height)
665 (tui_cmd_window::max_height): Move to tui-command.c.
666 * tui/tui-layout.c: Update.
667 * tui/tui-data.h (struct tui_cmd_window): Move to tui-command.h.
668 * tui/tui-data.c (tui_cmd_window::clear_detail): Move to
670 * tui/tui-command.h (struct tui_cmd_window): Move from
672 * tui/tui-command.c: Remove "structuring" comments.
673 (tui_cmd_window::clear_detail)
674 (tui_cmd_window::do_make_visible_with_new_height)
675 (tui_cmd_window::max_height): Move from elsewhere.
679 * tui/tui-io.c (tui_dispatch_ctrl_char): Move from tui-command.c.
681 * tui/tui-command.h (tui_dispatch_ctrl_char): Don't declare.
682 * tui/tui-command.c (tui_dispatch_ctrl_char): Move to tui-io.c.
687 * tui/tui-wingeneral.c (tui_data_window::refresh_window): Move to
689 * tui/tui-windata.h: Remove file.
690 * tui/tui-windata.c: Remove file.
691 * tui/tui-win.c (tui_data_window::set_new_height)
692 (tui_data_window::do_make_visible_with_new_height): Move to
694 * tui/tui-regs.h (struct tui_data_window): Move from tui-data.h.
695 * tui/tui-regs.c: Remove "structuring" comments.
696 (tui_data_window::first_data_item_displayed)
697 (tui_data_window::delete_data_content_windows)
698 (tui_data_window::erase_data_content)
699 (tui_data_window::display_all_data)
700 (tui_data_window::refresh_all)
701 (tui_data_window::do_scroll_vertical)
702 (tui_data_window::clear_detail, tui_data_window::set_new_height)
703 (tui_data_window::do_make_visible_with_new_height)
704 (tui_data_window::refresh_window): Move from elsewhere.
705 (_initialize_tui_regs): Move to end of file.
706 * tui/tui-layout.c: Update.
707 * tui/tui-hooks.c: Update.
708 * tui/tui-data.h (struct tui_data_window): Move to tui-regs.h.
709 * tui/tui-data.c (tui_data_window::clear_detail): Move to
711 * Makefile.in (SUBDIR_TUI_SRCS): Remove tui-windata.c.
715 * tui/tui-io.c (tui_puts_internal): Call wrefresh if newline is
720 * tui/tui-win.c (tui_source_window_base::set_new_height)
721 (tui_source_window_base::do_make_visible_with_new_height): Use
722 m_has_locator field directly.
723 * tui/tui-data.h (struct tui_win_info) <has_locator>: Remove
725 (struct tui_source_window_base) <has_locator>: Likewise.
729 * tui/tui-wingeneral.h (tui_make_visible, tui_make_invisible):
731 * tui/tui-wingeneral.c (tui_make_visible, tui_make_invisible):
733 * tui/tui-win.c (tui_source_window_base::set_new_height)
734 (tui_source_window_base::set_new_height)
735 (make_invisible_and_set_new_height)
736 (tui_source_window_base::do_make_visible_with_new_height)
737 (tui_source_window_base::do_make_visible_with_new_height):
739 * tui/tui-layout.c (show_source_disasm_command, show_data)
740 (show_source_or_disasm_and_command): Update.
741 * tui/tui-layout.c (show_layout): Update.
745 * tui/tui-layout.c (make_data_window): Remove.
746 (show_data): Unify creation and re-initialization cases.
750 * tui/tui-layout.c (make_source_window, make_disasm_window):
752 (show_data): Unify creation and re-initialization cases.
756 * tui/tui-layout.c (make_command_window): Remove.
757 (show_source_disasm_command, show_source_or_disasm_and_command):
758 Unify creation and re-initialization cases.
762 * tui/tui-layout.c (show_source_or_disasm_and_command): Unify
763 creation and re-initialization cases.
767 * tui/tui-regs.c (tui_get_register): Return void.
771 * tui/tui-wingeneral.c (tui_gen_win_info::make_visible):
776 * tui/tui-layout.c (show_source_disasm_command): Simplify window
781 * tui/tui.h (tui_set_layout_by_name): Don't declare.
782 * tui/tui-regs.c (tui_reg_layout): New function.
783 (tui_show_registers, tui_reg_command): Use it.
784 * tui/tui-layout.c (LAYOUT_USAGE): Remove.
785 (tui_layout_command): Rename from tui_set_layout_by_name. Change
787 (tui_layout_command): Remove.
791 * tui/tui-layout.h (tui/tui-layout): Return void.
792 * tui/tui-layout.c (tui_set_layout): Return void. Add assert.
796 * tui/tui-layout.c (show_source_disasm_command, show_data):
798 (reset_locator): Remove.
799 (show_source_or_disasm_and_command): Update.
803 * tui/tui-source.c (tui_source_window_base::reset): Remove
805 * tui/tui-layout.c (make_command_window, make_source_window)
806 (make_disasm_window, make_data_window)
807 (show_source_disasm_command, show_data, tui_gen_win_info::reset)
808 (reset_locator, show_source_or_disasm_and_command): Update.
809 * tui/tui-data.h (struct tui_gen_win_info) <reset>: Remove
811 (struct tui_source_window_base) <reset>: Likewise.
815 * tui/tui-layout.c (show_source_disasm_command): Use
817 (reset_locator): New function.
818 (init_and_make_win): Remove.
819 (show_source_or_disasm_and_command): Use reset_locator.
823 * tui/tui-winsource.c (tui_set_exec_info_content): Remove
825 * tui/tui-wingeneral.c (tui_source_window_base::make_visible):
827 * tui/tui-source.c (tui_source_window_base::reset): New method.
828 * tui/tui-layout.c (make_command_window): Don't call
830 (make_source_window, make_disasm_window): Don't call
831 make_source_or_disasm_window.
832 (make_data_window): Don't call init_and_make_win. Change calling
834 (show_source_disasm_command, show_data): Simplify.
835 (make_source_or_disasm_window): Remove.
836 (show_source_or_disasm_and_command): Simplify.
837 * tui/tui-data.h (struct tui_gen_win_info) <reset>: Now virtual.
838 (struct tui_source_window_base) <reset>: Likewise.
839 <execution_info>: Remove initializer.
840 * tui/tui-data.c (tui_source_window_base): Initialize
845 * tui/tui-layout.c (tui_set_layout): Remove regs_populate
850 * tui/tui.c (tui_rl_other_window): Update.
851 * tui/tui-wingeneral.c (tui_data_window::refresh_window): Call
852 superclass method first. Always iterate over regs_content.
853 (tui_unhighlight_win, tui_highlight_win): Use refresh_window
855 * tui/tui-win.c (tui_set_focus_command): Update.
859 * tui/tui-win.c (tui_set_focus_command): Rename from
860 tui_set_focus. Call tui_enable.
861 (tui_set_focus_command): Remove.
865 * tui/tui-winsource.c (tui_show_exec_info_content): Don't call
867 * tui/tui-wingeneral.c (tui_gen_win_info::refresh_window): Call
869 (tui_data_window::refresh_window): Call refresh_window on data
870 items. Always call superclass refresh_window.
871 (tui_win_info::refresh): Remove.
872 (tui_source_window_base::refresh_window): Update.
873 (tui_refresh_all): Update.
874 * tui/tui-layout.c (show_source_disasm_command): Remove call to
876 (show_source_or_disasm_and_command): Likewise.
877 * tui/tui-data.h (struct tui_win_info) <refresh>: Remove.
878 (struct tui_source_window_base) <refresh>: Likewise.
882 * tui/tui-winsource.c (tui_clear_source_content)
883 (tui_show_source_content): Update.
884 * tui/tui-source.c (tui_source_window::showing_source_p): Check
885 whether content is empty.
886 * tui/tui-data.h (struct tui_source_window_base) <content_in_use>:
891 * tui/tui-winsource.c (tui_erase_source_content): Clear the
893 * tui/tui-source.h (tui_set_source_content_nil): Don't declare.
894 * tui/tui-source.c (tui_set_source_content_nil): Remove.
898 * tui/tui-data.h (UNDEFINED_ITEM): Remove define.
899 (struct tui_data_item_window): Update.
903 * tui/tui-data.h (MAX_CONTENT_COUNT, TUI_NULL_STR)
904 (DEFAULT_HISTORY_COUNT, WITH_LOCATOR, NO_LOCATOR): Remove
909 * tui/tui-winsource.h (tui_erase_source_content)
910 (tui_clear_source_content): Remove "display_prompt" parameter.
911 * tui/tui-winsource.c (tui_update_source_window_as_is)
912 (tui_update_source_windows_with_addr): Update.
913 (tui_clear_source_content): Remove "display_prompt" parameter.
914 (tui_erase_source_content): Likewise. Simplify.
915 (tui_show_source_content): Update.
916 * tui/tui-win.c (tui_resize_all, tui_adjust_win_heights): Update.
917 * tui/tui-stack.c (tui_show_frame_info): Update.
918 * tui/tui-data.h (EMPTY_SOURCE_PROMPT, NO_EMPTY_SOURCE_PROMPT):
923 * tui/tui-winsource.c (tui_update_source_window_as_is): Update.
924 * tui/tui-disasm.h (tui_set_disassem_content): Add win_info
926 * tui/tui-disasm.c (tui_set_disassem_content): Add win_info
931 * tui/tui-winsource.c (tui_clear_source_content)
932 (tui_show_source_content, tui_show_exec_info_content)
933 (tui_clear_exec_info_content): Update.
934 * tui/tui-stack.c (tui_show_locator_content): Update.
935 (tui_show_frame_info): Update.
936 * tui/tui-source.h (tui_source_window): Don't declare.
937 * tui/tui-source.c (tui_source_window::showing_source_p): Rename
938 from tui_source_is_displayed.
939 * tui/tui-data.h (struct tui_gen_win_info) <content_in_use>:
941 (struct tui_source_window_base) <content_in_use>: New field. Now
943 (struct tui_source_window) <showing_source_p>: New method.
944 (TUI_SRC_WIN): Change cast.
945 * tui/tui-data.c (tui_initialize_static_data): Update.
949 * tui/tui-winsource.c (tui_update_breakpoint_info): Use
951 * tui/tui-source.c (tui_source_window::location_matches_p): New
953 * tui/tui-disasm.c (tui_disasm_window::location_matches_p): New
955 * tui/tui-data.h (struct tui_source_window_base)
956 <location_matches_p>: New method.
957 (struct tui_source_window, struct tui_disasm_window)
958 <location_matches_p>: Likewise.
962 * tui/tui-win.c (tui_set_win_height_command): Rename from
964 (tui_set_win_height_command): Remove.
968 * tui/tui-source.c (tui_source_window): New constructor. Add
970 (~tui_source_window): New destructor.
971 (tui_source_window::style_changed): New method.
972 * tui/tui-hooks.c (tui_redisplay_source): Remove.
973 (tui_attach_detach_observers): Update.
974 * tui/tui-data.h (struct tui_source_window): Make constructor not
975 inline. Add destructor.
976 (struct tui_source_window) <style_changed>: New method.
977 <m_observable>: New member.
981 * tui/tui-data.c (tui_clear_source_windows_detail): Fix typo.
982 * tui/tui-win.c (tui_resize_all): Fix typo.
986 * tui/tui-wingeneral.h (tui_refresh_all): Update.
987 * tui/tui-wingeneral.c (make_all_visible): Use foreach.
988 (tui_refresh_all): Remove "list" parameter. Use foreach.
989 * tui/tui-win.c (window_name_completer): Use foreach.
990 (tui_refresh_all_win, tui_rehighlight_all, tui_all_windows_info)
991 (update_tab_width): Likewise.
992 * tui/tui-layout.c (show_layout): Update.
993 * tui/tui-data.h (class tui_window_iterator): New.
994 (struct all_tui_windows): New.
995 * tui/tui-data.c (tui_partial_win_by_name): Use foreach.
999 * tui/tui-regs.c (tui_reg_next, tui_reg_prev): Add "current_group"
1000 parameter. Don't reference globals.
1001 (tui_reg_command): Update.
1005 * tui/tui-regs.c (tui_show_registers): Simplify.
1009 * tui/tui-regs.c (tui_show_registers): Update.
1010 (tui_show_register_group): Add win_info parameter.
1014 * tui/tui-regs.c (tui_data_window::display_reg_element_at_line):
1015 Rename from tui_display_reg_element_at_line.
1016 (tui_data_window::display_registers_from_line): Update.
1017 * tui/tui-data.h (struct tui_data_window)
1018 <display_reg_element_at_line>: New method.
1022 * tui/tui-regs.h (tui_display_registers_from)
1023 (tui_display_registers_from_line): Don't declare.
1024 * tui/tui-windata.c (tui_data_window::display_all_data)
1025 (tui_data_window::refresh_all)
1026 (tui_data_window::do_scroll_vertical): Update.
1027 * tui/tui-regs.c (tui_data_window::display_registers_from): Rename
1028 from tui_display_registers_from.
1029 (tui_display_reg_element_at_line): Update.
1030 (tui_data_window::display_registers_from_line): Rename from
1031 tui_display_registers_from_line.
1032 * tui/tui-data.h (struct tui_data_window) <display_registers_from,
1033 display_registers_from_line>: New methods.
1037 * tui/tui-windata.h (tui_erase_data_content): Don't declare.
1038 * tui/tui-windata.c (tui_data_window::erase_data_content): Rename
1039 from tui_erase_data_content.
1040 (tui_data_window::display_all_data)
1041 (tui_data_window::refresh_all)
1042 (tui_data_window::do_scroll_vertical): Update.
1043 * tui/tui-regs.c (tui_show_registers): Update.
1044 * tui/tui-data.h (struct tui_data_window) <erase_data_content>:
1049 * tui/tui-windata.h (tui_delete_data_content_windows): Don't
1052 (tui_data_window::delete_data_content_windows): Rename from
1053 tui_delete_data_content_windows.
1054 (tui_data_window::display_all_data)
1055 (tui_data_window::do_scroll_vertical): Update.
1056 * tui/tui-data.h (struct tui_data_window)
1057 <delete_data_content_windows>: New method.
1061 * tui/tui-windata.h (tui_refresh_data_win): Don't declare.
1062 * tui/tui-regs.h (tui_first_reg_element_inline): Don't declare.
1066 * tui/tui-windata.h (tui_display_all_data): Don't declare.
1067 * tui/tui-windata.c (tui_data_window::display_all_data): Rename
1068 from tui_display_all_data.
1070 (tui_data_window::do_make_visible_with_new_height): Update.
1071 * tui/tui-regs.c (tui_show_registers): Update.
1072 * tui/tui-layout.c (tui_set_layout): Update.
1073 * tui/tui-data.h (struct tui_data_window) <display_all_data>: New
1078 * tui/tui-windata.h (tui_display_data_from): Don't declare.
1079 * tui/tui-windata.c (tui_display_data_from): Remove.
1080 (tui_data_window::refresh_all): Update.
1084 * tui/tui-windata.h (tui_display_data_from_line): Don't declare.
1085 * tui/tui-windata.c (tui_display_data_from_line): Remove.
1086 (tui_display_data_from, tui_data_window::do_scroll_vertical): Call
1087 tui_display_registers_from_line.
1088 * tui/tui-regs.h (tui_display_registers_from_line): Update.
1089 * tui/tui-regs.c (tui_display_registers_from_line): Remove
1090 "force_display" parameter.
1094 * tui/tui-regs.h (tui_first_reg_element_no_inline): Don't
1096 * tui/tui-regs.c (tui_data_window::first_reg_element_no_inline):
1097 Rename from tui_first_reg_element_no_inline.
1098 (tui_display_reg_element_at_line)
1099 (tui_display_registers_from_line): Update.
1100 * tui/tui-data.h (struct tui_data_window)
1101 <first_reg_element_no_inline>: New method.
1105 * tui/tui-windata.c (tui_display_data_from)
1106 (tui_data_window::do_scroll_vertical): Update.
1107 * tui/tui-regs.h (tui_line_from_reg_element_no): Don't declare.
1108 * tui/tui-regs.c (tui_data_window::line_from_reg_element_no):
1109 Rename from tui_line_from_reg_element_no.
1110 (tui_display_registers_from_line): Update.
1111 * tui/tui-data.h (struct tui_data_window)
1112 <line_from_reg_element_no>: New method.
1116 * tui/tui-regs.h (tui_last_regs_line_no): Don't declare.
1117 * tui/tui-regs.c (tui_data_window::last_regs_line_no): Rename from
1118 tui_last_regs_line_no.
1119 (tui_display_reg_element_at_line)
1120 (tui_display_registers_from_line): Update.
1121 * tui/tui-data.h (struct tui_data_window) <last_regs_line_no>: New
1127 * tui/tui-winsource.h (tui_update_all_breakpoint_info)
1128 (tui_update_breakpoint_info): Add "being_deleted" parameter.
1129 * tui/tui-winsource.c (tui_update_source_window_as_is): Update.
1130 (tui_update_all_breakpoint_info): Add "being_deleted" parameter.
1131 (tui_update_breakpoint_info): Likewise.
1132 * tui/tui-hooks.c (tui_event_create_breakpoint)
1133 (tui_event_delete_breakpoint, tui_event_modify_breakpoint):
1138 * tui/tui-stack.c (tui_show_frame_info): Consolidate "if"s.
1142 * tui/tui-winsource.c (tui_update_source_window_as_is)
1143 (tui_update_source_windows_with_addr): Update.
1144 * tui/tui-source.h (tui_set_source_content)
1145 (tui_show_symtab_source): Add "win_info" parameter.
1146 * tui/tui-source.c (tui_set_source_content): Add "win_info"
1148 (tui_show_symtab_source): Likewise.
1152 * tui/tui-wingeneral.c
1153 (tui_check_and_display_highlight_if_needed): Check can_highlight.
1157 * tui/tui-data.h (struct tui_win_info) <can_scroll>: New method.
1158 (struct tui_cmd_window) <can_scroll>: New method.
1159 * tui/tui-command.c (tui_dispatch_ctrl_char): Use can_scroll
1164 * ui-out.h (class ui_out) <field_signed, field_fmt_signed,
1165 do_field_signed>: Rename. Change type of "value".
1166 * ui-out.c (ui_out::field_signed): Rename from field_int.
1167 Change type of "value".
1168 (ui_out::field_fmt_signed): Rename from field_fmt_int. Change
1170 * tui/tui-out.h (class tui_ui_out) <do_field_signed>: Rename from
1171 do_field_int. Change type of "value".
1172 * tui/tui-out.c (tui_ui_out::do_field_signed): Rename from
1173 do_field_int. Change type of "value".
1174 * tracepoint.c (trace_status_mi, tfind_1)
1175 (print_one_static_tracepoint_marker): Update.
1176 * thread.c (print_thread_info_1, print_selected_thread_frame):
1178 * stack.c (print_frame, print_frame_info): Update.
1179 * spu-tdep.c (info_spu_signal_command, info_spu_dma_cmdlist):
1181 * source.c (print_source_lines_base): Update.
1182 * skip.c (info_skip_command): Update.
1183 * record-btrace.c (btrace_ui_out_decode_error)
1184 (btrace_call_history_src_line): Update.
1185 * python/py-framefilter.c (py_print_single_arg, py_print_frame):
1187 * progspace.c (print_program_space): Update.
1188 * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Update.
1189 * mi/mi-out.h (class mi_ui_out) <do_field_signed>: Rename from
1190 do_field_int. Change type of "value".
1191 * mi/mi-out.c (mi_ui_out::do_table_begin)
1192 (mi_ui_out::do_table_header): Update.
1193 (mi_ui_out::do_field_signed): Rename from do_field_int. Change
1195 * mi/mi-main.c (mi_cmd_thread_list_ids, print_one_inferior)
1196 (mi_cmd_data_list_changed_registers, output_register)
1197 (mi_cmd_data_read_memory, mi_load_progress)
1198 (mi_cmd_trace_frame_collected): Update.
1199 * mi/mi-interp.c (mi_on_normal_stop_1, mi_output_solib_attribs):
1201 * mi/mi-cmd-var.c (print_varobj, mi_cmd_var_create)
1202 (mi_cmd_var_delete, mi_cmd_var_info_num_children)
1203 (mi_cmd_var_list_children, varobj_update_one): Update.
1204 * mi/mi-cmd-stack.c (mi_cmd_stack_info_depth)
1205 (mi_cmd_stack_list_args, list_arg_or_local): Update.
1206 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file): Update.
1207 * inferior.c (print_inferior): Update.
1208 * gdb_bfd.c (print_one_bfd): Update.
1209 * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
1211 * darwin-nat-info.c (darwin_debug_regions_recurse): Update.
1212 * cli-out.h (class cli_ui_out) <do_field_signed>: Rename from
1213 do_field_int. Change type of "value".
1214 * cli-out.c (cli_ui_out::do_field_signed): Rename from
1215 do_field_int. Change type of "value".
1216 * breakpoint.c (watchpoint_check, print_breakpoint_location)
1217 (print_one_breakpoint_location, print_it_catch_fork)
1218 (print_one_catch_fork, print_it_catch_vfork)
1219 (print_one_catch_vfork, print_it_catch_solib)
1220 (print_it_catch_exec, print_it_ranged_breakpoint)
1221 (print_mention_watchpoint, print_mention_masked_watchpoint)
1222 (bkpt_print_it, update_static_tracepoint): Update.
1223 * break-catch-throw.c (print_it_exception_catchpoint): Update.
1224 * break-catch-syscall.c (print_it_catch_syscall): Update.
1225 * ada-tasks.c (print_ada_task_info): Update.
1226 * ada-lang.c (print_it_exception, print_mention_exception):
1231 PR breakpoints/24541
1232 * gdbarch.c: Regenerate.
1233 * gdbarch.h: Regenerate.
1234 * gdbarch.sh: Adjust return type and parameter types for
1235 'stap_adjust_register'.
1236 (i386_stap_adjust_register): Adjust signature and return new
1238 * stap-probe.c (stap_parse_register_operand): Adjust use of
1239 'gdbarch_stap_adjust_register'.
1243 * s390-linux-nat.c (s390_watch_area): Remove typedef. Don't
1245 (struct s390_debug_reg_state) <watch_areas, break_areas>: Now
1247 (struct s390_process_info): Add initializers.
1248 (s390_add_process): Use new.
1249 (s390_linux_nat_target::low_forget_process): Use delete.
1250 (s390_linux_nat_target::low_new_fork)
1251 (s390_linux_nat_target::stopped_by_watchpoint)
1252 (s390_linux_nat_target::low_prepare_to_resume)
1253 (s390_linux_nat_target::insert_watchpoint)
1254 (s390_linux_nat_target::insert_hw_breakpoint)
1255 (s390_linux_nat_target::remove_watchpoint)
1256 (s390_linux_nat_target::remove_hw_breakpoint): Update.
1260 * aarch64-fbsd-nat.c: Include regcache.h.
1261 (getregs_supplies, getfpregs_supplies): Remove unused gdbarch
1263 (aarch64_fbsd_nat_target::fetch_registers)
1264 (aarch64_fbsd_nat_target::store_registers): Remove gdbarch
1266 * arm-fbsd-nat.c, riscv-fbsd-nat.c: Likewise.
1270 * fbsd-nat.c: Include gdbarch.h.
1274 * mi/mi-out.c (mi_ui_out::do_field_int): Use plongest.
1278 * mi/mi-out.h (class mi_ui_out) <do_field_unsigned>: Declare.
1279 * mi/mi-out.c (mi_ui_out::do_field_unsigned): New method.
1280 * cli-out.h (class cli_ui_out) <do_field_unsigned>: Declare.
1281 * cli-out.c (cli_ui_out::do_field_int): New method.
1282 * ui-out.c (ui_out::field_unsigned): New method.
1283 * symfile.c (generic_load): Use field_unsigned.
1284 (print_transfer_performance): Likewise.
1285 * record-btrace.c (ui_out_field_uint): Remove.
1286 (btrace_call_history_insn_range, btrace_call_history): Use
1288 * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn): Use
1290 * ui-out.h (class ui_out) <field_unsigned>: New method.
1291 <do_field_unsigned>: Likewise.
1295 * mi/mi-main.c (list_available_thread_groups): Use field_string.
1296 * mi/mi-interp.c (mi_memory_changed): Use field_string.
1297 * target.c (flash_erase_command): Use field_string.
1298 * infrun.c (print_signal_received_reason): Use field_string.
1299 * i386-tdep.c (i386_mpx_print_bounds): Use field_string.
1300 * breakpoint.c (maybe_print_thread_hit_breakpoint): Use
1302 * ada-tasks.c (print_ada_task_info): Use field_string.
1306 * target.c (flash_erase_command): Use field_core_addr.
1307 * symfile.c (generic_load): Use field_core_addr.
1308 * sparc64-linux-tdep.c (sparc64_linux_handle_segmentation_fault):
1309 Use field_core_addr.
1310 * i386-linux-tdep.c (i386_linux_handle_segmentation_fault): Use
1315 * dwarf2loc.c (dwarf2_evaluate_property): Sign extend property
1316 value if its desired type is smaller than a CORE_ADDR and signed.
1320 * dwarf2loc.c (dwarf2_evaluate_property): Update to take account
1321 of changes to field names, and use new is_reference field to
1322 decide if a property is a reference or not.
1323 * dwarf2loc.h (struct dwarf2_locexpr_baton): Add 'is_reference'
1325 (struct dwarf2_property_baton): Update header comment, rename
1326 'referenced_type' to 'property_type' and update comments.
1327 * dwarf2read.c (attr_to_dynamic_prop): Add extra parameter to hold
1328 default property type, store in property baton, update to take
1329 accound of renamed field.
1330 (read_func_scope): Update call to attr_to_dynamic_prop.
1331 (read_array_type): Likewise.
1332 (dwarf2_per_cu_addr_sized_int_type): New function.
1333 (read_subrange_index_type): Move type finding code to
1334 dwarf2_per_cu_addr_sized_int_type.
1335 (read_subrange_type): Update calls to attr_to_dynamic_prop.
1336 (dwarf2_per_cu_addr_type): New function.
1337 (set_die_type): Update calls to attr_to_dynamic_prop.
1341 * dwarf2read.c (read_subrange_index_type): New function.
1342 (read_subrange_type): Move code into new function and call it.
1343 * gdbtypes.c (create_range_type): Add some asserts.
1347 * dwarf2loc.c (dwarf2_evaluate_property): Change return type, and
1348 update return statements.
1349 * dwarf2loc.h (dwarf2_evaluate_property): Update return type on
1350 declaration, and update comment to match.
1351 * gdbtypes.c (resolve_dynamic_array): Update call to
1352 dwarf2_evaluate_property to match new return type.
1356 * valarith.c (value_subscripted_rvalue): Change lowerbound
1357 parameter type from int to LONGEST.
1358 * value.h (value_subscripted_rvalue): Likewise in declaration.
1362 * cli/cli-utils.c (info_print_command_completer): New function.
1363 * cli/cli-utils.h: Add 'completer.h' include, and forward
1364 declaration for 'struct cmd_list_element'.
1365 (info_print_command_completer): Declare.
1366 * stack.c (_initialize_stack): Add completer for 'info locals' and
1368 * symtab.c (_initialize_symtab): Add completer for 'info
1369 variables' and 'info functions'.
1370 * NEWS: Mention completion for additional info commands.
1374 * cli/cli-utils.c (extract_info_print_args): Delete.
1375 (extract_arg_maybe_quoted): Delete.
1376 (info_print_options_defs): New variable.
1377 (make_info_print_options_def_group): New function.
1378 (extract_info_print_options): Define new function.
1379 * cli/cli-utils.h (extract_info_print_args): Delete.
1380 (struct info_print_options): New structure.
1381 (extract_info_print_options): Declare new function.
1382 * stack.c (info_locals_command): Update to use new
1383 extract_info_print_options, also add a header comment.
1384 (info_args_command): Likewise.
1385 * symtab.c (info_variables_command): Likewise.
1386 (info_functions_command): Likewise.
1390 * cli/cli-option.c (parse_option): Use extract_string_maybe_quoted
1391 to extract string arguments.
1392 * common/common-utils.c (extract_string_maybe_quoted): New function.
1393 * common/common-utils.h (extract_string_maybe_quoted): Declare.
1397 * main.c (get_init_files): Use GDBINIT, not gdbinit.
1398 * auto-load.c (file_is_auto_load_safe): Use GDBINIT, not gdbinit.
1399 * top.h (gdbinit): Don't declare.
1400 * cli/cli-cmds.c (init_cli_cmds): Remove, merging contents
1402 (_initialize_cli_cmds): ...here. Use GDBINIT, not gdbinit.
1403 * top.c (gdb_init): Don't call init_cli_cmds.
1405 * cli/cli-cmds.h (init_cli_cmds): Don't declare.
1409 * python/py-inferior.c (add_thread_object): Don't use thread_obj
1410 after it has been moved.
1414 * valops.c (value_must_coerce_to_target): Change return type to
1416 * value.h (value_must_coerce_to_target): Likewise.
1420 * breakpoint.c (is_hardware_watchpoint): Remove
1421 forward-declaration.
1422 (is_masked_watchpoint): Change return type to bool.
1423 (is_tracepoint): Likewise.
1424 (is_breakpoint): Likewise.
1425 (is_hardware_watchpoint): Likewise.
1426 (is_watchpoint): Likewise.
1427 (is_no_memory_software_watchpoint): Likewise.
1428 (is_catchpoint): Likewise.
1429 (breakpoint_1): Make FILTER parameter's return type bool.
1430 is_masked_watchpoint): Change return type to bool.
1431 (save_breakpoints): Make FILTER parameter's return type bool.
1432 * breakpoint.h (is_breakpoint): Change return type to bool.
1433 (is_watchpoint): Likewise.
1434 (is_catchpoint): Likewise.
1435 (is_tracepoint): Likewise.
1439 * defs.h: Don't include gdbarch.h.
1440 * aarch64-ravenscar-thread.c, aarch64-tdep.c, alpha-bsd-tdep.h,
1441 alpha-linux-tdep.c, alpha-mdebug-tdep.c, arch-utils.h, arm-tdep.h,
1442 ax-general.c, btrace.c, buildsym-legacy.c, buildsym.h, c-lang.c,
1443 cli/cli-decode.h, cli/cli-dump.c, cli/cli-script.h,
1444 cli/cli-style.h, coff-pe-read.h, compile/compile-c-support.c,
1445 compile/compile-cplus.h, compile/compile-loc2c.c, corefile.c,
1446 cp-valprint.c, cris-linux-tdep.c, ctf.c, d-lang.c, d-namespace.c,
1447 dcache.c, dicos-tdep.c, dictionary.c, disasm-selftests.c,
1448 dummy-frame.c, dummy-frame.h, dwarf2-frame-tailcall.c,
1449 dwarf2expr.c, expression.h, f-lang.c, frame-base.c,
1450 frame-unwind.c, frv-linux-tdep.c, gdbarch-selftests.c, gdbtypes.h,
1451 go-lang.c, hppa-nbsd-tdep.c, hppa-obsd-tdep.c, i386-dicos-tdep.c,
1452 i386-tdep.h, ia64-vms-tdep.c, interps.h, language.c,
1453 linux-record.c, location.h, m2-lang.c, m32r-linux-tdep.c,
1454 mem-break.c, memattr.c, mn10300-linux-tdep.c, nios2-linux-tdep.c,
1455 objfiles.h, opencl-lang.c, or1k-linux-tdep.c, p-lang.c,
1456 parser-defs.h, ppc-tdep.h, probe.h, python/py-record-btrace.c,
1457 record-btrace.c, record.h, regcache-dump.c, regcache.h,
1458 riscv-fbsd-tdep.c, riscv-linux-tdep.c, rust-exp.y,
1459 sh-linux-tdep.c, sh-nbsd-tdep.c, source-cache.c,
1460 sparc-nbsd-tdep.c, sparc-obsd-tdep.c, sparc-ravenscar-thread.c,
1461 sparc64-fbsd-tdep.c, std-regs.c, target-descriptions.h,
1462 target-float.c, tic6x-linux-tdep.c, tilegx-linux-tdep.c, top.c,
1463 tracefile.c, trad-frame.c, type-stack.h, ui-style.c, utils.c,
1464 utils.h, valarith.c, valprint.c, varobj.c, x86-tdep.c,
1465 xml-support.h, xtensa-linux-tdep.c, cli/cli-cmds.h: Update.
1466 * s390-linux-nat.c, procfs.c, inf-ptrace.c: Likewise.
1470 * ada-lang.h (is_ada_exception_catchpoint): Declare.
1471 * breakpoint.c (init_ada_exception_breakpoint): Register as
1473 (print_one_breakpoint_location, print_one_breakpoint): Use
1474 is_ada_exception_catchpoint.
1475 * ada-lang.c (class ada_catchpoint_location): Pass
1476 bp_loc_software_breakpoint to bp_location constructor.
1477 (is_ada_exception_catchpoint): New function.
1481 * arm-tdep.c (arm_exidx_entry_s): Remove typedef. Don't define
1483 (struct arm_exidx_entry): New method operator<.
1484 (struct arm_exidx_data) <section_maps>: Change type.
1485 (arm_exidx_data_free): Remove.
1486 (arm_exidx_data_key): Change type. Move lower.
1487 (arm_exidx_new_objfile): Update.
1488 (arm_compare_exidx_entries): Remove.
1489 (arm_find_exidx_entry, _initialize_arm_tdep)
1493 * solib-spu.c (ocl_program_data_key): Change type.
1494 (append_ocl_sos, ocl_enable_break, _initialize_spu_solib):
1499 * solib-aix.c (lm_info_aix_p): Remove typedef. Don't define VEC.
1500 (struct solib_aix_inferior_data) <library_list>: Change type.
1501 (solib_aix_inferior_data_handle): Change type.
1502 (get_solib_aix_inferior_data): Update.
1503 (solib_aix_free_library_list): Remove.
1504 (library_list_start_library): Update.
1505 (solib_aix_parse_libraries, solib_aix_get_library_list): Change
1507 (solib_aix_get_library_list)
1508 (solib_aix_solib_create_inferior_hook, solib_aix_current_sos)
1509 (solib_aix_normal_stop_observer, _initialize_solib_aix): Update.
1513 * solib-dsbt.c (struct dsbt_info): Add initializers.
1514 (solib_dsbt_pspace_data): Change type.
1515 (dsbt_pspace_data_cleanup): Remove.
1516 (get_dsbt_info, _initialize_dsbt_solib): Update.
1520 * spu-tdep.c (spu_overlay_data): Change type.
1521 (spu_get_overlay_table, spu_overlay_new_objfile)
1522 (_initialize_spu_tdep): Update.
1526 * gdb-stabs.h (struct dbx_symfile_info): Add initializers and
1528 (dbx_objfile_data_key): Change type and declare later.
1529 (DBX_SYMFILE_INFO): Rewrite.
1530 * dbxread.c (dbx_objfile_data_key): Change type.
1531 (dbx_symfile_init): Update.
1532 (~dbx_symfile_info): Rename from dbx_free_symfile_info. Update.
1533 (coffstab_build_psymtabs, elfstab_build_psymtabs)
1534 (stabsect_build_psymtabs, _initialize_dbxread): Update.
1538 * jit.c (jit_program_space_key): Change type. Move lower.
1539 (get_jit_program_space_data): Update.
1540 (jit_program_space_data_cleanup): Remove.
1541 (jit_breakpoint_deleted, free_objfile_data, _initialize_jit):
1543 (struct jit_program_space_data): Add initializers.
1547 * solib-darwin.c (struct darwin_info): Add initializers.
1548 (solib_darwin_pspace_data): Change type.
1549 (darwin_pspace_data_cleanup): Remove.
1550 (get_darwin_info, _initialize_darwin_solib): Update.
1554 * remote-sim.c (struct sim_inferior_data): Add initializers,
1555 constructor, and destructor.
1556 (sim_inferior_data_key): Change type. Move lower.
1557 (check_for_duplicate_sim_descriptor): Update.
1558 (get_sim_inferior_data): Use new. Update.
1559 (~sim_inferior_data_cleanup): Rename from
1560 sim_inferior_data_cleanup. Simplify.
1561 (gdbsim_close_inferior, simulator_command)
1562 (sim_command_completer, _initialize_remote_sim): Update.
1563 (next_pid, INITIAL_PID): Move earlier.
1567 * python/python-internal.h (create_thread_object): Return
1569 * python/py-infthread.c (create_thread_object): Return gdbpy_ref.
1570 * python/py-inferior.c (struct threadlist_entry): Add
1572 <thread_obj>: Now a gdbpy_ref.
1573 (thread_to_thread_object): Update.
1574 (add_thread_object): Use new.
1575 (delete_thread_object): Use delete.
1576 (infpy_threads): Update.
1577 (py_free_inferior): Update. Construct "inf_obj" after acquiring
1582 * valops.c (value_cast): Specialize error message for Ada.
1586 * breakpoint.c (breakpoint_1): Update doc and parameter names.
1590 * breakpoint.h (bpstat_explains_signal, bpstat_causes_stop,
1591 bpstat_should_step): Return bool, adjust comments.
1592 * breakpoint.c (bpstat_explains_signal, bpstat_causes_stop,
1593 bpstat_should_step): Likewise.
1597 * features/Makefile: Use feature target descriptions for Arm.
1598 * features/arm/arm-core.c: Generate new file.
1599 * features/arm/arm-fpa.c: Likewise.
1600 * features/arm/arm-m-profile-with-fpa.xml: Likewise.
1601 * features/arm/arm-m-profile.c: Likewise.
1602 * features/arm/arm-vfpv2.c: Likewise.
1603 * features/arm/arm-vfpv3.c: Likewise.
1604 * features/arm/xscale-iwmmxt.c: Likewise.
1605 * target-descriptions.c (maint_print_c_tdesc_cmd): Add Arm.
1609 * arm-linux-nat.c (arm_linux_nat_target::read_description): Check
1614 * features/aarch64-pauth.c: Regenerate.
1618 * breakpoint.h (struct bpstat_what) <is_longjmp>: Change type to
1620 (bpstat_what): Use false instead of 0.
1624 * break-catch-throw.c (is_exception_catchpoint): New.
1625 * breakpoint.c (print_one_breakpoint_location): New parameter
1626 'raw_loc'. Handle it. Use
1627 is_watchpoint/is_catchpoint/is_exception_catchpoint instead of
1628 looking at the breakpoint's type.
1629 (print_one_breakpoint): If handling "maint info breakpoints", also
1630 print locations of exception catchpoints.
1631 * breakpoint.h (is_exception_catchpoint): Declare.
1635 * break-catch-throw.c (print_one_exception_catchpoint): Skip the
1637 (allocate_location_exception_catchpoint): New.
1638 (handle_gnu_v3_exceptions): Don't reset 'type' to bp_breakpoint.
1639 (initialize_throw_catchpoint_ops): Install
1640 allocate_location_exception_catchpoint as allocate_location
1642 * breakpoint.c (bpstat_what) <bp_catch>: Set action to
1643 BPSTAT_WHAT_SINGLE if not stopping and the location's type is not
1645 (breakpoint_address_is_meaningful): Delete.
1646 (bl_address_is_meaningful): New.
1647 (breakpoint_locations_match): Adjust comment.
1648 (bp_location_from_bp_type): New, factored out of...
1649 (bp_location::bp_location(breakpoint *)): ... this.
1650 (bp_location::bp_location(breakpoint *, bp_loc_type)): New,
1652 (bp_location::bp_location(breakpoint *)): ... this. Reimplement.
1653 (bp_loc_is_permanent): Use bl_address_is_meaningful instead of
1654 breakpoint_address_is_meaningful.
1655 (bp_locations_compare): Adjust comment.
1656 (update_global_location_list): Use bl_address_is_meaningful
1657 instead of breakpoint_address_is_meaningful.
1658 * breakpoint.h (bp_location::bp_location(breakpoint *)): New
1660 (bp_location::bp_location(breakpoint *, bp_loc_type)): Declare.
1661 * python/py-breakpoint.c (bppy_get_location): No longer check
1662 whether location is null.
1667 * breakpoint.c (print_one_breakpoint_location): Remove
1668 single-location assert.
1672 * contrib/ari/gdb_ari.sh: Change common to gdbsupport.
1673 * configure: Rebuild.
1674 * configure.ac: Change common to gdbsupport.
1675 * gdbsupport: Rename from common.
1676 * acinclude.m4: Change common to gdbsupport.
1677 * Makefile.in (CONFIG_SRC_SUBDIR, COMMON_SFILES)
1678 (HFILES_NO_SRCDIR, stamp-version, ALLDEPFILES): Change common to
1680 * aarch64-tdep.c, ada-lang.c, ada-lang.h, agent.c, alloc.c,
1681 amd64-darwin-tdep.c, amd64-dicos-tdep.c, amd64-fbsd-nat.c,
1682 amd64-fbsd-tdep.c, amd64-linux-nat.c, amd64-linux-tdep.c,
1683 amd64-nbsd-tdep.c, amd64-obsd-tdep.c, amd64-sol2-tdep.c,
1684 amd64-tdep.c, amd64-windows-tdep.c, arch-utils.c,
1685 arch/aarch64-insn.c, arch/aarch64.c, arch/aarch64.h, arch/amd64.c,
1686 arch/amd64.h, arch/arm-get-next-pcs.c, arch/arm-linux.c,
1687 arch/arm.c, arch/i386.c, arch/i386.h, arch/ppc-linux-common.c,
1688 arch/riscv.c, arch/riscv.h, arch/tic6x.c, arm-tdep.c, auto-load.c,
1689 auxv.c, ax-gdb.c, ax-general.c, ax.h, breakpoint.c, breakpoint.h,
1690 btrace.c, btrace.h, build-id.c, build-id.h, c-lang.h, charset.c,
1691 charset.h, cli/cli-cmds.c, cli/cli-cmds.h, cli/cli-decode.c,
1692 cli/cli-dump.c, cli/cli-option.h, cli/cli-script.c,
1693 coff-pe-read.c, command.h, compile/compile-c-support.c,
1694 compile/compile-c.h, compile/compile-cplus-symbols.c,
1695 compile/compile-cplus-types.c, compile/compile-cplus.h,
1696 compile/compile-loc2c.c, compile/compile.c, completer.c,
1697 completer.h, contrib/ari/gdb_ari.sh, corefile.c, corelow.c,
1698 cp-support.c, cp-support.h, cp-valprint.c, csky-tdep.c, ctf.c,
1699 darwin-nat.c, debug.c, defs.h, disasm-selftests.c, disasm.c,
1700 disasm.h, dtrace-probe.c, dwarf-index-cache.c,
1701 dwarf-index-cache.h, dwarf-index-write.c, dwarf2-frame.c,
1702 dwarf2expr.c, dwarf2loc.c, dwarf2read.c, event-loop.c,
1703 event-top.c, exceptions.c, exec.c, extension.h, fbsd-nat.c,
1704 features/aarch64-core.c, features/aarch64-fpu.c,
1705 features/aarch64-pauth.c, features/aarch64-sve.c,
1706 features/i386/32bit-avx.c, features/i386/32bit-avx512.c,
1707 features/i386/32bit-core.c, features/i386/32bit-linux.c,
1708 features/i386/32bit-mpx.c, features/i386/32bit-pkeys.c,
1709 features/i386/32bit-segments.c, features/i386/32bit-sse.c,
1710 features/i386/64bit-avx.c, features/i386/64bit-avx512.c,
1711 features/i386/64bit-core.c, features/i386/64bit-linux.c,
1712 features/i386/64bit-mpx.c, features/i386/64bit-pkeys.c,
1713 features/i386/64bit-segments.c, features/i386/64bit-sse.c,
1714 features/i386/x32-core.c, features/riscv/32bit-cpu.c,
1715 features/riscv/32bit-csr.c, features/riscv/32bit-fpu.c,
1716 features/riscv/64bit-cpu.c, features/riscv/64bit-csr.c,
1717 features/riscv/64bit-fpu.c, features/tic6x-c6xp.c,
1718 features/tic6x-core.c, features/tic6x-gp.c, filename-seen-cache.h,
1719 findcmd.c, findvar.c, fork-child.c, gcore.c, gdb_bfd.c, gdb_bfd.h,
1720 gdb_proc_service.h, gdb_regex.c, gdb_select.h, gdb_usleep.c,
1721 gdbarch-selftests.c, gdbthread.h, gdbtypes.h, gnu-nat.c,
1722 go32-nat.c, guile/guile.c, guile/scm-ports.c,
1723 guile/scm-safe-call.c, guile/scm-type.c, i386-fbsd-nat.c,
1724 i386-fbsd-tdep.c, i386-go32-tdep.c, i386-linux-nat.c,
1725 i386-linux-tdep.c, i386-tdep.c, i387-tdep.c,
1726 ia64-libunwind-tdep.c, ia64-linux-nat.c, inf-child.c,
1727 inf-ptrace.c, infcall.c, infcall.h, infcmd.c, inferior-iter.h,
1728 inferior.c, inferior.h, inflow.c, inflow.h, infrun.c, infrun.h,
1729 inline-frame.c, language.h, linespec.c, linux-fork.c, linux-nat.c,
1730 linux-tdep.c, linux-thread-db.c, location.c, machoread.c,
1731 macrotab.h, main.c, maint.c, maint.h, memattr.c, memrange.h,
1732 mi/mi-cmd-break.h, mi/mi-cmd-env.c, mi/mi-cmd-stack.c,
1733 mi/mi-cmd-var.c, mi/mi-interp.c, mi/mi-main.c, mi/mi-parse.h,
1734 minsyms.c, mips-linux-tdep.c, namespace.h,
1735 nat/aarch64-linux-hw-point.c, nat/aarch64-linux-hw-point.h,
1736 nat/aarch64-linux.c, nat/aarch64-sve-linux-ptrace.c,
1737 nat/amd64-linux-siginfo.c, nat/fork-inferior.c,
1738 nat/linux-btrace.c, nat/linux-btrace.h, nat/linux-namespaces.c,
1739 nat/linux-nat.h, nat/linux-osdata.c, nat/linux-personality.c,
1740 nat/linux-procfs.c, nat/linux-ptrace.c, nat/linux-ptrace.h,
1741 nat/linux-waitpid.c, nat/mips-linux-watch.c,
1742 nat/mips-linux-watch.h, nat/ppc-linux.c, nat/x86-dregs.c,
1743 nat/x86-dregs.h, nat/x86-linux-dregs.c, nat/x86-linux.c,
1744 nto-procfs.c, nto-tdep.c, objfile-flags.h, objfiles.c, objfiles.h,
1745 obsd-nat.c, observable.h, osdata.c, p-valprint.c, parse.c,
1746 parser-defs.h, ppc-linux-nat.c, printcmd.c, probe.c, proc-api.c,
1747 procfs.c, producer.c, progspace.h, psymtab.h,
1748 python/py-framefilter.c, python/py-inferior.c, python/py-ref.h,
1749 python/py-type.c, python/python.c, record-btrace.c, record-full.c,
1750 record.c, record.h, regcache-dump.c, regcache.c, regcache.h,
1751 remote-fileio.c, remote-fileio.h, remote-sim.c, remote.c,
1752 riscv-tdep.c, rs6000-aix-tdep.c, rust-exp.y, s12z-tdep.c,
1753 selftest-arch.c, ser-base.c, ser-event.c, ser-pipe.c, ser-tcp.c,
1754 ser-unix.c, skip.c, solib-aix.c, solib-target.c, solib.c,
1755 source-cache.c, source.c, source.h, sparc-nat.c, spu-linux-nat.c,
1756 stack.c, stap-probe.c, symfile-add-flags.h, symfile.c, symfile.h,
1757 symtab.c, symtab.h, target-descriptions.c, target-descriptions.h,
1758 target-memory.c, target.c, target.h, target/waitstatus.c,
1759 target/waitstatus.h, thread-iter.h, thread.c, tilegx-tdep.c,
1760 top.c, top.h, tracefile-tfile.c, tracefile.c, tracepoint.c,
1761 tracepoint.h, tui/tui-io.c, ui-file.c, ui-out.h,
1762 unittests/array-view-selftests.c,
1763 unittests/child-path-selftests.c, unittests/cli-utils-selftests.c,
1764 unittests/common-utils-selftests.c,
1765 unittests/copy_bitwise-selftests.c, unittests/environ-selftests.c,
1766 unittests/format_pieces-selftests.c,
1767 unittests/function-view-selftests.c,
1768 unittests/lookup_name_info-selftests.c,
1769 unittests/memory-map-selftests.c, unittests/memrange-selftests.c,
1770 unittests/mkdir-recursive-selftests.c,
1771 unittests/observable-selftests.c,
1772 unittests/offset-type-selftests.c, unittests/optional-selftests.c,
1773 unittests/parse-connection-spec-selftests.c,
1774 unittests/ptid-selftests.c, unittests/rsp-low-selftests.c,
1775 unittests/scoped_fd-selftests.c,
1776 unittests/scoped_mmap-selftests.c,
1777 unittests/scoped_restore-selftests.c,
1778 unittests/string_view-selftests.c, unittests/style-selftests.c,
1779 unittests/tracepoint-selftests.c, unittests/unpack-selftests.c,
1780 unittests/utils-selftests.c, unittests/xml-utils-selftests.c,
1781 utils.c, utils.h, valarith.c, valops.c, valprint.c, value.c,
1782 value.h, varobj.c, varobj.h, windows-nat.c, x86-linux-nat.c,
1783 xml-support.c, xml-support.h, xml-tdesc.h, xstormy16-tdep.c,
1784 xtensa-linux-nat.c, dwarf2read.h: Change common to gdbsupport.
1788 * linespec.c (decode_digits_list_mode): Set explicit_line to a
1790 (decode_digits_ordinary): Set explicit_line field in sal.
1791 * symtab.c (skip_prologue_sal): Don't skip prologue for a
1792 symtab_and_line that was set on an explicit line number in
1793 assembler code. Do always update the recorded symtab and line if
1794 we do skip the prologue.
1798 * breakpoint.c (set_breakpoint_location_function): Remove
1799 explicit_loc parameter.
1800 (momentary_breakpoint_from_master): Update call to
1801 set_breakpoint_location_function.
1802 (add_location_to_breakpoint): Likewise.
1806 * riscv-tdep.c (riscv_features_from_gdbarch_info): Don't modify
1807 required features based on default bfd type when no specific bfd
1812 * NEWS: Mention that GDB printf and eval commands can now print
1813 C-style and Ada-style convenience var strings without
1814 calling the inferior.
1815 * printcmd.c (printf_c_string): Locally print GDB internal var
1816 instead of transiting via the inferior.
1817 (printf_wide_c_string): Likewise.
1821 * symfile.c (symbol_file_command): Call solib_create_inferior_hook.
1826 * tui/tui-winsource.c (tui_clear_source_content): Update.
1827 (tui_source_window_base::set_is_exec_point_at): Fix comment.
1828 (tui_update_breakpoint_info): Update.
1829 (tui_set_exec_info_content): Update.
1830 * tui/tui-source.c (tui_set_source_content_nil): Update.
1831 * tui/tui-disasm.c (tui_set_disassem_content): Don't set
1833 * tui/tui-data.h (enum tui_bp_flag): New.
1834 (tui_bp_flags): New enum flags type.
1835 (struct tui_source_element) <break_mode>: Change type. Rename
1837 (TUI_BP_ENABLED, TUI_BP_DISABLED, TUI_BP_HIT)
1838 (TUI_BP_CONDITIONAL, TUI_BP_HARDWARE): Don't define. Now enum
1840 * tui/tui-winsource.h: Fix comment.
1844 * aarch32-linux-nat.h (VFP_REGS_SIZE): Remove define.
1845 * aarch64-linux-nat.c (fetch_fpregs_from_thread)
1846 (store_fpregs_to_thread)
1847 (aarch64_linux_nat_target::read_description): Use ARM_VFP3_REGS_SIZE.
1848 * arch/arm.h (IWMMXT_VEC_REGISTER_SIZE, ARM_CORE_REGS_SIZE)
1849 (ARM_FP_REGS_SIZE, ARM_VFP2_REGS_SIZE, ARM_VFP3_REGS_SIZE)
1850 (IWMMXT_REGS_SIZE): Add define.
1851 * arm-linux-nat.c (IWMMXT_REGS_SIZE): Remove define.
1852 (fetch_vfp_regs, store_vfp_regs)
1853 (arm_linux_nat_target::read_description): Use ARM_VFP3_REGS_SIZE.
1854 * arm-tdep.c (arm_register_g_packet_guesses): Use new defines.
1858 * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Use ARM_
1860 * arch/arm-linux.c (arm_linux_sigreturn_next_pc_offset): Likewise.
1861 * arch/arm.h (INT_REGISTER_SIZE) Rename from...
1862 (ARM_INT_REGISTER_SIZE): ...to this.
1863 (ARM_FP_REGISTER_SIZE) (ARM_VFP_REGISTER_SIZE): Add define.
1864 * arm-linux-tdep.c (ARM_LINUX_JB_ELEMENT_SIZE)
1865 (ARM_LINUX_SIZEOF_GREGSET, arm_linux_supply_gregset)
1866 (arm_linux_collect_gregset, supply_nwfpe_register)
1867 (collect_nwfpe_register, arm_linux_collect_nwfpe): Use ARM_
1869 * arm-linux-tdep.h (ARM_LINUX_SIZEOF_NWFPE, NWFPE_FPSR_OFFSET)
1870 (NWFPE_FPCR_OFFSET, NWFPE_TAGS_OFFSET): Likewise
1871 * arm-nbsd-tdep.c (ARM_NBSD_JB_ELEMENT_SIZE): Likewise.
1872 * arm-tdep.c (arm_push_dummy_call, arm_extract_return_value)
1873 (arm_return_in_memory, arm_store_return_value)
1874 (arm_get_longjmp_target, arm_register_g_packet_guesses)
1875 (arm_record_ld_st_multiple): Likewise.
1876 * arm-tdep.h (FP_REGISTER_SIZE, VFP_REGISTER_SIZE): Remove.
1877 * arm-wince-tdep.c (ARM_WINCE_JB_ELEMENT_SIZE): Use ARM_ defines.
1881 * aarch64-linux-tdep.c (aarch64_linux_init_abi): Use
1882 AARCH64_DISPLACED_MODIFIED_INSNS.
1883 * aarch64-tdep.c (struct aarch64_displaced_step_data)
1884 (aarch64_displaced_step_copy_insn): Likewise.
1885 * aarch64-tdep.h (DISPLACED_MODIFIED_INSNS): Rename from..
1886 (AARCH64_DISPLACED_MODIFIED_INSNS): ...to this.
1887 * arm-linux-tdep.c (arm_linux_cleanup_svc): Use
1888 ARM_DISPLACED_MODIFIED_INSNS.
1889 * arm-tdep.c (arm_gdbarch_init): Likewise.
1890 * arm-tdep.h (DISPLACED_MODIFIED_INSNS): Rename from..
1891 (ARM_DISPLACED_MODIFIED_INSNS): ...to this.
1892 (struct arm_displaced_step_closure): Use
1893 ARM_DISPLACED_MODIFIED_INSNS.
1897 * features/Makefile: Remove unused xml files.
1898 * features/aarch64.xml: Remove.
1899 * features/i386/amd64-avx-avx512-linux.xml: Remove.
1900 * features/i386/amd64-avx-avx512.xml: Remove.
1901 * features/i386/amd64-avx-linux.xml: Remove.
1902 * features/i386/amd64-avx-mpx-avx512-pku-linux.xml: Remove.
1903 * features/i386/amd64-avx-mpx-avx512-pku.xml: Remove.
1904 * features/i386/amd64-avx-mpx-linux.xml: Remove.
1905 * features/i386/amd64-avx-mpx.xml: Remove.
1906 * features/i386/amd64-avx.xml: Remove.
1907 * features/i386/amd64-linux.xml: Remove.
1908 * features/i386/amd64-mpx-linux.xml: Remove.
1909 * features/i386/amd64-mpx.xml: Remove.
1910 * features/i386/amd64.xml: Remove.
1911 * features/i386/i386-avx-avx512-linux.xml: Remove.
1912 * features/i386/i386-avx-avx512.xml: Remove.
1913 * features/i386/i386-avx-linux.xml: Remove.
1914 * features/i386/i386-avx-mpx-avx512-pku-linux.xml: Remove.
1915 * features/i386/i386-avx-mpx-avx512-pku.xml: Remove.
1916 * features/i386/i386-avx-mpx-linux.xml: Remove.
1917 * features/i386/i386-avx-mpx.xml: Remove.
1918 * features/i386/i386-avx.xml: Remove.
1919 * features/i386/i386-linux.xml: Remove.
1920 * features/i386/i386-mmx-linux.xml: Remove.
1921 * features/i386/i386-mmx.xml: Remove.
1922 * features/i386/i386-mpx-linux.xml: Remove.
1923 * features/i386/i386-mpx.xml: Remove.
1924 * features/i386/i386.xml: Remove.
1925 * features/i386/x32-avx-avx512-linux.xml: Remove.
1926 * features/i386/x32-avx-linux.xml: Remove.
1927 * features/i386/x32-linux.xml: Remove.
1931 * regformats/aarch64.dat: Remove.
1932 * regformats/i386/amd64-avx-avx512-linux.dat: Remove.
1933 * regformats/i386/amd64-avx-linux.dat: Remove.
1934 * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Remove.
1935 * regformats/i386/amd64-avx-mpx-linux.dat: Remove.
1936 * regformats/i386/amd64-linux.dat: Remove.
1937 * regformats/i386/amd64-mpx-linux.dat: Remove.
1938 * regformats/i386/amd64.dat: Remove.
1939 * regformats/i386/i386-avx-avx512-linux.dat: Remove.
1940 * regformats/i386/i386-avx-linux.dat: Remove.
1941 * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Remove.
1942 * regformats/i386/i386-avx-mpx-linux.dat: Remove.
1943 * regformats/i386/i386-linux.dat: Remove.
1944 * regformats/i386/i386-mmx-linux.dat: Remove.
1945 * regformats/i386/i386-mpx-linux.dat: Remove.
1946 * regformats/i386/i386.dat: Remove.
1947 * regformats/i386/x32-avx-avx512-linux.dat: Remove.
1948 * regformats/i386/x32-avx-linux.dat: Remove.
1949 * regformats/i386/x32-linux.dat: Remove.
1953 * aarch64-tdep.c: Remove xml self tests.
1954 * amd64-linux-tdep.c: Likewise.
1955 * amd64-tdep.c: Likewise.
1956 * i386-linux-tdep.c: Likewise.
1957 * i386-tdep.c: Likewise.
1962 * cli/cli-cmds.c (struct pipe_cmd_opts): New.
1963 (pipe_cmd_option_defs): New.
1964 (make_pipe_cmd_options_def_group): New.
1965 (pipe_command): Use gdb::option::process_options.
1966 (pipe_command_completer): New function.
1967 (_initialize_cli_cmds): Install completer for "pipe" command.
1971 * cli/cli-option.c (union option_value) <string>: New field.
1972 (struct option_def_and_value): Add ctor, move ctor, dtor and
1973 use DISABLE_COPY_AND_ASSIGN.
1974 (option_def_and_value::clear_value): New.
1975 (parse_option, save_option_value_in_ctx, get_val_type_str)
1976 (add_setshow_cmds_for_options): Handle var_string.
1977 * cli-option.h (union option_def::var_address) <string>: New
1979 (struct string_option_def): New.
1980 * maint-test-options.c (struct test_options_opts): Add default
1981 ctor and use DISABLE_COPY_AND_ASSIGN.
1982 <string_opt>: New field.
1983 (test_options_opts::~test_options_opts): New.
1984 (test_options_opts::dump): Also dump "-string".
1985 (test_options_option_defs): Install "string.
1989 * cli/cli-option.c (parse_option) <var_enum>: Don't return an
1990 option_value with a null enumeration.
1991 (complete_options): Save the option values in the context.
1992 (save_option_value_in_ctx): New, factored out from ...
1993 (process_options): ... here.
1994 * cli/cli-utils.c (get_ulongest): Don't advance PP until the end
1996 * maint-test-options.c (test_options_opts::dump): New, factored
1998 (maintenance_test_options_command_mode): ... here.
1999 (maintenance_test_options_command_completion_result): Delete.
2000 (maintenance_test_options_command_completion_text): Update
2002 (maintenance_show_test_options_completion_result): Change
2003 prototype. Just print
2004 maintenance_test_options_command_completion_text.
2005 (save_completion_result): New.
2006 (maintenance_test_options_completer_mode): Pass options context to
2007 complete_options, and then save a dump.
2008 (_initialize_maint_test_options): Use add_cmd to install "maint
2009 show test-options-completion-result".
2013 * NEWS (New commands): Mention "with" and "maint with".
2014 * cli/cli-cmds.c (with_command_1, with_command_completer_1)
2015 (with_command, with_command_completer): New.
2016 (pipe_command): Adjust to new repeat_previous
2018 (_initialize_cli_cmds): Install the "with" command and its "w"
2020 * cli/cli-cmds.h (with_command_1, with_command_completer_1): New
2022 * cli/cli-setshow.c (parse_cli_var_uinteger)
2023 (parse_cli_var_zuinteger_unlimited, do_set_command): Handle empty
2024 argument strings for all var_types.
2025 (get_setshow_command_value_string): New, factored out from ...
2026 (do_show_command): ... this.
2027 * cli/cli-setshow.h: Include <string>.
2028 (get_setshow_command_value_string): Declare.
2029 * command.h (repeat_previous): Now returns const char *. Adjust
2031 * maint.c: Include "cli/cli-cmds.h".
2032 (maintenance_with_cmd, maintenance_with_cmd_completer): New.
2033 (_initialize_maint_cmds): Register the "maintenance with" command.
2034 * top.c (repeat_previous): Move bits from pipe_command here:
2035 Return the saved command line, if any; error out if there's no
2036 command to relaunch.
2040 * NEWS (New commands): Mention "maint set/show test-settings"
2041 instead of "maint test-settings".
2042 * maint-test-settings.c (maintenance_test_settings_list): Delete.
2043 (maintenance_test_settings_set_list): Rename to ...
2044 (maintenance_set_test_settings_list): ... this.
2045 (maintenance_test_settings_show_list): Rename to ...
2046 (maintenance_show_test_settings_list): ... this.
2047 (maintenance_test_settings_cmd): Delete.
2048 (maintenance_test_settings_set_cmd): ...
2049 (maintenance_set_test_settings_cmd): ... this.
2050 (maintenance_test_settings_show_cmd): ...
2051 (maintenance_show_test_settings_cmd): ... this.
2052 (maintenance_test_settings_show_value_cmd):
2053 (maintenance_show_test_settings_value_cmd): ... this.
2054 (_initialize_maint_test_settings): No longer install the "maint
2055 test-settings" prefix command. Rename "maint test-settings set"
2056 to "maint set test-settings", and "maint test-settings show" to
2057 "maint show test-settings". Adjust all subcommands.
2061 * maint-test-settings.c: Fix file's intro comment. Replace all
2062 references to "test-options" with references to "test-settings",
2067 * maint-test-settings.c (maintenance_test_settings_xxx)
2068 (maintenance_test_settings_yyy, maintenance_test_settings_zzz):
2070 (maintenance_test_settings_enums): Use them.
2071 (maintenance_test_settings_enum): Default to
2072 maintenance_test_settings_xxx.
2073 (_initialize_maint_test_settings): Initialize
2074 MAINTENANCE_TEST_SETTINGS_FILENAME.
2078 * breakpoint.h (remove_breakpoints_inf): Change return type to
2079 void, move function documentation here.
2080 * breakpoint.c (remove_breakpoints_inf): Change return type to
2081 void, move function documentation to header.
2085 * NEWS (Completion improvements): Mention "info threads".
2086 * thread.c (struct info_threads_opts, info_threads_option_defs)
2087 (make_info_threads_options_def_group): New.
2088 (info_threads_command): Use gdb::option::process_options.
2089 (info_threads_command_completer): New.
2090 (_initialize_thread): Use gdb::option::build_help to build the
2091 help text for "info threads".
2095 * defs.h (generic_load): Move from here...
2096 * symfile.h (generic_load): ... to here. Rename name parameter
2098 * symfile.c (generic_load): Add comment.
2103 (dw2_debug_names_iterator::find_vec_in_debug_names): Hoist
2104 declaration of without_params. Fix formatting.
2108 * ada-exp.y (find_primitive_type): Update.
2109 * ada-lang.h (ada_lookup_symbol): Update.
2110 * ada-lang.c (ada_lookup_symbol): Remove "is_a_field_of_this"
2112 (ada_lookup_encoded_symbol, ada_lookup_symbol_nonlocal): Update.
2116 PR breakpoints/24541
2117 * gdbarch.c: Regenerate.
2118 * gdbarch.h: Regenerate.
2119 * gdbarch.sh: Add 'stap_adjust_register'.
2120 * i386-tdep.c: Include '<unordered_set>'.
2121 (i386_stap_adjust_register): New function.
2122 (i386_elf_init_abi): Register 'i386_stap_adjust_register'.
2123 * stap-probe.c (stap_parse_register_operand): Call
2124 'gdbarch_stap_adjust_register'.
2129 https://bugzilla.redhat.com/show_bug.cgi?id=1723564
2130 * python/python.c (do_start_initialization): Use 'xmalloc'
2131 instead of 'PyMem_Malloc'.
2135 * dwarf2read.c (partial_die_info::read): Prefer the linkage name
2140 * arm-tdep.c (arm_objfile_data_key): Move lower. Change type to
2142 (arm_find_mapping_symbol, arm_record_special_symbol)
2143 (_initialize_arm_tdep): Update.
2144 (arm_objfile_data_free): Remove.
2148 * cp-valprint.c (cp_print_value_fields): Pass opts, not options,
2149 to cp_print_static_field.
2153 * minsyms.c (lookup_minimal_symbol_solib_trampoline): Remove.
2154 * minsyms.h (lookup_minimal_symbol_solib_trampoline): Don't
2159 * features/aarch64-core.c (create_feature_aarch64_core):
2161 * features/aarch64-core.xml: Add cpsr flags.
2165 * arm-tdep.c (arm_gnu_triplet_regexp): New function.
2166 (arm_gdbarch_init): Add arm_gnu_triplet_regexp.
2170 * arm-tdep.c (struct arm_per_objfile) <section_maps_sorted>: New
2172 (arm_find_mapping_symbol): Sort mapping symbol vectors on first
2174 (arm_record_special_symbol): Don't insert new symbol in sorted
2175 position, push it at the end.
2179 * arm-tdep.c (struct arm_mapping_symbol) (operator <): New.
2180 (arm_mapping_symbol_s): Remove.
2181 (DEF_VEC_O(arm_mapping_symbol_s)): Remove.
2182 (arm_mapping_symbol_vec): New typedef.
2183 (struct arm_per_objfile): Add constructor.
2184 <section_maps>: Change type to
2185 std::unique_ptr<arm_mapping_symbol_vec[]>.
2186 (arm_compare_mapping_symbols): Remove.
2187 (arm_find_mapping_symbol): Adjust to section_maps type change.
2188 (arm_objfile_data_free): Call delete on arm_per_objfile.
2189 (arm_record_special_symbol): Adjust to section_maps type change.
2190 Allocate arm_per_objfile with new.
2194 * cli/cli-cmds.c (alias_command): Compare the alias prefix
2195 with the command prefix.
2199 * tui/tui-wingeneral.c (tui_delete_win): Remove "return".
2200 * tui/tui-data.c (~tui_gen_win_info): Remove "if".
2204 * tui/tui-layout.c (init_and_make_win): Assert on unrecognized
2206 * tui/tui-data.h (struct tui_gen_win_info): Make constructor
2211 * tui/tui-winsource.c
2212 (tui_source_window_base::set_is_exec_point_at): Add check against
2217 * tui/tui-source.c (tui_set_source_content): Don't check before
2219 * tui/tui-disasm.c (tui_disassemble): Don't check before xfree.
2223 * tui/tui-winsource.h (tui_update_source_window_as_is)
2224 (tui_alloc_source_buffer, tui_line_is_displayed)
2225 (tui_addr_is_displayed): Change type of win_info.
2226 * tui/tui-winsource.c (tui_update_source_window_as_is)
2227 (tui_clear_source_content, tui_show_source_line)
2228 (tui_show_source_content, tui_source_window_base::refill)
2229 (tui_source_window_base::set_is_exec_point_at)
2230 (tui_source_window_base::set_is_exec_point_at)
2231 (tui_update_breakpoint_info, tui_set_exec_info_content): Update.
2232 (tui_alloc_source_buffer, tui_line_is_displayed)
2233 (tui_addr_is_displayed): Change type of win_info. Update.
2234 * tui/tui-win.c (tui_resize_all, tui_adjust_win_heights)
2235 (tui_source_window_base::do_make_visible_with_new_height):
2237 * tui/tui-source.c (tui_set_source_content)
2238 (tui_set_source_content_nil)
2239 (tui_source_window::do_scroll_vertical): Update.
2240 * tui/tui-layout.c (show_layout): Update.
2241 * tui/tui-disasm.c (tui_set_disassem_content)
2242 (tui_disasm_window::do_scroll_vertical): Update.
2243 * tui/tui-data.h (tui_win_content): Remove.
2244 (struct tui_gen_win_info) <content, content_size>: Remove.
2245 (struct tui_source_element): Add initializers and destructor.
2246 (union tui_which_element, struct tui_win_element): Remove.
2247 (struct tui_source_window_base) <content>: New field.
2248 (struct tui_data_window): Remove destructor.
2249 (tui_alloc_content, tui_free_win_content)
2250 (tui_free_all_source_wins_content): Don't declare.
2251 * tui/tui-data.c (tui_initialize_static_data): Update.
2252 (init_content_element, tui_alloc_content): Remove.
2253 (~tui_gen_win_info): Update.
2254 (~tui_data_window, tui_free_all_source_wins_content)
2255 (tui_free_win_content, free_content, free_content_elements):
2260 * tui/tui-winsource.h (tui_clear_source_content)
2261 (tui_erase_source_content, tui_show_source_content): Change type
2263 * tui/tui-winsource.c (tui_clear_source_content)
2264 (tui_erase_source_content, tui_show_source_content): Change type
2266 * tui/tui-win.c (tui_resize_all, tui_adjust_win_heights): Update.
2267 * tui/tui-source.h (tui_set_source_content_nil): Change type of
2269 * tui/tui-source.c (tui_set_source_content_nil): Change type of
2271 * tui/tui-layout.c (show_source_or_disasm_and_command): Update.
2275 * tui/tui-winsource.c (tui_clear_source_content)
2276 (tui_source_window_base::set_is_exec_point_at): Update.
2277 * tui/tui-source.c (tui_set_source_content_nil): Update.
2278 * tui/tui-data.h (struct tui_source_element) <is_exec_point>: Now
2280 * tui/tui-data.c (init_content_element): Update.
2284 * tui/tui-wingeneral.c (tui_gen_win_info::make_visible): Update.
2285 * tui/tui-win.c (make_invisible_and_set_new_height): Update.
2286 * tui/tui-layout.c (init_and_make_win): Update.
2287 * tui/tui.h (enum tui_win_type): Update.
2288 * tui/tui-data.h (tui_win_is_auxiliary): Rename from
2289 tui_win_is_auxillary.
2290 * tui/tui-data.c (tui_win_is_auxiliary): Rename from
2291 tui_win_is_auxillary.
2295 * tui/tui-wingeneral.c (tui_data_window::refresh_window): Update.
2296 * tui/tui-windata.c (tui_data_window::first_data_item_displayed)
2297 (tui_delete_data_content_windows, tui_display_all_data)
2298 (tui_data_window::do_scroll_vertical, tui_display_data_from):
2300 * tui/tui-win.c (tui_data_window::set_new_height): Simplify.
2301 * tui/tui-regs.c (tui_last_regs_line_no)
2302 (tui_line_from_reg_element_no, tui_first_reg_element_no_inline)
2303 (tui_show_registers): Update.
2304 (tui_show_register_group): Return void. Update.
2305 (tui_display_registers_from, tui_display_reg_element_at_line)
2306 (tui_display_registers_from_line, tui_check_register_values):
2308 * tui/tui-data.h (union tui_which_element) <data_window>: Remove
2310 (struct tui_data_window) <regs_content>: Now a std::vector.
2311 <regs_content_count>: Remove.
2312 (tui_add_content_elements, tui_free_data_content): Don't declare.
2313 * tui/tui-data.c (tui_data_window::clear_detail): Update.
2314 (init_content_element): Remove DATA_WIN case. Add assert.
2315 (tui_add_content_elements): Remove.
2316 (tui_data_window): Update.
2317 (tui_free_data_content): Remove.
2318 (free_content_elements): Remove DATA_WIN case.
2322 * tui/tui-data.c (tui_data_item_window): Update.
2323 * tui/tui-windata.h (tui_check_data_values): Don't declare.
2324 * tui/tui-windata.c (tui_display_all_data)
2325 (tui_display_data_from_line): Update.
2326 (tui_check_data_values): Remove.
2327 * tui/tui-regs.c (tui_show_register_group)
2328 (tui_display_reg_element_at_line): Update.
2329 * tui/tui-hooks.c (tui_register_changed)
2330 (tui_refresh_frame_and_register_information): Call
2331 tui_check_register_values.
2332 * tui/tui-data.h (struct tui_data_window) <data_content,
2333 data_content_count, data_type>: Remove.
2334 (enum tui_data_type): Remove.
2336 * tui/tui-data.c (tui_data_window::clear_detail)
2337 (~tui_data_window): Update.
2341 * tui/tui-windata.h (tui_first_data_item_displayed): Don't
2343 * tui/tui-windata.c (tui_data_window::first_data_item_displayed):
2344 Rename from tui_first_data_item_displayed. Update.
2345 (tui_data_window::refresh_all)
2346 (tui_data_window::do_scroll_vertical): Update.
2347 * tui/tui-data.h (struct tui_data_window)
2348 <first_data_item_displayed>: Declare new method.
2352 * tui/tui-data.h (tui_init_generic_part): Don't declare.
2353 * tui/tui-data.c (tui_init_generic_part): Remove, moving
2355 (tui_initialize_static_data): ...here.
2359 * tui/tui-regs.c (tui_show_registers, tui_show_register_group)
2360 (tui_display_registers_from, tui_check_register_values): Update.
2361 (tui_display_register): Remove win_info parameter; update.
2362 (tui_get_register): Change type of parameters.
2363 * tui/tui-data.h (struct tui_data_element): Remove.
2364 (union tui_which_element) <data>: Remove.
2365 <data_window>: Change type.
2366 (struct tui_data_item_window): New.
2367 * tui/tui-data.c (init_content_element): Remove DATA_ITEM_WIN
2369 (~tui_data_item_window): New destructor.
2370 (free_content_elements): Remove DATA_ITEM_WIN case.
2374 * tui/tui.h (enum tui_win_type) <MAX_WINDOWS, UNDEFINED_WIN>:
2379 * tui/tui-data.h (struct tui_command_element): Remove.
2380 (union tui_which_element) <command>: Remove.
2381 * tui/tui-data.c (init_content_element): Remove CMD_WIN case. Add
2383 (free_content_elements): Remove CMD_WIN case.
2387 * tui/tui-layout.c (tui_set_layout): Update.
2388 * tui/tui-data.h (struct tui_layout_def) <split>: Remove.
2389 * tui/tui-data.c (layout_def): Update.
2393 * tui/tui-wingeneral.c (tui_refresh_all): Update.
2394 * tui/tui-win.c (tui_resize_all, tui_adjust_win_heights)
2395 (tui_source_window_base::set_new_height): Update.
2396 * tui/tui-stack.c (tui_make_status_line): Change parameter type.
2398 (tui_set_locator_fullname, tui_set_locator_info)
2399 (tui_show_frame_info): Update.
2400 * tui/tui-source.c (tui_set_source_content)
2401 (tui_source_is_displayed): Update.
2402 * tui/tui-layout.c (show_source_disasm_command, show_data)
2403 (show_source_or_disasm_and_command): Update.
2404 * tui/tui-disasm.c (tui_set_disassem_content)
2405 (tui_get_begin_asm_address): Update.
2406 * tui/tui-data.h (struct tui_locator_element): Remove.
2407 (union tui_which_element) <locator>: Remove.
2408 (struct tui_locator_window): New.
2409 (tui_locator_win_info_ptr): Change return type.
2410 * tui/tui-data.c (_locator): Change type.
2411 (tui_locator_win_info_ptr): Change return type.
2412 (init_content_element): Remove LOCATOR_WIN case. Add assert.
2413 (tui_alloc_content): Add assert.
2417 * tui/tui-winsource.c
2418 (tui_exec_info_window::maybe_allocate_content): New method.
2419 (tui_set_exec_info_content, tui_show_exec_info_content): Update.
2420 * tui/tui-layout.c (init_and_make_win): Add EXEC_INFO_WIN case.
2421 (make_source_or_disasm_window): Add cast.
2422 * tui/tui-data.h (union tui_which_element) <simple_string>:
2424 (struct tui_source_info): New.
2425 (struct tui_source_window_base) <execution_info>: Change type.
2426 * tui/tui-data.c (init_content_element): Remove EXEC_INFO_WIN
2427 case, and add assert.
2428 (tui_alloc_content): Add assert.
2432 * tui/tui-data.h (tui_alloc_win_info): Don't declare.
2433 * tui/tui-layout.c (init_and_make_win): Use "new" directly.
2434 * tui/tui-data.c (tui_alloc_win_info): Remove.
2438 * tui/tui-win.c (tui_set_win_focus_to): Don't check window type.
2439 * tui/tui-wingeneral.c (tui_unhighlight_win): Check
2444 * tui/tui-win.c (tui_source_window_base::update_tab_width): Call
2445 make_visible_with_new_height method.
2446 (tui_win_info::make_visible_with_new_height): New method.
2447 (tui_source_window_base::do_make_visible_with_new_height)
2448 (tui_data_window::do_make_visible_with_new_height)
2449 (tui_cmd_window::do_make_visible_with_new_height): New methods.
2450 (make_visible_with_new_height): Remove.
2451 (tui_resize_all, tui_adjust_win_heights): Use
2452 make_visible_with_new_height method.
2453 * tui/tui-data.h (struct tui_win_info)
2454 <do_make_visible_with_new_height, make_visible_with_new_height>:
2456 (struct tui_source_window_base, struct tui_data_window)
2457 (struct tui_cmd_window) <do_make_visible_with_new_height>: New
2462 * tui/tui-win.c (tui_source_window_base::update_tab_width): New
2464 (update_tab_width): Call update_tab_width method.
2465 * tui/tui-data.h (struct tui_win_info)
2466 (struct tui_source_window_base) <update_tab_width>: New methods.
2470 * tui/tui-wingeneral.h (tui_make_window): Change type of "box_it"
2472 * tui/tui-wingeneral.c (tui_make_window): Change type of "box_it"
2474 (tui_gen_win_info::make_visible): Update.
2475 * tui/tui-layout.c (init_and_make_win): Change type of "box_it"
2477 * tui/tui-data.h (enum tui_box): New enum.
2478 (BOX_WINDOW, DONT_BOX_WINDOW): Remove defines.
2482 * tui/tui-layout.c (make_source_or_disasm_window): Always use
2483 init_and_make_win for EXEC_INFO_WIN.
2484 * tui/tui-data.h (struct tui_gen_win_info) <~tui_gen_win_info>: No
2486 (struct tui_win_info) <~tui_win_info>: Inline.
2487 (tui_source_exec_info_win_ptr, tui_disassem_exec_info_win_ptr):
2489 * tui/tui-data.c (source_win, disasm_win): Remove globals.
2490 (tui_source_exec_info_win_ptr, tui_disassem_exec_info_win_ptr):
2492 (tui_initialize_static_data): Update.
2493 (~tui_gen_win_info): Handle more cleanup here.
2494 (~tui_source_window_base): Delete "execution_info".
2495 (~tui_win_info): Move code to ~tui_gen_win_info; remove.
2499 * tui/tui-layout.c (make_command_window): Don't set
2501 (show_source_disasm_command): Call the reset method.
2502 (show_data): Don't set can_highlight. Call the reset method.
2503 (tui_gen_win_info::reset): Rename from init_gen_win_info
2504 (init_and_make_win): Simplify. Return tui_gen_win_info.
2505 (show_source_or_disasm_and_command): Call the reset method.
2506 * tui/tui-data.h (struct tui_gen_win_info) <reset>: New method.
2507 (struct tui_cmd_window): Set can_highlight.
2511 * tui/tui-wingeneral.c (tui_gen_win_info::make_visible): Rename
2513 (tui_make_visible, tui_make_invisible): Rewrite.
2514 (tui_win_info::make_visible): Remove.
2515 (tui_source_window_base::make_visible): Update.
2516 * tui/tui-data.h (struct tui_gen_win_info) <make_visible>: New
2517 method. Moved from...
2518 (struct tui_win_info) <make_visible>: ...here.
2522 * tui/tui-winsource.c
2523 (tui_source_window_base::do_scroll_horizontal): Remove direction
2525 * tui/tui-windata.c (tui_data_window::do_scroll_vertical): Remove
2526 direction parameter.
2527 * tui/tui-win.c (tui_win_info::forward_scroll)
2528 (tui_win_info::backward_scroll, tui_win_info::left_scroll)
2529 (tui_win_info::right_scroll): Update.
2530 * tui/tui-source.c (tui_source_window::do_scroll_vertical): Remove
2531 direction parameter.
2532 * tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Remove
2533 direction parameter.
2534 * tui/tui-data.h (enum tui_scroll_direction): Remove.
2535 (struct tui_win_info) <do_scroll_vertical, do_scroll_horizontal>:
2536 Remove direction parameter.
2537 (struct tui_source_window_base, struct tui_source_window)
2538 (struct tui_disasm_window, struct tui_data_window)
2539 (struct tui_cmd_window): Update.
2543 * tui/tui-winsource.h (tui_set_exec_info_content)
2544 (tui_show_exec_info_content, tui_erase_exec_info_content)
2545 (tui_clear_exec_info_content, tui_update_exec_info): Change
2546 argument to tui_source_window_base.
2547 * tui/tui-winsource.c (tui_set_exec_info_content)
2548 (tui_show_exec_info_content, tui_erase_exec_info_content)
2549 (tui_clear_exec_info_content, tui_update_exec_info): Change
2550 argument to tui_source_window_base.
2554 * tui/tui-winsource.h (tui_set_exec_info_content): Return void.
2555 * tui/tui-winsource.c (tui_set_exec_info_content): Return void.
2559 * tui/tui-winsource.c (tui_set_exec_info_content): Remove NULL
2564 * tui/tui-winsource.h (tui_alloc_source_buffer): Change return
2566 * tui/tui-winsource.c (tui_alloc_source_buffer): Change return
2568 * tui/tui-source.c (tui_set_source_content): Update.
2569 * tui/tui-disasm.c (tui_set_disassem_content): Update.
2573 * tui/tui-win.c (window_name_completer, tui_set_focus)
2574 (tui_all_windows_info): Use name method.
2575 * tui/tui-data.h (struct tui_gen_win_info)
2576 (struct tui_source_window, struct tui_disasm_window)
2577 (struct tui_data_window, struct tui_cmd_window) <name>: New
2579 (tui_win_name): Don't declare.
2580 * tui/tui-data.c (tui_partial_win_by_name): Use name method.
2581 (tui_win_name): Remove.
2585 * tui/tui-winsource.h (tui_update_source_window)
2586 (tui_update_source_window_as_is): Change parameter type.
2587 * tui/tui-winsource.c (tui_update_source_window): Change win_info
2588 to be a tui_source_window_base.
2589 (tui_update_source_window_as_is): Likewise.
2590 * tui/tui-win.c (make_visible_with_new_height): Update.
2594 * tui/tui-winsource.c (tui_erase_source_content)
2595 (tui_show_source_content, tui_show_exec_info_content)
2596 (tui_erase_exec_info_content): Use refresh_window method.
2597 * tui/tui-wingeneral.h (tui_refresh_win): Don't declare.
2598 * tui/tui-wingeneral.c (tui_gen_win_info::refresh_window): Rename
2599 from tui_refresh_win.
2600 (tui_data_window::refresh_window): New method.
2601 (tui_win_info::refresh, tui_source_window_base::refresh)
2602 (tui_refresh_all): Use refresh_window method.
2603 * tui/tui-stack.c (tui_show_locator_content): Call refresh_window
2605 * tui/tui-regs.c (tui_display_register): Call refresh_window
2607 * tui/tui-layout.c (show_source_disasm_command)
2608 (show_source_or_disasm_and_command): Call refresh_window method.
2609 * tui/tui-data.h (struct tui_gen_win_info)
2610 (struct tui_data_window, struct tui_cmd_window) <refresh_window>:
2615 * tui/tui.c (tui_rl_other_window, tui_enable)
2616 (tui_is_window_visible, tui_get_command_dimension): Update.
2617 * tui/tui-winsource.c (tui_update_source_window_as_is)
2618 (tui_clear_source_content, tui_erase_source_content)
2619 (tui_show_source_line, tui_source_window_base::refill)
2620 (tui_source_window_base::do_scroll_horizontal)
2621 (tui_source_window_base::set_is_exec_point_at)
2622 (tui_update_breakpoint_info, tui_set_exec_info_content)
2623 (tui_alloc_source_buffer, tui_line_is_displayed)
2624 (tui_addr_is_displayed): Update.
2625 * tui/tui-wingeneral.c (tui_unhighlight_win, tui_highlight_win)
2626 (tui_check_and_display_highlight_if_needed)
2627 (tui_win_info::make_visible, tui_win_info::refresh)
2628 (tui_refresh_all): Update.
2629 * tui/tui-windata.c (tui_first_data_item_displayed)
2630 (tui_delete_data_content_windows, tui_erase_data_content)
2631 (tui_display_all_data, tui_data_window::refresh_all)
2632 (tui_check_data_values): Update.
2633 * tui/tui-win.c (window_name_completer, tui_update_gdb_sizes)
2634 (tui_set_win_focus_to, tui_win_info::forward_scroll)
2635 (tui_win_info::backward_scroll, tui_refresh_all_win)
2636 (tui_resize_all, tui_set_focus, tui_all_windows_info)
2637 (update_tab_width, tui_set_win_height, tui_adjust_win_heights)
2638 (tui_source_window_base::set_new_height)
2639 (tui_data_window::set_new_height)
2640 (make_invisible_and_set_new_height)
2641 (make_visible_with_new_height, new_height_ok)
2642 (parse_scrolling_args): Update.
2643 * tui/tui-stack.c (tui_show_frame_info): Update.
2644 * tui/tui-source.c (tui_set_source_content)
2645 (tui_set_source_content_nil, tui_source_is_displayed)
2646 (tui_source_window::do_scroll_vertical): Update.
2647 * tui/tui-regs.c (tui_show_registers, tui_show_register_group)
2648 (tui_display_registers_from, tui_display_reg_element_at_line)
2649 (tui_check_register_values, tui_reg_command): Update.
2650 * tui/tui-layout.c (tui_default_win_height)
2651 (show_source_disasm_command, show_data, init_and_make_win)
2652 (show_source_or_disasm_and_command): Update.
2653 * tui/tui-io.c (update_cmdwin_start_line, tui_putc, tui_puts)
2654 (tui_redisplay_readline, tui_mld_flush)
2655 (tui_mld_erase_entire_line, tui_mld_getc, tui_cont_sig)
2657 * tui/tui-disasm.c (tui_set_disassem_content)
2658 (tui_disasm_window::do_scroll_vertical): Update.
2659 * tui/tui-data.h (struct tui_gen_win_info) <~tui_gen_win_info>:
2661 (struct tui_win_info): Derive from tui_gen_win_info.
2662 <~tui_win_info>: Mark as override.
2663 <generic>: Remove member.
2664 * tui/tui-data.c (tui_cmd_window::clear_detail, tui_next_win)
2665 (tui_prev_win, tui_partial_win_by_name, tui_win_info)
2666 (~tui_data_window, ~tui_win_info)
2667 (tui_free_all_source_wins_content): Update.
2668 * tui/tui-command.c (tui_refresh_cmd_win): Update.
2672 * tui/tui-layout.c (init_and_make_win): Use new.
2673 * tui/tui-data.h (struct tui_gen_win_info): Add constructor,
2674 destructor, initializers.
2675 (tui_alloc_generic_win_info): Don't declare.
2676 * tui/tui-data.c (_locator): Add argument to constructor.
2677 (source_win, disasm_win): New globals.
2678 (exec_info): Remove.
2679 (tui_source_exec_info_win_ptr, tui_disassem_exec_info_win_ptr):
2681 (tui_alloc_generic_win_info): Remove.
2682 (init_content_element): Use new.
2683 (tui_win_info::tui_win_info): Update.
2684 (free_content_elements) <case DATA_WIN>: Use delete.
2688 * tui/tui-wingeneral.c (tui_refresh_win): Update.
2689 * tui/tui-windata.c (tui_first_data_item_displayed)
2690 (tui_delete_data_content_windows): Update.
2691 * tui/tui-win.c (tui_data_window::set_new_height): Update.
2692 * tui/tui-regs.c (tui_show_registers, tui_show_register_group)
2693 (tui_display_registers_from, tui_check_register_values): Update.
2694 * tui/tui-data.h (union tui_which_element) <data_window>: Now a
2696 * tui/tui-data.c (init_content_element): Update. Allocate the new
2698 (tui_free_data_content): Update.
2699 (free_content_elements) <case DATA_WIN>: Free the window.
2703 * tui/tui-wingeneral.c (tui_unhighlight_win, tui_highlight_win):
2705 * tui/tui-layout.c (make_command_window)
2706 (show_source_disasm_command, show_data, init_and_make_win)
2707 (show_source_or_disasm_and_command): Update.
2708 * tui/tui-data.h (struct tui_win_info) <set_highlight>: New
2710 <can_highight, is_highlighted>: Now bool.
2711 (tui_set_win_highlight): Don't declare.
2712 * tui/tui-data.c (tui_set_win_highlight): Remove.
2716 * tui/tui-wingeneral.c (make_visible): Remove check of window
2721 * tui/tui-win.c (tui_win_info::max_height)
2722 (tui_cmd_window::max_height): New methods.
2723 (new_height_ok): Call max_height.
2724 * tui/tui-data.h (struct tui_win_info, struct tui_cmd_window)
2725 <max_height>: New method.
2729 * tui/tui-win.c (tui_source_window_base::set_new_height)
2730 (tui_data_window::set_new_height): New methods.
2731 (make_invisible_and_set_new_height): Call set_new_height method.
2732 * tui/tui-data.h (struct tui_win_info)
2733 (struct tui_source_window_base, struct tui_data_window)
2734 <set_new_height>: New method.
2738 * tui/tui.c (tui_rl_other_window): Call the refresh_all method.
2739 * tui/tui-windata.c (tui_data_window::refresh_all): Rename from
2740 tui_refresh_data_win.
2741 * tui/tui-win.c (tui_source_window_base::refresh_all): New
2743 (tui_refresh_all_win): Call the refresh_all method.
2744 (tui_set_focus): Likewise.
2745 * tui/tui-data.h (struct tui_win_info) <refresh_all>: New method.
2746 (struct tui_source_window_base, struct tui_data_window) <refresh>:
2751 * tui/tui-winsource.h (tui_refill_source_window)
2752 (tui_set_is_exec_point_at): Don't declare.
2753 * tui/tui-winsource.c (tui_update_source_windows_with_addr)
2754 (tui_source_window_base::refill): Rename from
2755 tui_refill_source_window.
2756 (tui_source_window_base::do_scroll_horizontal): Update.
2757 (tui_source_window_base::set_is_exec_point_at): Rename from
2758 tui_set_is_exec_point_at.
2759 (tui_update_all_breakpoint_info): Update.
2760 * tui/tui-stack.c (tui_show_frame_info): Update.
2761 * tui/tui-layout.c (show_data): Add cast.
2762 * tui/tui-hooks.c (tui_redisplay_source): Call refill method.
2763 * tui/tui-data.h (struct tui_source_window_base) <refill,
2764 set_is_exec_point_at>: New methods.
2765 (tui_source_windows, tui_add_to_source_windows): Update types.
2766 (tui_add_to_source_windows): Remove redundant declaration.
2767 * tui/tui-data.c (source_windows): Store tui_source_window_base.
2768 (tui_source_windows): Change return type.
2769 (tui_clear_source_windows_detail): Update.
2770 (tui_add_to_source_windows): Change type of parameter.
2771 (tui_free_all_source_wins_content): Update.
2775 * tui/tui-wingeneral.c (tui_win_info::refresh)
2776 (tui_source_window_base::refresh): New methods.
2777 (tui_refresh_all): Call the refresh method.
2778 * tui/tui-data.h (struct tui_win_info)
2779 (struct tui_source_window_base) <refresh>: New method.
2783 * tui/tui.h (tui_is_window_visible): Return bool.
2784 * tui/tui.c (tui_is_window_visible): Return bool.
2785 * tui/tui-wingeneral.c (tui_make_window, make_visible)
2786 (tui_make_visible, tui_make_invisible)
2787 (tui_win_info::make_visible)
2788 (tui_source_window_base::make_visible, make_all_visible)
2789 (tui_make_all_visible, tui_make_all_invisible): Update.
2790 * tui/tui-windata.c (tui_delete_data_content_windows): Update.
2791 * tui/tui-data.h (struct tui_gen_win_info) <is_visible>: Now
2793 (struct tui_win_info, struct tui_source_window_base)
2794 (struct tui_cmd_window) <make_visible>: Change parameter to bool.
2795 * tui/tui-data.c (tui_init_generic_part): Update.
2799 * tui/tui-wingeneral.c (tui_win_info::make_visible)
2800 (tui_source_window_base::make_visible): New methods.
2801 (make_all_visible): Make method call.
2802 * tui/tui-data.h (struct tui_win_info) <make_visible>: New method.
2803 (struct tui_source_window_base, struct tui_cmd_window): Override
2805 (tui_win_is_source_type): Don't declare.
2806 * tui/tui-data.c (tui_win_is_source_type): Remove.
2810 * tui/tui-layout.c (show_source_or_disasm_and_command): Remove
2815 * tui/tui-data.h (struct tui_data_window, struct tui_cmd_window):
2816 Inline constructor. Add initializers for members.
2817 * tui/tui-data.c (tui_data_window, tui_cmd_window): Remove
2818 constructors; now inline in class.
2822 * tui/tui-regs.c (tui_show_registers): Update.
2823 * tui/tui-data.h (struct tui_data_window) <display_regs>: Now
2825 * tui/tui-data.c (tui_data_window::clear_detail)
2826 (tui_data_window): Update.
2830 * tui/tui-windata.c (tui_display_all_data)
2831 (tui_display_data_from_line, tui_display_data_from)
2832 (tui_check_data_values, tui_data_window::do_scroll_vertical):
2834 * tui/tui-regs.c (tui_last_regs_line_no)
2835 (tui_line_from_reg_element_no, tui_first_reg_element_no_inline)
2836 (tui_show_registers, tui_show_register_group)
2837 (tui_display_registers_from, tui_display_reg_element_at_line)
2838 (tui_display_registers_from_line, tui_check_register_values)
2839 (tui_reg_next, tui_reg_prev): Update.
2840 * tui/tui-layout.c (tui_set_layout, show_data): Update.
2841 * tui/tui-data.h (struct tui_data_info): Remove. Move contents to
2843 (struct tui_win_info) <detail>: Remove. Add new fields from
2845 (TUI_DATA_WIN): Add cast.
2846 * tui/tui-data.c (tui_data_window::clear_detail, tui_data_window)
2847 (~tui_data_window): Simplify.
2851 * tui/tui-layout.c (show_source_disasm_command)
2852 (show_source_or_disasm_and_command): Update.
2853 * tui/tui-io.c (update_cmdwin_start_line)
2854 (tui_redisplay_readline): Update.
2855 * tui/tui-data.h (struct tui_command_info): Remove.
2856 (struct tui_win_info) <detail>: Remove command_info member.
2857 (struct tui_data_window) <start_line>: New member, from
2859 (TUI_CMD_WIN): Add casts.
2863 * tui/tui-winsource.c (tui_update_source_window)
2864 (tui_refill_source_window)
2865 (tui_source_window_base::do_scroll_horizontal)
2866 (tui_update_breakpoint_info, tui_set_exec_info_content)
2867 (tui_show_exec_info_content, tui_erase_exec_info_content)
2868 (tui_clear_exec_info_content): Update.
2869 * tui/tui-wingeneral.c (make_all_visible, tui_refresh_all):
2871 * tui/tui-win.c (make_invisible_and_set_new_height)
2872 (make_visible_with_new_height): Update.
2873 * tui/tui-source.c (tui_set_source_content)
2874 (tui_show_symtab_source): Update.
2875 * tui/tui-layout.c (extract_display_start_addr)
2876 (show_source_disasm_command, show_data)
2877 (make_source_or_disasm_window)
2878 (show_source_or_disasm_and_command): Update.
2879 * tui/tui-disasm.c (tui_set_disassem_content): Simplify.
2880 (tui_disasm_window::do_scroll_vertical): Remove shadowing
2882 * tui/tui-data.h (struct tui_source_info): Remove. Move contents
2883 to tui_source_window_base.
2884 (struct tui_win_info) <detail>: Remove source_info member.
2885 (struct tui_source_window_base) <has_locator>: Inline.
2886 Move contents from tui_source_info; rename has_locator member to
2888 (TUI_SRC_WIN, TUI_DISASM_WIN): Add casts.
2889 * tui/tui-data.c (tui_source_window_base::has_locator): Move to
2891 (tui_source_window_base::clear_detail, ~tui_source_window_base):
2893 (tui_free_all_source_wins_content): Cast to
2894 tui_source_window_base.
2898 * tui/tui-win.c (make_invisible_and_set_new_height)
2899 (make_visible_with_new_height): Call has_locator method.
2900 * tui/tui-layout.c (show_source_disasm_command, show_data)
2901 (show_source_or_disasm_and_command): Update for bool change.
2902 * tui/tui-data.h (struct tui_source_info) <has_locator>: Now bool.
2903 (tui_win_info) <has_locator>: New method.
2904 (struct tui_source_window_base) <has_locator>: New method.
2905 (tui_win_has_locator): Don't declare.
2906 * tui/tui-data.c (tui_source_window_base::has_locator): Rename
2907 from tui_win_has_locator.
2908 (tui_source_window_base): Use false, not FALSE.
2912 * tui/tui-data.h (tui_clear_win_detail): Don't declare.
2913 * tui/tui-data.c (tui_clear_source_windows_detail): Call the
2914 clear_detail method directly.
2915 (tui_clear_win_detail): Remove.
2919 * tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Use
2920 "this", not TUI_DISASM_WIN.
2924 * tui/tui-winsource.h (tui_horizontal_source_scroll): Don't
2926 * tui/tui-winsource.c
2927 (tui_source_window_base::do_scroll_horizontal): Rename from
2928 tui_horizontal_source_scroll.
2929 * tui/tui-windata.h (tui_vertical_data_scroll): Don't declare.
2930 * tui/tui-windata.c (tui_data_window::do_scroll_vertical): Rename
2931 from tui_vertical_data_scroll.
2932 * tui/tui-win.h (tui_scroll): Don't declare.
2933 * tui/tui-win.c (tui_win_info::forward_scroll)
2934 (tui_win_info::backward_scroll, tui_win_info::left_scroll)
2935 (tui_win_info::right_scroll): Rename and update.
2936 (tui_scroll_forward_command, tui_scroll_backward_command)
2937 (tui_scroll_left_command, tui_scroll_right_command): Update.
2938 (tui_scroll): Remove.
2939 * tui/tui-source.h: Don't declare tui_vertical_source_scroll.
2940 * tui/tui-source.c (tui_source_window::do_scroll_vertical): Rename
2941 from tui_vertical_source_scroll.
2942 * tui/tui-disasm.h (tui_vertical_disassem_scroll): Don't declare.
2943 * tui/tui-disasm.c (tui_disasm_window::do_scroll_vertical): Rename
2944 from tui_vertical_disassem_scroll.
2945 * tui/tui-data.h (struct tui_win_info) <do_scroll_vertical,
2946 do_scroll_horizontal>: New methods.
2947 <forward_scroll, backward_scroll, left_scroll, right_scroll>:
2949 (struct tui_source_window_base): Add do_scroll_horizontal.
2950 (struct tui_source_window, struct tui_disasm_window): Add
2952 (struct tui_data_window, struct tui_cmd_window): Add
2953 do_scroll_horizontal and do_scroll_vertical.
2954 * tui/tui-command.c (tui_dispatch_ctrl_char): Use method calls.
2958 * tui/tui-data.h (struct tui_source_window_base): New struct.
2959 (struct tui_source_window): Derive from tui_source_window_base.
2960 (struct tui_disasm_window): New struct.
2961 * tui/tui-data.c (tui_source_window_base::clear_detail): Rename
2962 from tui_source_window::clear_detail.
2963 (tui_source_window_base): Rename from tui_source_window.
2964 (~tui_source_window_base): Rename from ~tui_source_window.
2965 (tui_alloc_win_info): Create a tui_disasm_window.
2969 * tui/tui-data.h (struct tui_source_window)
2970 (struct tui_data_window): Declare destructors.
2971 * tui/tui-data.c (~tui_source_window, ~tui_data_window): New
2973 (tui_win_info): Simplify.
2977 * tui/tui-winsource.c (tui_display_main)
2978 (tui_update_source_windows_with_addr)
2979 (tui_update_all_breakpoint_info): Update.
2980 * tui/tui-win.c (tui_resize_all, tui_adjust_win_heights)
2981 (new_height_ok, parse_scrolling_args): Update.
2982 * tui/tui-stack.c (tui_show_frame_info): Update.
2983 * tui/tui-data.h (struct tui_list): Remove.
2984 (tui_source_windows): Return a reference to a std::vector.
2985 * tui/tui-data.c (source_windows): Now a std::vector.
2986 (tui_source_windows): Change return type.
2987 (tui_clear_source_windows): Rewrite.
2988 (tui_clear_source_windows_detail, tui_add_to_source_windows)
2989 (tui_free_all_source_wins_content): Rewrite.
2993 * tui/tui-data.h (struct tui_win_info, struct tui_source_window)
2994 (struct tui_data_window, struct tui_cmd_window): Declare
2995 clear_detail method.
2996 * tui/tui-data.c (tui_source_window::clear_detail)
2997 (tui_cmd_window::clear_detail, tui_data_window::clear_detail): New
2999 (tui_clear_win_detail): Simplify.
3003 * tui/tui-layout.c (make_source_window, make_disasm_window)
3004 (make_source_or_disasm_window): Remove win_info_ptr parameter.
3005 Return the new window.
3006 (show_source_disasm_command, show_data)
3007 (show_source_or_disasm_and_command): Update.
3011 * tui/tui-layout.c (make_command_window): Remove win_info_ptr
3012 parameter. Return the new window.
3013 (show_source_disasm_command): Update and remove NULL check.
3014 (show_source_or_disasm_and_command): Update.
3018 * tui/tui-layout.c (init_and_make_win): Remove NULL check.
3022 * tui/tui-data.h (struct tui_win_info): Make constructor
3023 protected. Make destructor virtual. Add initializers.
3024 (tui_source_window, tui_data_window, tui_cmd_window): New
3026 * tui/tui-data.c (tui_win_info): Rename from init_win_info. Now a
3027 constructor. Add "type" parameter.
3028 (tui_source_window, tui_data_window, tui_cmd_window): New
3030 (tui_alloc_win_info): Instantiate the appropriate subclass.
3034 * tui/tui-win.c (tui_resize_all): Use delete.
3035 * tui/tui-data.h (struct tui_win_info) <~tui_win_info>: Declare
3037 (tui_free_window): Don't declare.
3038 * tui/tui-data.c (~tui_win_info): Rename from tui_free_window.
3043 * tui/tui-data.h (struct tui_win_info): Add constructor.
3044 * tui/tui-data.c (tui_alloc_win_info): Use new.
3045 (tui_free_window): Use delete.
3049 * tui/tui-windata.h (tui_first_data_element_no_in_line): Don't
3051 * tui/tui-windata.c (tui_first_data_element_no_in_line): Remove.
3055 * tui/tui-data.h (tui_del_window, tui_del_data_windows): Don't
3057 * tui/tui-data.c (tui_del_window, tui_del_data_windows): Remove.
3061 * dwarf2read.c (create_addrmap_from_aranges)
3062 (read_debug_names_from_section): Print ptrdiff_t using '%s' and plongest
3067 * dwarf2read.h (dwarf2_section_info_def): Remove.
3068 (DEF_VEC_O (dwarf2_section_info_def)): Remove.
3069 * dwarf2read.c (struct dwo_sections) <types>: Change type to
3070 std::vector<dwarf2_section_info>.
3071 (struct dwo_file) <~dwo_file>: Remove.
3072 (dwarf2_per_objfile::~dwarf2_per_objfile): Don't manually free
3074 (dwarf2_per_objfile::locate_sections): Adjust to std::vector.
3075 (dwarf2_read_debug_names): Likewise.
3076 (create_debug_types_hash_table): Change parameter type to
3077 array_view, adjust code accordingly.
3078 (dwarf2_locate_dwo_sections): Adjust to std::vector.
3079 (partial_die_info::fixup): Likewise.
3080 (determine_prefix): Likewise.
3081 * dwarf-index-write.c (write_psymtabs_to_index): Adjust.
3085 * dwarf2read.c (struct dwo_file) <dbfd>: Change type to
3087 <~dwo_file>: Remove call to gdb_bfd_unref.
3088 (open_and_init_dwo_file): Move gdb_bfd_ref_ptr into dbfd field. Call
3089 gdb_bfd_ref_ptr::get.
3093 * dwarf2read.h (struct dwarf2_per_objfile) <dwo_files>: Change
3095 * dwarf2read.c (struct dwo_file): Initialize fields.
3097 (free_dwo_file): Remove, move content to ~dwo_file.
3098 (struct dwo_file_deleter): Remove.
3099 (dwo_file_up>: Remove custom deleter.
3100 (free_dwo_files): Remove.
3101 (dwarf2_per_objfile::~dwarf2_per_objfile): Don't explicitly free
3103 (process_skeletonless_type_units): Call unique_ptr::get.
3104 (allocate_dwo_file_hash_table): Add deleter to created hash
3105 table. Change return type to htab_up.
3106 (lookup_dwo_file_slot): Don't memset dwo_file, call
3108 (create_dwo_unit_in_dwp_v1): Allocate dwo_file with new.
3109 (create_dwo_unit_in_dwp_v2): Likewise.
3110 (open_and_init_dwo_file): Likewise.
3111 (free_dwo_file_from_slot): Remove.
3115 * dwarf2read.h (struct dwarf2_section_info) <readin,
3116 is_virtual>: Change type to bool.
3117 * dwarf2read.c (dwarf2_read_section, create_dwp_v2_section): Use
3122 * tui/tui-data.h (tui_init_content_element): Don't declare.
3126 * tui/tui-data.h (tui_init_win_info): Don't declare.
3130 * dwarf2read.h (abstract_to_concrete): Change type to
3131 std::unordered_map<sect_offset, std::vector<sect_offset>,
3132 gdb::hash_enum<sect_offset>>.
3136 * ada-lang.c (ada_evaluate_subexp) <case OP_ATR_FIRST>: Handle
3137 EVAL_AVOID_SIDE_EFFECTS specially.
3141 * source-cache.c (highlighter): New global.
3142 (source_cache::get_source_lines): Create a highlighter on demand.
3146 * defs.h (deprecated_interactive_hook): Delete declaration.
3147 * interps.c (clear_interpreter_hooks): Remove use of
3148 deprecated_interactive_hook.
3149 * top.c (deprecated_interactive_hook): Delete definition.
3150 * utils.c (maybe_quit): Remove use of deprecated_interactive_hook.
3155 * dwarf2read.h (abstract_to_concrete): Change type from
3156 std::unordered_map<die_info_ptr, std::vector<die_info_ptr>> to
3157 std::unordered_map<sect_offset, std::vector<sect_offset>>.
3158 * dwarf2read.c (read_variable): Update.
3159 (dwarf2_fetch_die_loc_sect_off): Update.
3164 * common/pathstuff.c (child_path): Make sure parent_len > 0 before
3165 accessing parent[parent_len - 1].
3170 * gdb/dtrace-probe.c (dtrace_static_probe_ops::get_probe): Don't
3171 call dtrace_process_dof with NULL dof.
3176 * contrib/gdb-add-index.sh: Update to handle dwz-m-ed executable.
3180 * tui/tui-wingeneral.c (tui_unhighlight_win, tui_highlight_win)
3181 (make_all_visible): Use address of member.
3185 * tui/tui-data.c (tui_clear_win_detail, init_win_info)
3186 (tui_free_window, free_content, free_content_elements): Remove
3188 * tui/tui-windata.c (tui_display_all_data): Remove unnecessary
3190 * tui/tui-regs.c (tui_show_register_group)
3191 (tui_display_registers_from, tui_display_reg_element_at_line):
3192 Remove unnecessary cast.
3196 * linux-nat.c (normal_mask): Delete.
3197 (_initialize_linux_nat): Don't initialise normal_mask.
3202 * dwarf-index-write.h (write_psymtabs_to_index): Add
3203 dwz_basename parameter.
3204 * dwarf-index-write.c (write_gdbindex): Move file writing to
3205 write_gdbindex_1. Change return type void.
3206 (assert_file_size): Move up, remove filename parameter.
3207 (write_gdbindex_1): New function.
3208 (write_debug_names): Change return type to void, call
3210 (struct index_wip_file): New struct.
3211 (write_psymtabs_to_index): Add dwz_basename parameter. Move
3212 file logic to index_wip_file. Write index for dwz file if
3214 (save_gdb_index_command): Pass basename of dwz file, if present.
3215 * dwarf-index-cache.c (index_cache::store): Obtain and pass
3216 build-id of dwz file, if present.
3217 * dwarf2read.c (struct dwz_file): Move to dwarf2read.h.
3218 (dwarf2_get_dwz_file): Likewise.
3219 * dwarf2read.h (struct dwz_file): Move from dwarf2read.c.
3220 (dwarf2_get_dwz_file): Likewise.
3224 * coffread.c (process_coff_symbol): Use xstrdup.
3225 * value.c (create_internalvar): Use xstrdup.
3229 * valops.c (value_cast, value_slice): Remove unnecessary cast.
3230 * breakpoint.c (stopin_command, stopat_command)
3231 (until_break_command, decode_location_default): Remove unnecessary
3233 * utils.c (subset_compare): Remove unnecessary cast.
3234 * ada-lang.c (ada_update_initial_language): Remove unnecessary
3236 * linespec.c (decode_line_with_last_displayed): Remove unnecessary
3238 * infcmd.c (path_command): Remove unnecessary cast.
3239 * coffread.c (decode_type): Remove unnecessary cast.
3240 * xcoffread.c (read_xcoff_symtab): Remove unnecessary cast.
3241 * mipsread.c (mipscoff_symfile_read): Remove unnecessary cast.
3242 * tui/tui-stack.c (tui_show_locator_content)
3243 (tui_show_frame_info): Remove unnecessary cast.
3244 * tui/tui-win.c (tui_scroll_forward_command)
3245 (tui_scroll_backward_command, tui_set_focus, tui_set_win_height)
3246 (parse_scrolling_args): Remove unnecessary cast.
3247 * tui/tui-data.c (init_win_info, tui_del_window)
3248 (tui_free_window, tui_del_data_windows, tui_free_data_content)
3249 (free_content_elements): Remove unnecessary cast.
3250 * tui/tui-windata.c (tui_first_data_item_displayed): Remove
3252 * tui/tui-source.c (tui_set_source_content)
3253 (tui_vertical_source_scroll): Remove unnecessary cast.
3254 * tui/tui-layout.c (tui_default_win_height): Remove unnecessary
3256 * tui/tui-io.c (tui_initialize_io): Remove unnecessary cast.
3257 * tui/tui-regs.c (tui_display_registers_from)
3258 (tui_display_register): Remove unnecessary cast.
3259 * tui/tui-wingeneral.c (tui_refresh_win, tui_delete_win)
3260 (tui_unhighlight_win, tui_highlight_win, tui_make_window)
3261 (make_visible): Remove unnecessary cast.
3262 * tui/tui-winsource.c (tui_erase_source_content)
3263 (tui_update_breakpoint_info, tui_set_exec_info_content): Remove
3265 * ax-gdb.c (agent_command_1): Remove unnecessary cast.
3266 * cli/cli-setshow.c (cmd_show_list): Remove unnecessary cast.
3267 * stabsread.c (read_type, read_array_type, read_range_type):
3268 Remove unnecessary cast.
3269 * mdebugread.c (mdebug_build_psymtabs): Remove unnecessary cast.
3270 (parse_symbol, parse_type, upgrade_type, parse_external)
3271 (parse_partial_symbols, psymtab_to_symtab_1, cross_ref): Remove
3273 * gdb_bfd.c (gdb_bfd_map_section): Remove unnecessary cast.
3277 * tui/tui-data.c (tui_alloc_generic_win_info)
3278 (tui_alloc_win_info, tui_add_content_elements): Remove NULL
3284 * f-typeprint.c (f_print_type): Don't return early for not
3285 associated or not allocated types.
3286 (f_type_print_varspec_suffix): Add print_rank parameter and print
3287 ranks of array types in case they dangling.
3288 (f_type_print_base): Add print_rank parameter.
3292 * NEWS: Mention new MI commands.
3293 * break-catch-throw.c (enum exception_event_kind): Move to
3295 (print_mention_exception_catchpoint): Output text as a single
3297 (catch_exception_command_1): Rename to...
3298 (catch_exception_event): ...this, make non-static, update header
3299 command, and change some parameter types.
3300 (catch_catch_command): Update for changes to
3301 catch_exception_command_1.
3302 (catch_throw_command): Likewise.
3303 (catch_rethrow_command): Likewise.
3304 * breakpoint.c (enum exception_event_kind): Delete.
3305 * breakpoint.h (enum exception_event_kind): Moved here from
3306 break-catch-throw.c.
3307 (catch_exception_event): Declare.
3308 * mi/mi-cmd-catch.c (mi_cmd_catch_exception_event): New function.
3309 (mi_cmd_catch_throw): New function.
3310 (mi_cmd_catch_rethrow): New function.
3311 (mi_cmd_catch_catch): New function.
3312 * mi/mi-cmds.c (mi_cmds): Add 'catch-throw', 'catch-rethrow', and
3313 'catch-catch' entries.
3314 * mi/mi-cmds.h (mi_cmd_catch_throw): Declare.
3315 (mi_cmd_catch_rethrow): Declare.
3316 (mi_cmd_catch_catch): Declare.
3320 * annotate.c (annotate_source_line): Change return type to void,
3321 update implementation to match.
3322 * annotate.h (annotate_source_line): Change return type to void,
3323 update header comment.
3324 * stack.c (print_frame_info): Don't change what frame information
3325 is printed based on whether annotations are on or not.
3329 * annotate.c: Add 'source.h' and 'objfiles.h' includes.
3330 (annotate_source): Make static.
3331 (annotate_source_line): Moved from source.c and renamed from
3332 identify_source_line. Update the return type.
3333 * annotate.h (annotate_source): Delete declaration.
3334 (annotate_source_line): Declaration moved from source.h, and
3335 renamed from identify_source_line. Return type updated.
3336 * source.c (identify_source_line): Moved to annotate.c and renamed
3337 to annotate_source_line.
3338 (info_line_command): Remove check of annotation_level.
3339 * source.h (identify_source_line): Move declaration to annotate.h
3340 and rename to annotate_source_line.
3341 * stack.c: Add 'annotate.h' include.
3342 (print_frame_info): Remove check of annotation_level before
3343 calling annotate_source_line.
3347 * source-cache.c (source_cache::get_plain_source_lines): Use
3348 open_source_file_with_line_charpos instead of just
3349 open_source_file, remove call to find_source_lines.
3350 (source_cache::get_source_lines): Likewise.
3351 * source.c (find_source_lines): Make static.
3352 (get_filename_and_charpos): Renamed into...
3353 (open_source_file_with_line_charpos): ..this along with changes to
3354 return a scoped_fd, and some other minor clean ups.
3355 (identify_source_line): Use open_source_file_with_line_charpos.
3356 (search_command_helper): Use open_source_file_with_line_charpos
3357 instead of just open_source_file, remove call to
3359 * source.h (open_source_file_with_line_charpos): Declare new
3361 (find_source_lines): Delete declaration.
3365 * source.c (get_filename_and_charpos): Remove fullname
3367 (identify_source_line): Update call to get_filename_and_charpos.
3372 * ui-style.h (skip_ansi_escape): Update comment.
3373 * ui-file.h (class no_terminal_escape_file): New class.
3374 * ui-file.c (no_terminal_escape_file::write)
3375 (no_terminal_escape_file::puts): New methods.
3376 * cli/cli-logging.c (handle_redirections): Use
3377 no_terminal_escape_file.
3381 * NEWS: Move convenience variable news above Python news.
3385 * gnulib: Move directory to top-level.
3386 * configure.ac: Don't configure gnulib.
3387 * configure: Rebuild.
3388 * common/common-defs.h: Use new path to gnulib.
3389 * Makefile.in (GNULIB_BUILDDIR): Now ../gnulib.
3391 (INCGNU): Look in new gnulib location.
3392 (HFILES_NO_SRCDIR): Remove gnulib files.
3393 (SUBDIR, REQUIRED_SUBDIRS): Remove gnulib.
3394 (generated_files): Remove GNULIB_H.
3395 ($(LIBGNU), all-lib): Remove targets.
3396 (distclean): Don't mention GNULIB_BUILDDIR.
3397 ($(GNULIB_BUILDDIR)/Makefile): Remove target.
3401 * symfile.c (add_symbol_file_command): Remove obsolete comment.
3402 Warn if symbol file does not provide any symbols.
3406 * source.c (find_and_open_source): Respect basenames_may_differ.
3410 * annotate.c (annotate_breakpoints_invalid): Make use of
3411 scoped_restore_terminal_state.
3412 (annotate_frames_invalid): Likewise.
3416 * ada-lang.c (ada_evaluate_subexp) <case BINOP_ASSIGN>: Always
3417 allow assignment to an internalvar.
3421 * ada-lex.l: Allow "_" in attribute names.
3426 * regcache.c (registers_changed): Don't call alloca.
3427 * top.c (execute_command): Don't call alloca.
3431 * cli/cli-setshow.c (cli/cli-setshow.c): New parameter
3432 'expression'. When parsing an expression, error out if there's
3433 junk after "unlimited".
3434 (parse_cli_var_uinteger, parse_cli_var_zuinteger_unlimited)
3435 (do_set_command): Adjust calls to is_unlimited_literal.
3439 * compile/compile.c (make_compile_options_def_group): Add braces
3440 around array_view initializer.
3441 * thread.c (make_thread_apply_all_options_def_group)
3442 (make_thread_apply_all_options_def_group): Likewise.
3446 * NEWS (New commands): Mention "maint test-options
3447 require-delimiter", "maint test-options unknown-is-error", "maint
3448 test-options unknown-is-operand" and "maint show
3449 test-options-completion-result".
3450 (New command options, command completion): New section.
3451 (Completion improvements): New section.
3452 Mention that you can abbreviate "unlimited".
3456 * cli/cli-utils.c (parse_flags, parse_flags_qcs): Delete.
3457 * cli/cli-utils.h (parse_flags, parse_flags_qcs): Delete.
3458 * unittests/cli-utils-selftests.c (test_parse_flags)
3459 (test_parse_flags_qcs): Delete.
3460 (test_cli_utils): Don't call deleted functions.
3464 * thread.c: Include "cli/cli-option.h".
3465 (tp_array_compar_ascending): Global.
3466 (tp_array_compar): Delete function.
3467 (tp_array_compar_ascending, tp_array_compar_descending): New
3469 (ascending_option_def, qcs_flag_option_def)
3470 (thr_qcs_flags_option_defs)
3471 (make_thread_apply_all_options_def_group)
3472 (make_thread_apply_options_def_group): New.
3473 (thread_apply_all_command): Use gdb::option::process_options.
3474 (thread_apply_command_completer)
3475 (thread_apply_all_command_completer): New.
3476 (thread_apply_command): Use gdb::option::process_options.
3477 (_initialize_thread): Delete THREAD_APPLY_FLAGS_HELP, replace it
3478 with a new THREAD_APPLY_OPTION_HELP. Use gdb::option::build_help
3479 to generate help text of "thread apply". Adjust "taas"'s help.
3480 * tid-parse.c (tid_range_parser::in_thread_range): New method.
3481 * tid-parse.h (tid_range_parser::in_thread_range): New method.
3485 * thread.c (thread_apply_command): Check for invalid TID with
3486 isdigit instead of !isalpha.
3490 * cli/cli-utils.c (parse_flags_qcs): Use validate_flags_qcs.
3491 (validate_flags_qcs): New.
3492 * cli/cli-utils.h (struct qcs_flags): Change field types to int.
3493 (validate_flags_qcs): Declare.
3494 * stack.c (qcs_flag_option_def, fr_qcs_flags_option_defs): New.
3495 (make_frame_apply_options_def_group): New.
3496 (frame_apply_command_count): Process options with
3497 gdb::option::process_options.
3498 (frame_apply_completer): New.
3499 (frame_apply_level_completer, frame_apply_all_completer)
3500 (frame_apply_completer): New.
3501 (_initialize_stack): Update help of "frame apply", "frame apply
3502 level", "frame apply all" and "faas" to mention supported options
3503 and install command completers.
3504 * stack.h (frame_apply_all_completer): Declare.
3505 * thread.c: Include "stack.h".
3506 (tfaas_command): Add "--".
3507 (_initialize_thread): Update help "tfaas" to mention supported
3508 options and install command completer.
3512 * completer.c (complete_nested_command_line): New.
3513 (gdb_completion_word_break_characters_throw): Add assertion.
3514 * completer.h (complete_nested_command_line): Declare.
3518 * stack.c (parse_backtrace_qualifiers): New.
3519 (backtrace_command): Use it.
3520 (backtrace_command_completer): Complete on qualifiers.
3524 * frame.c: Include "cli/cli-option.h.
3525 (user_set_backtrace_options): New.
3526 (backtrace_past_main, backtrace_past_entry, backtrace_limit):
3528 (get_prev_frame): Adjust.
3529 (boolean_option_def, uinteger_option_def)
3530 (set_backtrace_option_defs): New.
3531 (_initialize_frame): Adjust and use
3532 gdb::option::add_setshow_cmds_for_options to install "set
3533 backtrace past-main" and "set backtrace past-entry".
3534 * frame.h: Include "cli/cli-option.h".
3535 (struct frame_print_options): Forward declare.
3536 (print_frame_arguments_all, print_frame_arguments_scalars)
3537 (print_frame_arguments_none): Declare.
3538 (print_entry_values): Delete declaration.
3539 (struct frame_print_options, user_frame_print_options): New.
3540 (struct set_backtrace_options): New.
3541 (set_backtrace_option_defs, user_set_backtrace_options): Declare.
3542 * mi/mi-cmd-stack.c (mi_cmd_stack_list_frames)
3543 (mi_cmd_stack_list_locals, mi_cmd_stack_list_args)
3544 (mi_cmd_stack_list_variables): Pass down USER_FRAME_PRINT_OPTIONS.
3545 (list_args_or_locals): Add frame_print_options parameter.
3546 (mi_cmd_stack_info_frame): Pass down USER_FRAME_PRINT_OPTIONS.
3547 * python/py-framefilter.c (enumerate_args): Pass down
3548 USER_FRAME_PRINT_OPTIONS.
3549 * stack.c: Include "cli/cli-option.h".
3550 (print_frame_arguments_all, print_frame_arguments_scalars)
3551 (print_frame_arguments_none): Declare.
3552 (print_raw_frame_arguments, print_entry_values): Delete.
3553 (user_frame_print_options): New.
3554 (boolean_option_def, enum_option_def, frame_print_option_defs):
3556 (struct backtrace_cmd_options): New.
3557 (bt_flag_option_def): New.
3558 (backtrace_command_option_defs): New.
3559 (print_stack_frame): Pass down USER_FRAME_PRINT_OPTIONS.
3560 (print_frame_arg, read_frame_arg, print_frame_args)
3561 (print_frame_info, print_frame): Add frame_print_options parameter
3563 (info_frame_command_core): Pass down USER_FRAME_PRINT_OPTIONS.
3564 (backtrace_command_1): Add frame_print_options and
3565 backtrace_cmd_options parameters and use them.
3566 (make_backtrace_options_def_group): New.
3567 (backtrace_command): Process command options with
3568 gdb::option::process_options.
3569 (backtrace_command_completer): New.
3570 (_initialize_stack): Extend "backtrace"'s help to mention
3571 supported options. Install completer for "backtrace".
3572 Install some settings commands with add_setshow_cmds_for_options.
3576 * NEWS (Changed commands): Mention set/show print raw-frame-arguments,
3577 and that "set/show print raw frame-arguments" are now deprecated.
3579 * cli/cli-decode.c (add_setshow_boolean_cmd): Now returns the
3581 * command.h (add_setshow_boolean_cmd): Return cmd_list_element *.
3582 * stack.c (_initialize_stack): Install "set/show print
3583 raw-frame-arguments", and deprecate "set/show print raw
3585 * valprint.c (_initialize_valprint): Deprecate "set/show print
3590 * compile/compile.c (struct compile_options): New.
3591 (compile_flag_option_def, compile_command_option_defs)
3592 (make_compile_options_def_group): New.
3593 (compile_file_command): Handle options with
3594 gdb::option::process_options.
3595 (compile_file_command_completer): New function.
3596 (compile_code_command): Handle options with
3597 gdb::option::process_options.
3598 (compile_code_command_completer): New function.
3599 (_initialize_compiler): Install completers for "compile code" and
3600 "compile file". Mention available options in "compile code" and
3601 "compile code"'s help.
3602 * completer.c (advance_to_completion_word): New, factored out from
3604 (advance_to_expression_complete_word_point): ... this.
3605 (advance_to_filename_complete_word_point): New.
3606 * completer.h (advance_to_filename_complete_word_point): New
3611 * compile/compile.c: Include "cli/cli-option.h".
3612 (compile_print_value): Scope data pointer is now a
3613 value_print_options pointer; adjust.
3614 (compile_print_command): Process options. Scope data pointer is
3615 now a value_print_options pointer; adjust.
3616 (_initialize_compile): Update "compile print"'s help to include
3617 supported options. Install a completer for "compile print".
3618 * cp-valprint.c (show_vtblprint, show_objectprint)
3619 (show_static_field_print): Delete.
3620 (_initialize_cp_valprint): Don't install "set print
3621 static-members", "set print vtbl", "set print object" here.
3622 * printcmd.c: Include "cli/cli-option.h" and
3623 "common/gdb_optional.h".
3624 (print_command_parse_format): Rework to fill in a
3625 value_print_options instead of a format_data.
3626 (print_value): Change parameter type from format_data pointer to
3627 value_print_options reference. Adjust.
3628 (print_command_1): Process options. Adjust to pass down a
3629 value_print_options.
3630 (print_command_completer): New.
3631 (_initialize_printcmd): Install print_command_completer as
3632 handle_brkchars completer for the "print" command. Update
3633 "print"'s help to include supported options.
3634 * valprint.c: Include "cli/cli-option.h".
3635 (show_vtblprint, show_objectprint, show_static_field_print): Moved
3636 here from cp-valprint.c.
3637 (boolean_option_def, uinteger_option_def)
3638 (value_print_option_defs, make_value_print_options_def_group):
3639 New. Use gdb::option::add_setshow_cmds_for_options to install
3640 "set print elements", "set print null-stop", "set print repeats",
3641 "set print pretty", "set print union", "set print array", "set
3642 print address", "set print symbol", "set print array-indexes".
3643 * valprint.h: Include <string> and "cli/cli-option.h".
3644 (make_value_print_options_def_group): Declare.
3645 (print_value): Change parameter type from format_data pointer to
3646 value_print_options reference.
3647 (print_command_completer): Declare.
3651 * Makefile.in (SUBDIR_CLI_SRCS): Add cli/cli-option.c.
3652 (COMMON_SFILES): Add maint-test-settings.c.
3653 * cli/cli-decode.c (boolean_enums): New global, factored out from
3655 (add_setshow_boolean_cmd): ... here.
3656 * cli/cli-decode.h (boolean_enums): Declare.
3657 * cli/cli-option.c: New file.
3658 * cli/cli-option.h: New file.
3659 * cli/cli-setshow.c (parse_cli_boolean_value(const char **)): New,
3660 factored out from ...
3661 (parse_cli_boolean_value(const char *)): ... this.
3662 (is_unlimited_literal): Change parameter type to pointer to
3663 pointer. Adjust and advance ARG pointer.
3664 (parse_cli_var_uinteger, parse_cli_var_zuinteger_unlimited)
3665 (parse_cli_var_enum): New, factored out from ...
3666 (do_set_command): ... this. Adjust.
3667 * cli/cli-setshow.h (parse_cli_boolean_value)
3668 (parse_cli_var_uinteger, parse_cli_var_zuinteger_unlimited)
3669 (parse_cli_var_enum): Declare.
3670 * cli/cli-utils.c: Include "cli/cli-option.h".
3671 (get_ulongest): New.
3672 * cli/cli-utils.h (get_ulongest): Declare.
3673 (check_for_argument): New overloads.
3674 * maint-test-options.c: New file.
3678 * cli/cli-utils.c (number_or_range_parser::get_number): Do not
3679 parse a range if "-" is at the end of the string.
3683 * cli/cli-setshow.c (parse_auto_binary_operation)
3684 (parse_cli_boolean_value): Don't allow "o".
3688 * Makefile.in (COMMON_SFILES): Add maint-test-settings.c.
3689 * NEWS: Mention maint test-settings KIND.
3690 * maint-test-settings.c: New file.
3694 * cli/cli-decode.c (add_setshow_cmd_full): Remove "show"
3696 (add_setshow_string_cmd, add_setshow_string_noescape_cmd): Remove
3701 * cli/cli-setshow.c (do_set_command) <var_enum>: Detect junk
3706 * cli/cli-setshow.c (is_unlimited_literal): Allow abbreviations.
3710 * ax-gdb.c (agent_command_1): Remove skip_spaces call.
3711 * breakpoint.c (watch_maybe_just_location): Remove skip_spaces
3713 * cli/cli-cmds.c (apropos_command): Remove skip_spaces call.
3714 * cli/cli-utils.c (extract_info_print_args): Remove skip_spaces
3716 (check_for_argument): Skip spaces after argument.
3720 * thread.c (thread_apply_command): Adjust TID parsing.
3721 * tid-parse.c (tid_range_parser::finished): Ensure parsing end is
3722 detected before end of string.
3723 (tid_is_in_list): Error out if LIST is invalid.
3727 * completer.c (complete_line_internal_1): Rewind completion word
3729 (completion_tracker::advance_custom_word_point_by): Change
3730 parameter type to int.
3731 * completer.h (completion_tracker::advance_custom_word_point_by):
3736 * completer.c (advance_to_completion_word): Handle delimiters.
3740 * dwarf2read.c (add_partial_symbol): Skip nameless modules.
3744 * common/common-utils.c (xmalloc, xrealloc, xcalloc)
3745 (xmalloc_failed): Move to alloc.c.
3746 * alloc.c: New file.
3747 * Makefile.in (COMMON_SFILES): Add alloc.c.
3751 * nat/linux-waitpid.c: Don't include server.h.
3752 (linux_debug): Remove.
3753 (my_waitpid): Update.
3757 * infcall.c (_initialize_infcall): Remove trailing newline from
3759 * user-regs.c (_initialize_user_regs): Remove trailing newline
3761 * typeprint.c (_initialize_typeprint): Remove trailing newline
3763 * reverse.c (_initialize_reverse): Remove trailing newlines from
3765 * tracepoint.c (_initialize_tracepoint): Remove trailing newlines
3767 * language.c (add_set_language_command): Remove trailing newline
3769 * infcmd.c (_initialize_infcmd): Remove trailing newlines from
3771 * disasm.c (_initialize_disasm): Remove trailing newline from
3773 * top.c (init_main): Remove trailing newline from help.
3774 * interps.c (_initialize_interpreter): Remove trailing newline
3776 * btrace.c (_initialize_btrace): Remove trailing newlines from
3778 * breakpoint.c (_initialize_breakpoint): Remove trailing newline
3780 * python/python.c (_initialize_python): Remove trailing newline
3782 * spu-tdep.c (_initialize_spu_tdep): Remove trailing newlines from
3784 * tui/tui-win.c (_initialize_tui_win): Remove trailing newlines
3785 from help. Reformat some text.
3786 * tui/tui-stack.c (_initialize_tui_stack): Remove trailing newline
3788 * tui/tui-layout.c (_initialize_tui_layout): Remove trailing
3793 * darwin-nat.c (darwin_decode_exception_message)
3794 (darwin_decode_message, darwin_nat_target::kill): Fix shadowing.
3798 * valops.c (value_slice): Check for not allocated or not
3804 * dwarf2read.c (struct mapped_index::symbol_name_slot_invalid): Make
3805 sure an empty slot (defined by a 32-bit zero pair) is recognized as
3811 * linespec.c (linespec_lexer_lex_string): Remove incorrect
3812 "++(PARSER_STREAM (parser))" for "[abi"-prefixed colon. Add assert.
3817 * symtab.c (struct demangled_name_entry): Add language field.
3818 (symbol_set_names): Revert "[gdb/symtab] Fix language of duplicate
3819 static minimal symbol". Set and use language field.
3823 * ada-lang.c (_initialize_ada_language): Update help text.
3827 * m32c-tdep.c (m32c_m16c_address_to_pointer): Don't end warning
3829 * guile/guile.c (handle_boot_error): Don't end warning with a
3831 * cli/cli-cmds.c (exit_status_set_internal_vars): Don't end
3832 warning with a newline.
3833 * s12z-tdep.c (s12z_skip_prologue): Don't end warning with a
3835 (s12z_frame_cache): Likewise.
3836 * dwarf-index-cache.c (index_cache::store): Don't end warning with
3838 * solib-svr4.c (disable_probes_interface): Don't end warning with
3840 * nat/fork-inferior.c (fork_inferior): Don't end warning with a
3842 * python/python.c (do_finish_initialization): Don't end warning
3847 * python/py-breakpoint.c (gdbpy_breakpoint_created)
3848 (gdbpy_breakpoint_deleted, gdbpy_breakpoint_modified): Use
3853 * elfread.c (elf_read_minimal_symbols): Don't set the dbx objfile
3855 (elf_new_init): Don't call stabsread_new_init.
3856 * dbxread.c (coffstab_build_psymtabs): Set dbx objfile data.
3857 (elfstab_build_psymtabs): Likewise. Call stabsread_new_init.
3858 * coffread.c (coff_symfile_init): Don't set the dbx objfile data.
3864 * dwarf2read.c (read_func_scope): Handle DW_AT_main_subprogram.
3868 * source.c (find_and_open_source): Also rewrite relative file
3873 * annotate.c (annotate_thread_exited): Add "thread-exited"
3878 * maint.h (class scoped_command_stats): Use
3879 DISABLE_COPY_AND_ASSIGN.
3880 <print_time>: New method.
3881 * maint.c (scoped_command_stats, ~scoped_command_stats): Call
3883 (scoped_command_stats::print_time): New method.
3887 * riscv-tdep.c (riscv_insn::decode): Gracefully ignore
3888 instructions of lengths 6 or 8 bytes.
3892 * common/gdb_unique_ptr.h (make_unique_xstrdup): New.
3894 * ada-lang.c (catch_ada_completer): Use make_unique_xstrdup.
3895 * breakpoint.c (condition_completer): Likewise.
3896 * cli/cli-dump.c (scan_expression): Likewise.
3897 * common/filestuff.c (mkdir_recursive): Likewise.
3898 * common/gdb_tilde_expand.c (gdb_tilde_expand_up)
3899 * common/pathstuff.c (gdb_realpath, gdb_realpath_keepfile)
3900 (gdb_abspath): Likewise.
3901 * compile/compile-cplus-types.c
3902 (compile_cplus_instance::decl_name): Likewise.
3903 * completer.c (complete_explicit_location):
3904 (signal_completer, reg_or_group_completer_1): Likewise.
3905 * cp-support.c (cp_remove_params_if_any): Likewise.
3906 * fbsd-tdep.c (fbsd_core_vnode_path): Likewise.
3907 * guile/scm-safe-call.c (gdbscm_safe_eval_string): Likewise.
3908 * infcmd.c (strip_bg_char): Likewise.
3909 * linespec.c (copy_token_string): Likewise.
3910 * mi/mi-main.c (output_cores): Likewise.
3911 * psymtab.c (psymtab_search_name):
3912 * symfile.c (test_set_ext_lang_command): Likewise.
3913 * target.c (target_fileio_read_stralloc): Likewise.
3914 * tui/tui-regs.c (tui_reggroup_completer): Likewise.
3915 * value.c (complete_internalvar): Likewise.
3919 Add objfile property to gdb.Type.
3920 * NEWS: Mention Python API addition.
3921 * python/py-type.c (typy_get_objfile): New method.
3925 * NEWS: Mention the new set|show style [title|highlight].
3926 Mention changes to "show style", "help" and "apropos".
3930 * cli/cli-decode.h (apropos_cmd): Add verbose argument.
3931 * cli/cli-decode.c (apropos_cmd): Likewise. Use print_doc_of_command
3932 instead of print_help_for_command.
3933 (print_doc_of_command): New function.
3934 (help_list): Add 'apropos -v word' suggestion.
3935 (print_help_for_command): Style the command name using title style.
3936 * cli/cli-cmds.c (apropos_command): Parse optional -v flag.
3937 (_initialize_cli_cmds): Describe -v in apropos_command help.
3941 * cli/cli-style.h (cli_style_option): Add name in constructor,
3942 add m_name class member, add constructor with intensity,
3943 add name class function.
3944 (cli_style_option::add_setshow_commands): Remove name argument.
3945 (highlight_style, title_style): New styles.
3946 * cli/cli-style.c (do_show): New function that shows a style
3947 characteristic styling the style name with itself.
3948 (set_style_name): New function.
3949 (STYLE_ADD_SETSHOW_COMMANDS): Remove NAME arguments.
3950 Update all callers according to the changes in cli/cli-style.h.
3951 * utils.h (fputs_highlighted): New function.
3952 * utils.c (fputs_highlighted): Likewise.
3956 * NEWS: Mention new pipe command and new convenience variables.
3960 * cli/cli-cmds.c (pipe_command): New function.
3961 (_initialize_cli_cmds): Call add_com for pipe_command.
3962 Define | as an alias for pipe.
3963 (exit_status_set_internal_vars): New function.
3964 (shell_escape): Call exit_status_set_internal_vars.
3965 cli/cli-decode.c (find_command_name_length): Recognize | as
3966 a single character command.
3970 * gdbcmd.h (execute_command_to_ui_file): New declaration.
3971 top.c (execute_command_to_ui_file): New function, mostly a copy
3972 of execute_command_to_string.
3973 (execute_command_to_string): Implement by calling
3974 execute_command_to_ui_file.
3978 * top.h (saved_command_line): Remove declaration.
3979 * top.c (previous_saved_command_line, previous_repeat_arguments):
3981 (saved_command_line): Make static, define together with other
3983 (dont_repeat): Clear repeat_arguments.
3984 (repeat_previous, get_saved_command_line, save_command_line):
3986 (gdb_init): Initialize saved_command_line
3987 and previous_saved_command_line.
3988 * main.c (captured_main_1): Remove saved_command_line initialization.
3989 * event-top.c (handle_line_of_input): Update to use
3990 the new 'repeat' related functions instead of direct access to
3992 * command.h (repeat_previous, get_saved_command_line,
3993 save_command_line): New declarations.
3994 (dont_repeat): Add comment.
3998 * gdbtypes.h (struct range_bounds) <flag_upper_bound_is_count>:
4000 (TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED): Rewrite comment.
4005 * completer.c (complete): Initialize variable word.
4009 Ref.: https://bugzilla.redhat.com/show_bug.cgi?id=1708192
4010 Ref.: https://bugzilla.redhat.com/show_bug.cgi?id=1715008
4011 * dwarf2read.c (dwarf_decode_macro_bytes): Move check to see if
4012 'body' is NULL to the outter 'if', protecting the '!is_define'
4017 * dwarf2read.c (partial_die_parent_scope): Call dwarf_tag_name.
4018 (dwarf_unknown): New function.
4019 (dwarf_tag_name, dwarf_attr_name, dwarf_form_name)
4020 (dwarf_type_encoding_name): Use dwarf_unknown.
4025 * cp-valprint.c (cp_print_value_fields): Call
4026 cp_print_static_field inside "try".
4030 * inflow.c (struct terminal_info): Add default operator=.
4031 * configure: Rebuild.
4032 * warning.m4 (AM_GDB_WARNINGS): Add -Wdeprecated-copy,
4033 -Wdeprecated-copy-dtor, -Wredundant-move.
4038 * infcmd.c (print_return_value_1): Handle finish_print
4040 (show_print_finish): New function.
4041 (_initialize_infcmd): Add "set/show print finish" commands.
4042 * valprint.c (user_print_options): Initialize new member.
4043 * valprint.h (struct value_print_options) <finish_print>: New
4048 * ada-lang.c (ada_remove_Xbn_suffix)
4049 (find_old_style_renaming_symbol)
4050 (parse_old_style_renaming): Remove.
4051 (ada_find_renaming_symbol): Don't call
4052 find_old_style_renaming_symbol.
4053 (ada_is_renaming_symbol): Rename from
4054 ada_find_renaming_symbol. Remove "block" parameter. Return
4056 (ada_read_var_value): Update and simplify.
4057 * ada-exp.y (write_var_or_type): Remove old code.
4061 * event-top.c: Remove include comment.
4062 * inflow.c (class scoped_ignore_sigttou): Move from here...
4063 * inflow.h (class scoped_ignore_sigttou): ...to here.
4064 * ser-unix.c (hardwire_drain_output): Block SIGTTOU during drain.
4065 * top.c: Remove include comment.
4073 * target.c (target_follow_exec): Constify parameter.
4074 * target-delegates.c: Rebuild.
4075 * remote.c (remote_target::follow_exec): Constify parameter.
4076 * infrun.c (follow_exec): Constify parameter.
4077 * target.h (struct target_ops) <follow_exec>: Constify parameter.
4078 (target_follow_exec): Likewise.
4082 * aarch64-tdep.c (aarch64_execute_dwarf_cfa_vendor_op): Treat
4083 DW_CFA_AARCH64_negate_ra_state as nop on non pauth targets.
4087 * NEWS: Add debugredirect and testsuite sections.
4091 * riscv-tdep.c (riscv_gdbarch_init): Support determining flen from
4092 target descriptions using exclusively floating point register name
4098 * f-lang.c (build_fortran_types): Handle the case where
4099 gdbarch_floatformat_for_type returns a nullptr.
4104 * cli/cli-cmds.c (complete_command): Fix use of unitialized variable.
4109 * f-lang.c (build_fortran_types): Use floatformats_ia64_quad for
4111 * i386-tdep.c (i386_floatformat_for_type): Use
4112 floatformats_ia64_quad for the 16-byte floating point component
4113 within a fortran 32-byte complex number.
4117 * dwarf2read.c (struct cu_partial_die_info): Add constructor,
4118 delete default constructor.
4119 (find_partial_die): Update to return const struct.
4120 (partial_die_parent_scope): Move variable declaration into scope
4121 of its use and change its type to auto.
4122 (guess_partial_die_structure_name): Likewise.
4123 (partial_die_info::fixup): Likewise.
4127 * source.c (find_and_open_source): Remove cast.
4131 * annotate.c (annotate_source): Make "filename" const.
4132 * annotate.h (annotate_source): Use const.
4136 * disasm.c (set_disassembler_options): Send errors to stderr.
4140 * cli/cli-interp.c (struct saved_output_files): Add saved entry.
4141 (cli_interp_base::set_logging): Check debug_redirect.
4142 * cli/cli-interp.h (set_logging): Add debug_redirect parameter.
4143 * cli/cli-logging.c (debug_redirect): Add static variable.
4144 (pop_output_files): Add default param.
4145 (handle_redirections): Print debug setting.
4146 (show_logging_command): Likewise.
4147 (_initialize_cli_logging): Add debugredirect command.
4148 * interps.c (current_interp_set_logging): Add debug_redirect
4150 * interps.h (set_logging): Add debug_redirect parameter.
4151 (current_interp_set_logging): Likewise.
4152 * mi/mi-common.h: Likewise.
4153 * mi/mi-interp.c (mi_interp::set_logging): Likewise.
4158 * cli/cli-interp.c (cli_interp_base::set_logging): Create tee_file
4160 * cli/cli-interp.h (make_logging_output): Remove declaration.
4161 * cli/cli-logging.c (make_logging_output): Remove function.
4162 * mi/mi-interp.c (mi_interp::set_logging): Create tee_file
4164 * ui-file.c (tee_file::tee_file): Remove bools.
4165 (tee_file::~tee_file): Remove deletes.
4166 * ui-file.h (tee_file): Remove bools.
4170 * mi/mi-cmds.h (mi_cmd_complete): New function.
4171 * mi/mi-main.c (mi_cmd_complete): Likewise.
4172 * mi/mi-cmds.c: Define new MI command -complete.
4173 * NEWS: Mention new -complete command.
4177 * completer.h (complete): New function.
4178 * completer.c (complete): Likewise.
4179 * cli/cli-cmds.c: (complete_command): Update to use new complete()
4180 function defined in completer.h.
4184 * MAINTAINERS (Write After Approval): Add myself.
4189 * dwarf2read.c (struct cu_partial_die_info): New struct.
4190 (find_partial_die): Return cu_partial_die_info.
4191 (partial_die_parent_scope, guess_partial_die_structure_name)
4192 (partial_die_info::fixup): Handle new return type of find_partial_die.
4196 * stap-probe.c (stap_parse_register_operand): Make "regname" an
4197 "std::string", simplifying the algorithm.
4201 * stap-probe.c (handle_stap_probe): Fix complaint formatting.
4202 (stap_static_probe_ops::get_probes): Likewise.
4206 * stap-probe.c (stap_parse_register_operand): Make "if (*p->arg ==
4207 '-')" and "else if".
4208 (stap_parse_single_operand): Join checks for
4209 "gdbarch_stap_parse_special_token_p" and
4210 "gdbarch_stap_parse_special_token" in the same "if" statement.
4211 Invert check when verifying for operation on register
4216 * stap-probe.c (stap_get_opcode): Update comment.
4217 (stap_get_expected_argument_type): Likewise.
4218 (handle_stap_probe): Likewise.
4222 * i386-tdep.c (i386_stap_parse_special_token_triplet): Change
4223 return type to 'bool'. Adjust comment. Use 'bool' when
4225 (i386_stap_parse_special_token_three_arg_disp): Likewise.
4226 * stap-probe.c (stap_parse_argument_1): Likewise.
4227 (stap_is_operator): Likewise.
4228 (stap_is_generic_prefix): Likewise.
4229 (stap_is_register_prefix): Likewise.
4230 (stap_is_register_indirection_prefix): Likewise.
4231 (stap_is_integer_prefix): Likewise.
4232 (stap_generic_check_suffix): Likewise.
4233 (stap_check_integer_suffix): Likewise.
4234 (stap_check_register_suffix): Likewise.
4235 (stap_check_register_indirection_suffix): Likewise.
4236 (stap_parse_register_operand): Likewise.
4237 (stap_parse_single_operand): Likewise.
4238 (stap_parse_argument_1): Likewise.
4239 (stap_probe::get_argument_count): Likewise.
4240 (stap_is_operator): Likewise.
4244 * darwin-nat.c (thread_info_from_private_thread_info): Add struct
4249 * linux-thread-db.c (try_thread_db_load_1): Change return type
4251 (try_thread_db_load): Likewise.
4252 (try_thread_db_load_from_pdir_1): Likewise.
4253 (try_thread_db_load_from_pdir): Likewise.
4254 (try_thread_db_load_from_sdir): Likewise.
4255 (try_thread_db_load_from_dir): Likewise.
4256 (thread_db_load_search): Likewise.
4257 (has_libpthread): Likewise.
4258 (thread_db_load): Likewise.
4262 Ref.: https://bugzilla.redhat.com/show_bug.cgi?id=1708192
4263 * dwarf2read.c (parse_macro_definition): Check whether 'body' is
4264 NULL, and complain/return if that's the case.
4268 * s12z-tdep.c (push_pull_get_stack_adjustment): New function.
4269 (advance, posn, abstract_read_memory): New functions.
4270 [struct mem_read_abstraction]: New struct.
4271 (s12z_frame_cache): Use opcodes API to interpret stack frame code.
4275 * ada-lang.c (coerce_unspec_val_to_type): Only set address when
4276 value is not lval_memory.
4280 * solib.c (info_sharedlibrary_command): Style the file name.
4284 * aarch64-tdep.c (aarch64_vnh_type): Add half view.
4285 (aarch64_vnv_type): Likewise.
4286 * target-descriptions.c (make_gdb_type): Add TDESC_TYPE_IEEE_HALF.
4287 * common/tdesc.c: Likewise.
4288 * common/tdesc.h (enum tdesc_type_kind): Likewise.
4289 * features/aarch64-fpu.c (create_feature_aarch64_fpu): Regenerate.
4290 * features/aarch64-fpu.xml: Add ieee half view.
4291 * features/aarch64-sve.c (create_feature_aarch64_fpu): Likewise.
4292 * gdbtypes.c (gdbtypes_post_init): Add builtin_half
4293 * gdbtypes.h (struct builtin_type): Likewise.
4294 (struct objfile_type): Likewise.
4298 * language.c (language_sniff_from_mangled_name): Fix "langauge"
4300 * location.h (string_to_event_location): Likewise.
4308 * breakpoint.h (fix_multi_location_breakpoint_output_globally):
4309 New variable declaration.
4310 * breakpoint.c (fix_multi_location_breakpoint_output_globally):
4312 (print_one_breakpoint): Use ui_out::test_flags and new global
4313 variable to compute use_fixed_output.
4314 * mi/mi-main.h (mi_multi_location_breakpoint_output_fixed):
4316 * mi/mi-main.c (fix_multi_location_breakpoint_output): Remove.
4317 (mi_multi_location_breakpoint_output_fixed): Remove.
4318 (mi_cmd_fix_multi_location_breakpoint_output): Adjust to set the
4320 * mi/mi-out.c (mi_ui_out::mi_ui_out): Set
4321 fix_multi_location_breakpoint_output flag if version >= 3.
4322 * ui-out.h (enum ui_out_flag)
4323 <fix_multi_location_breakpoint_output>: New enumerator.
4327 * contrib/cc-with-tweaks.sh: Validate dwz's work.
4331 * ada-lang.c (catch_ada_completer): New function.
4332 (_initialize_ada_language): Use it.
4336 * thread.c (print_thread_info): Make "requested_threads" const.
4337 * gdbthread.h (print_thread_info): Make "requested_threads"
4339 * ada-tasks.c (print_ada_task_info): Make "taskno_str" const.
4340 * ada-lang.h (print_ada_task_info): Make "taskno_str" const.
4344 * gdbtypes.c (objfile_type_data): Change type.
4345 (objfile_type, _initialize_gdbtypes): Update.
4349 * dwarf2-frame.c (dwarf2_frame_objfile_data): Change type.
4350 (dwarf2_frame_find_fde, dwarf2_build_frame_info)
4351 (_initialize_dwarf2_frame): Update.
4355 * objc-lang.c (objc_objfile_data): Change type.
4356 (find_methods): Update.
4357 (_initialize_objc_lang): Remove.
4361 * stabsread.c (rs6000_builtin_type_data): Change type.
4362 (rs6000_builtin_type, _initialize_stabsread): Update.
4366 * mips-tdep.c (mips_pdr_data): Remove.
4367 (_initialize_mips_tdep): Update.
4371 * hppa-tdep.c (hppa_objfile_priv_data): Change type.
4372 (hppa_init_objfile_priv_data, read_unwind_info)
4373 (find_unwind_entry, _initialize_hppa_tdep): Update.
4377 * elfread.c (elf_objfile_gnu_ifunc_cache_data): Change type.
4378 (elf_gnu_ifunc_record_cache): Update. Don't allocate hash table
4380 (elf_gnu_ifunc_resolve_by_cache, _initialize_elfread): Update.
4384 * mdebugread.c (basic_type_data): Change type.
4385 (basic_type, _initialize_mdebugread): Update.
4389 * common/gdb_unique_ptr.h (struct noop_deleter): New.
4393 * nto-tdep.c (nto_inferior_data_reg): Change type.
4394 (nto_inferior_data): Update.
4395 (nto_inferior_data_cleanup, nto_new_inferior_data)
4396 (_initialize_nto_tdep): Remove.
4397 * nto-tdep.h (struct nto_inferior_data): Add initializers.
4401 * ada-lang.c (struct ada_inferior_data): Add initializers.
4402 (ada_inferior_data): Change type.
4403 (ada_inferior_data_cleanup): Remove.
4404 (get_ada_inferior_data, ada_inferior_exit)
4405 (struct ada_pspace_data): Add initializers, destructor.
4406 (ada_pspace_data_handle): Change type.
4407 (get_ada_pspace_data): Update.
4408 (ada_pspace_data_cleanup): Remove.
4412 * coffread.c (struct coff_symfile_info): Add initializers.
4413 (coff_objfile_data_key): Move lower. Change type.
4414 (coff_symfile_init, coff_symfile_read, _initialize_coffread):
4416 (coff_free_info): Remove.
4420 * fbsd-tdep.c (struct fbsd_pspace_data): Add initializers.
4421 (fbsd_pspace_data_handle): Move lower. Change type.
4422 (get_fbsd_pspace_data): Update.
4423 (fbsd_pspace_data_cleanup): Remove.
4424 (_initialize_fbsd_tdep): Update.
4428 * ada-tasks.c (ada_tasks_pspace_data_handle): Change type.
4429 (get_ada_tasks_pspace_data): Update.
4430 (ada_tasks_pspace_data_cleanup): Remove.
4431 (_initialize_tasks): Update.
4432 (ada_tasks_inferior_data_handle): Change type.
4433 (get_ada_tasks_inferior_data): Update.
4434 (ada_tasks_inferior_data_cleanup): Remove.
4435 (struct ada_tasks_pspace_data): Add initializers.
4439 * symfile.h (struct sym_probe_fns) <sym_get_probes>: Change type.
4440 * symfile-debug.c (debug_sym_get_probes): Change type.
4441 * stap-probe.c (handle_stap_probe):
4442 (stap_static_probe_ops::get_probes): Change type.
4443 * probe.h (class static_probe_ops) <get_probes>: Change type.
4444 * probe.c (class any_static_probe_ops) <get_probes>: Change type.
4445 (parse_probes_in_pspace): Update.
4446 (find_probes_in_objfile, find_probe_by_pc, collect_probes):
4448 (any_static_probe_ops::get_probes): Change type.
4449 * elfread.c (elfread_data): New typedef.
4450 (probe_key): Change type.
4451 (elf_get_probes): Likewise. Update.
4452 (probe_key_free): Remove.
4453 (_initialize_elfread): Update.
4454 * dtrace-probe.c (class dtrace_static_probe_ops) <get_probes>:
4456 (dtrace_process_dof_probe, dtrace_process_dof)
4457 (dtrace_static_probe_ops::get_probe): Change type.
4461 * xcoffread.c (struct xcoff_symfile_info): Rename from
4462 coff_symfile_info. Add initializers.
4463 (xcoff_objfile_data_key): Move lower. Change type.
4464 (XCOFF_DATA): Rewrite.
4465 (xcoff_free_info): Remove.
4466 (xcoff_symfile_init, _initialize_xcoffread, read_xcoff_symtab)
4467 (read_symbol, read_symbol_lineno, find_linenos, init_stringtab)
4468 (xcoff_initial_scan): Update.
4472 * solib-svr4.c (struct svr4_info): Add initializers and
4474 <probes_table>: Now an htab_up.
4475 (solib_svr4_pspace_data): Change type.
4476 (free_probes_table): Simplify.
4477 (~svr4_info): Rename from svr4_pspace_data_cleanup.
4478 (get_svr4_info, probes_table_htab_remove_objfile_probes)
4479 (probes_table_remove_objfile_probes, register_solib_event_probe)
4480 (solib_event_probe_at, svr4_update_solib_event_breakpoint)
4481 (_initialize_svr4_solib): Update.
4485 * remote.c (remote_pspace_data): Change type.
4486 (remote_pspace_data_cleanup): Remove.
4487 (get_remote_exec_file, set_pspace_remote_exec_file)
4488 (_initialize_remote): Update.
4492 * breakpoint.c (breakpoint_objfile_key): Change type.
4493 (get_breakpoint_objfile_data): Update.
4494 (free_breakpoint_objfile_data): Remove.
4495 (_initialize_breakpoint): Update.
4499 * linux-tdep.c (struct linux_info): Add initializers.
4500 (linux_inferior_data): Move. Change type.
4501 (invalidate_linux_cache_inf): Update.
4502 (linux_inferior_data_cleanup): Remove.
4503 (get_linux_inferior_data, _initialize_linux_tdep): Update.
4507 * auxv.c (auxv_inferior_data): Move. Change type.
4508 (auxv_inferior_data_cleanup): Remove.
4509 (invalidate_auxv_cache_inf): Rewrite.
4510 (get_auxv_inferior_data, _initialize_auxv): Update.
4514 * symfile-debug.c (struct debug_sym_fns_data): Add initializers.
4515 (symfile_debug_objfile_data_key): Change type.
4516 (symfile_debug_installed, debug_qf_has_symbols)
4517 (debug_qf_find_last_source_symtab)
4518 (debug_qf_forget_cached_source_info)
4519 (debug_qf_map_symtabs_matching_filename, debug_qf_lookup_symbol)
4520 (debug_qf_print_stats, debug_qf_dump)
4521 (debug_qf_expand_symtabs_for_function)
4522 (debug_qf_expand_all_symtabs)
4523 (debug_qf_expand_symtabs_with_fullname)
4524 (debug_qf_map_matching_symbols)
4525 (debug_qf_expand_symtabs_matching)
4526 (debug_qf_find_pc_sect_compunit_symtab)
4527 (debug_qf_map_symbol_filenames)
4528 (debug_qf_find_compunit_symtab_by_address, debug_sym_get_probes)
4529 (debug_sym_new_init, debug_sym_init, debug_sym_read)
4530 (debug_sym_read_psymbols, debug_sym_finish, debug_sym_offsets)
4531 (debug_sym_read_linetable, debug_sym_relocate): Update.
4532 (symfile_debug_free_objfile): Remove.
4533 (install_symfile_debug_logging, _initialize_symfile_debug):
4538 * dwarf2read.h (struct dwarf2_per_objfile): Don't inherit from
4539 allocate_on_obstack.
4540 * dwarf2read.c (dwarf2_objfile_data_key): Change type.
4541 (get_dwarf2_per_objfile): Update.
4542 (set_dwarf2_per_objfile): Remove.
4543 (dwarf2_has_info, dwarf2_get_section_info): Update.
4544 (dwarf2_free_objfile): Remove.
4545 (_initialize_dwarf2_read): Update.
4549 * auto-load.c (struct auto_load_pspace_info): Add destructor and
4551 <unsupported_script_warning_printed,
4552 script_not_found_warning_printed>: Now bool.
4553 (auto_load_pspace_data): Change type.
4554 (~auto_load_pspace_info): Rename from
4555 auto_load_pspace_data_cleanup.
4556 (get_auto_load_pspace_data, init_loaded_scripts_info)
4557 (clear_section_scripts, maybe_print_unsupported_script_warning)
4558 (maybe_print_script_not_found_warning, _initialize_auto_load):
4563 * objfiles.c (objfile_pspace_info): Add destructor and
4565 (objfiles_pspace_data): Change type.
4566 (~objfile_pspace_info): Rename from objfiles_pspace_data_cleanup.
4567 (get_objfile_pspace_data): Update.
4568 (objfiles_bfd_data): Change type.
4569 (get_objfile_bfd_data): Update.
4570 (objfile_bfd_data_free, _initialize_objfiles): Remove.
4574 * break-catch-syscall.c (catch_syscall_inferior_data): Move.
4576 (get_catch_syscall_inferior_data): Update.
4577 (catch_syscall_inferior_data_cleanup): Remove.
4578 (_initialize_break_catch_syscall): Update.
4582 * inflow.c (struct terminal_info): Add destructor and
4584 (inflow_inferior_data): Change type.
4585 (~terminal_info): Rename from inflow_inferior_data_cleanup.
4586 (get_inflow_inferior_data, inflow_inferior_exit)
4587 (swap_terminal_info, _initialize_inflow): Update.
4591 * target-dcache.c (target_dcache_cleanup): Remove.
4592 (target_dcache_aspace_key): Change type.
4593 (target_dcache_init_p, target_dcache_invalidate)
4594 (target_dcache_get, target_dcache_get_or_init)
4595 (_initialize_target_dcache): Update.
4596 * dcache.h (struct dcache_deleter): New.
4600 * symtab.c (struct symbol_cache): Add destructor and
4602 (symbol_cache_key): Move. Change type.
4603 (make_symbol_cache, free_symbol_cache): Remove.
4604 (get_symbol_cache): Update.
4605 (symbol_cache_cleanup): Remove.
4606 (ALL_PSPACES, symbol_cache_flush)
4607 (maintenance_print_symbol_cache)
4608 (maintenance_print_symbol_cache_statistics, _initialize_symtab):
4613 * symtab.c (struct main_info): Add destructor and initializers.
4614 (main_progspace_key): Move. Change type.
4615 (get_main_info): Update.
4616 (main_info_cleanup): Remove.
4617 (_initialize_symtab): Update.
4621 * registry.h (DECLARE_REGISTRY): Define the _key class.
4625 * NEWS: Merge two 'New commands' sections.
4629 * ada-valprint.c (ada_val_print_gnat_array): Remove language
4630 parameter and use Ada language definition instead.
4631 (ada_val_print_ptr): Remove unused language parameter.
4632 (ada_val_print_num): Remove language parameter and use Ada language
4634 (ada_val_print_enum, ada_val_print_flt): Remove unused language
4636 (ada_val_print_struct_union, ada_val_print_ref): Remove language
4637 parameter and use Ada language definition instead.
4638 (ada_val_print_1): Update all ada_val_print_xxx calls.
4639 Remove language parameter.
4640 (ada_val_print): Update ada_val_print_1 call.
4644 * remote.c (remote_hw_watchpoint_limit)
4645 (remote_hw_watchpoint_length_limit, remote_hw_breakpoint_limit):
4650 * maint.c (_initialize_maint_cmds): Move initialization code to
4652 (watchdog, show_watchdog): Move to remote.c.
4653 * remote.c (watchdog, show_watchdog): Move from maint.c. Make
4655 (_initialize_remote): Move initialization code from maint.c.
4656 * defs.h (watchdog): Don't declare.
4660 * tui/tui-interp.c: Include main.h.
4661 * interps.c: Include main.h.
4662 * main.h (interpreter_p): Declare.
4663 * defs.h (interpreter_p): Don't declare.
4667 * dwarf2loc.c: Include dwarf2read.h.
4668 * defs.h (read_unsigned_leb128): Don't declare.
4669 * dwarf2read.h (read_unsigned_leb128): Declare.
4673 * utils.c (fputs_maybe_filtered): Call can_emit_style_escape as a
4678 * utils.c (fputs_maybe_filtered): Reset style after paging, even
4679 when no wrap column is set.
4683 * c-lang.c (c_get_string): Handle non-C-style arrays.
4687 * typeprint.c (print_offset_data::update): Print the bit offset,
4688 not the number of bits remaining.
4692 * typeprint.c (print_offset_data::maybe_print_hole): Add extra
4693 padding at end of comment.
4697 * dwarf2loc.c (dwarf2_evaluate_property) <PROP_ADDR_OFFSET>:
4702 * common/scoped_mmap.c: Include common-defs.h.
4703 * common/scoped_mmap.h: Don't include config.h.
4707 * aarch64-tdep.c (stack_item_t): Remove typedef and DEF_VEC.
4708 (struct aarch64_call_info): Add initializers.
4709 <si>: Now a std::vector.
4710 (pass_on_stack, aarch64_push_dummy_call): Update.
4715 * ppc-linux-nat.c (thread_points_p): Remove typedef and DEF_VEC.
4716 (ppc_threads): Now a std::vector. Now static.
4717 (hwdebug_find_thread_points_by_tid)
4718 (ppc_linux_nat_target::low_new_thread, ppc_linux_thread_exit):
4723 * arc-tdep.c (arc_tdesc_init): Return bool.
4727 * arm-linux-nat.c (arm_linux_nat_target::can_use_hw_breakpoint):
4728 Use gdb_assert_not_reached.
4732 * compile/compile-cplus-types.c (compile_cplus_convert_enum): Use
4737 * arc-tdep.c (arc_tdesc_init): Use bool.
4741 * stack.c (select_frame_for_mi): Use "false", not "FALSE".
4745 * cli/cli-cmds.c (valid_command_p): Return bool.
4749 * cli/cli-decode.c (valid_user_defined_cmd_name_p): Return bool.
4750 * command.h (valid_user_defined_cmd_name_p): Channge return type.
4754 * python/lib/gdb/prompt.py (_ExtendedPrompt)
4755 <before_prompt_hook, get_show_string>: Fix incorrect use of 'is'
4756 operator for comparison.
4760 * psymtab.c (psymbol_name_matches, match_partial_symbol)
4761 (lookup_partial_symbol, print_partial_symbols)
4762 (recursively_search_psymtabs, sort_pst_symbols, psymbol_hash)
4763 (psymbol_compare): Update.
4764 (add_psymbol_to_bcache): Clear the entire psymbol.
4765 (maintenance_check_psymtabs): Update.
4766 * psympriv.h (struct partial_symbol): Don't derive from
4767 general_symbol_info.
4768 <obj_section, unrelocated_address, address,
4769 set_unrelocated_address>: Update.
4770 <ginfo>: New member.
4771 * dwarf-index-write.c (write_psymbols, debug_names::insert)
4772 (debug_names::write_psymbols): Update.
4776 * contrib/cc-with-tweaks.sh: Support -n arg.
4780 * corelow.c (core_target::detach): Ensure frame cache and
4781 register caches are cleared.
4782 inferior.c (exit_inferior_1): Likewise.
4787 * dictionary.c (collate_pending_symbols_by_language): Remove
4788 "struct" from foreach.
4789 * symtab.c (lookup_global_symbol_from_objfile)
4790 (lookup_symbol_in_objfile_from_linkage_name): Remove "struct" from
4792 * ser-tcp.c (net_open): Remove "struct" from foreach.
4793 * objfiles.c (objfile_relocate, objfile_rebase)
4794 (objfile_has_symbols): Remove "struct" from foreach.
4795 * minsyms.c (lookup_minimal_symbol_by_pc_section): Remove "struct"
4797 * dwarf2read.c (handle_struct_member_die): Remove "struct" from
4799 * darwin-nat.c (thread_info_from_private_thread_info): Remove
4800 "struct" from foreach.
4801 * ada-lang.c (create_excep_cond_exprs)
4802 (ada_exception_catchpoint_cond_string): Remove "struct" from
4807 * ada-exp.y (convert_char_literal): Check suffix of each
4813 * ada-exp.y (yywrap): Don't define.
4814 * ada-lex.l (%option): Add noyywrap
4819 * common/common-defs.h [__MINGW32__ || __CYGWIN__]: Define
4820 _WIN32_WINNT to the XP level, unless already defined to a higher
4823 * unittests/parse-connection-spec-selftests.c:
4825 * common/netstuff.c [USE_WIN32API]: Remove the _WIN32_WINNT
4828 * symfile.c (find_separate_debug_file): Remove colon from the
4829 drive spec of DOS/Windows file names of the target, so that the
4830 file name produced from DEBUGDIR and the target's directory will
4831 be valid on DOS/Windows systems.
4835 * rust-lang.c (val_print_struct): Handle printing structures
4840 * valarith.c (_initialize_valarith): Remove.
4844 * ada-lang.c (ada_value_primitive_field): Treat more fields as
4849 * ada-lang.c (ada_value_assign): Correctly compute starting offset
4850 for big-endian copies.
4853 * gdb/dwarf2read.c (read_3_bytes): New declaration.
4854 (read_attribute_value): Added DW_FORM_strx1-4 cases.
4855 (read_3_bytes): New function.
4859 * windows-nat.c (main_thread_id): Delete.
4860 (handle_output_debug_string): Replace main_thread_id by
4861 current_event.dwThreadId.
4862 (fake_create_process): Likewise.
4863 (get_windows_debug_event) <CREATE_PROCESS_DEBUG_EVENT>:
4864 Do not set main_thread_id.
4865 <LOAD_DLL_DEBUG_EVENT>: Replace main_thread_id by
4866 current_event.dwThreadId.
4867 <UNLOAD_DLL_DEBUG_EVENT>: Likewise.
4871 * windows-nat.c (get_windows_debug_event) <EXIT_PROCESS_DEBUG_EVENT>:
4872 Use current_event.dwThreadId instead of main_thread_id.
4876 * ada-lang.c (ada_lookup_simple_minsyms): New function.
4877 (create_excep_cond_exprs): Iterate over program spaces.
4878 (ada_exception_catchpoint_cond_string): Examine all minimal
4879 symbols for exception types.
4884 * dwarf2read.c (process_structure_scope): Handle case where type
4885 has template parameters but no symbol was created.
4890 * f-typeprint.c (f_type_print_base): Print 'allocatable' type
4892 * gdbtypes.h (TYPE_IS_ALLOCATABLE): Define.
4896 * f-typeprint.c (f_print_type): Update rules for printing
4898 (f_type_print_varspec_suffix): Likewise.
4903 * f-typeprint.c (f_type_print_varspec_suffix): Handle printing
4908 * f-lang.c (build_fortran_types): Change name of void type to
4910 * f-typeprint.c (f_type_print_base): Print the name of the void
4911 type, rather than a fixed string.
4912 * f-valprint.c (f_decorations): Use lower case void string.
4917 * dwarf2read.c (dwarf2_init_complex_target_type): Use different
4924 * f-exp.y (BINOP_INTRINSIC): New token.
4925 (exp): New parser rule handling BINOP_INTRINSIC.
4926 (f77_keywords): Add new builtin procedures.
4927 * f-lang.c (evaluate_subexp_f): Handle BINOP_MOD, UNOP_FORTRAN_CEILING,
4928 UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
4929 (operator_length_f): Handle UNOP_FORTRAN_CEILING,
4930 UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
4931 (print_unop_subexp_f): New function.
4932 (print_binop_subexp_f): New function.
4933 (print_subexp_f): Handle UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR,
4934 BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
4935 (dump_subexp_body_f): Likewise.
4936 (operator_check_f): Likewise.
4937 * fortran-operator.def: Add UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR,
4938 BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX
4942 * gdb/expprint.c (dump_subexp_body_standard): Remove use of
4944 * gdb/expression.h (exp_opcode): Include 'fortran-operator.def'.
4945 * gdb/f-exp.y (exp): Rename UNOP_KIND to UNOP_FORTRAN_KIND.
4946 * gdb/f-lang.c (evaluate_subexp_f): Likewise.
4947 (operator_length_f): New fuction.
4948 (print_subexp_f): New function.
4949 (op_name_f): New function.
4950 (dump_subexp_body_f): New function.
4951 (operator_check_f): New function.
4952 (exp_descriptor_f): Replace standard expression handling functions
4954 * gdb/fortran-operator.def: New file.
4955 * gdb/parse.c (operator_length_standard): Remove use of UNOP_KIND.
4956 * gdb/std-operator.def: Remove UNOP_KIND.
4960 * std-operator.def: Remove unbalanced, stray double quote
4969 * cp-valprint.c (cp_print_value_fields): Allow an additional level
4970 of depth when printing anonymous structs or unions.
4971 * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4972 Don't print either the top-level value, or the children if the
4973 max-depth is exceeded.
4974 (ppscm_print_children): When printing the key of a map, allow one
4975 extra level of depth.
4976 * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Don't
4977 print either the top-level value, or the children if the max-depth
4979 (print_children): When printing the key of a map, allow one extra
4981 * python/py-value.c (valpy_format_string): Add max_depth keyword.
4982 * valprint.c: (PRINT_MAX_DEPTH_DEFAULT): Define.
4983 (user_print_options): Initialise max_depth field.
4984 (val_print_scalar_or_string_type_p): New function.
4985 (val_print): Check to see if the max depth has been reached.
4986 (val_print_check_max_depth): Define new function.
4987 (show_print_max_depth): New function.
4988 (_initialize_valprint): Add 'print max-depth' option.
4989 * valprint.h (struct value_print_options) <max_depth>: New field.
4990 (val_print_check_max_depth): Declare new function.
4991 * NEWS: Document new feature.
4995 * ada-lang.c (ada_language_defn): Initialise new field.
4996 * c-lang.c (c_is_string_type_p): New function.
4997 (c_language_defn): Initialise new field.
4998 (cplus_language_defn): Initialise new field.
4999 (asm_language_defn): Initialise new field.
5000 (minimal_language_defn): Initialise new field.
5001 * c-lang.h (c_is_string_type_p): Declare new function.
5002 * d-lang.c (d_language_defn): Initialise new field.
5003 * f-lang.c (f_is_string_type_p): New function.
5004 (f_language_defn): Initialise new field.
5005 * go-lang.c (go_is_string_type_p): New function.
5006 (go_language_defn): Initialise new field.
5007 * language.c (default_is_string_type_p): New function.
5008 (unknown_language_defn): Initialise new field.
5009 (auto_language_defn): Initialise new field.
5010 * language.h (struct language_defn) <la_is_string_type_p>: New
5012 (default_is_string_type_p): Declare new function.
5013 * m2-lang.c (m2_language_defn): Initialise new field.
5014 * objc-lang.c (objc_language_defn): Initialise new field.
5015 * opencl-lang.c (opencl_language_defn): Initialise new field.
5016 * p-lang.c (pascal_is_string_type_p): New function.
5017 (pascal_language_defn): Initialise new field.
5018 * rust-lang.c (rust_is_string_type_p): New function.
5019 (rust_language_defn): Initialise new field.
5023 * language.h (struct language_defn) <la_struct_too_deep_ellipsis>:
5025 * ada-lang.c (ada_language_defn): Initialise new field.
5026 * c-lang.c (c_language_defn): Likewise.
5027 (cplus_language_defn): Likewise.
5028 (asm_language_defn): Likewise.
5029 (minimal_language_defn): Likewise.
5030 * d-lang.c (d_language_defn): Likewise.
5031 * f-lang.c (f_language_defn): Likewise.
5032 * go-lang.c (go_language_defn): Likewise.
5033 * language.c (unknown_language_defn): Likewise.
5034 (auto_language_defn): Likewise.
5035 * m2-lang.c (m2_language_defn): Likewise.
5036 * objc-lang.c (objc_language_defn): Likewise.
5037 * opencl-lang.c (opencl_language_defn): Likewise.
5038 * p-lang.c (pascal_language_defn): Likewise.
5039 * rust-lang.c (rust_language_defn): Likewise.
5043 * ada-lang.c (ada_is_character_type): Change return type to bool.
5044 (ada_is_string_type): Likewise.
5045 * ada-lang.h (ada_is_character_type): Update declaration
5046 (ada_is_string_type): Likewise.
5050 Support style in 'frame|thread apply'
5052 * gdbcmd.h (execute_command_to_string): New term_out parameter.
5053 * record.c (record_start, record_stop): Update callers of
5054 execute_command_to_string with false.
5055 * guile/guile.c (gdbscm_execute_gdb_command): Likewise.
5056 * ui-file.h (class ui_file): New term_out and can_emit_style_escape
5058 (class string_file): New constructor with term_out parameter.
5059 Override methods term_out and can_emit_style_escape. New member
5061 (class stdio_file): Override can_emit_style_escape.
5062 (class tee_file): Override term_out and can_emit_style_escape.
5063 * utils.h (can_emit_style_escape): Remove.
5064 * utils.c (can_emit_style_escape): Likewise.
5065 Update all callers of can_emit_style_escape (SOMESTREAM) to
5066 SOMESTREAM->can_emit_style_escape.
5067 * source-cache.c (source_cache::get_source_lines): Likewise.
5068 * stack.c (frame_apply_command_count): Call execute_command_to_string
5069 passing the term_out characteristic of the current gdb_stdout.
5070 * thread.c (thr_try_catch_cmd): Likewise.
5071 * top.c (execute_command_to_string): pass term_out parameter
5072 to construct the string_file for the command output.
5073 * ui-file.c (term_cli_styling): New function (most code moved
5074 from utils.c can_emit_style_escape).
5075 (string_file::string_file, string_file::can_emit_style_escape,
5076 stdio_file::can_emit_style_escape, tee_file::term_out,
5077 tee_file::can_emit_style_escape): New functions.
5081 * NEWS: Mention the new set|show may-call-functions.
5082 * infcall.c (may_call_functions_p): New variable.
5083 (show_may_call_functions_p): New function.
5084 (call_function_by_hand_dummy): Throws an error if not
5086 (_initialize_infcall): Call add_setshow_boolean_cmd for
5092 * cp-support.c (inspect_type): Don't attempt substitutions
5093 of symbol with the same name.
5098 * event-top.c (gdb_rl_callback_handler): Make "gdb_rl_expt"
5103 * xml-support.c (struct gdb_xml_parser) <set_error>: Take an
5105 (gdb_xml_start_element_wrapper, gdb_xml_end_element_wrapper)
5106 (gdb_xml_parser::parse): Use std::move.
5107 * python/python-internal.h (gdbpy_convert_exception): Take a const
5109 * python/py-value.c (valpy_getitem, valpy_nonzero): Use
5111 * python/py-utils.c (gdbpy_convert_exception): Take a const
5113 * python/py-inferior.c (infpy_write_memory, infpy_search_memory):
5115 * python/py-breakpoint.c (bppy_set_condition, bppy_set_commands):
5117 * mi/mi-main.c (mi_print_exception): Take a const reference.
5118 * main.c (handle_command_errors): Take a const reference.
5119 * linespec.c (parse_linespec): Use std::move.
5120 * infcall.c (run_inferior_call): Use std::move.
5121 (call_function_by_hand_dummy): Use std::move.
5122 * exec.c (try_open_exec_file): Use std::move.
5123 * exceptions.h (exception_print, exception_fprintf)
5124 (exception_print_same): Update.
5125 * exceptions.c (print_exception, exception_print)
5126 (exception_fprintf, exception_print_same): Change parameters to
5128 * event-top.c (gdb_rl_callback_read_char_wrapper): Update.
5129 * common/new-op.c: Use std::move.
5130 * common/common-exceptions.h (struct gdb_exception): Add move
5132 (struct gdb_exception_error, struct gdb_exception_quit, struct
5133 gdb_quit_bad_alloc): Change constructor to move constructor.
5134 (throw_exception): Change parameter to rvalue reference.
5135 * common/common-exceptions.c (throw_exception): Take rvalue
5137 * cli/cli-interp.c (safe_execute_command): Use std::move.
5138 * breakpoint.c (insert_bp_location, location_to_sals): Use
5143 * guile/scm-exception.c (gdbscm_scm_from_gdb_exception)
5144 (gdbscm_throw_gdb_exception): Take a gdbscm_gdb_exception.
5145 * guile/scm-block.c, guile/scm-breakpoint.c, guile/scm-cmd.c,
5146 guile/scm-disasm.c, guile/scm-frame.c, guile/scm-lazy-string.c,
5147 guile/scm-math.c, guile/scm-param.c, guile/scm-ports.c,
5148 guile/scm-symbol.c, guile/scm-symtab.c, guile/scm-type.c,
5149 guile/scm-value.c: Use unpack.
5150 * guile/guile-internal.h (gdbscm_scm_from_gdb_exception): Take a
5151 gdbscm_gdb_exception.
5152 (gdbscm_throw_gdb_exception): Likewise.
5153 (struct gdbscm_gdb_exception): New.
5154 (unpack): New function.
5155 (gdbscm_wrap): Use unpack.
5159 * event-top.c (gdb_rl_callback_read_char_wrapper_noexcept)
5160 (gdb_rl_callback_handler): Use std::move.
5161 * common/common-exceptions.h (struct gdb_exception): Add move
5162 assignment operator.
5163 (throw_exception_sjlj): Change "exception" to const reference.
5164 * common/common-exceptions.c (exceptions_state_mc_catch): Update.
5165 (throw_exception_sjlj): Change "exception" to const reference.
5169 * xml-support.c (gdb_xml_parser::gdb_xml_parser): Update.
5170 * python/py-value.c (valpy_getitem, valpy_nonzero): Update.
5171 * python/py-inferior.c (infpy_write_memory, infpy_search_memory):
5173 * python/py-breakpoint.c (bppy_set_condition, bppy_set_commands):
5175 * mi/mi-interp.c (mi_interp::exec): Update.
5176 * linespec.c (parse_linespec): Update.
5177 * infcall.c (run_inferior_call): Update.
5178 * guile/scm-value.c (gdbscm_value_to_lazy_string): Update.
5179 * guile/scm-symbol.c (gdbscm_lookup_symbol)
5180 (gdbscm_lookup_global_symbol): Update.
5181 * guile/scm-param.c (gdbscm_parameter_value): Update.
5182 * guile/scm-frame.c (gdbscm_frame_read_register)
5183 (gdbscm_frame_read_var): Update.
5184 * guile/scm-breakpoint.c (gdbscm_register_breakpoint_x): Update.
5185 * exec.c (try_open_exec_file): Update.
5186 * event-top.c (gdb_rl_callback_read_char_wrapper_noexcept)
5187 (gdb_rl_callback_handler): Update.
5188 * common/common-exceptions.h (exception_none): Don't declare.
5189 * common/common-exceptions.c (exception_none): Don't define.
5190 (struct catcher) <exception>: Update.
5191 * cli/cli-interp.c (safe_execute_command): Update.
5192 * breakpoint.c (insert_bp_location, location_to_sals): Update.
5196 * dwarf2read.c (skip_one_die): Add DW_FORM_strx.
5197 (read_attribute_value): Likewise.
5198 (dwarf2_read_addr_index): Update comment.
5199 (read_str_index): Add DW_FORM_strx.
5200 (dwarf2_string_attr): Likewise.
5201 (dwarf2_const_value_attr): Likewise.
5202 (dump_die_shallow): Likewise.
5203 (dwarf2_fetch_constant_bytes): Likewise.
5204 (skip_form_bytes): Likewise.
5205 * testsuite/lib/dwarf.exp (_handle_DW_FORM): Add DW_FORM_strx.
5211 * linux-tdep.c (dump_mapping_p): Add new parameters ADDR and
5212 OFFSET. Verify if current mapping contains an ELF header.
5213 (linux_find_memory_regions_full): Adjust call to
5221 * dwarf2-frame.c (read_initial_length): Be consistent about using
5222 unsigned representation of length.
5223 (decode_frame_entry_1): Likewise. Check for wraparound of
5224 end pointer as well as buffer overflow.
5228 * aarch64-tdep.c (aarch64_gdbarch_init): Use "pulongest" to print
5233 * amd64-tdep.c (amd64_has_unaligned_fields): Ignore bitfields.
5237 * s12z-tdep.c (s12z_unwind_pc): Delete.
5238 (s12z_unwind_sp): Delete.
5239 (s12z_gdbarch_init): Don't register deleted functions with
5244 * rl78-tdep.c (rl78_unwind_sp): Delete.
5245 (rl78_gdbarch_init): Don't register deleted function with gdbarch.
5249 * xstormy16-tdep.c (xstormy16_unwind_sp): Delete.
5250 (xstormy16_unwind_pc): Delete.
5251 (xstormy16_dummy_id): Delete.
5252 (xstormy16_gdbarch_init): Don't register deleted functions with
5257 * vax-tdep.c (vax_unwind_pc): Delete.
5258 (vax_gdbarch_init): Don't register deleted function with gdbarch.
5262 * v850-tdep.c (v850_unwind_sp): Delete.
5263 (v850_unwind_pc): Delete.
5264 (v850_dummy_id): Delete.
5265 (v850_gdbarch_init): Don't register deleted functions with
5270 * tilegx-tdep.c (tilegx_unwind_sp): Delete.
5271 (tilegx_unwind_pc): Delete.
5272 (tilegx_unwind_dummy_id): Delete.
5273 (tilegx_gdbarch_init): Don't register deleted functions with
5278 * tic6x-tdep.c (tic6x_unwind_sp): Delete.
5279 (tic6x_dummy_id): Delete.
5280 (tic6x_gdbarch_init): Don't register deleted functions with
5285 * sparc-tdep.c (sparc_unwind_pc): Delete.
5286 (sparc32_gdbarch_init): Don't register deleted function with
5291 * sh-tdep.c (sh_unwind_sp): Delete.
5292 (sh_unwind_pc): Delete.
5293 (sh_dummy_id): Delete.
5294 (sh_gdbarch_init): Don't register deleted functions with
5299 * score-tdep.c (score_unwind_sp): Delete.
5300 (score_unwind_pc): Delete.
5301 (score_dummy_id): Delete.
5302 (score_gdbarch_init): Don't register deleted functions with
5307 * rx-tdep.c (rx_unwind_pc): Delete.
5308 (rx_unwind_sp): Delete.
5309 (rx_dummy_id): Delete.
5310 (rx_gdbarch_init): Don't register deleted functions with
5311 gdbarch. Update comment.
5315 * rs6000-tdep.c (rs6000_unwind_pc): Delete.
5316 (rs6000_dummy_id): Delete.
5317 (rs6000_gdbarch_init): Don't register deleted functions with
5322 * or1k-tdep.c (or1k_dummy_id): Delete.
5323 (or1k_gdbarch_init): Don't register deleted function with gdbarch.
5327 * nios2-tdep.c (nios2_dummy_id): Delete.
5328 (nios2_unwind_sp): Delete.
5329 (nios2_gdbarch_init): Don't register deleted functions with
5334 * nds32-tdep.c (nds32_dummy_id): Delete.
5335 (nds32_unwind_pc): Delete.
5336 (nds32_unwind_sp): Delete.
5337 (nds32_gdbarch_init): Don't register deleted functions with
5342 * msp430-tdep.c (msp430_unwind_pc): Delete.
5343 (msp430_unwind_sp): Delete.
5344 (msp430_dummy_id): Delete.
5345 (msp430_gdbarch_init): Don't register deleted functions with
5350 * moxie-tdep.c (moxie_unwind_sp): Delete.
5351 (moxie_unwind_pc): Delete.
5352 (moxie_dummy_id): Delete.
5353 (moxie_gdbarch_init): Don't register deleted functions with
5358 * mn10300-tdep.c (mn10300_dummy_id): Delete.
5359 (mn10300_unwind_pc): Delete.
5360 (mn10300_unwind_sp): Delete.
5361 (mn10300_push_dummy_call): Use gdbarch_unwind_sp not
5363 (mn10300_frame_unwind_init): Don't register deleted functions with
5368 * mep-tdep.c (mep_unwind_pc): Delete.
5369 (mep_unwind_sp): Delete.
5370 (mep_dummy_id): Delete.
5371 (mep_gdbarch_init): Don't register deleted functions with
5376 * m68hc11-tdep.c (m68hc11_unwind_pc): Delete.
5377 (m68hc11_unwind_sp): Delete.
5378 (m68hc11_gdbarch_init): Don't register deleted functions with
5383 * m32r-tdep.c (m32r_unwind_sp): Delete.
5384 (m32r_unwind_pc): Delete.
5385 (m32r_dummy_id): Delete.
5386 (m32r_gdbarch_init): Don't register deleted functions with
5391 * m32c-tdep.c (m32c_unwind_pc): Delete.
5392 (m32c_unwind_sp): Delete.
5393 (m32c_dummy_id): Delete.
5394 (m32c_gdbarch_init): Don't register deleted functions with
5399 * gdb/lm32-tdep.c (lm32_unwind_sp): Delete.
5400 (lm32_unwind_pc): Delete.
5401 (lm32_dummy_id): Delete.
5402 (lm32_gdbarch_init): Don't register deleted functions with
5407 * gdb/iq2000-tdep.c (iq2000_unwind_sp): Delete.
5408 (iq2000_unwind_pc): Delete.
5409 (iq2000_dummy_id): Delete.
5410 (iq2000_gdbarch_init): Don't register deleted functions with
5415 * nds32-tdep.c (nds32_type_align): Delete.
5416 (nds32_push_dummy_call): Use type_align instead.
5420 * arm-tdep.c (arm_type_align): Only handle vector override case.
5421 (arm_push_dummy_call): Use type_align.
5422 (arm_gdbarch_init): Register arm_type_align gdbarch function.
5426 * aarch64-tdep.c (aarch64_type_align): Only handle vector override
5428 (pass_on_stack): Use type_align.
5429 (aarch64_gdbarch_init): Register aarch64_type_align gdbarch
5434 * dwarf2read.c (line_header::file_name_at): Remove unused
5440 * contrib/cc-with-tweaks.sh: Remove superfluous .alt file after dwz
5446 * dwarf2-frame.c(dwarf_expr_executor::get_addr_index): Update comment
5447 * dwarf2expr.c(dwarf_expr_context::execute_stack_op): Add DW_OP_addrx
5448 * dwarf2expr.h(dwarf_expr_context::offset): Update comment
5449 (dwarf_expr_context::get_addr_index): Likewise
5450 * dwarf2loc.c(dwarf_evaluate_loc_desc::get_addr_index): Likewise
5451 (symbol_needs_eval_context::get_addr_index): Likewise
5452 (disassemble_dwarf_expression): Add DW_OP_addrx
5453 * dwarf2read.c(attr_value_as_address): Add DW_FORM_addrx
5454 (read_cutu_die_from_dwo): Update comment
5455 (skip_one_die): Add DW_FORM_addrx
5456 (read_attribute_value): Likewise
5457 (var_decode_location): Add DW_OP_addrx
5458 (dwarf2_const_value_attr): Add DW_FORM_addrx
5459 (dump_die_shallow): Likewise
5460 (dwarf2_fetch_constant_bytes): Likewise
5461 (decode_locdesc): Add DW_OP_addrx
5462 (skip_form_bytes): Add DW_FORM_addrx
5466 * MAINTAINERS (Write After Approval): Add self.
5470 * solib-svr4.c (get_svr4_info): Add pspace parameter.
5471 (svr4_keep_data_in_core): Pass current_program_space to get_svr4_info.
5472 (open_symbol_file_object): Likewise.
5473 (svr4_default_sos): Add info parameter.
5474 (svr4_read_so_list): Likewise.
5475 (svr4_current_sos_direct): Adjust functions calls to pass down
5477 (svr4_current_sos_1): Add info parameter.
5478 (svr4_current_sos): Call get_svr4_info, pass info down to
5480 (svr4_fetch_objfile_link_map): Pass objfile->pspace to
5482 (svr4_in_dynsym_resolve_code): Pass current_program_space to
5484 (probes_table_htab_remove_objfile_probes): Pass objfile->pspace
5486 (probes_table_remove_objfile_probes): Likewise.
5487 (register_solib_event_probe): Add info parameter.
5488 (solist_update_incremental): Pass info parameter down to
5490 (disable_probes_interface): Add info parameter.
5491 (svr4_handle_solib_event): Pass current_program_space to
5492 get_svr4_info. Adjust disable_probes_interface cleanup.
5493 (svr4_create_probe_breakpoints): Add info parameter, pass it
5494 down to register_solib_event_probe.
5495 (svr4_create_solib_event_breakpoints): Add info parameter,
5496 pass it down to svr4_create_probe_breakpoints.
5497 (enable_break): Pass info down to
5498 svr4_create_solib_event_breakpoints.
5499 (svr4_solib_create_inferior_hook): Pass current_program_space to
5501 (svr4_clear_solib): Likewise.
5505 * solib-svr4.c (svr4_free_objfile_observer): New.
5506 (probe_and_action::objfile): New field.
5507 (probes_table_htab_remove_objfile_probes)
5508 (probes_table_remove_objfile_probes): New functions.
5509 (register_solib_event_probe): Add 'objfile' parameter. Store it
5510 in the new probe_and_action. Don't store the probe in 'lookup'.
5511 (svr4_create_probe_breakpoints): Pass objfile to
5512 register_solib_event_probe.
5513 (_initialize_svr4_solib): Register a free_objfile observer.
5517 * common/queue.h: Remove.
5521 * event-loop.c: Don't include "common/queue.h".
5525 * remote.c (remote_target): Use delete.
5526 * remote-notif.h: Include <list>, not "common/queue.h".
5527 (notif_client_p): Remove typedef.
5528 (remote_notif_state): Add constructor, destructor, initializer.
5529 <notif_queue>: Now a std::list.
5530 (remote_notif_state_xfree): Don't declare.
5531 * remote-notif.c (remote_notif_process, handle_notification)
5532 (remote_notif_state_allocate): Update.
5533 (~remote_notif_state): Rename from remote_notif_state_xfree.
5537 * symfile.c (reread_symbols): Update.
5538 * objfiles.c (objfile_register_static_link)
5539 (objfile_lookup_static_link): Update
5540 (~objfile) Don't delete static_links.
5541 * objfiles.h (struct objfile) <static_links>: Now an htab_up.
5545 * type-stack.h (struct type_stack) <insert>: Constify string.
5546 * type-stack.c (type_stack::insert): Constify string.
5547 * gdbtypes.h (lookup_template_type): Update.
5548 (address_space_name_to_int): Update.
5549 * gdbtypes.c (address_space_name_to_int): Make space_identifier
5551 (lookup_template_type): Make name const.
5552 * c-exp.y: Update rules.
5553 (lex_one_token, classify_name, classify_inner_name)
5554 (c_print_token): Update.
5555 * p-exp.y: Update rules.
5557 * f-exp.y: Update rules.
5559 * d-exp.y: Update rules.
5560 (lex_one_token, classify_name, classify_inner_name): Update.
5561 * parse.c (write_dollar_variable, copy_name): Return std::string.
5562 * parser-defs.h (copy_name): Change return type.
5563 * m2-exp.y: Update rules.
5565 * go-exp.y (lex_one_token): Update.
5567 (classify_unsafe_function, classify_packaged_name)
5568 (classify_name, yylex): Update.
5572 * configure.ac: add --enable-source-highlight switch.
5573 * configure: Regenerate.
5574 * top.c (print_gdb_version): plumb --enable-source-highlight
5575 status to "show configuration".
5579 * ada-lang.c (ada_is_variant_part, ada_to_fixed_type_1):
5581 (empty_record, ada_template_to_fixed_record_type_1)
5582 (template_to_static_fixed_type)
5583 (to_record_with_fixed_variant_part): Use INIT_NONE_SPECIFIC.
5584 * cp-abi.c (value_rtti_type): Check HAVE_CPLUS_STRUCT.
5585 * gdbtypes.h (INIT_NONE_SPECIFIC, ADA_TYPE_P): New
5591 * source.c (print_source_lines_base): Advance "iter" when a
5592 control character is seen.
5596 * inferior.h (struct infcall_suspend_state_deleter):
5597 Catch exception in destructor to avoid crash.
5601 * cli/cli-cmds.c (_initialize_cli_cmds): Move "shell" "!" alias
5602 close to the add_com "shell".
5606 * process-stratum-target.h (class process_stratum_target)
5607 <stratum>: Add "final".
5611 * dwarf2read.c (dwarf2_init_complex_target_type): Check "tt"
5612 against nullptr before use.
5616 * nat/linux-waitpid.c (linux_debug): Call debug_vprintf.
5621 * riscv-tdep.c (riscv_breakpoint_kind_from_pc): Hanndle case where
5622 code read might fail, assume 4-byte breakpoint in that case.
5626 * amd64-tdep.c (amd64_classify_aggregate): Use cp_pass_by_reference
5627 rather than a hand-rolled POD check when checking for forced MEMORY
5632 * aarch64-linux-nat.c (store_sveregs_to_thread): Set vector length.
5633 * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_set_vq): New
5635 (aarch64_sve_regs_copy_to_reg_buf): Remove VG checks.
5636 (aarch64_sve_regs_copy_from_reg_buf): Likewise.
5637 * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_set_vq): New
5642 * aarch64-linux-nat.c
5643 (aarch64_linux_nat_target::thread_architecture): Add override.
5644 * aarch64-tdep.c (aarch64_gdbarch_init): Ensure different tdesc for
5649 * aarch64-tdep.c (aarch64_gdbarch_init): Move gdbarch lookup.
5653 * dwarf2read.c (dwarf2_init_complex_target_type): Handle complex
5654 target types of size 96-bits, add some additional comments, and
5655 check that the builtin type we found was the correct size.
5659 * utils.c (prompt_for_continue): Don't restore the styling at the
5660 end, as applied_style has the wrong value. This fixes styling in
5661 long lists of file names that are interrupted by the "Continue?"
5666 * ada-lang.c (ada_language_defn): Remove use of LANG_MAGIC.
5667 * c-lang.c (c_language_defn): Likewise.
5668 (cplus_language_defn): Likewise.
5669 (asm_language_defn): Likewise.
5670 (minimal_language_defn): Likewise.
5671 * d-lang.c (d_language_defn): Likewise.
5672 * f-lang.c (f_language_defn): Likewise.
5673 * go-lang.c (go_language_defn): Likewise.
5674 * language.c (unknown_language_defn): Likewise.
5675 (auto_language_defn): Likewise.
5676 * language.h (struct language_defn): Remove la_magic field.
5677 (LANG_MAGIC): Delete.
5678 * m2-lang.c (m2_language_defn): Remove use of LANG_MAGIC.
5679 * objc-lang.c (objc_language_defn): Likewise.
5680 * opencl-lang.c (opencl_language_defn): Likewise.
5681 * p-lang.c (pascal_language_defn): Likewise.
5682 * rust-lang.c (rust_language_defn): Likewise.
5686 * riscv-tdep.c (riscv_type_align): New function.
5687 (riscv_type_alignment): Delete.
5688 (riscv_arg_location): Use 'type_align'.
5689 (riscv_gdbarch_init): Register riscv_type_align gdbarch function.
5693 * gdbtypes.c (type_align): A struct with no non-static fields also
5698 * riscv-tdep.c (riscv_call_arg_complex_float): Fix offset of first
5700 (riscv_struct_info::riscv_struct_info): Initialise m_offsets
5702 (riscv_struct_info::analyse): New implementation using new
5703 analyse_inner member function.
5704 (riscv_struct_info::field_offset): New member function.
5705 (riscv_struct_info::m_offsets): New member variable.
5706 (riscv_struct_info::analyse_inner): New private member function,
5707 takes the old implementation of riscv_struct_info::analyse but
5708 extended to track field offsets.
5709 (riscv_call_arg_struct): Update the struct folding special cases
5710 to handle cases where empty C++ structs, which are non-zero
5712 (riscv_arg_location): Initialise the length of each location, a
5713 non-zero length now indicates the location is in use.
5714 (riscv_push_dummy_call): Allow for the first location having a
5715 non-zero offset when setting up arguments.
5716 (riscv_return_value): Likewise, but for return values.
5720 * utils.c (internal_vproblem): Make "msg" const.
5724 * aarch64-tdep.c (aarch64_analyze_prologue_test): Reset saved regs.
5725 * trad-frame.c (trad_frame_reset_saved_regs): New function.
5726 (trad_frame_alloc_saved_regs): Call trad_frame_reset_saved_regs.
5727 * trad-frame.h (trad_frame_reset_saved_regs): New declaration.
5731 * amd64-linux-nat.c (amd64_linux_collect_native_gregset): New
5733 (fill_gregset): Call amd64_linux_collect_native_gregset instead
5734 of amd64_collect_native_gregset.
5735 (amd64_linux_nat_target::store_registers): Likewise.
5739 * symtab.c (lookup_global_symbol_from_objfile)
5740 (lookup_symbol_in_objfile_from_linkage_name): Use the iterator.
5741 * objfiles.h (class separate_debug_iterator): New.
5742 (class separate_debug_range): New.
5743 (struct objfile) <separate_debug_objfiles>: New method.
5744 (objfile_separate_debug_iterate): Don't declare.
5745 * objfiles.c (separate_debug_iterator::operator++): Rename from
5746 objfile_separate_debug_iterate.
5747 (objfile_relocate, objfile_rebase, objfile_has_symbols): Use the
5749 * minsyms.c (lookup_minimal_symbol_by_pc_section): Use the
5754 * symfile.c (reread_symbols): Remove old comment.
5755 * objfiles.c (free_all_objfiles): Fix a typo.
5759 * ia64-tdep.c (ia64_get_dyn_info_list): Use foreach.
5760 * minsyms.c (lookup_minimal_symbol): Use foreach.
5761 (lookup_minimal_symbol_text, lookup_minimal_symbol_by_pc_name)
5762 (lookup_minimal_symbol_solib_trampoline): Likewise.
5763 * symfile.c (reread_symbols): Use foreach.
5769 * rust-exp.y (rust_parser::lex_number): Use strtoulst.
5770 (rust_lex_int_test): Change "value" to be LONGEST.
5771 (rust_lex_tests): Add test for long integer literal.
5775 * remote.c (remote_target::remote_add_inferior): Change fake_pid_p
5777 (extended_remote_target::attach): Update.
5778 (remote_target::remote_notice_new_inferior): Update.
5779 (remote_target::add_current_inferior_and_thread): Update.
5780 * inferior.c (exit_inferior_1): Use "false".
5781 * corelow.c (add_to_thread_list): Make fake_pid_p bool.
5785 * infcmd.c (run_command_1): Pass -qualified to tbreak when using
5786 the "start" command.
5790 * python/py-inferior.c (infpy_thread_from_thread_handle):
5791 Adjust comments to reflect renaming of thread_from_thread_handle
5792 to thread_from_handle. Adjust keywords. Fix type error message.
5793 (inferior_object_methods): Add thread_from_handle. Retain
5794 thread_from_thread_handle, but mark it as deprecated.
5798 * gdbthread.h (find_thread_by_handle): Revise declaration.
5799 * thread.c (find_thread_by_handle): Likewise. Adjust
5801 * python/py-inferior.c (infpy_thread_from_thread_handle): Add
5802 support for buffer objects as handles.
5806 * python/py-infthread.c (thpy_thread_handle): New function.
5807 (thread_object_methods): Register thpy_thread_handle.
5811 * gdbthread.h (thread_to_thread_handle): Declare.
5812 * thread.c (gdbtypes.h): Include.
5813 (thread_to_thread_handle): New function.
5815 * target.h (struct target_ops): Add thread_info_to_thread_handle.
5816 (target_thread_info_to_thread_handle): Declare.
5817 * target.c (target_thread_info_to_thread_handle): New function.
5818 * target-debug.h (target_debug_print_gdb_byte_vector): Define.
5819 * target-delegates.c: Regenerate.
5821 * linux-thread-db.c (class thread_db_target): Add method
5822 thread_info_to_thread_handle.
5823 (thread_db_target::thread_info_to_thread_handle): Define.
5824 * remote.c (class remote_target): Add new method
5825 thread_info_to_thread_handle.
5826 (remote_target::thread_info_to_thread_handle): Define.
5830 * common/common-exceptions.c (throw_exception): Don't create
5831 named object to throw; throw directly.
5832 (throw_it): Likewise. Don't initialize gdb_exception::message
5833 here, with new; pass FMT and AP to the ctor instead.
5834 * common/common-exceptions.h: Include <string>.
5835 (gdb_exception::gdb_exception(enum return_reason, enum errors,
5836 const char *, va_list)): New ctor. Use std::make_shared.
5837 (gdb_exception_error::gdb_exception_error(enum return_reason, enum
5839 (gdb_exception_error::gdb_exception_error(enum errors, const char
5841 (gdb_exception_error::gdb_exception_error(const gdb_exception &)):
5843 (gdb_exception_quit::gdb_exception_quit(enum return_reason, enum
5845 (gdb_exception_quit::gdb_exception_quit(const char *, va_list)): New.
5846 (gdb_exception_quit::gdb_exception_quit(const gdb_exception &)):
5851 * valops.c (value_rtti_indirect_type): Replace throw_exception
5853 * tracefile-tfile.c (tfile_target_open): Replace throw_exception
5855 * thread.c (thr_try_catch_cmd): Replace throw_exception with
5857 * target.c (target_translate_tls_address): Replace throw_exception
5859 * stack.c (frame_apply_command_count): Replace throw_exception
5861 * solib-spu.c (append_ocl_sos): Replace throw_exception with
5863 * s390-tdep.c (s390_frame_unwind_cache): Replace throw_exception
5865 * rs6000-tdep.c (rs6000_frame_cache)
5866 (rs6000_epilogue_frame_cache): Replace throw_exception with throw.
5867 * remote.c: Replace throw_exception with throw.
5868 * record-full.c (record_full_message, record_full_wait_1)
5869 (record_full_restore): Replace throw_exception with throw.
5871 (get_thread_current_frame_id, record_btrace_start_replaying)
5872 (cmd_record_btrace_bts_start, cmd_record_btrace_pt_start)
5873 (cmd_record_btrace_start): Replace throw_exception with throw.
5874 * parse.c (parse_exp_in_context_1): Replace throw_exception with
5876 * linux-nat.c (detach_one_lwp, linux_resume_one_lwp)
5877 (resume_stopped_resumed_lwps): Replace throw_exception with throw.
5879 (find_linespec_symbols): Replace throw_exception with throw.
5880 * infrun.c (displaced_step_prepare, resume): Replace
5881 throw_exception with throw.
5882 * infcmd.c (post_create_inferior): Replace throw_exception with
5884 * inf-loop.c (inferior_event_handler): Replace throw_exception
5886 * i386-tdep.c (i386_frame_cache, i386_epilogue_frame_cache)
5887 (i386_sigtramp_frame_cache): Replace throw_exception with throw.
5888 * frame.c (frame_unwind_pc, get_prev_frame_if_no_cycle)
5889 (get_prev_frame_always, get_frame_pc_if_available)
5890 (get_frame_address_in_block_if_available, get_frame_language):
5891 Replace throw_exception with throw.
5892 * frame-unwind.c (frame_unwind_try_unwinder): Replace
5893 throw_exception with throw.
5894 * eval.c (fetch_subexp_value, evaluate_var_value)
5895 (evaluate_funcall, evaluate_subexp_standard): Replace
5896 throw_exception with throw.
5897 * dwarf2loc.c (call_site_find_chain)
5898 (dwarf2_evaluate_loc_desc_full, dwarf2_locexpr_baton_eval):
5899 Replace throw_exception with throw.
5900 * dwarf2-frame.c (dwarf2_frame_cache): Replace throw_exception
5902 * darwin-nat.c (darwin_attach_pid): Replace throw_exception with
5904 * cp-abi.c (baseclass_offset): Replace throw_exception with throw.
5905 * completer.c (complete_line_internal): Replace throw_exception
5907 * compile/compile-object-run.c (compile_object_run): Replace
5908 throw_exception with throw.
5909 * cli/cli-script.c (process_next_line): Replace throw_exception
5911 * btrace.c (btrace_compute_ftrace_pt, btrace_compute_ftrace)
5912 (btrace_enable, btrace_maint_update_pt_packets): Replace
5913 throw_exception with throw.
5914 * breakpoint.c (create_breakpoint, save_breakpoints): Replace
5915 throw_exception with throw.
5916 * break-catch-throw.c (re_set_exception_catchpoint): Replace
5917 throw_exception with throw.
5918 * amd64-tdep.c (amd64_frame_cache, amd64_sigtramp_frame_cache)
5919 (amd64_epilogue_frame_cache): Replace throw_exception with throw.
5920 * aarch64-tdep.c (aarch64_make_prologue_cache)
5921 (aarch64_make_stub_cache): Replace throw_exception with throw.
5925 * common/common-exceptions.c (throw_exception): Rename from
5926 throw_exception_cxx. Remove old copy. Make argument const.
5927 (throw_it): Create and throw exception objects directly.
5928 * common/common-exceptions.h (throw_exception): Make argument
5930 (struct gdb_exception_error): Add constructor.
5931 (struct gdb_exception_quit): Add constructor.
5935 * common/common-exceptions.h (exception_rethrow): Don't declare.
5936 (TRY_SJLJ): Update comment.
5937 (TRY, CATCH, END_CATCH): Remove.
5938 * common/common-exceptions.c (exception_rethrow): Remove.
5942 * common/common-exceptions.h (gdb_exception_RETURN_MASK_ALL):
5944 (gdb_exception_error): Rename from
5945 gdb_exception_RETURN_MASK_ERROR.
5946 (gdb_exception_quit): Rename from gdb_exception_RETURN_MASK_QUIT.
5947 (gdb_quit_bad_alloc): Update.
5948 * aarch64-tdep.c: Update.
5949 * ada-lang.c: Update.
5950 * ada-typeprint.c: Update.
5951 * ada-valprint.c: Update.
5952 * amd64-tdep.c: Update.
5953 * arch-utils.c: Update.
5954 * break-catch-throw.c: Update.
5955 * breakpoint.c: Update.
5957 * c-varobj.c: Update.
5958 * cli/cli-cmds.c: Update.
5959 * cli/cli-interp.c: Update.
5960 * cli/cli-script.c: Update.
5961 * common/common-exceptions.c: Update.
5962 * common/new-op.c: Update.
5963 * common/selftest.c: Update.
5964 * compile/compile-c-symbols.c: Update.
5965 * compile/compile-cplus-symbols.c: Update.
5966 * compile/compile-object-load.c: Update.
5967 * compile/compile-object-run.c: Update.
5968 * completer.c: Update.
5969 * corelow.c: Update.
5971 * cp-support.c: Update.
5972 * cp-valprint.c: Update.
5973 * darwin-nat.c: Update.
5974 * disasm-selftests.c: Update.
5975 * dtrace-probe.c: Update.
5976 * dwarf-index-cache.c: Update.
5977 * dwarf-index-write.c: Update.
5978 * dwarf2-frame-tailcall.c: Update.
5979 * dwarf2-frame.c: Update.
5980 * dwarf2loc.c: Update.
5981 * dwarf2read.c: Update.
5983 * event-loop.c: Update.
5984 * event-top.c: Update.
5986 * f-valprint.c: Update.
5987 * fbsd-tdep.c: Update.
5988 * frame-unwind.c: Update.
5990 * gdbtypes.c: Update.
5991 * gnu-v3-abi.c: Update.
5992 * guile/guile-internal.h: Update.
5993 * guile/scm-block.c: Update.
5994 * guile/scm-breakpoint.c: Update.
5995 * guile/scm-cmd.c: Update.
5996 * guile/scm-disasm.c: Update.
5997 * guile/scm-frame.c: Update.
5998 * guile/scm-lazy-string.c: Update.
5999 * guile/scm-math.c: Update.
6000 * guile/scm-param.c: Update.
6001 * guile/scm-ports.c: Update.
6002 * guile/scm-pretty-print.c: Update.
6003 * guile/scm-symbol.c: Update.
6004 * guile/scm-symtab.c: Update.
6005 * guile/scm-type.c: Update.
6006 * guile/scm-value.c: Update.
6007 * i386-linux-tdep.c: Update.
6008 * i386-tdep.c: Update.
6009 * inf-loop.c: Update.
6010 * infcall.c: Update.
6014 * language.c: Update.
6015 * linespec.c: Update.
6016 * linux-fork.c: Update.
6017 * linux-nat.c: Update.
6018 * linux-tdep.c: Update.
6019 * linux-thread-db.c: Update.
6021 * mi/mi-cmd-break.c: Update.
6022 * mi/mi-cmd-stack.c: Update.
6023 * mi/mi-interp.c: Update.
6024 * mi/mi-main.c: Update.
6025 * objc-lang.c: Update.
6026 * p-valprint.c: Update.
6028 * ppc-linux-tdep.c: Update.
6029 * printcmd.c: Update.
6030 * python/py-arch.c: Update.
6031 * python/py-breakpoint.c: Update.
6032 * python/py-cmd.c: Update.
6033 * python/py-finishbreakpoint.c: Update.
6034 * python/py-frame.c: Update.
6035 * python/py-framefilter.c: Update.
6036 * python/py-gdb-readline.c: Update.
6037 * python/py-inferior.c: Update.
6038 * python/py-infthread.c: Update.
6039 * python/py-lazy-string.c: Update.
6040 * python/py-linetable.c: Update.
6041 * python/py-objfile.c: Update.
6042 * python/py-param.c: Update.
6043 * python/py-prettyprint.c: Update.
6044 * python/py-progspace.c: Update.
6045 * python/py-record-btrace.c: Update.
6046 * python/py-record.c: Update.
6047 * python/py-symbol.c: Update.
6048 * python/py-type.c: Update.
6049 * python/py-unwind.c: Update.
6050 * python/py-utils.c: Update.
6051 * python/py-value.c: Update.
6052 * python/python.c: Update.
6053 * record-btrace.c: Update.
6054 * record-full.c: Update.
6055 * remote-fileio.c: Update.
6057 * riscv-tdep.c: Update.
6058 * rs6000-aix-tdep.c: Update.
6059 * rs6000-tdep.c: Update.
6060 * rust-exp.y: Update.
6061 * rust-lang.c: Update.
6062 * s390-tdep.c: Update.
6063 * selftest-arch.c: Update.
6064 * solib-dsbt.c: Update.
6065 * solib-frv.c: Update.
6066 * solib-spu.c: Update.
6067 * solib-svr4.c: Update.
6069 * sparc64-linux-tdep.c: Update.
6071 * symfile-mem.c: Update.
6072 * symmisc.c: Update.
6076 * tracefile-tfile.c: Update.
6077 * tui/tui.c: Update.
6078 * typeprint.c: Update.
6079 * unittests/cli-utils-selftests.c: Update.
6080 * unittests/parse-connection-spec-selftests.c: Update.
6082 * valprint.c: Update.
6085 * windows-nat.c: Update.
6086 * x86-linux-nat.c: Update.
6087 * xml-support.c: Update.
6091 * xml-support.c: Use C++ exception handling.
6092 * x86-linux-nat.c: Use C++ exception handling.
6093 * windows-nat.c: Use C++ exception handling.
6094 * varobj.c: Use C++ exception handling.
6095 * value.c: Use C++ exception handling.
6096 * valprint.c: Use C++ exception handling.
6097 * valops.c: Use C++ exception handling.
6098 * unittests/parse-connection-spec-selftests.c: Use C++ exception
6100 * unittests/cli-utils-selftests.c: Use C++ exception handling.
6101 * typeprint.c: Use C++ exception handling.
6102 * tui/tui.c: Use C++ exception handling.
6103 * tracefile-tfile.c: Use C++ exception handling.
6104 * top.c: Use C++ exception handling.
6105 * thread.c: Use C++ exception handling.
6106 * target.c: Use C++ exception handling.
6107 * symmisc.c: Use C++ exception handling.
6108 * symfile-mem.c: Use C++ exception handling.
6109 * stack.c: Use C++ exception handling.
6110 * sparc64-linux-tdep.c: Use C++ exception handling.
6111 * solib.c: Use C++ exception handling.
6112 * solib-svr4.c: Use C++ exception handling.
6113 * solib-spu.c: Use C++ exception handling.
6114 * solib-frv.c: Use C++ exception handling.
6115 * solib-dsbt.c: Use C++ exception handling.
6116 * selftest-arch.c: Use C++ exception handling.
6117 * s390-tdep.c: Use C++ exception handling.
6118 * rust-lang.c: Use C++ exception handling.
6119 * rust-exp.y: Use C++ exception handling.
6120 * rs6000-tdep.c: Use C++ exception handling.
6121 * rs6000-aix-tdep.c: Use C++ exception handling.
6122 * riscv-tdep.c: Use C++ exception handling.
6123 * remote.c: Use C++ exception handling.
6124 * remote-fileio.c: Use C++ exception handling.
6125 * record-full.c: Use C++ exception handling.
6126 * record-btrace.c: Use C++ exception handling.
6127 * python/python.c: Use C++ exception handling.
6128 * python/py-value.c: Use C++ exception handling.
6129 * python/py-utils.c: Use C++ exception handling.
6130 * python/py-unwind.c: Use C++ exception handling.
6131 * python/py-type.c: Use C++ exception handling.
6132 * python/py-symbol.c: Use C++ exception handling.
6133 * python/py-record.c: Use C++ exception handling.
6134 * python/py-record-btrace.c: Use C++ exception handling.
6135 * python/py-progspace.c: Use C++ exception handling.
6136 * python/py-prettyprint.c: Use C++ exception handling.
6137 * python/py-param.c: Use C++ exception handling.
6138 * python/py-objfile.c: Use C++ exception handling.
6139 * python/py-linetable.c: Use C++ exception handling.
6140 * python/py-lazy-string.c: Use C++ exception handling.
6141 * python/py-infthread.c: Use C++ exception handling.
6142 * python/py-inferior.c: Use C++ exception handling.
6143 * python/py-gdb-readline.c: Use C++ exception handling.
6144 * python/py-framefilter.c: Use C++ exception handling.
6145 * python/py-frame.c: Use C++ exception handling.
6146 * python/py-finishbreakpoint.c: Use C++ exception handling.
6147 * python/py-cmd.c: Use C++ exception handling.
6148 * python/py-breakpoint.c: Use C++ exception handling.
6149 * python/py-arch.c: Use C++ exception handling.
6150 * printcmd.c: Use C++ exception handling.
6151 * ppc-linux-tdep.c: Use C++ exception handling.
6152 * parse.c: Use C++ exception handling.
6153 * p-valprint.c: Use C++ exception handling.
6154 * objc-lang.c: Use C++ exception handling.
6155 * mi/mi-main.c: Use C++ exception handling.
6156 * mi/mi-interp.c: Use C++ exception handling.
6157 * mi/mi-cmd-stack.c: Use C++ exception handling.
6158 * mi/mi-cmd-break.c: Use C++ exception handling.
6159 * main.c: Use C++ exception handling.
6160 * linux-thread-db.c: Use C++ exception handling.
6161 * linux-tdep.c: Use C++ exception handling.
6162 * linux-nat.c: Use C++ exception handling.
6163 * linux-fork.c: Use C++ exception handling.
6164 * linespec.c: Use C++ exception handling.
6165 * language.c: Use C++ exception handling.
6166 * jit.c: Use C++ exception handling.
6167 * infrun.c: Use C++ exception handling.
6168 * infcmd.c: Use C++ exception handling.
6169 * infcall.c: Use C++ exception handling.
6170 * inf-loop.c: Use C++ exception handling.
6171 * i386-tdep.c: Use C++ exception handling.
6172 * i386-linux-tdep.c: Use C++ exception handling.
6173 * guile/scm-value.c: Use C++ exception handling.
6174 * guile/scm-type.c: Use C++ exception handling.
6175 * guile/scm-symtab.c: Use C++ exception handling.
6176 * guile/scm-symbol.c: Use C++ exception handling.
6177 * guile/scm-pretty-print.c: Use C++ exception handling.
6178 * guile/scm-ports.c: Use C++ exception handling.
6179 * guile/scm-param.c: Use C++ exception handling.
6180 * guile/scm-math.c: Use C++ exception handling.
6181 * guile/scm-lazy-string.c: Use C++ exception handling.
6182 * guile/scm-frame.c: Use C++ exception handling.
6183 * guile/scm-disasm.c: Use C++ exception handling.
6184 * guile/scm-cmd.c: Use C++ exception handling.
6185 * guile/scm-breakpoint.c: Use C++ exception handling.
6186 * guile/scm-block.c: Use C++ exception handling.
6187 * guile/guile-internal.h: Use C++ exception handling.
6188 * gnu-v3-abi.c: Use C++ exception handling.
6189 * gdbtypes.c: Use C++ exception handling.
6190 * frame.c: Use C++ exception handling.
6191 * frame-unwind.c: Use C++ exception handling.
6192 * fbsd-tdep.c: Use C++ exception handling.
6193 * f-valprint.c: Use C++ exception handling.
6194 * exec.c: Use C++ exception handling.
6195 * event-top.c: Use C++ exception handling.
6196 * event-loop.c: Use C++ exception handling.
6197 * eval.c: Use C++ exception handling.
6198 * dwarf2read.c: Use C++ exception handling.
6199 * dwarf2loc.c: Use C++ exception handling.
6200 * dwarf2-frame.c: Use C++ exception handling.
6201 * dwarf2-frame-tailcall.c: Use C++ exception handling.
6202 * dwarf-index-write.c: Use C++ exception handling.
6203 * dwarf-index-cache.c: Use C++ exception handling.
6204 * dtrace-probe.c: Use C++ exception handling.
6205 * disasm-selftests.c: Use C++ exception handling.
6206 * darwin-nat.c: Use C++ exception handling.
6207 * cp-valprint.c: Use C++ exception handling.
6208 * cp-support.c: Use C++ exception handling.
6209 * cp-abi.c: Use C++ exception handling.
6210 * corelow.c: Use C++ exception handling.
6211 * completer.c: Use C++ exception handling.
6212 * compile/compile-object-run.c: Use C++ exception handling.
6213 * compile/compile-object-load.c: Use C++ exception handling.
6214 * compile/compile-cplus-symbols.c: Use C++ exception handling.
6215 * compile/compile-c-symbols.c: Use C++ exception handling.
6216 * common/selftest.c: Use C++ exception handling.
6217 * common/new-op.c: Use C++ exception handling.
6218 * cli/cli-script.c: Use C++ exception handling.
6219 * cli/cli-interp.c: Use C++ exception handling.
6220 * cli/cli-cmds.c: Use C++ exception handling.
6221 * c-varobj.c: Use C++ exception handling.
6222 * btrace.c: Use C++ exception handling.
6223 * breakpoint.c: Use C++ exception handling.
6224 * break-catch-throw.c: Use C++ exception handling.
6225 * arch-utils.c: Use C++ exception handling.
6226 * amd64-tdep.c: Use C++ exception handling.
6227 * ada-valprint.c: Use C++ exception handling.
6228 * ada-typeprint.c: Use C++ exception handling.
6229 * ada-lang.c: Use C++ exception handling.
6230 * aarch64-tdep.c: Use C++ exception handling.
6234 * xml-support.c (gdb_xml_parser::parse): Update.
6235 * x86-linux-nat.c (x86_linux_nat_target::enable_btrace): Update.
6236 * value.c (show_convenience): Update.
6237 * unittests/cli-utils-selftests.c (test_number_or_range_parser)
6238 (test_parse_flags_qcs): Update.
6239 * thread.c (thr_try_catch_cmd): Update.
6240 * target.c (target_translate_tls_address): Update.
6241 * stack.c (print_frame_arg, read_frame_local, read_frame_arg)
6242 (info_frame_command_core, frame_apply_command_count): Update.
6243 * rust-exp.y (rust_lex_exception_test): Update.
6244 * riscv-tdep.c (riscv_print_one_register_info): Update.
6245 * remote.c (remote_target::enable_btrace): Update.
6246 * record-btrace.c (record_btrace_enable_warn): Update.
6247 * python/py-utils.c (gdbpy_convert_exception): Update.
6248 * printcmd.c (do_one_display, print_variable_and_value): Update.
6249 * mi/mi-main.c (mi_print_exception): Update.
6250 * mi/mi-interp.c (mi_cmd_interpreter_exec): Use SCOPE_EXIT.
6251 * mi/mi-cmd-stack.c (list_arg_or_local): Update.
6252 * linux-nat.c (linux_nat_target::attach): Update.
6253 * linux-fork.c (class scoped_switch_fork_info): Update.
6254 * infrun.c (displaced_step_prepare): Update.
6255 * infcall.c (call_function_by_hand_dummy): Update.
6256 * guile/scm-exception.c (gdbscm_scm_from_gdb_exception): Update.
6257 * gnu-v3-abi.c (print_one_vtable): Update.
6258 * frame.c (get_prev_frame_always): Update.
6259 * f-valprint.c (info_common_command_for_block): Update.
6260 * exec.c (try_open_exec_file): Update.
6261 * exceptions.c (print_exception, exception_print)
6262 (exception_fprintf, exception_print_same): Update.
6263 * dwarf2-frame.c (dwarf2_build_frame_info): Update.
6264 * dwarf-index-cache.c (index_cache::store)
6265 (index_cache::lookup_gdb_index): Update.
6266 * darwin-nat.c (maybe_cache_shell): Update.
6267 * cp-valprint.c (cp_print_value_fields): Update.
6268 * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol)
6269 (gcc_cplus_symbol_address): Update.
6270 * compile/compile-c-symbols.c (gcc_convert_symbol)
6271 (gcc_symbol_address, generate_c_for_for_one_variable): Update.
6272 * common/selftest.c: Update.
6273 * common/common-exceptions.h (struct gdb_exception) <message>: Now
6275 (exception_try_scope_entry, exception_try_scope_exit): Don't
6277 (struct exception_try_scope): Remove.
6278 (TRY): Don't use exception_try_scope.
6279 (struct gdb_exception): Add constructor, operator=.
6281 (struct gdb_exception_RETURN_MASK_ALL)
6282 (struct gdb_exception_RETURN_MASK_ERROR)
6283 (struct gdb_exception_RETURN_MASK_QUIT): Add constructor.
6284 (struct gdb_quit_bad_alloc): Update.
6285 * common/common-exceptions.c (exception_none): Change
6287 (struct catcher) <state, exception>: Initialize inline.
6288 <prev>: Remove member.
6289 (current_catcher): Remove.
6290 (catchers): New global.
6291 (exceptions_state_mc_init): Simplify.
6292 (catcher_pop): Remove.
6293 (exceptions_state_mc, exceptions_state_mc_catch): Update.
6294 (try_scope_depth, exception_try_scope_entry)
6295 (exception_try_scope_exit): Remove.
6296 (throw_exception_sjlj): Update.
6297 (exception_messages, exception_messages_size): Remove.
6298 (throw_it): Simplify.
6299 (gdb_exception_sliced_copy): Remove.
6300 (throw_exception_cxx): Update.
6301 * cli/cli-script.c (script_from_file): Update.
6302 * breakpoint.c (insert_bp_location, update_breakpoint_locations):
6304 * ada-valprint.c (ada_val_print): Update.
6305 * ada-lang.c (ada_to_fixed_type_1, ada_exception_name_addr)
6306 (create_excep_cond_exprs): Update.
6310 * common/common-exceptions.h (GDB_XCPT_SJMP, GDB_XCPT_TRY)
6311 (GDB_XCPT_RAW_TRY, GDB_XCPT): Remove.
6312 (TRY, CATCH, END_CATCH): Remove some definitions.
6313 * common/common-exceptions.c: Don't use GDB_XCPT.
6314 (catcher_list_size): Remove.
6315 (throw_exception, throw_it): Simplify.
6319 Revert the header-sorting patch.
6320 * ft32-tdep.c: Revert.
6321 * frv-tdep.c: Revert.
6322 * frv-linux-tdep.c: Revert.
6324 * frame-unwind.c: Revert.
6325 * frame-base.c: Revert.
6326 * fork-child.c: Revert.
6327 * findvar.c: Revert.
6328 * findcmd.c: Revert.
6329 * filesystem.c: Revert.
6330 * filename-seen-cache.h: Revert.
6331 * filename-seen-cache.c: Revert.
6332 * fbsd-tdep.c: Revert.
6333 * fbsd-nat.h: Revert.
6334 * fbsd-nat.c: Revert.
6335 * f-valprint.c: Revert.
6336 * f-typeprint.c: Revert.
6338 * extension.h: Revert.
6339 * extension.c: Revert.
6340 * extension-priv.h: Revert.
6341 * expprint.c: Revert.
6344 * exceptions.c: Revert.
6345 * event-top.c: Revert.
6346 * event-loop.c: Revert.
6348 * elfread.c: Revert.
6349 * dwarf2read.h: Revert.
6350 * dwarf2read.c: Revert.
6351 * dwarf2loc.c: Revert.
6352 * dwarf2expr.h: Revert.
6353 * dwarf2expr.c: Revert.
6354 * dwarf2-frame.c: Revert.
6355 * dwarf2-frame-tailcall.c: Revert.
6356 * dwarf-index-write.h: Revert.
6357 * dwarf-index-write.c: Revert.
6358 * dwarf-index-common.c: Revert.
6359 * dwarf-index-cache.h: Revert.
6360 * dwarf-index-cache.c: Revert.
6361 * dummy-frame.c: Revert.
6362 * dtrace-probe.c: Revert.
6365 * disasm-selftests.c: Revert.
6366 * dictionary.c: Revert.
6367 * dicos-tdep.c: Revert.
6368 * demangle.c: Revert.
6371 * darwin-nat.h: Revert.
6372 * darwin-nat.c: Revert.
6373 * darwin-nat-info.c: Revert.
6374 * d-valprint.c: Revert.
6375 * d-namespace.c: Revert.
6378 * csky-tdep.c: Revert.
6379 * csky-linux-tdep.c: Revert.
6380 * cris-tdep.c: Revert.
6381 * cris-linux-tdep.c: Revert.
6382 * cp-valprint.c: Revert.
6383 * cp-support.c: Revert.
6384 * cp-namespace.c: Revert.
6386 * corelow.c: Revert.
6387 * corefile.c: Revert.
6388 * continuations.c: Revert.
6389 * completer.h: Revert.
6390 * completer.c: Revert.
6391 * complaints.c: Revert.
6392 * coffread.c: Revert.
6393 * coff-pe-read.c: Revert.
6394 * cli-out.h: Revert.
6395 * cli-out.c: Revert.
6396 * charset.c: Revert.
6397 * c-varobj.c: Revert.
6398 * c-valprint.c: Revert.
6399 * c-typeprint.c: Revert.
6401 * buildsym.c: Revert.
6402 * buildsym-legacy.c: Revert.
6403 * build-id.h: Revert.
6404 * build-id.c: Revert.
6406 * bsd-uthread.c: Revert.
6407 * breakpoint.h: Revert.
6408 * breakpoint.c: Revert.
6409 * break-catch-throw.c: Revert.
6410 * break-catch-syscall.c: Revert.
6411 * break-catch-sig.c: Revert.
6412 * blockframe.c: Revert.
6414 * bfin-tdep.c: Revert.
6415 * bfin-linux-tdep.c: Revert.
6416 * bfd-target.c: Revert.
6418 * ax-general.c: Revert.
6421 * avr-tdep.c: Revert.
6423 * auto-load.c: Revert.
6424 * arm-wince-tdep.c: Revert.
6425 * arm-tdep.c: Revert.
6426 * arm-symbian-tdep.c: Revert.
6427 * arm-pikeos-tdep.c: Revert.
6428 * arm-obsd-tdep.c: Revert.
6429 * arm-nbsd-tdep.c: Revert.
6430 * arm-nbsd-nat.c: Revert.
6431 * arm-linux-tdep.c: Revert.
6432 * arm-linux-nat.c: Revert.
6433 * arm-fbsd-tdep.c: Revert.
6434 * arm-fbsd-nat.c: Revert.
6435 * arm-bsd-tdep.c: Revert.
6436 * arch-utils.c: Revert.
6437 * arc-tdep.c: Revert.
6438 * arc-newlib-tdep.c: Revert.
6439 * annotate.h: Revert.
6440 * annotate.c: Revert.
6441 * amd64-windows-tdep.c: Revert.
6442 * amd64-windows-nat.c: Revert.
6443 * amd64-tdep.c: Revert.
6444 * amd64-sol2-tdep.c: Revert.
6445 * amd64-obsd-tdep.c: Revert.
6446 * amd64-obsd-nat.c: Revert.
6447 * amd64-nbsd-tdep.c: Revert.
6448 * amd64-nbsd-nat.c: Revert.
6449 * amd64-nat.c: Revert.
6450 * amd64-linux-tdep.c: Revert.
6451 * amd64-linux-nat.c: Revert.
6452 * amd64-fbsd-tdep.c: Revert.
6453 * amd64-fbsd-nat.c: Revert.
6454 * amd64-dicos-tdep.c: Revert.
6455 * amd64-darwin-tdep.c: Revert.
6456 * amd64-bsd-nat.c: Revert.
6457 * alpha-tdep.c: Revert.
6458 * alpha-obsd-tdep.c: Revert.
6459 * alpha-nbsd-tdep.c: Revert.
6460 * alpha-mdebug-tdep.c: Revert.
6461 * alpha-linux-tdep.c: Revert.
6462 * alpha-linux-nat.c: Revert.
6463 * alpha-bsd-tdep.c: Revert.
6464 * alpha-bsd-nat.c: Revert.
6465 * aix-thread.c: Revert.
6467 * addrmap.c: Revert.
6468 * ada-varobj.c: Revert.
6469 * ada-valprint.c: Revert.
6470 * ada-typeprint.c: Revert.
6471 * ada-tasks.c: Revert.
6472 * ada-lang.c: Revert.
6473 * aarch64-tdep.c: Revert.
6474 * aarch64-ravenscar-thread.c: Revert.
6475 * aarch64-newlib-tdep.c: Revert.
6476 * aarch64-linux-tdep.c: Revert.
6477 * aarch64-linux-nat.c: Revert.
6478 * aarch64-fbsd-tdep.c: Revert.
6479 * aarch64-fbsd-nat.c: Revert.
6480 * aarch32-linux-nat.c: Revert.
6484 * ft32-tdep.c: Sort headers.
6485 * frv-tdep.c: Sort headers.
6486 * frv-linux-tdep.c: Sort headers.
6487 * frame.c: Sort headers.
6488 * frame-unwind.c: Sort headers.
6489 * frame-base.c: Sort headers.
6490 * fork-child.c: Sort headers.
6491 * findvar.c: Sort headers.
6492 * findcmd.c: Sort headers.
6493 * filesystem.c: Sort headers.
6494 * filename-seen-cache.h: Sort headers.
6495 * filename-seen-cache.c: Sort headers.
6496 * fbsd-tdep.c: Sort headers.
6497 * fbsd-nat.h: Sort headers.
6498 * fbsd-nat.c: Sort headers.
6499 * f-valprint.c: Sort headers.
6500 * f-typeprint.c: Sort headers.
6501 * f-lang.c: Sort headers.
6502 * extension.h: Sort headers.
6503 * extension.c: Sort headers.
6504 * extension-priv.h: Sort headers.
6505 * expprint.c: Sort headers.
6506 * exec.h: Sort headers.
6507 * exec.c: Sort headers.
6508 * exceptions.c: Sort headers.
6509 * event-top.c: Sort headers.
6510 * event-loop.c: Sort headers.
6511 * eval.c: Sort headers.
6512 * elfread.c: Sort headers.
6513 * dwarf2read.h: Sort headers.
6514 * dwarf2read.c: Sort headers.
6515 * dwarf2loc.c: Sort headers.
6516 * dwarf2expr.h: Sort headers.
6517 * dwarf2expr.c: Sort headers.
6518 * dwarf2-frame.c: Sort headers.
6519 * dwarf2-frame-tailcall.c: Sort headers.
6520 * dwarf-index-write.h: Sort headers.
6521 * dwarf-index-write.c: Sort headers.
6522 * dwarf-index-common.c: Sort headers.
6523 * dwarf-index-cache.h: Sort headers.
6524 * dwarf-index-cache.c: Sort headers.
6525 * dummy-frame.c: Sort headers.
6526 * dtrace-probe.c: Sort headers.
6527 * disasm.h: Sort headers.
6528 * disasm.c: Sort headers.
6529 * disasm-selftests.c: Sort headers.
6530 * dictionary.c: Sort headers.
6531 * dicos-tdep.c: Sort headers.
6532 * demangle.c: Sort headers.
6533 * dcache.h: Sort headers.
6534 * dcache.c: Sort headers.
6535 * darwin-nat.h: Sort headers.
6536 * darwin-nat.c: Sort headers.
6537 * darwin-nat-info.c: Sort headers.
6538 * d-valprint.c: Sort headers.
6539 * d-namespace.c: Sort headers.
6540 * d-lang.c: Sort headers.
6541 * ctf.c: Sort headers.
6542 * csky-tdep.c: Sort headers.
6543 * csky-linux-tdep.c: Sort headers.
6544 * cris-tdep.c: Sort headers.
6545 * cris-linux-tdep.c: Sort headers.
6546 * cp-valprint.c: Sort headers.
6547 * cp-support.c: Sort headers.
6548 * cp-namespace.c: Sort headers.
6549 * cp-abi.c: Sort headers.
6550 * corelow.c: Sort headers.
6551 * corefile.c: Sort headers.
6552 * continuations.c: Sort headers.
6553 * completer.h: Sort headers.
6554 * completer.c: Sort headers.
6555 * complaints.c: Sort headers.
6556 * coffread.c: Sort headers.
6557 * coff-pe-read.c: Sort headers.
6558 * cli-out.h: Sort headers.
6559 * cli-out.c: Sort headers.
6560 * charset.c: Sort headers.
6561 * c-varobj.c: Sort headers.
6562 * c-valprint.c: Sort headers.
6563 * c-typeprint.c: Sort headers.
6564 * c-lang.c: Sort headers.
6565 * buildsym.c: Sort headers.
6566 * buildsym-legacy.c: Sort headers.
6567 * build-id.h: Sort headers.
6568 * build-id.c: Sort headers.
6569 * btrace.c: Sort headers.
6570 * bsd-uthread.c: Sort headers.
6571 * breakpoint.h: Sort headers.
6572 * breakpoint.c: Sort headers.
6573 * break-catch-throw.c: Sort headers.
6574 * break-catch-syscall.c: Sort headers.
6575 * break-catch-sig.c: Sort headers.
6576 * blockframe.c: Sort headers.
6577 * block.c: Sort headers.
6578 * bfin-tdep.c: Sort headers.
6579 * bfin-linux-tdep.c: Sort headers.
6580 * bfd-target.c: Sort headers.
6581 * bcache.c: Sort headers.
6582 * ax-general.c: Sort headers.
6583 * ax-gdb.h: Sort headers.
6584 * ax-gdb.c: Sort headers.
6585 * avr-tdep.c: Sort headers.
6586 * auxv.c: Sort headers.
6587 * auto-load.c: Sort headers.
6588 * arm-wince-tdep.c: Sort headers.
6589 * arm-tdep.c: Sort headers.
6590 * arm-symbian-tdep.c: Sort headers.
6591 * arm-pikeos-tdep.c: Sort headers.
6592 * arm-obsd-tdep.c: Sort headers.
6593 * arm-nbsd-tdep.c: Sort headers.
6594 * arm-nbsd-nat.c: Sort headers.
6595 * arm-linux-tdep.c: Sort headers.
6596 * arm-linux-nat.c: Sort headers.
6597 * arm-fbsd-tdep.c: Sort headers.
6598 * arm-fbsd-nat.c: Sort headers.
6599 * arm-bsd-tdep.c: Sort headers.
6600 * arch-utils.c: Sort headers.
6601 * arc-tdep.c: Sort headers.
6602 * arc-newlib-tdep.c: Sort headers.
6603 * annotate.h: Sort headers.
6604 * annotate.c: Sort headers.
6605 * amd64-windows-tdep.c: Sort headers.
6606 * amd64-windows-nat.c: Sort headers.
6607 * amd64-tdep.c: Sort headers.
6608 * amd64-sol2-tdep.c: Sort headers.
6609 * amd64-obsd-tdep.c: Sort headers.
6610 * amd64-obsd-nat.c: Sort headers.
6611 * amd64-nbsd-tdep.c: Sort headers.
6612 * amd64-nbsd-nat.c: Sort headers.
6613 * amd64-nat.c: Sort headers.
6614 * amd64-linux-tdep.c: Sort headers.
6615 * amd64-linux-nat.c: Sort headers.
6616 * amd64-fbsd-tdep.c: Sort headers.
6617 * amd64-fbsd-nat.c: Sort headers.
6618 * amd64-dicos-tdep.c: Sort headers.
6619 * amd64-darwin-tdep.c: Sort headers.
6620 * amd64-bsd-nat.c: Sort headers.
6621 * alpha-tdep.c: Sort headers.
6622 * alpha-obsd-tdep.c: Sort headers.
6623 * alpha-nbsd-tdep.c: Sort headers.
6624 * alpha-mdebug-tdep.c: Sort headers.
6625 * alpha-linux-tdep.c: Sort headers.
6626 * alpha-linux-nat.c: Sort headers.
6627 * alpha-bsd-tdep.c: Sort headers.
6628 * alpha-bsd-nat.c: Sort headers.
6629 * aix-thread.c: Sort headers.
6630 * agent.c: Sort headers.
6631 * addrmap.c: Sort headers.
6632 * ada-varobj.c: Sort headers.
6633 * ada-valprint.c: Sort headers.
6634 * ada-typeprint.c: Sort headers.
6635 * ada-tasks.c: Sort headers.
6636 * ada-lang.c: Sort headers.
6637 * aarch64-tdep.c: Sort headers.
6638 * aarch64-ravenscar-thread.c: Sort headers.
6639 * aarch64-newlib-tdep.c: Sort headers.
6640 * aarch64-linux-tdep.c: Sort headers.
6641 * aarch64-linux-nat.c: Sort headers.
6642 * aarch64-fbsd-tdep.c: Sort headers.
6643 * aarch64-fbsd-nat.c: Sort headers.
6644 * aarch32-linux-nat.c: Sort headers.
6648 * varobj.c (varobj_create): Update.
6649 * rust-exp.y (struct rust_parser) <update_innermost_block,
6650 lookup_symbol>: New methods.
6651 (rust_parser::update_innermost_block, rust_parser::lookup_symbol):
6653 (rust_parser::rust_lookup_type)
6654 (rust_parser::convert_ast_to_expression, rust_lex_tests): Update.
6655 * printcmd.c (display_command, do_one_display): Update.
6656 * parser-defs.h (struct parser_state) <parser_state>: Add
6657 "tracker" parameter.
6658 (block_tracker): New member.
6659 (class innermost_block_tracker) <innermost_block_tracker>: Add
6661 <reset>: Remove method.
6662 (innermost_block): Don't declare.
6663 (null_post_parser): Update.
6664 * parse.c (innermost_block): Remove global.
6665 (write_dollar_variable): Update.
6666 (parse_exp_1, parse_exp_in_context): Add "tracker" parameter.
6667 Remove "tracker_types" parameter.
6668 (parse_expression): Add "tracker" parameter.
6669 (parse_expression_for_completion): Update.
6670 (null_post_parser): Add "tracker" parameter.
6671 * p-exp.y: Update rules.
6672 * m2-exp.y: Update rules.
6673 * language.h (struct language_defn) <la_post_parser>: Add
6674 "tracker" parameter.
6675 * go-exp.y: Update rules.
6676 * f-exp.y: Update rules.
6677 * expression.h (parse_expression, parse_exp_1): Add "tracker"
6679 * d-exp.y: Update rules.
6680 * c-exp.y: Update rules.
6681 * breakpoint.c (set_breakpoint_condition): Create an
6682 innermost_block_tracker.
6683 (watch_command_1): Likewise.
6684 * ada-lang.c (resolve): Add "tracker" parameter.
6685 (resolve_subexp): Likewise.
6686 * ada-exp.y (write_var_from_sym): Update.
6690 * type-stack.h: New file.
6691 * type-stack.c: New file.
6692 * parser-defs.h (enum type_pieces, union type_stack_elt): Move to
6694 (insert_into_type_stack, insert_type, push_type, push_type_int)
6695 (insert_type_address_space, pop_type, pop_type_int)
6696 (pop_typelist, pop_type_stack, append_type_stack)
6697 (push_type_stack, get_type_stack, push_typelist)
6698 (follow_type_instance_flags, follow_types): Don't declare.
6699 * parse.c (type_stack): Remove global.
6700 (parse_exp_in_context): Update.
6701 (insert_into_type_stack, insert_type, push_type, push_type_int)
6702 (insert_type_address_space, pop_type, pop_type_int)
6703 (pop_typelist, pop_type_stack, append_type_stack)
6704 (push_type_stack, get_type_stack, push_typelist)
6705 (follow_type_instance_flags, follow_types): Remove (moved to
6707 * f-exp.y (type_stack): New global.
6709 (push_kind_type, f_parse): Update.
6710 * d-exp.y (type_stack): New global.
6713 * c-exp.y (struct c_parse_state) <type_stack>: New member.
6715 * Makefile.in (COMMON_SFILES): Add type-stack.c.
6716 (HFILES_NO_SRCDIR): Add type-stack.h.
6720 * rust-exp.y (rust_parser::lex_identifier, rustyylex)
6721 (rust_parser::convert_ast_to_expression, rust_parse)
6722 (rust_lex_test_completion, rust_lex_tests): Update.
6723 * parser-defs.h (struct expr_completion_state): New.
6724 (struct parser_state) <parser_state>: Add completion parameter.
6725 <mark_struct_expression, mark_completion_tag>: New methods.
6726 <parse_completion, m_completion_state>: New members.
6727 (prefixify_expression, null_post_parser): Update.
6728 (mark_struct_expression, mark_completion_tag): Don't declare.
6729 * parse.c (parse_completion, expout_last_struct)
6730 (expout_tag_completion_type, expout_completion_name): Remove
6732 (parser_state::mark_struct_expression)
6733 (parser_state::mark_completion_tag): Now methods.
6734 (prefixify_expression): Add last_struct parameter.
6735 (prefixify_subexp): Likewise.
6736 (parse_exp_1): Update.
6737 (parse_exp_in_context): Add cstate parameter. Update.
6738 (parse_expression_for_completion): Create an
6739 expr_completion_state.
6740 (null_post_parser): Add "completion" parameter.
6741 * p-exp.y: Update rules.
6743 * language.h (struct language_defn) <la_post_parser>: Add
6744 "completing" parameter.
6745 * go-exp.y: Update rules.
6746 (lex_one_token): Update.
6747 * expression.h (parse_completion): Don't declare.
6748 * d-exp.y: Update rules.
6749 (lex_one_token): Update rules.
6750 * c-exp.y: Update rules.
6751 (lex_one_token): Update.
6752 * ada-lang.c (resolve): Add "parse_completion" parameter.
6753 (resolve_subexp): Likewise.
6754 (ada_resolve_function): Likewise.
6758 * parser-defs.h (struct parser_state) <start_arglist,
6759 end_arglist>: New methods.
6760 <arglist_len, m_funcall_chain>: New members.
6761 (arglist_len, start_arglist, end_arglist): Don't declare.
6762 * parse.c (arglist_len, funcall_chain): Remove global.
6763 (start_arglist, end_arglist): Remove functions.
6764 (parse_exp_in_context): Update.
6765 * p-exp.y: Update rules.
6766 * m2-exp.y: Update rules.
6767 * go-exp.y: Update rules.
6768 * f-exp.y: Update rules.
6769 * d-exp.y: Update rules.
6770 * c-exp.y: Update rules.
6774 * rust-exp.y (struct rust_parser) <lex_hex, lex_escape,
6775 lex_operator, push_back>: New methods.
6777 (rust_parser::lex_hex, lex_escape): Rename and update.
6778 (rust_parser::lex_string, rust_parser::lex_identifier): Update.
6779 (rust_parser::lex_operator): Rename and update.
6780 (rust_parser::lex_number, rustyylex, rustyyerror)
6781 (rust_lex_test_init, rust_lex_test_sequence)
6782 (rust_lex_test_push_back, rust_lex_tests): Update.
6783 * parser-defs.h (struct parser_state) <parser_state>: Add "input"
6785 <lexptr, prev_lexptr>: New members.
6786 (lexptr, prev_lexptr): Don't declare.
6787 * parse.c (lexptr, prev_lexptr): Remove globals.
6788 (parse_exp_in_context): Update.
6789 * p-exp.y (yylex, yyerror): Update.
6790 * m2-exp.y (parse_number, yylex, yyerror): Update.
6791 * go-exp.y (lex_one_token, yyerror): Update.
6792 * f-exp.y (match_string_literal, yylex, yyerror): Update.
6793 * d-exp.y (lex_one_token, yyerror): Update.
6794 * c-exp.y (scan_macro_expansion, finished_macro_expansion)
6795 (lex_one_token, yyerror): Update.
6796 * ada-lex.l (YY_INPUT): Update.
6797 (rewind_to_char): Update.
6798 * ada-exp.y (yyerror): Update.
6802 * rust-exp.y (rustyylex, rust_lex_tests): Update.
6803 * parser-defs.h (struct parser_state) <parser_state>: Add new
6805 <comma_terminates>: New member.
6806 (comma_terminates): Don't declare global.
6807 * parse.c (comma_terminates): Remove global.
6808 (parse_exp_in_context): Update.
6809 * p-exp.y (yylex): Update.
6810 * m2-exp.y (yylex): Update.
6811 * go-exp.y (lex_one_token): Update.
6812 * f-exp.y (yylex): Update.
6813 * d-exp.y (lex_one_token): Update.
6814 * c-exp.y (lex_one_token): Update.
6815 * ada-lex.l: Update.
6819 * rust-exp.y (struct rust_parser) <paren_depth>: New member.
6820 (rustyylex, rust_lex_test_init, rust_lex_test_one)
6821 (rust_lex_test_sequence, rust_lex_test_push_back): Update.
6822 * parser-defs.h (paren_depth): Don't declare.
6823 * parse.c (paren_depth): Remove global.
6824 (parse_exp_in_context): Update.
6825 * p-exp.y (paren_depth): New global.
6826 (pascal_parse): Initialize it.
6827 * m2-exp.y (paren_depth): New global.
6828 (m2_parse): Initialize it.
6829 * go-exp.y (paren_depth): New global.
6830 (go_parse): Initialize it.
6831 * f-exp.y (paren_depth): New global.
6832 (f_parse): Initialize it.
6833 * d-exp.y (paren_depth): New global.
6834 (d_parse): Initialize it.
6835 * c-exp.y (paren_depth): New global.
6836 (c_parse): Initialize it.
6837 * ada-lex.l (paren_depth): New global.
6838 (lexer_init): Initialize it.
6842 * rust-exp.y (rust_parser::crate_name, rust_parser::super_name)
6843 (rust_parser::convert_ast_to_type)
6844 (rust_parser::convert_ast_to_expression, rust_lex_tests): Update.
6845 * parser-defs.h (struct parser_state) <parser_state>: Add
6846 parameters. Initialize new members.
6847 <expression_context_block, expression_context_pc>: New members.
6848 * parse.c (expression_context_block, expression_context_pc):
6850 (parse_exp_in_context): Update.
6851 * p-exp.y: Update all rules.
6853 * m2-exp.y: Update all rules.
6855 * go-exp.y (yylex): Update.
6856 * f-exp.y (yylex): Update.
6857 * d-exp.y: Update all rules.
6859 * c-exp.y: Update all rules.
6860 (lex_one_token, classify_name, yylex, c_parse): Update.
6861 * ada-exp.y (write_var_or_type, write_name_assoc): Update.
6865 * gdbarch.h, gdbarch.c: Rebuild.
6866 * gdbarch.sh (dtrace_parse_probe_argument): Change type.
6868 (struct stap_parse_info): Replace "parser_state" with
6870 * parser-defs.h (struct expr_builder): Rename from "parser_state".
6871 (parser_state): New class.
6872 * parse.c (expr_builder): Rename.
6873 (expr_builder::release): Rename.
6874 (write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
6875 (write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
6876 (write_exp_elt_longcst, write_exp_elt_floatcst)
6877 (write_exp_elt_type, write_exp_elt_intern, write_exp_string)
6878 (write_exp_string_vector, write_exp_bitstring)
6879 (write_exp_msymbol, mark_struct_expression)
6880 (write_dollar_variable)
6881 (insert_type_address_space, increase_expout_size): Replace
6882 "parser_state" with "expr_builder".
6883 * dtrace-probe.c: Replace "parser_state" with "expr_builder".
6884 * amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Replace
6885 "parser_state" with "expr_builder".
6889 * rust-exp.y: Replace "parse_language" with method call.
6891 (yylex): Replace "parse_language" with method call.
6893 (yylex): Replace "parse_language" with method call.
6894 * go-exp.y (classify_name): Replace "parse_language" with method
6896 * f-exp.y (yylex): Replace "parse_language" with method call.
6897 * d-exp.y (lex_one_token): Replace "parse_language" with method
6900 (lex_one_token, classify_name, yylex): Replace "parse_language"
6902 * ada-exp.y (find_primitive_type, type_char)
6903 (type_system_address): Replace "parse_language" with method call.
6907 * rust-exp.y: Replace "parse_gdbarch" with method call.
6908 * parse.c (write_dollar_variable, insert_type_address_space):
6909 Replace "parse_gdbarch" with method call.
6910 * p-exp.y (parse_type, yylex): Replace "parse_gdbarch" with method
6912 * objc-lang.c (end_msglist): Replace "parse_gdbarch" with method
6914 * m2-exp.y (parse_type, parse_m2_type, yylex): Replace
6915 "parse_gdbarch" with method call.
6916 * go-exp.y (parse_type, classify_name): Replace "parse_gdbarch"
6918 * f-exp.y (parse_type, parse_f_type, yylex): Replace
6919 "parse_gdbarch" with method call.
6920 * d-exp.y (parse_type, parse_d_type, lex_one_token): Replace
6921 "parse_gdbarch" with method call.
6922 * c-exp.y (parse_type, parse_number, classify_name): Replace
6923 "parse_gdbarch" with method call.
6924 * ada-lex.l: Replace "parse_gdbarch" with method call.
6925 * ada-exp.y (parse_type, find_primitive_type, type_char)
6926 (type_system_address): Replace "parse_gdbarch" with method call.
6930 * dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
6931 * stap-probe.c (stap_parse_argument): Update.
6932 * stap-probe.h (struct stap_parse_info) <stap_parse_info>: Remove
6933 initial_size parameter.
6934 * rust-exp.y (rust_lex_tests): Update.
6935 * parse.c (parser_state): Update.
6936 (parse_exp_in_context): Update.
6937 * parser-defs.h (struct parser_state) <parser_state>: Remove
6938 "initial_size" parameter.
6942 * parser-defs.h (increase_expout_size): Don't declare.
6943 * parse.c (increase_expout_size): Now static.
6947 * gnu-nat.c (gnu_nat_target::wait): Fix
6948 target_waitstatus_to_string call.
6952 * eval.c (evaluate_subexp_standard): Handle internal functions
6953 during Fortran function call handling.
6957 * NEWS: Mention new internal functions.
6958 * dwarf2read.c (dwarf2_init_complex_target_type): New function.
6959 (read_base_type): Use dwarf2_init_complex_target_type.
6960 * value.c (creal_internal_fn): New function.
6961 (cimag_internal_fn): New function.
6962 (_initialize_values): Register new internal functions.
6966 * infrun.c (stop_all_threads): If debug_infrun, always
6967 trace the wait status after wait_one, using
6968 target_waitstatus_to_string and target_pid_to_str.
6969 (handle_inferior_event): Replace various trace of
6970 wait status kind by a single trace.
6971 * gdb/gnu-nat.c (gnu_nat_target::wait): Replace local
6972 wait status kind image by target_waitstatus_to_string.
6973 * target/waitstatus.c (target_waitstatus_to_string): Fix
6979 * dwarf2read.c (partial_die_info::read): Handle DW_AT_ranges.
6984 * top.c (quit_force): Call 'finalize_values'.
6985 * value.c (finalize_values): New function.
6986 * value.h (finalize_values): Declare.
6990 * NEWS: Announce $_gdb_major and $_gdb_minor.
6992 * top.c (init_gdb_version_vars): New function.
6993 (gdb_init): Call init_gdb_version_vars.
6997 * printcmd.c (_initialize_printcmd): Add usage lines. Update some
6998 help text. Remove dead code.
7002 From Siddhesh Poyarekar:
7003 * f-lang.h (f77_get_upperbound): Return LONGEST.
7004 (f77_get_lowerbound): Likewise.
7005 * f-typeprint.c (f_type_print_varspec_suffix): Expand
7006 UPPER_BOUND and LOWER_BOUND to LONGEST. Use plongest to format
7008 (f_type_print_base): Expand UPPER_BOUND to LONGEST. Use
7009 plongest to format print it.
7010 * f-valprint.c (f77_get_lowerbound): Return LONGEST.
7011 (f77_get_upperbound): Likewise.
7012 (f77_get_dynamic_length_of_aggregate): Expand UPPER_BOUND,
7013 LOWER_BOUND to LONGEST.
7014 (f77_create_arrayprint_offset_tbl): Likewise.
7018 * ada-lang.c (ada_template_to_fixed_record_type_1): Use
7019 %s/pulongest for TYPE_LENGTH instead of %d in format
7021 * ada-typerint.c (ada_print_type): Likewise.
7022 * amd64-windows-tdep.c (amd64_windows_store_arg_in_reg): Likewise.
7023 * compile/compile-c-support.c (generate_register_struct): Likewise.
7024 * gdbtypes.c (recursive_dump_type): Likewise.
7025 * gdbtypes.h (struct type) <length>: Change type to ULONGEST.
7026 * m2-typeprint.c (m2_array): Use %s/pulongest for TYPE_LENGTH
7027 instead of %d in format strings.
7028 * riscv-tdep.c (riscv_type_alignment): Cast second argument
7029 to std::min to ULONGEST.
7030 * symmisc.c (print_symbol): Use %s/pulongest for TYPE_LENGTH
7031 instead of %d in format strings.
7032 * tracepoint.c (info_scope_command): Likewise.
7033 * typeprint.c (print_offset_data::update)
7034 (print_offset_data::finish): Likewise.
7035 * xtensa-tdep.c (xtensa_store_return_value)
7036 (xtensa_push_dummy_call): Likewise.
7040 * windows-nat.c (display_selector): Fixed format specifications
7045 * infrun.c (follow_exec): Call target_terminal::ours_for_output.
7049 * nios2-tdep.h (struct gdbarch_tdep): Add is_kernel_helper.
7050 * nios2-tdep.c (nios2_get_next_pc): Skip over kernel helpers.
7051 * nios2-linux-tdep.c (nios2_linux_is_kernel_helper): New.
7052 (nios2_linux_init_abi): Install it.
7056 * aarch64-tdep.c (aarch64_vnv_type): Use vector types.
7060 * features/aarch64-sve.c (create_feature_aarch64_sve): Add q view.
7065 * minsyms.c (minimal_symbol_upper_bound): Fix buffer overflow.
7069 * gdb-gdb.py.in (StructMainTypePrettyPrinter.bound_img): New method.
7070 (StructMainTypePrettyPrinter.bounds_img): Use new "bound_img"
7071 method to compute the bounds of range types. Also print "[evaluated]"
7072 if the bounds' values come from a dynamic evaluation.
7076 * cp-valprint.c (cp_print_value_fields): Don't print trailing
7077 whitespace when pretty printing is on.
7081 * ppc-linux-nat.c: Add include.
7085 * NEWS: Mention AArch64 Pointer Authentication.
7089 * arm-linux-nat.c: Add include.
7093 * source-cache.c (source_cache::get_source_lines): Re-read
7094 fullname after calling open_source_file.
7098 * NEWS: Mention TLS support for FreeBSD.
7102 * minsyms.c (BUNCH_SIZE): Update comment.
7103 (~minimal_symbol_reader): Remove old comment.
7104 (compact_minimal_symbols): Update comment.
7105 (minimal_symbol_reader::install): Remove old comment. Update
7110 * s390-linux-nat.c: Add include.
7114 * aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
7115 Call linux_get_hwcap.
7116 * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7118 (aarch64_linux_get_hwcap): Remove function.
7119 * aarch64-linux-tdep.h (aarch64_linux_get_hwcap): Remove
7121 * arm-linux-nat.c (arm_linux_nat_target::read_description):Call
7123 * arm-linux-tdep.c (arm_linux_core_read_description): Likewise.
7124 * linux-tdep.c (linux_get_hwcap): Add function.
7125 (linux_get_hwcap2): Likewise.
7126 * linux-tdep.h (linux_get_hwcap): Add declaration.
7127 (linux_get_hwcap2): Likewise.
7128 * ppc-linux-nat.c (ppc_linux_get_hwcap): Remove function.
7129 (ppc_linux_get_hwcap2): Likewise.
7130 (ppc_linux_nat_target::region_ok_for_hw_watchpoint): Call
7132 (ppc_linux_nat_target::insert_watchpoint): Likewise.
7133 (ppc_linux_nat_target::watchpoint_addr_within_range): Likewise.
7134 (ppc_linux_nat_target::read_description): Likewise.
7135 * ppc-linux-tdep.c (ppc_linux_core_read_description): Likewise.
7136 * s390-linux-nat.c: Likewise.
7137 * s390-linux-tdep.c (s390_core_read_description): Likewise.
7141 * ada-lang.c (standard_lookup): Simplify initialization.
7142 (ada_lookup_symbol_nonlocal): Simplify return.
7143 * solib-spu.c (spu_lookup_lib_symbol): Simplify return.
7144 * solib-darwin.c (darwin_lookup_lib_symbol): Simplify return.
7145 * solib-svr4.c (elf_lookup_lib_symbol): Simplify return.
7146 * rust-lang.c (rust_lookup_symbol_nonlocal): Simplify
7148 * solib.c (solib_global_lookup): Simplify.
7149 * symtab.c (null_block_symbol): Remove.
7150 (symbol_cache_lookup): Simplify returns.
7151 (lookup_language_this): Simplify returns.
7152 (lookup_symbol_aux): Simplify return.
7153 (lookup_local_symbol): Simplify returns.
7154 (lookup_global_symbol_from_objfile): Simplify return.
7155 (lookup_symbol_in_objfile_symtabs)
7156 (lookup_symbol_in_objfile_from_linkage_name): Simplify return.
7157 (lookup_symbol_via_quick_fns, lookup_symbol_in_static_block)
7158 (lookup_static_symbol, lookup_global_symbol): Simplify return.
7159 * cp-namespace.c (cp_lookup_bare_symbol)
7160 (cp_search_static_and_baseclasses, cp_lookup_symbol_via_imports)
7161 (cp_lookup_symbol_via_all_imports, cp_lookup_nested_symbol_1)
7162 (cp_lookup_nested_symbol): Don't use null_block_symbol.
7163 (cp_lookup_symbol_via_imports): Simplify initialization.
7164 (find_symbol_in_baseclass): Likewise.
7165 * symtab.h (null_block_symbol): Remove.
7166 * d-namespace.c (d_lookup_symbol): Don't use null_block_symbol.
7167 (d_lookup_nested_symbol, d_lookup_symbol_imports)
7168 (d_lookup_symbol_module): Likewise.
7169 (find_symbol_in_baseclass): Simplify initialization.
7173 * expression.h: Don't include symtab.h.
7174 (struct block): Forward declare.
7178 * c-exp.y (typebase): Remove casts.
7179 * gdbtypes.c (lookup_unsigned_typename, )
7180 (lookup_signed_typename): Remove cast.
7181 * eval.c (parse_to_comma_and_eval): Remove cast.
7182 * parse.c (write_dollar_variable): Remove cast.
7183 * block.h (struct block) <superblock>: Now const.
7184 * symfile-debug.c (debug_qf_map_matching_symbols): Update.
7185 * psymtab.c (psym_map_matching_symbols): Make "block" const.
7186 (map_block): Make "block" const.
7187 * symfile.h (struct quick_symbol_functions)
7188 <map_matching_symbols>: Constify block argument to "callback".
7189 * symtab.c (basic_lookup_transparent_type_quick): Make "block"
7191 (find_pc_sect_compunit_symtab): Make "b" const.
7192 (find_symbol_at_address): Likewise.
7193 (search_symbols): Likewise.
7194 * dwarf2read.c (dw2_lookup_symbol): Make "block" const.
7195 (dw2_debug_names_lookup_symbol): Likewise.
7196 (dw2_map_matching_symbols): Update.
7197 * p-valprint.c (pascal_val_print): Remove "block".
7198 * ada-lang.c (ada_add_global_exceptions): Make "b" const.
7199 (aux_add_nonlocal_symbols): Make "block" const.
7200 (resolve_subexp): Remove cast.
7201 * linespec.c (iterate_over_all_matching_symtabs): Make "block"
7203 (iterate_over_file_blocks): Likewise.
7204 * f-exp.y (%union) <bval>: Remove.
7205 * coffread.c (patch_opaque_types): Make "b" const.
7206 * spu-tdep.c (spu_catch_start): Make "block" const.
7207 * c-valprint.c (print_unpacked_pointer): Remove "block".
7208 * symmisc.c (dump_symtab_1): Make "b" const.
7209 (block_depth): Make "block" const.
7210 * d-exp.y (%union) <bval>: Remove.
7211 * cp-support.h (cp_lookup_rtti_type): Update.
7212 * cp-support.c (cp_lookup_rtti_type): Make "block" const.
7213 * psymtab.c (psym_lookup_symbol): Make "block" const.
7214 (maintenance_check_psymtabs): Make "b" const.
7215 * python/py-framefilter.c (extract_sym): Make "sym_block" const.
7216 (enumerate_locals, enumerate_args): Update.
7217 * python/py-symtab.c (stpy_global_block): Make "block" const.
7218 (stpy_static_block): Likewise.
7219 * inline-frame.c (block_starting_point_at): Make "new_block"
7221 * block.c (find_block_in_blockvector): Make return type const.
7222 (blockvector_for_pc_sect): Make "b" const.
7223 (find_block_in_blockvector): Make "b" const.
7227 * varobj.c (varobj_create): Update.
7228 * symfile.c (clear_symtab_users): Don't reset innermost_block.
7229 * printcmd.c (display_command, do_one_display): Don't reset
7231 * parser-defs.h (enum innermost_block_tracker_type): Move to
7233 (innermost_block): Update comment.
7234 * parse.c (parse_exp_1): Add tracker_types parameter.
7235 (parse_exp_in_context): Rename from parse_exp_in_context_1. Add
7236 tracker_types parameter. Reset innermost_block.
7237 (parse_exp_in_context): Remove.
7238 (parse_expression_for_completion): Update.
7239 * objfiles.c (~objfile): Don't reset expression_context_block or
7241 * expression.h (enum innermost_block_tracker_type): Move from
7243 (parse_exp_1): Add tracker_types parameter.
7244 * breakpoint.c (set_breakpoint_condition, watch_command_1): Don't
7245 reset innermost_block.
7249 * objfiles.h: Include bcache.h.
7253 * linespec.c (get_current_search_block): Use
7254 scoped_restore_current_language.
7255 * symmisc.c (dump_symtab): Use scoped_restore_current_language.
7260 * aarch64-linux-tdep.c
7261 (aarch64_linux_iterate_over_regset_sections): Check for pauth
7263 * aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_PAUTH): New define.
7268 * aarch64-tdep.c (aarch64_analyze_prologue): Check for pauth
7270 (aarch64_analyze_prologue_test): Add PACIASP test.
7271 (aarch64_prologue_prev_register): Unmask PC value.
7276 * aarch64-tdep.c (aarch64_frame_unmask_address): New function.
7277 (aarch64_dwarf2_prev_register): Unmask PC value.
7278 (aarch64_dwarf2_frame_init_reg): Init pauth registers.
7279 (aarch64_execute_dwarf_cfa_vendor_op): Check for
7280 DW_CFA_AARCH64_negate_ra_state.
7281 (aarch64_gdbarch_init): Add aarch64_execute_dwarf_cfa_vendor_op.
7286 * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Check for pauth
7288 (aarch64_pseudo_register_name): Likewise.
7289 (aarch64_pseudo_register_type): Likewise.
7290 (aarch64_pseudo_register_reggroup_p): Likewise.
7291 (aarch64_gdbarch_init): Add pauth registers.
7292 * aarch64-tdep.h (AARCH64_DWARF_PAUTH_RA_STATE): New define.
7293 (AARCH64_DWARF_PAUTH_DMASK): Likewise.
7294 (AARCH64_DWARF_PAUTH_CMASK): Likewise.
7295 (struct gdbarch_tdep): Add regnum for ra_state.
7300 * arch/aarch64.h (AARCH64_PAUTH_REGS_SIZE): New define.
7305 * aarch64-linux-nat.c (fetch_pauth_masks_from_thread): New
7307 (aarch64_linux_nat_target::fetch_registers): Read pauth registers.
7308 * aarch64-tdep.c (aarch64_cannot_store_register): New function.
7309 (aarch64_gdbarch_init): Add puth registers.
7310 * aarch64-tdep.h (struct gdbarch_tdep): Add pauth features.
7311 * arch/aarch64.h (AARCH64_PAUTH_DMASK_REGNUM): New define.
7312 (AARCH64_PAUTH_CMASK_REGNUM): Likewise.
7317 * aarch64-linux-nat.c
7318 (aarch64_linux_nat_target::read_description): Read PACA hwcap.
7319 * aarch64-linux-tdep.c
7320 (aarch64_linux_core_read_description): Likewise.
7321 (aarch64_linux_get_hwcap): New function.
7322 * aarch64-linux-tdep.h (AARCH64_HWCAP_PACA): New define.
7323 (aarch64_linux_get_hwcap): New declaration.
7328 * aarch64-linux-nat.c
7329 (aarch64_linux_nat_target::read_description): Add pauth param.
7330 * aarch64-linux-tdep.c
7331 (aarch64_linux_core_read_description): Likewise.
7332 * aarch64-tdep.c (struct target_desc): Add in pauth.
7333 (aarch64_read_description): Add pauth param.
7334 (aarch64_gdbarch_init): Likewise.
7335 * aarch64-tdep.h (aarch64_read_description): Likewise.
7336 * arch/aarch64.c (aarch64_create_target_description): Likewise.
7337 * arch/aarch64.h (aarch64_create_target_description): Likewise.
7338 * features/Makefile: Add new files.
7339 * features/aarch64-pauth.c: New file.
7340 * features/aarch64-pauth.xml: New file.
7344 * infrun.c (handle_inferior_event): Rename from
7345 handle_inferior_event_1. Create a scoped_value_mark.
7346 (handle_inferior_event): Remove.
7350 * mi/mi-interp.c (mi_on_normal_stop_1): Only show displays once.
7351 * infrun.h (print_stop_event): Add "displays" parameter.
7352 * infrun.c (print_stop_event): Add "displays" parameter.
7356 * tui/tui-out.c (tui_ui_out::do_field_string): Simplify.
7357 (tui_ui_out::do_text): Add comments. Reset M_LINE to 0 instead of
7358 to -1. Fix TABs vs spaces.
7359 (tui_ui_out::tui_ui_out): Don't initialize fields here.
7360 * tui/tui-out.h (tui_ui_out) Add intro comments.
7361 <m_line, m_start_of_line>: In-class initialize, and add describing
7366 * arm-linux-nat.c (arm_linux_insert_hw_breakpoint1): Fix
7368 (arm_linux_remove_hw_breakpoint1): Use a gdb::function_view.
7373 * tui/tui-out.c (tui_ui_out::tui_ui_out): Fix initialization of
7374 m_line and m_start_of_line.
7378 * tui/tui-io.c (gdb_wgetch): Don't echo CR.
7379 (tui_getc): When gdb_wgetch returns a CR, behave the same as when
7380 it returns a newline. This fixes a regression in TU mode, whereby
7381 the next line is output on the same screen line as the user input.
7385 * minsyms.c (minimal_symbol_reader::install): Remove call to
7390 * tui/tui-io.c (reverse_mode_p, reverse_save_bg, reverse_save_fg):
7392 (apply_style): New, factored out from ...
7393 (apply_ansi_escape): ... this. Handle reverse video mode.
7394 (tui_set_reverse_mode): New function.
7395 * tui/tui-io.h (tui_set_reverse_mode): New declaration.
7396 * tui/tui-winsource.c (tui_show_source_line): Use
7397 tui_set_reverse_mode instead of setting A_STANDOUT.
7398 * ui-style.h (struct ui_file_style) <set_reverse, set_fg, set_bg>:
7403 * tui/tui-source.c (copy_source_line): Fix handling of 'column'.
7408 * ada-lang.c (empty_array): Add "high" parameter.
7409 (ada_evaluate_subexp): Update.
7413 * unittests/string_view-selftests.c: Define
7414 _initialize_string_view_selftests unconditionally.
7419 * windows-nat.c (windows_make_so): Remove unused text_vma variable.
7424 * windows-nat.c (display_selector): Fix format specifiers.
7428 * tui/tui-winsource.c (tui_set_is_exec_point_at): Call
7429 tui_refill_source_window instead of tui_refresh_win, to update the
7430 current execution line. This fixes redisplay of the current line
7431 when stepping through the code with "next" or "step".
7435 * source-cache.c (source_cache::get_source_lines): Call
7436 find_source_lines to initialize s->nlines. This fixes vertical
7437 scrolling of TUI source window when the DOWN arrow is pressed.
7441 * auto-load.c (_initialize_auto_load): Fix 'This options has'.
7442 linux-thread-db.c (_initialize_thread_db): Likewise.
7446 * tui/tui-winsource.c (tui_show_source_line): Revert "Use
7447 wclrtoeol in tui_show_source_line". This reverts changes made in
7448 commit 4a3045920bbe4e50a0f4920b0fdc4e88ef23015c.
7452 * symtab.h (struct minimal_symbol): Derive from
7453 general_symbol_info.
7454 (MSYMBOL_VALUE, MSYMBOL_VALUE_RAW_ADDRESS)
7455 (MSYMBOL_VALUE_ADDRESS, MSYMBOL_VALUE_BYTES)
7456 (MSYMBOL_BLOCK_VALUE, MSYMBOL_VALUE_CHAIN, MSYMBOL_LANGUAGE)
7457 (MSYMBOL_SECTION, MSYMBOL_OBJ_SECTION, MSYMBOL_NATURAL_NAME)
7458 (MSYMBOL_LINKAGE_NAME, MSYMBOL_DEMANGLED_NAME)
7459 (MSYMBOL_SEARCH_NAME): Update.
7460 (MSYMBOL_SET_LANGUAGE, MSYMBOL_SET_NAMES): Remove.
7461 * solib.c (gdb_bfd_lookup_symbol_from_symtab): Don't use memset.
7462 * minsyms.c (minimal_symbol_reader::record_full): Update.
7466 * minsyms.c (minimal_symbol_reader::install): Use memcpy.
7470 * objfiles.h (struct objfile_per_bfd_storage) <msymbols>: Now a
7472 (objfile::msymbols_range::begin, objfile::msymbols_range::end):
7474 * minsyms.c (lookup_minimal_symbol_by_pc_section)
7475 (build_minimal_symbol_hash_tables)
7476 (minimal_symbol_reader::install): Update.
7480 * symtab.c (create_demangled_names_hash): Update.
7481 (symbol_set_names): Update.
7482 * objfiles.h (struct objfile_per_bfd_storage)
7483 <demangled_names_hash>: Now an htab_up.
7484 * objfiles.c (objfile_per_bfd_storage): Simplify.
7488 * objfiles.h (struct objfile_per_bfd_storage): Declare
7490 * objfiles.c (objfile_per_bfd_storage::~objfile_per_bfd_storage):
7492 (get_objfile_bfd_data): Use new. Don't initialize
7494 (free_objfile_per_bfd_storage): Remove.
7495 (objfile_bfd_data_free, objfile::~objfile): Use delete.
7499 * symfile.c (reread_symbols): Update.
7500 * objfiles.c (objfile::objfile): Update.
7501 * minsyms.h (terminate_minimal_symbol_table): Don't declare.
7502 * minsyms.c (lookup_minimal_symbol_by_pc_section): Update
7504 (minimal_symbol_reader::install): Update.
7505 (terminate_minimal_symbol_table): Remove.
7506 * jit.c (jit_object_close_impl): Update.
7510 * minsyms.c (minimal_symbol_reader::record_full): Remove some
7515 * objfiles.h (struct objfile_per_bfd_storage)
7516 <demangled_hash_languages>: Now a bitset.
7517 * minsyms.c (add_minsym_to_demangled_hash_table): Update.
7518 (lookup_minimal_symbol): Update.
7522 * minsyms.h (class minimal_symbol_reader) <record_with_info>:
7523 Don't return the symbol.
7524 * coffread.c (record_minimal_symbol): Use record_full.
7528 The MS-Windows port of ncurses fails to switch to a color pair if
7529 one or both of the colors are the implicit default colors. This
7530 change records the default colors when TUI is initialized, and
7531 then specifies them explicitly when a color pair uses the default
7532 colors. This allows color styling in TUI mode on MS-Windows.
7534 * tui/tui-io.c [__MINGW32__]: Include windows.h. Declare
7536 (tui_initialize_io) [__MINGW32__]: Record the default terminal
7537 colors in ncurses_norm_attr.
7538 (apply_ansi_escape) [__MINGW32__]: If a color in a color pair is
7539 "none", replace it with the default color recorded in
7544 * source-cache.h (class source_cache) <get_source_lines>: Return
7546 * source-cache.c (source_cache::extract_lines): Handle case where
7547 first_pos==npos. Return std::string.
7548 (source_cache::get_source_lines): Update.
7552 * NEWS: Add item for "style sources" commands.
7553 * source-cache.c (source_cache::get_source_lines): Check
7555 * cli/cli-style.c (source_styling): New global.
7556 (_initialize_cli_style): Add "style sources" commands.
7557 (show_style_sources): New function.
7558 * cli/cli-style.h (source_styling): Declare.
7563 * tui/tui-winsource.h (tui_refill_source_window): Declare.
7564 * tui/tui-winsource.c (tui_refill_source_window): New function,
7566 (tui_horizontal_source_scroll): ... here. Move some logic.
7567 * cli/cli-style.c (set_style_enabled): Notify new observable.
7568 * tui/tui-hooks.c (tui_redisplay_source): New function.
7569 (tui_attach_detach_observers): Attach or detach
7570 tui_redisplay_source.
7571 * observable.h (source_styling_changed): New observable.
7572 * observable.c: Define source_styling_changed observable.
7576 * i386-gnu-nat.c (i386_gnu_nat_target::fetch_registers)
7577 (i386_gnu_nat_target::store_registers): Update.
7578 * target-debug.h (target_debug_print_std_string): New macro.
7579 * x86-linux-nat.c (x86_linux_nat_target::enable_btrace): Update.
7580 * windows-tdep.c (display_one_tib): Update.
7581 * tui/tui-stack.c (tui_make_status_line): Update.
7582 * top.c (print_inferior_quit_action): Update.
7583 * thread.c (thr_try_catch_cmd): Update.
7584 (add_thread_with_info): Update.
7585 (thread_target_id_str): Update.
7586 (thr_try_catch_cmd): Update.
7587 (thread_command): Update.
7588 (thread_find_command): Update.
7589 * record-btrace.c (record_btrace_target::info_record)
7590 (record_btrace_resume_thread, record_btrace_target::resume)
7591 (record_btrace_cancel_resume, record_btrace_step_thread)
7592 (record_btrace_target::wait, record_btrace_target::wait)
7593 (record_btrace_target::wait, record_btrace_target::stop): Update.
7594 * progspace.c (print_program_space): Update.
7595 * process-stratum-target.c
7596 (process_stratum_target::thread_address_space): Update.
7597 * linux-fork.c (linux_fork_mourn_inferior)
7598 (detach_checkpoint_command, info_checkpoints_command)
7599 (linux_fork_context): Update.
7600 (linux_fork_detach): Update.
7601 (class scoped_switch_fork_info): Update.
7602 (delete_checkpoint_command): Update.
7603 * infrun.c (follow_fork_inferior): Update.
7604 (follow_fork_inferior): Update.
7605 (proceed_after_vfork_done): Update.
7606 (handle_vfork_child_exec_or_exit): Update.
7607 (follow_exec): Update.
7608 (displaced_step_prepare_throw): Update.
7609 (displaced_step_restore): Update.
7610 (start_step_over): Update.
7612 (clear_proceed_status_thread): Update.
7614 (print_target_wait_results): Update.
7615 (do_target_wait): Update.
7616 (context_switch): Update.
7617 (stop_all_threads): Update.
7618 (restart_threads): Update.
7619 (finish_step_over): Update.
7620 (handle_signal_stop): Update.
7621 (switch_back_to_stepped_thread): Update.
7622 (keep_going_pass_signal): Update.
7623 (print_exited_reason): Update.
7624 (normal_stop): Update.
7625 * inferior.c (inferior_pid_to_str): Change return type.
7626 (print_selected_inferior): Update.
7627 (add_inferior): Update.
7628 (detach_inferior): Update.
7629 * dummy-frame.c (fprint_dummy_frames): Update.
7630 * dcache.c (dcache_info_1): Update.
7631 * btrace.c (btrace_enable, btrace_disable, btrace_teardown)
7632 (btrace_fetch, btrace_clear): Update.
7633 * linux-tdep.c (linux_core_pid_to_str): Change return type.
7634 * i386-cygwin-tdep.c (i386_windows_core_pid_to_str): Change return
7636 * fbsd-tdep.c (fbsd_core_pid_to_str): Change return type.
7637 * sol2-tdep.h (sol2_core_pid_to_str): Change return type.
7638 * sol2-tdep.c (sol2_core_pid_to_str): Change return type.
7639 * gdbarch.c, gdbarch.h: Rebuild.
7640 * gdbarch.sh (core_pid_to_str): Change return type.
7641 * windows-nat.c (struct windows_nat_target) <pid_to_str>: Change
7643 (windows_nat_target::pid_to_str): Change return type.
7644 (windows_delete_thread): Update.
7645 (windows_nat_target::attach): Update.
7646 (windows_nat_target::files_info): Update.
7647 * target-delegates.c: Rebuild.
7648 * sol-thread.c (class sol_thread_target) <pid_to_str>: Change
7650 (sol_thread_target::pid_to_str): Change return type.
7651 * remote.c (class remote_target) <pid_to_str>: Change return
7653 (remote_target::pid_to_str): Change return type.
7654 (extended_remote_target::attach, remote_target::remote_stop_ns)
7655 (remote_target::remote_notif_remove_queued_reply)
7656 (remote_target::push_stop_reply, remote_target::disable_btrace):
7658 (extended_remote_target::attach): Update.
7659 * remote-sim.c (struct gdbsim_target) <pid_to_str>: Change return
7661 (gdbsim_target::pid_to_str): Change return type.
7662 * ravenscar-thread.c (struct ravenscar_thread_target)
7663 <pid_to_str>: Change return type.
7664 (ravenscar_thread_target::pid_to_str): Change return type.
7665 * procfs.c (class procfs_target) <pid_to_str>: Change return
7667 (procfs_target::pid_to_str): Change return type.
7668 (procfs_target::attach): Update.
7669 (procfs_target::detach): Update.
7670 (procfs_target::fetch_registers): Update.
7671 (procfs_target::store_registers): Update.
7672 (procfs_target::wait): Update.
7673 (procfs_target::files_info): Update.
7674 * obsd-nat.c (obsd_nat_target::pid_to_str): Change return type.
7675 * nto-procfs.c (struct nto_procfs_target) <pid_to_str>: Change
7677 (nto_procfs_target::pid_to_str): Change return type.
7678 (nto_procfs_target::files_info, nto_procfs_target::attach): Update.
7679 * linux-thread-db.c (class thread_db_target) <pid_to_str>: Change
7681 * linux-nat.c (linux_nat_target::pid_to_str): Change return type.
7683 (attach_proc_task_lwp_callback, get_detach_signal)
7684 (detach_one_lwp, resume_lwp, linux_nat_target::resume)
7685 (linux_nat_target::resume, wait_lwp, stop_callback)
7686 (maybe_clear_ignore_sigint, stop_wait_callback, status_callback)
7687 (save_stop_reason, select_event_lwp, linux_nat_filter_event)
7688 (linux_nat_wait_1, resume_stopped_resumed_lwps)
7689 (linux_nat_target::wait, linux_nat_stop_lwp): Update.
7690 * inf-ptrace.c (inf_ptrace_target::pid_to_str): Change return
7692 (inf_ptrace_target::attach): Update.
7693 (inf_ptrace_target::files_info): Update.
7694 * go32-nat.c (struct go32_nat_target) <pid_to_str>: Change return
7696 (go32_nat_target::pid_to_str): Change return type.
7697 * gnu-nat.c (gnu_nat_target::pid_to_str): Change return type.
7698 (gnu_nat_target::wait): Update.
7699 (gnu_nat_target::wait): Update.
7700 (gnu_nat_target::resume): Update.
7701 * fbsd-nat.c (fbsd_nat_target::pid_to_str): Change return type.
7702 (fbsd_nat_target::wait): Update.
7703 * darwin-nat.c (darwin_nat_target::pid_to_str): Change return
7705 (darwin_nat_target::attach): Update.
7706 * corelow.c (class core_target) <pid_to_str>: Change return type.
7707 (core_target::pid_to_str): Change return type.
7708 * target.c (normal_pid_to_str): Change return type.
7709 (default_pid_to_str): Likewise.
7710 (target_pid_to_str): Change return type.
7711 (target_translate_tls_address): Update.
7712 (target_announce_detach): Update.
7713 * bsd-uthread.c (struct bsd_uthread_target) <pid_to_str>: Change
7715 (bsd_uthread_target::pid_to_str): Change return type.
7716 * bsd-kvm.c (class bsd_kvm_target) <pid_to_str>: Change return
7718 (bsd_kvm_target::pid_to_str): Change return type.
7719 * aix-thread.c (class aix_thread_target) <pid_to_str>: Change
7721 (aix_thread_target::pid_to_str): Change return type.
7722 * target.h (struct target_ops) <pid_to_str>: Change return type.
7723 (target_pid_to_str, normal_pid_to_str): Likewise.
7724 * obsd-nat.h (class obsd_nat_target) <pid_to_str>: Change return
7726 * linux-nat.h (class linux_nat_target) <pid_to_str>: Change return
7728 * inf-ptrace.h (struct inf_ptrace_target) <pid_to_str>: Change
7730 * gnu-nat.h (struct gnu_nat_target) <pid_to_str>: Change return
7732 * fbsd-nat.h (class fbsd_nat_target) <pid_to_str>: Change return
7734 * darwin-nat.h (class darwin_nat_target) <pid_to_str>: Change
7739 * NEWS: Mention that the new default MI version is 3. Mention
7740 changes to the output of commands and events that deal with
7741 multi-location breakpoints.
7742 * breakpoint.c: Include "mi/mi-out.h".
7743 (print_one_breakpoint): Change output syntax if using MI version
7745 * mi/mi-main.h (mi_cmd_fix_multi_location_breakpoint_output):
7747 (mi_multi_location_breakpoint_output_fixed): New.
7748 * mi/mi-main.c (fix_multi_location_breakpoint_output): New.
7749 (mi_cmd_fix_multi_location_breakpoint_output): New.
7750 (mi_multi_location_breakpoint_output_fixed): New.
7751 * mi/mi-cmds.c (mi_cmds): Register command
7752 -fix-multi-location-breakpoint-output.
7753 * mi/mi-out.c (mi_out_new): Instantiate version 3 when using
7758 * mi/mi-out.h (mi_out_new): Change parameter to const char *.
7759 * mi/mi-out.c (mi_out_new): Change parameter to const char *,
7760 instantiate mi_ui_out based on interpreter name.
7761 * mi/mi-interp.c (mi_interp::init): Use the new mi_out_new.
7762 * mi/mi-main.c (mi_load_progress): Likewise.
7766 * NEWS: Combine separate "New targets" sections for 8.3.
7770 * ppc-fbsd-tdep.c (ppcfbsd_get_thread_local_address): New.
7771 (ppcfbsd_init_abi): Install gdbarch
7772 "fetch_tls_load_module_address" and "get_thread_local_address"
7777 * riscv-fbsd-tdep.c (riscv_fbsd_get_thread_local_address): New.
7778 (riscv_fbsd_init_abi): Install gdbarch
7779 "fetch_tls_load_module_address" and "get_thread_local_address"
7784 * i386-fbsd-tdep.c (i386fbsd_get_thread_local_address): New.
7785 (i386fbsd_init_abi): Install gdbarch
7786 "fetch_tls_load_module_address" and "get_thread_local_address"
7791 * amd64-fbsd-tdep.c (amd64fbsd_get_thread_local_address): New.
7792 (amd64fbsd_init_abi): Install gdbarch
7793 "fetch_tls_load_module_address" and "get_thread_local_address"
7798 * fbsd-tdep.c (fbsd_pspace_data_handle): New variable.
7799 (struct fbsd_pspace_data): New type.
7800 (get_fbsd_pspace_data, fbsd_pspace_data_cleanup)
7801 (fbsd_read_integer_by_name, fbsd_fetch_rtld_offsets)
7802 (fbsd_get_tls_index, fbsd_get_thread_local_address): New function.
7803 (_initialize_fbsd_tdep): Initialize 'fbsd_pspace_data_handle'.
7804 * fbsd-tdep.c (fbsd_get_thread_local_address): New prototype.
7808 * gdbtypes.c (lookup_struct_elt): New function.
7809 (lookup_struct_elt_type): Reimplement via lookup_struct_elt.
7810 * gdbtypes.h (struct struct_elt): New type.
7811 (lookup_struct_elt): New prototype.
7815 * gdbtypes.c (lookup_struct_elt_type): Update comment and
7816 remove disabled code block.
7820 * gdbarch.sh (get_thread_local_address): New method.
7821 * gdbarch.h, gdbarch.c: Regenerate.
7822 * target.c (target_translate_tls_address): Use
7823 gdbarch_get_thread_local_address if present instead of
7824 target::get_thread_local_address.
7828 * target.h (target::get_thread_local_address): Update comment.
7832 * solib-svr4.c (svr4_fetch_objfile_link_map): Look for
7833 objfile->separate_debug_objfile_backlink if not NULL.
7837 * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers): Use
7838 tdep->fsbase_regnum instead of constants for fs_base and gs_base.
7839 (amd64bsd_store_inferior_registers): Likewise.
7840 * amd64-fbsd-nat.c (amd64_fbsd_nat_target::read_description):
7841 Enable segment base registers.
7842 * i386-bsd-nat.c (i386bsd_fetch_inferior_registers): Use
7843 PT_GETFSBASE and PT_GETGSBASE.
7844 (i386bsd_store_inferior_registers): Use PT_SETFSBASE and
7846 * i386-fbsd-nat.c (i386_fbsd_nat_target::read_description): Enable
7847 segment base registers.
7848 * i386-fbsd-tdep.c (i386fbsd_core_read_description): Likewise.
7852 * amd64-fbsd-nat.c (amd64_fbsd_nat_target::read_description):
7853 Update calls to i386_target_description to add 'segments'
7855 * amd64-tdep.c (amd64_init_abi): Set tdep->fsbase_regnum. Don't
7856 add segment base registers.
7857 * arch/i386.c (i386_create_target_description): Add 'segments'
7858 parameter to enable segment base registers.
7859 * arch/i386.h (i386_create_target_description): Likewise.
7860 * features/i386/32bit-segments.xml: New file.
7861 * features/i386/32bit-segments.c: Generate.
7862 * i386-fbsd-nat.c (i386_fbsd_nat_target::read_description): Update
7863 call to i386_target_description to add 'segments' parameter.
7864 * i386-fbsd-tdep.c (i386fbsd_core_read_description): Likewise.
7865 * i386-go32-tdep.c (i386_go32_init_abi): Likewise.
7866 * i386-linux-tdep.c (i386_linux_read_description): Likewise.
7867 * i386-tdep.c (i386_validate_tdesc_p): Add segment base registers
7868 if feature is present.
7869 (i386_gdbarch_init): Pass I386_NUM_REGS to set_gdbarch_num_regs.
7870 Add 'segments' parameter to call to i386_target_description.
7871 (i386_target_description): Add 'segments' parameter to enable
7872 segment base registers.
7873 (_initialize_i386_tdep) [GDB_SELF_TEST]: Add 'segments' parameter
7874 to call to i386_target_description.
7875 * i386-tdep.h (struct gdbarch_tdep): Add 'fsbase_regnum'.
7876 (enum i386_regnum): Add I386_FSBASE_REGNUM and I386_GSBASE_REGNUM.
7877 Define I386_NUM_REGS.
7878 (i386_target_description): Add 'segments' parameter to enable
7879 segment base registers.
7884 * source-cache.c: #undef open and close, to avoid unresolved
7885 externals during linking.
7889 * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): Now
7890 const. Add initializers.
7891 (_initialize_remote): Don't initialize ptid globals.
7895 * yy-remap.h [TEST_CPNAMES] (YYFPRINTF): Don't define.
7899 * cp-name-parser.y (main): Remove unused 'len' variable.
7903 * common/ptid.c (null_ptid, minus_one_ptid): Now const.
7904 * common/ptid.h (null_ptid, minus_one_ptid): Now const.
7908 * linux-nat.c (iterate_over_lwps): Update.
7909 (stop_callback): Remove parameter.
7910 (stop_wait_callback, detach_callback, resume_set_callback)
7911 (select_singlestep_lwp_callback, set_ignore_sigint)
7912 (status_callback, resumed_callback, resume_clear_callback)
7913 (kill_callback, kill_wait_callback, linux_nat_stop_lwp): Remove
7915 (linux_nat_target::detach, linux_nat_target::resume)
7916 (linux_stop_and_wait_all_lwps, select_event_lwp)
7917 (linux_nat_filter_event, linux_nat_wait_1)
7918 (linux_nat_target::kill, linux_nat_target::stop)
7919 (linux_nat_target::stop): Update.
7920 (linux_nat_resume_callback): Change type.
7921 (resume_stopped_resumed_lwps, count_events_callback)
7922 (select_event_lwp_callback): Likewise.
7923 (linux_stop_lwp, linux_nat_stop_lwp): Update.
7924 * arm-linux-nat.c (struct update_registers_data): Remove.
7925 (update_registers_callback): Change type.
7926 (arm_linux_insert_hw_breakpoint1): Update.
7927 * nat/x86-linux-dregs.c (update_debug_registers_callback): Remove
7929 (x86_linux_dr_set_addr): Update.
7930 (x86_linux_dr_set_control): Update.
7931 * nat/linux-nat.h (iterate_over_lwps_ftype): Remove parameter.
7932 (iterate_over_lwps): Use gdb::function_view.
7933 * nat/aarch64-linux-hw-point.c (struct
7934 aarch64_dr_update_callback_param): Remove.
7935 (debug_reg_change_callback): Change type.
7936 (aarch64_notify_debug_reg_change): Update.
7937 * s390-linux-nat.c (s390_refresh_per_info): Update.
7941 * dwarf2read.c (dwarf2_find_containing_comp_unit): Remove
7942 redundant assignment to "this_cu".
7946 * gdbtypes.c (rank_one_type): Remove unnecessary cases from switch.
7950 * gdbtypes.c (rank_one_type_parm_set): New function extracted
7952 (rank_one_type): ... this.
7956 * gdbtypes.c (rank_one_type_parm_struct): New function extracted
7958 (rank_one_type): ... this.
7962 * gdbtypes.c (rank_one_type_parm_complex): New function extracted
7964 (rank_one_type): ... this.
7968 * gdbtypes.c (rank_one_type_parm_float): New function extracted
7970 (rank_one_type): ... this.
7974 * gdbtypes.c (rank_one_type_parm_bool): New function extracted
7976 (rank_one_type): ... this.
7980 * gdbtypes.c (rank_one_type_parm_range): New function extracted
7982 (rank_one_type): ... this.
7986 * gdbtypes.c (rank_one_type_parm_char): New function extracted
7988 (rank_one_type): ... this.
7992 * gdbtypes.c (rank_one_type_parm_enum): New function extracted
7994 (rank_one_type): ... this.
7998 * gdbtypes.c (rank_one_type_parm_int): New function extracted
8000 (rank_one_type): ... this.
8004 * gdbtypes.c (rank_one_type_parm_func): New function extracted
8006 (rank_one_type): ... this.
8010 * gdbtypes.c (rank_one_type_parm_array): New function extracted
8012 (rank_one_type): ... this.
8016 * gdbtypes.c (rank_one_type_parm_ptr): New function extracted
8018 (rank_one_type): ... this.
8022 * inferior.c (initialize_inferiors): Ensure 'help set/show print
8023 inferior-events' shows the example events.
8027 Support styling on native MS-Windows console
8030 * utils.c (can_emit_style_escape) [_WIN32]: Don't disable styling
8031 on MS-Windows if $TERM is not defined.
8033 * cli/cli-style.c: Set cli_styling to 1 in the MinGW build.
8035 * posix-hdep.c (gdb_console_fputs):
8036 * mingw-hdep.c (rgb_to_16colors, gdb_console_fputs): New
8038 * ui-file.h (gdb_console_fputs): Add prototype.
8040 * ui-file.c (stdio_file::puts): Call gdb_console_fputs, and fall
8041 back to fputs only if the former returns zero.
8045 * symmisc.c (print_symbol_bcache_statistics): Update.
8046 (print_objfile_statistics): Update.
8047 * symfile.c (allocate_symtab): Update.
8048 * stabsread.c: Don't include bcache.h.
8049 * psymtab.h (struct psymbol_bcache): Don't declare.
8050 (class psymtab_storage) <psymbol_cache>: Now a bcache.
8051 (psymbol_bcache_init, psymbol_bcache_free)
8052 (psymbol_bcache_get_bcache): Don't declare.
8053 * psymtab.c (struct psymbol_bcache): Remove.
8054 (psymtab_storage::psymtab_storage): Update.
8055 (psymtab_storage::~psymtab_storage): Update.
8056 (psymbol_bcache_init, psymbol_bcache_free)
8057 (psymbol_bcache_get_bcache, psymbol_bcache_full): Remove.
8058 (add_psymbol_to_bcache): Update.
8059 (allocate_psymtab): Update.
8060 * objfiles.h (struct objfile_per_bfd_storage) <filename_cache,
8061 macro_cache>: No longer pointers.
8062 * objfiles.c (get_objfile_bfd_data): Don't call bcache_xmalloc.
8063 (free_objfile_per_bfd_storage): Don't call bcache_xfree.
8064 * macrotab.c (macro_bcache): Update.
8065 * macroexp.c: Don't include bcache.h.
8066 * gdbtypes.c (check_types_worklist): Update.
8067 (types_deeply_equal): Remove TRY/CATCH. Update.
8068 * elfread.c (elf_symtab_read): Update.
8069 * dwarf2read.c: Don't include bcache.h.
8070 * buildsym.c (buildsym_compunit::get_macro_table): Update.
8071 * bcache.h (bcache, bcache_full, bcache_xffree, bcache_xmalloc)
8072 (print_bcache_statistics, bcache_memory_used): Don't declare.
8073 (struct bcache): Move from bcache.c. Add constructor, destructor,
8074 methods. Rename all data members.
8075 * bcache.c (struct bcache): Move to bcache.h.
8076 (bcache::expand_hash_table): Rename from expand_hash_table.
8078 (bcache::insert): Rename from bcache_full.
8079 (bcache::compare): Rename from bcache_compare.
8080 (bcache_xmalloc): Remove.
8081 (bcache::~bcache): Rename from bcache_xfree.
8082 (bcache::print_statistics): Rename from print_bcache_statistics.
8083 (bcache::memory_used): Rename from bcache_memory_used.
8087 * infrun.c (normal_stop): Also check for
8088 TARGET_WAITKIND_NO_RESUMED before referring to inferior_thread().
8092 * f-lang.c (value_from_host_double): Moved to...
8093 * value.c (value_from_host_double): ...here.
8094 * value.h (value_from_host_double): Declare.
8095 * guile/scm-math.c (vlscm_convert_typed_number): Use
8096 value_from_host_double.
8097 (vlscm_convert_number): Likewise.
8098 * guile/scm-value.c (gdbscm_value_to_real): Likewise.
8099 * python/py-value.c (convert_value_from_python): Likewise.
8103 * gcore.c (write_gcore_file): Use SCOPE_EXIT.
8107 * utils.h (free_current_contents): Don't declare.
8108 * utils.c (free_current_contents): Remove.
8112 * top.c (quit_force): Update.
8113 * main.c (captured_command_loop): Update.
8114 * common/new-op.c (operator new): Update.
8115 * common/common-exceptions.c (struct catcher)
8116 <save_cleanup_chain>: Remove member.
8117 (exceptions_state_mc_init): Update.
8118 (exception_try_scope_entry): Return nullptr.
8119 (exception_try_scope_exit, exception_rethrow)
8120 (throw_exception_sjlj, throw_exception_cxx): Update.
8121 * common/cleanups.h (make_cleanup, make_cleanup_dtor)
8122 (all_cleanups, do_cleanups, discard_cleanups)
8123 (discard_final_cleanups, save_cleanups, save_final_cleanups)
8124 (restore_cleanups, restore_final_cleanups): Don't declare.
8125 (do_final_cleanups): Remove parameter.
8126 * common/cleanups.c (cleanup_chain, make_cleanup)
8127 (make_cleanup_dtor, all_cleanups, do_cleanups)
8128 (discard_my_cleanups, discard_cleanups)
8129 (discard_final_cleanups, save_my_cleanups, save_cleanups)
8130 (save_final_cleanups, restore_my_cleanups, restore_cleanups)
8131 (null_cleanup): Remove.
8132 (do_final_cleanups): Remove parameter.
8136 * remote.c (remote_target::remote_parse_stop_reply): Use
8141 * stabsread.c (struct stabs_field_info): Rename from field_info.
8142 <list, fnlist>: Add initializers.
8143 <obstack>: New member.
8144 (read_member_functions, read_struct_fields, read_baseclasses):
8145 Allocate on obstack. Don't use cleanups.
8146 (read_one_struct_field, read_member_functions, read_struct_fields)
8147 (read_baseclasses, read_tilde_fields, attach_fn_fields_to_type)
8148 (attach_fields_to_type, read_cpp_abbrev, read_member_functions)
8149 (read_struct_type): Update.
8153 * nat/linux-namespaces.c (linux_mntns_access_fs): Use SCOPE_EXIT.
8154 * common/filestuff.h (make_cleanup_close): Don't declare.
8155 * common/filestuff.c (do_close_cleanup, make_cleanup_close):
8160 * solib-aix.c: Use make_scope_exit.
8164 * solib-svr4.c (svr4_parse_libraries, svr4_current_sos_direct):
8165 Use make_scope_exit.
8169 * solib-svr4.c (disable_probes_interface): Remove parameter.
8170 (svr4_handle_solib_event): Use make_scope_exit.
8174 * remote.c (struct stop_reply_deleter): Remove.
8175 (stop_reply_up): Update.
8176 (struct stop_reply): Derive from notif_event. Don't typedef.
8177 <regcache>: Now a std::vector.
8178 (stop_reply_xfree): Remove.
8179 (stop_reply::~stop_reply): Rename from stop_reply_dtr.
8180 (remote_notif_stop_alloc_reply): Return a unique_ptr. Use new.
8181 (remote_target::discard_pending_stop_replies): Use delete.
8182 (remote_target::remote_parse_stop_reply): Update.
8183 (remote_target::process_stop_reply): Update.
8184 * remote-notif.h (struct notif_event): Add virtual destructor.
8185 Remove "dtr" member.
8186 (struct notif_client) <alloc_event>: Return a unique_ptr.
8187 (notif_event_xfree): Don't declare.
8188 (notif_event_up): New typedef.
8189 * remote-notif.c (remote_notif_ack, remote_notif_parse): Update.
8190 (notif_event_xfree, do_notif_event_xfree): Remove.
8191 (remote_notif_state_xfree): Update.
8195 * infrun.c (displaced_step_clear_cleanup): Now a
8196 forward_scope_exit type.
8197 (displaced_step_prepare_throw): Update.
8198 (displaced_step_fixup): Update.
8202 * inferior.h (class inferior): Update comment.
8203 * gdbthread.h (class thread_info): Update comment.
8208 * stabsread.h (struct stab_section_list): Remove.
8209 (coffstab_build_psymtabs): Update.
8210 * dbxread.c (symbuf_sections): Now a std::vector.
8211 (sect_idx): New global.
8212 (fill_symbuf): Update.
8213 (coffstab_build_psymtabs): Change type of stabsects parameter.
8215 * coffread.c (struct coff_symfile_info) <stabsects>: Now a
8217 (linetab, linetab_offset, linetab_size, stringtab): Move earlier.
8218 (coff_locate_sections): Update.
8219 (coff_symfile_read): Remove cleanups. Update.
8220 (init_stringtab): Add storage parameter.
8221 (free_stringtab, free_stringtab_cleanup): Remove.
8222 (init_lineno): Add storage parameter.
8223 (free_linetab, free_linetab_cleanup): Remove.
8227 * linux-fork.c (fork_info::clobber_regs): Delete.
8228 (fork_load_infrun_state): Remove reference to 'clobber_regs'.
8229 (fork_save_infrun_state): Remove 'clobber_regs' parameter. Update
8231 (scoped_switch_fork_info::scoped_switch_fork_info)
8232 (checkpoint_command, linux_fork_context): Adjust
8233 fork_save_infrun_state calls.
8237 * linux-fork.c (inf_has_multiple_thread_cb): Delete.
8238 (inf_has_multiple_threads): Return 'bool' and rewrite using
8239 inferior_info::threads().
8243 * linux-fork.c: Include <list>.
8244 (fork_list): Now a std::list instance.
8245 (fork_info): Add ctor, dtor, and in-class initialize all fields.
8246 (forks_exist_p, find_last_fork): Adjust.
8250 (free_fork): Delete, folded into fork_info::~fork_info().
8251 (delete_fork, find_fork_ptid, find_fork_id, find_fork_pid):
8253 (init_fork_list): Delete.
8254 (linux_fork_killall, linux_fork_mourn_inferior)
8255 (linux_fork_detach, info_checkpoints_command): Adjust.
8256 (_initialize_linux_fork): No longer call init_fork_list.
8260 * linux-fork.c (new_fork): New, split out of ...
8261 (add_fork): ... this. Return void. Move "first fork" special
8262 case from here, to ...
8263 (checkpoint_command): ... here.
8264 * linux-linux.h (add_fork): Return void.
8268 * f-exp.y (direct_abs_decl): Handle TYPE*SIZE type names.
8274 * f-exp.y: New token, UNOP_INTRINSIC.
8275 (exp): New pattern using UNOP_INTRINSIC token.
8276 (f77_keywords): Add 'abs' keyword.
8277 * f-lang.c: Add 'target-float.h' and 'math.h' includes.
8278 (value_from_host_double): New function.
8279 (evaluate_subexp_f): Support UNOP_ABS.
8283 * f-lang.c (build_fortran_types): Use TYPE_CODE_CHAR for character
8288 * f-exp.y (convert_to_kind_type): Handle integer (kind=8).
8289 * f-lang.c (build_fortran_types): Setup builtin_integer_s8.
8290 * f-lang.h (struct builtin_f_type): Add builtin_integer_s8 field.
8294 * f-exp.y (convert_to_kind_type): Handle more type kinds.
8299 * expprint.c (dump_subexp_body_standard): Support UNOP_KIND.
8300 * f-exp.y: Define 'KIND' token.
8301 (exp): New pattern for KIND expressions.
8302 (ptype): Handle types with a kind extension.
8303 (direct_abs_decl): Extend to spot kind extensions.
8304 (f77_keywords): Add 'kind' to the list.
8305 (push_kind_type): New function.
8306 (convert_to_kind_type): New function.
8307 * f-lang.c (evaluate_subexp_f): Support UNOP_KIND.
8308 * parse.c (operator_length_standard): Likewise.
8309 * parser-defs.h (enum type_pieces): Add tp_kind.
8310 * std-operator.def: Add UNOP_KIND.
8314 * f-exp.y (f_parse): Set yydebug.
8318 * f-lang.c (evaluate_subexp_f): New function.
8319 (exp_descriptor_f): New global.
8320 (f_language_defn): Use exp_descriptor_f instead of
8321 exp_descriptor_standard.
8325 * f-exp.y (struct token): Add comments.
8326 (dot_ops): Remove uppercase versions and the end marker.
8327 (f77_keywords): Likewise.
8328 (yylex): Use ARRAY_SIZE to iterate over dot_ops, assert all
8329 entries in the dot_ops array are case insensitive, and use
8330 strncasecmp to compare strings. Also some whitespace cleanup in
8331 this area. Similar for the f77_keywords array, except entries in
8332 this list might be case sensitive.
8336 * f-exp.y (struct f77_boolean_val): Add comments.
8337 (boolean_values): Remove uppercase versions, and end marker.
8338 (yylex): Use ARRAY_SIZE for iterating over boolean_values array,
8339 and use strncasecmp to achieve case insensitivity. Additionally,
8340 perform whitespace cleanup around this code.
8344 * remote-sim.c (gdbsim_target_open): Use result of
8351 * eval.c (evaluate_subexp_standard): Call Fortran argument
8353 * f-lang.c (struct value): A value which can be passed into a
8354 Fortran function call.
8355 (fortran_argument_convert): Wrap Fortran arguments in a pointer
8357 (struct type): Value ready for a Fortran function call.
8358 (fortran_preserve_arg_pointer): Undo check_typedef, the pointer
8360 * f-lang.h (fortran_argument_convert): Declaration.
8361 (fortran_preserve_arg_pointer): Declaration.
8362 * infcall.c (value_arg_coerce): Call Fortran argument logic.
8366 * python/py-prettyprint.c (print_string_repr): Remove #if.
8367 * python/py-utils.c (unicode_to_encoded_string): Remove #if.
8371 * target.c (the_dummy_target): Move later. Change type to
8373 (initialize_targets): Don't initialize the_dummy_target.
8377 * gdb_bfd.c (gdb_bfd_fdopenr): Remove.
8378 * gdb_bfd.h (gdb_bfd_fdopenr): Don't declare.
8382 * windows-nat.c (windows_nat_target::attach)
8383 (windows_nat_target::detach): Don't call gdb_flush.
8384 * valprint.c (generic_val_print, val_print, val_print_string):
8385 Don't call gdb_flush.
8386 * utils.c (defaulted_query): Don't call gdb_flush.
8387 * typeprint.c (print_type_scalar): Don't call gdb_flush.
8388 * target.c (target_announce_detach): Don't call gdb_flush.
8389 * sparc64-tdep.c (adi_print_versions): Don't call gdb_flush.
8390 * remote.c (extended_remote_target::attach): Don't call
8392 * procfs.c (procfs_target::detach): Don't call gdb_flush.
8393 * printcmd.c (do_examine): Don't call gdb_flush.
8394 (info_display_command): Don't call gdb_flush.
8395 * p-valprint.c (pascal_val_print): Don't call gdb_flush.
8396 * nto-procfs.c (nto_procfs_target::attach): Don't call gdb_flush.
8397 * memattr.c (info_mem_command): Don't call gdb_flush.
8398 * mdebugread.c (mdebug_build_psymtabs): Don't call gdb_flush.
8399 * m2-valprint.c (m2_val_print): Don't call gdb_flush.
8400 * infrun.c (follow_exec, handle_command): Don't call gdb_flush.
8401 * inf-ptrace.c (inf_ptrace_target::attach): Don't call gdb_flush.
8402 * hppa-tdep.c (unwind_command): Don't call gdb_flush.
8403 * gnu-nat.c (gnu_nat_target::attach): Don't call gdb_flush.
8404 (gnu_nat_target::detach): Don't call gdb_flush.
8405 * f-valprint.c (f_val_print): Don't call gdb_flush.
8406 * darwin-nat.c (darwin_nat_target::attach): Don't call gdb_flush.
8407 * cli/cli-script.c (read_command_lines): Don't call gdb_flush.
8408 * cli/cli-cmds.c (shell_escape, print_disassembly): Don't call
8410 * c-valprint.c (c_val_print): Don't call gdb_flush.
8411 * ada-valprint.c (ada_print_scalar): Don't call gdb_flush.
8415 * varobj.c (update_dynamic_varobj_children): Update.
8416 (install_default_visualizer): Use reset, not release.
8417 * value.c (set_internalvar): Update.
8418 * dwarf2loc.c (value_of_dwarf_reg_entry): Update.
8419 * common/gdb_ref_ptr.h (class ref_ptr) <release>: Add
8420 ATTRIBUTE_UNUSED_RESULT.
8424 * remote.c (class scoped_remote_fd) <release>: Add
8425 ATTRIBUTE_UNUSED_RESULT.
8429 * macroexp.c (struct macro_buffer) <release>: Add
8430 ATTRIBUTE_UNUSED_RESULT.
8434 * nat/linux-btrace.c (linux_enable_bts, linux_enable_pt): Update.
8435 * common/scoped_mmap.h (class scoped_mmap) <release>: Add
8436 ATTRIBUTE_UNUSED_RESULT.
8440 * common/scoped_fd.h (class scoped_fd) <release>: Add
8441 ATTRIBUTE_UNUSED_RESULT.
8445 * parser-defs.h (struct parser_state) <release>: Add
8446 ATTRIBUTE_UNUSED_RESULT.
8450 * utils.h (class gdb_argv) <release>: Add
8451 ATTRIBUTE_UNUSED_RESULT.
8452 * common/common-defs.h (ATTRIBUTE_UNUSED_RESULT): Define.
8456 * xml-syscall.c (xml_list_syscalls_by_group): Drop 'struct' from
8457 for-loop range, to avoid compiler warnings.
8459 * tui/tui.c (tui_enable) [__MINGW32__]: Don't declare 'cap', to
8460 avoid compiler warnings about unused variables.
8462 * NEWS: Mention end of support for native debugging on MS-Windows
8466 * common/netstuff.c:
8467 * gdbserver/gdbreplay.c
8468 * gdbserver/remote-utils.c:
8470 * unittests/parse-connection-spec-selftests.c [USE_WIN32API]:
8471 Include ws2tcpip.h instead of wsiapi.h and winsock2.h. Redefine
8472 _WIN32_WINNT to 0x0501 if defined to a smaller value, as
8473 'getaddrinfo' and 'freeaddrinfo' were not available before
8474 Windows XP, and mingw.org's MinGW headers by default define
8475 _WIN32_WINNT to 0x500.
8479 * coffread.c (coff_start_symtab): Remove unnecessary xstrdup.
8485 * procfs.c (proc_wait_for_stop): Wrap write of PCWSTOP in
8486 set_sigint_trap, clear_sigint_trap.
8490 * target.c (target_detach): Clear the regcache and the
8495 * utils.c (set_screen_size): When we cap the height/width sizes,
8496 tweak the corresponding command variable to show "unlimited":
8501 * utils.c (set_screen_size): Reduce "infinite" rows and columns
8502 before calling rl_set_screen_size.
8506 * configure.ac (HAVE_LIBPYTHON2_4, HAVE_LIBPYTHON2_5): Never
8508 * python/py-value.c: Remove Python 2.4 workaround.
8509 * python/py-utils.c (gdb_pymodule_addobject): Remove Python 2.4
8511 * python/py-type.c (convert_field, gdbpy_initialize_types): Remove
8512 Python 2.4 workaround.
8513 * python/python-internal.h: Remove Python 2.4 comment.
8514 (Py_ssize_t): Don't define.
8515 (PyVarObject_HEAD_INIT, Py_TYPE): Don't define.
8516 (gdb_Py_DECREF): Remove Python 2.4 workaround.
8517 (gdb_PyObject_GetAttrString, PyObject_GetAttrString): Remove.
8518 (gdb_PyObject_HasAttrString, PyObject_HasAttrString): Remove.
8519 * python/python.c (do_start_initialization): Remove Python 2.4
8521 * python/py-prettyprint.c (class dummy_python_frame): Remove.
8522 (print_children): Remove Python 2.4 workaround.
8523 * python/py-inferior.c (buffer_procs): Remove Python 2.4
8525 (CHARBUFFERPROC_NAME): Remove.
8526 * python/py-breakpoint.c (gdbpy_initialize_breakpoints): Remove
8527 Python 2.4 workaround.
8531 * NEWS: Note minimum Python version.
8535 * python/py-inferior.c (infpy_write_memory): Remove non-IS_PY3K
8536 code from these functions. Remove corresponding ifdefs. Use
8537 Py_buffer_up instead of explicit calls to PyBuffer_Release.
8538 Remove gotos and target of gotos.
8539 (infpy_search_memory): Likewise.
8543 * gdb/hppa-tdep.c (hppa_dummy_id): Delete.
8544 (hppa_gdbarch_init): Don't register deleted functions with
8549 * gdb/h8300-tdep.c (h8300_unwind_pc): Delete.
8550 (h8300_unwind_sp): Delete.
8551 (h8300_dummy_id): Delete.
8552 (h8300_gdbarch_init): Don't register deleted functions with
8557 * gdb/ft32-tdep.c (ft32_dummy_id): Delete.
8558 (ft32_unwind_pc): Delete.
8559 (ft32_unwind_sp): Delete.
8560 (ft32_gdbarch_init): Don't register deleted functions with
8565 * gdb/frv-tdep.c (frv_dummy_id): Delete.
8566 (frv_unwind_pc): Delete.
8567 (frv_unwind_sp): Delete.
8568 (frv_gdbarch_init): Don't register deleted functions with
8573 * gdb/riscv-tdep.c (riscv_dummy_id): Delete.
8574 (riscv_unwind_pc): Delete.
8575 (riscv_unwind_sp): Delete.
8576 (riscv_gdbarch_init): Don't register deleted functions with
8581 * gdb/csky-tdep.c (csky_dummy_id): Delete.
8582 (csky_unwind_pc): Delete.
8583 (csky_unwind_sp): Delete.
8584 (csky_gdbarch_init): Don't register deleted functions with
8589 * gdb/cris-tdep.c (cris_dummy_id): Delete.
8590 (cris_unwind_pc): Delete.
8591 (cris_unwind_sp): Delete.
8592 (cris_gdbarch_init): Don't register deleted functions with
8597 * gdb/bfin-tdep.c (bfin_dummy_id): Delete.
8598 (bfin_unwind_pc): Delete.
8599 (bfin_gdbarch_init): Don't register deleted functions with gdbarch.
8603 * gdb/arm-tdep.c (arm_dummy_id): Delete.
8604 (arm_unwind_pc): Delete.
8605 (arm_unwind_sp): Delete.
8606 (arm_gdbarch_init): Don't register deleted functions with gdbarch.
8610 * gdb/arc-tdep.c (arc_dummy_id): Delete.
8611 (arc_unwind_pc): Delete.
8612 (arc_unwind_sp): Delete.
8613 (arc_gdbarch_init): Don't register deleted functions with gdbarch.
8617 * gdb/alpha-tdep.c (alpha_dummy_id): Delete.
8618 (alpha_unwind_pc): Delete.
8619 (alpha_gdbarch_init): Don't register deleted functions with
8624 * gdb/aarch64-tdep.c (aarch64_dummy_id): Delete.
8625 (aarch64_unwind_pc): Delete.
8626 (aarch64_unwind_sp): Delete.
8627 (aarch64_gdbarch_init): Don't register deleted functions with
8632 * gdbtypes.c (type_align): Don't consider static members when
8633 computing structure alignment.
8637 * arc-tdep.c (arc_type_align): Provide alignment for basic types,
8638 return 0 for other types.
8639 * arch-utils.c (default_type_align): Always return 0.
8640 * gdbarch.h: Regenerate.
8641 * gdbarch.sh (type_align): Extend comment.
8642 * gdbtypes.c (type_align): Add additional comments, always call
8643 gdbarch_type_align before applying the default rules.
8644 * i386-tdep.c (i386_type_align): Return 0 as the default rule,
8645 generic code will then apply a suitable default.
8646 * nios2-tdep.c (nios2_type_align): Provide alignment for basic
8647 types, return 0 for other types.
8651 * NEWS: Create a new section for the next release branch.
8652 Rename the section of the current branch, now that it has
8657 GDB 8.3 branch created (143420fb0d5ae54323ba9953f0818c194635228d):
8658 * version.in: Bump version to 8.3.50.DATE-git.
8662 * aix-thread.c (ptid_cmp): Remove unused variable.
8663 (get_signaled_thread): Likewise.
8664 (store_regs_user_thread): Likewise.
8665 (store_regs_kernel_thread): Likewise.
8666 (fetch_regs_kernel_thread): Remove shadowed variable.
8670 * features/riscv/32bit-cpu.xml: Add register numbers.
8671 * features/riscv/32bit-fpu.c: Regenerate.
8672 * features/riscv/32bit-fpu.xml: Add register numbers.
8673 * features/riscv/64bit-cpu.xml: Add register numbers.
8674 * features/riscv/64bit-fpu.c: Regenerate.
8675 * features/riscv/64bit-fpu.xml: Add register numbers.
8679 * NEWS: Mention two argument form of gdb.Value constructor.
8680 * python/py-value.c (convert_buffer_and_type_to_value): New
8682 (valpy_new): Parse arguments via gdb_PyArg_ParseTupleAndKeywords.
8683 Add support for handling an optional second argument. Call
8684 convert_buffer_and_type_to_value as appropriate.
8685 * python/python-internal.h (Py_buffer_deleter): New struct.
8686 (Py_buffer_up): New typedef.
8690 * dwarf2read.c (dwarf2_get_dwz_file): Reset dwz_bfd to nullptr
8691 instead of releasing ownership.
8695 * dwarf2read.c (open_and_init_dwp_file): Call
8696 elf_numsections instead of bfd_count_sections to initialize
8697 dwp_file->num_sections.
8701 * solib-darwin.c (darwin_get_dyld_bfd): Don't release dyld_bfd.
8705 * gcore.in: Add '--readnever' option when invoking GDB.
8709 * MAINTAINERS: Update my email address.
8713 * build-id.c (build_id_to_debug_bfd_1): New function.
8714 (build_id_to_debug_bfd): Look for separate debug file in
8719 * gdbarch.sh: Update the copyright year range that is placed into
8725 * linespec.c (create_sals_line_offset): Search for the default
8726 symtab's filename instead of its fullname.
8730 * NEWS: Update style defaults.
8734 * main.c (captured_main_1): Disable styling in batch mode.
8738 * symtab.c (symtab_symbol_info): Fix typos.
8742 * findcmd.c (_initialize_mem_search): Use upper case for
8743 metasyntactic variables.
8747 * aarch64-tdep.c (aarch64_add_reggroups): New function.
8748 (aarch64_gdbarch_init): Call aarch64_add_reggroups.
8752 * top.h (source_file_name): Change to std::string.
8753 * top.c (source_file_name): Likewise.
8754 (command_line_input): Adjust.
8755 * cli/cli-script.c (script_from_file): Adjust.
8759 * ravenscar-thread.c
8760 (ravenscar_thread_target::update_thread_list): Don't call
8761 ada_build_task_list.
8762 * ada-lang.h (ada_build_task_list): Don't declare.
8763 * ada-tasks.c (struct ada_tasks_inferior_data)
8764 <task_list_valid_p>: Now bool.
8765 (read_known_tasks, ada_task_list_changed)
8766 (ada_tasks_invalidate_inferior_data): Update.
8767 (read_known_tasks_array): Return bool.
8768 (read_known_tasks_list): Likewise.
8769 (read_known_tasks): Return void.
8770 (ada_build_task_list): Now static.
8774 * gdbtypes.c (type_align): Allow alignment of TYPE_CODE_METHODPTR
8775 and TYPE_CODE_MEMBERPTR to be overridden by the gdbarch.
8779 * ada-task.c (_initialize_tasks): Use 'with_cleanup' register
8780 variant for ada_tasks_pspace_data_handle and
8781 ada_tasks_inferior_data_handle.
8782 (ada_tasks_pspace_data_cleanup): New function.
8783 (ada_tasks_inferior_data_cleanup): New function.
8787 * macrotab.h (macro_source_fullname): Return a std::string.
8788 * macrotab.c (macro_include, check_for_redefinition)
8789 (macro_undef, macro_lookup_definition, foreach_macro)
8790 (foreach_macro_in_scope): Update.
8791 (macro_source_fullname): Return a std::string.
8792 * macrocmd.c (show_pp_source_pos): Update.
8796 * macrocmd.c (show_pp_source_pos): Style the file names.
8801 * tui/tui-source.c (tui_set_source_content_nil): Rewrite.
8805 * ada-lang.c (user_select_syms): Use filtered printing.
8806 * utils.c (wrap_style): New global.
8807 (desired_style): Remove.
8808 (emit_style_escape): Add stream parameter.
8809 (set_output_style, reset_terminal_style, prompt_for_continue):
8811 (flush_wrap_buffer): Only flush gdb_stdout.
8812 (wrap_here): Set wrap_style.
8813 (fputs_maybe_filtered): Clear the wrap buffer on exception. Don't
8814 treat escape sequences as a character. Change when wrap buffer is
8816 (fputs_styled): Do not set the output style when the default is
8818 * ui-style.h (struct ui_file_style) <is_default>: New method.
8819 * source.c (print_source_lines_base): Emit escape sequences in one
8824 * gdbtypes.c (type_align): Handle TYPE_CODE_RANGE the same as
8825 integers and enumeration types.
8829 * ada-lang.c (standard_lookup): Use ada_lookup_encoded_symbol
8830 instead of lookup_symbol_in_language
8831 (do_exact_match): New function.
8832 (ada_get_symbol_name_matcher): Return do_exact_match when
8833 doing a verbatim match.
8837 * ravenscar-thread.c (ravenscar_thread_target::resume)
8838 (ravenscar_thread_target::wait): Special case wildcard requests.
8842 * ravenscar-thread.c (base_ptid): Remove.
8843 (struct ravenscar_thread_target) <close>: New method.
8844 <m_base_ptid>: New member.
8845 <update_inferior_ptid, active_task, task_is_currently_active,
8846 runtime_initialized>: Declare methods.
8847 <ravenscar_thread_target>: Add constructor.
8848 (ravenscar_thread_target::task_is_currently_active)
8849 (ravenscar_thread_target::update_inferior_ptid)
8850 (ravenscar_runtime_initialized): Rename. Now methods.
8851 (ravenscar_thread_target::resume, ravenscar_thread_target::wait)
8852 (ravenscar_thread_target::update_thread_list): Update.
8853 (ravenscar_thread_target::active_task): Now method.
8854 (ravenscar_thread_target::store_registers)
8855 (ravenscar_thread_target::prepare_to_store)
8856 (ravenscar_thread_target::prepare_to_store)
8857 (ravenscar_thread_target::mourn_inferior): Update.
8858 (ravenscar_inferior_created): Use "new" to create target.
8859 (ravenscar_thread_target::get_ada_task_ptid): Update.
8860 (_initialize_ravenscar): Don't initialize base_ptid.
8861 (ravenscar_ops): Remove global.
8865 * target.h (push_target): Declare new overload.
8866 * target.c (push_target): New overload, taking an rvalue reference.
8867 * remote.c (remote_target::open_1): Use push_target overload.
8868 * corelow.c (core_target_open): Use push_target overload.
8872 * ravenscar-thread.c (is_ravenscar_task)
8873 (ravenscar_task_is_currently_active): Return bool.
8874 (ravenscar_update_inferior_ptid, get_running_thread_msymbol)
8875 (_initialize_ravenscar): Remove "(void)".
8876 (has_ravenscar_runtime, ravenscar_runtime_initialized): Likewise.
8881 * ravenscar-thread.c (ravenscar_runtime_initializer)
8882 (has_ravenscar_runtime, get_running_thread_id)
8883 (ravenscar_thread_target::resume): Fix indentation.
8887 * sparc-ravenscar-thread.c (struct sparc_ravenscar_ops): Derive
8888 from ravenscar_arch_ops.
8889 (sparc_ravenscar_ops::fetch_registers)
8890 (sparc_ravenscar_ops::store_registers): Now methods.
8891 (sparc_ravenscar_prepare_to_store): Remove.
8892 (sparc_ravenscar_ops): Redefine.
8893 * ravenscar-thread.h (struct ravenscar_arch_ops): Add virtual
8894 methods and destructor. Remove members.
8895 * ravenscar-thread.c (ravenscar_thread_target::fetch_registers)
8896 (ravenscar_thread_target::store_registers)
8897 (ravenscar_thread_target::prepare_to_store): Update.
8898 * ppc-ravenscar-thread.c (ppc_ravenscar_generic_prepare_to_store):
8900 (struct ppc_ravenscar_powerpc_ops): Derive from
8902 (ppc_ravenscar_powerpc_ops::fetch_registers)
8903 (ppc_ravenscar_powerpc_ops::store_registers): Now methods.
8904 (ppc_ravenscar_powerpc_ops): Redefine.
8905 (struct ppc_ravenscar_e500_ops): Derive from ravenscar_arch_ops.
8906 (ppc_ravenscar_e500_ops::fetch_registers)
8907 (ppc_ravenscar_e500_ops::store_registers): Now methods.
8908 (ppc_ravenscar_e500_ops): Redefine.
8909 * aarch64-ravenscar-thread.c
8910 (aarch64_ravenscar_generic_prepare_to_store): Remove.
8911 (struct aarch64_ravenscar_ops): Derive from ravenscar_arch_ops.
8912 (aarch64_ravenscar_fetch_registers)
8913 (aarch64_ravenscar_store_registers): Now methods.
8914 (aarch64_ravenscar_ops): Redefine.
8918 * ravenscar-thread.c (ravenscar_thread_target::stopped_by_sw_breakpoint)
8919 (ravenscar_thread_target::stopped_by_hw_breakpoint)
8920 (ravenscar_thread_target::stopped_by_watchpoint)
8921 (ravenscar_thread_target::stopped_data_address)
8922 (ravenscar_thread_target::core_of_thread): Use scoped_restore.
8926 * ravenscar-thread.c: Fix some typos.
8931 * ada-lang.c (ada_exception_sal): Change addr_string to a
8933 (create_ada_exception_catchpoint): Update.
8938 * breakpoint.c (~bp_location): Rename from bp_location_dtor.
8939 (bp_location_ops): Remove.
8940 (base_breakpoint_allocate_location): Update.
8941 (free_bp_location): Update.
8942 * ada-lang.c (class ada_catchpoint_location)
8943 <ada_catchpoint_location>: Remove ops parameter.
8944 (ada_catchpoint_location_dtor): Remove.
8945 (ada_catchpoint_location_ops): Remove.
8946 (allocate_location_exception): Update.
8947 * breakpoint.h (struct bp_location_ops): Remove.
8948 (class bp_location) <bp_location>: Remove bp_location_ops
8950 <~bp_location>: Add destructor.
8956 * remote.c (remote_target::remote_parse_stop_reply): Avoid using
8963 * gnu-nat.c (S_proc_getmsgport_reply, S_proc_task2proc_reply)
8964 (S_proc_pid2proc_reply): Adjust to Hurd "proc" interface changes.
8968 * gnu-nat.c (gnu_write_inferior, parse_int_arg, _parse_bool_arg)
8969 (check_empty): Use "const char *".
8971 * gnu-nat.c (gnu_nat_target::detach): Instead of
8972 'detach_inferior (pid)' call
8973 'detach_inferior (find_inferior_pid (pid))'.
8975 * configure.nat [gdb_host == i386gnu] (NATDEPFILES): Add
8976 'nat/fork-inferior.o'.
8977 * gnu-nat.c: #include "nat/fork-inferior.h".
8979 * gnu-nat.c (gnu_nat_target::detach): Instead of
8980 'inf_child_maybe_unpush_target (ops)' call 'maybe_unpush_target'.
8981 * gnu-nat.h: #include "inf-child.h".
8982 * i386-gnu-nat.c (gnu_fetch_registers): Rename/move to
8983 'i386_gnu_nat_target::fetch_registers'.
8984 (gnu_store_registers): Rename/move to
8985 'i386_gnu_nat_target::store_registers'.
8987 * config/i386/nm-i386gnu.h: Don't "#include" any files.
8988 * gnu-nat.h (mach_thread_info): New function.
8989 * gnu-nat.c (thread_takeover_sc_cmd): Use it.
8991 * config/i386/nm-i386gnu.h (gnu_target_pid_to_str): Remove.
8995 * riscv-rdep.c (riscv_type_alignment): Handle TYPE_CODE_RANGE.
8999 * windows-nat.c (windows_add_thread): Add new parameter
9000 "main_thread_p" with default value set to false. Update
9001 function documentation as well as all callers.
9002 (windows_delete_thread): Likewise.
9003 (fake_create_process): Update call to windows_add_thread.
9004 (get_windows_debug_event) <CREATE_THREAD_DEBUG_EVENT>
9005 <CREATE_PROCESS_DEBUG_EVENT>: Likewise.
9006 <EXIT_THREAD_DEBUG_EVENT, EXIT_PROCESS_DEBUG_EVENT>: Update
9007 call to windows_delete_thread.
9011 * MAINTAINERS: Add Andrew Burgess as global maintainer.
9015 * symfile.c (find_separate_debug_file): Use canonical path of
9016 sysroot with child_path instead of gdb_sysroot if it is valid.
9020 * symfile.c (find_separate_debug_file): Use child_path to
9021 determine if an object file is under a sysroot.
9025 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9026 unittests/child-path-selftests.c.
9027 * common/pathstuff.c (child_path): New function.
9028 * common/pathstuff.h (child_path): New prototype.
9029 * unittests/child-path-selftests.c: New file.
9033 * symfile.c (find_separate_debug_file): Look for separate debug
9034 files in debug directories under the sysroot.
9038 * symtab.h (struct minimal_symbol data_p): New const method.
9039 (struct minimal_symbol text_p): Likewise.
9040 * symtab.c (output_source_filename): Use file name style
9042 (print_symbol_info): Likewise.
9043 (print_msymbol_info): Use address style to print addresses.
9044 Use function name style to print executable text symbols.
9045 (expand_symtab_containing_pc): Use data_p.
9046 (find_pc_sect_compunit_symtab): Likewise.
9050 * breakpoint.c (describe_other_breakpoints): Use address style
9052 (say_where): Likewise.
9056 * ada-typeprint.c (print_func_type): Print function name
9057 style to print function name.
9058 * c-typeprint.c (c_print_type_1): Likewise.
9062 * aarch64-linux-tdep.c (aarch64_linux_get_syscall_number): Check
9067 * c-exp.y (direct_abs_decl): Use emplace_back to record the
9072 * ada-varobj.c (ada_value_is_changeable_p): Add handling of
9073 TYPE_CODE_REF types.
9077 * riscv-linux-tdep.c (riscv_linux_fregmap): New.
9078 (riscv_linux_fregset): New.
9079 (riscv_linux_iterate_over_regset_sections): Call cb for .reg2 section.
9083 * thread.c (thread_cancel_execution_command): Update.
9084 * thread-fsm.h (struct thread_fsm): Add constructor, destructor,
9086 (struct thread_fsm_ops): Remove.
9087 (thread_fsm_ctor, thread_fsm_delete, thread_fsm_clean_up)
9088 (thread_fsm_should_stop, thread_fsm_return_value)
9089 (thread_fsm_set_finished, thread_fsm_finished_p)
9090 (thread_fsm_async_reply_reason, thread_fsm_should_notify_stop):
9092 * mi/mi-interp.c (mi_on_normal_stop_1): Update.
9093 * infrun.c (clear_proceed_status_thread)
9094 (clean_up_just_stopped_threads_fsms, fetch_inferior_event)
9095 (print_stop_event): Update.
9096 * infcmd.c (struct step_command_fsm): Inherit from thread_fsm.
9098 (step_command_fsm_ops): Remove.
9099 (new_step_command_fsm): Remove.
9101 (step_command_fsm::should_stop): Rename from
9102 step_command_fsm_should_stop.
9103 (step_command_fsm::clean_up): Rename from
9104 step_command_fsm_clean_up.
9105 (step_command_fsm::do_async_reply_reason): Rename from
9106 step_command_fsm_async_reply_reason.
9107 (struct until_next_fsm): Inherit from thread_fsm. Add
9109 (until_next_fsm_ops): Remove.
9110 (new_until_next_fsm): Remove.
9111 (until_next_fsm::should_stop): Rename from
9112 until_next_fsm_should_stop.
9113 (until_next_fsm::clean_up): Rename from until_next_fsm_clean_up.
9114 (until_next_fsm::do_async_reply_reason): Rename from
9115 until_next_fsm_async_reply_reason.
9116 (struct finish_command_fsm): Inherit from thread_fsm. Add
9117 constructor. Change type of breakpoint.
9118 (finish_command_fsm_ops): Remove.
9119 (new_finish_command_fsm): Remove.
9120 (finish_command_fsm::should_stop): Rename from
9121 finish_command_fsm_should_stop.
9122 (finish_command_fsm::clean_up): Rename from
9123 finish_command_fsm_clean_up.
9124 (finish_command_fsm::return_value): Rename from
9125 finish_command_fsm_return_value.
9126 (finish_command_fsm::do_async_reply_reason): Rename from
9127 finish_command_fsm_async_reply_reason.
9128 (finish_command): Update.
9129 * infcall.c (struct call_thread_fsm): Inherit from thread_fsm.
9131 (call_thread_fsm_ops): Remove.
9132 (call_thread_fsm::call_thread_fsm): Rename from
9133 new_call_thread_fsm.
9134 (call_thread_fsm::should_stop): Rename from
9135 call_thread_fsm_should_stop.
9136 (call_thread_fsm::should_notify_stop): Rename from
9137 call_thread_fsm_should_notify_stop.
9138 (run_inferior_call, call_function_by_hand_dummy): Update.
9139 * cli/cli-interp.c (should_print_stop_to_console): Update.
9140 * breakpoint.c (struct until_break_fsm): Inherit from thread_fsm.
9141 Add constructor. Change type of location_breakpoint,
9143 (until_break_fsm_ops): Remove.
9144 (new_until_break_fsm): Remove.
9145 (until_break_fsm::should_stop): Rename from
9146 until_break_fsm_should_stop.
9147 (until_break_fsm::clean_up): Rename from
9148 until_break_fsm_clean_up.
9149 (until_break_fsm::do_async_reply_reason): Rename from
9150 until_break_fsm_async_reply_reason.
9151 (until_break_command): Update.
9152 * thread-fsm.c: Remove.
9153 * Makefile.in (COMMON_SFILES): Remove thread-fsm.c.
9157 * yy-remap.h: Add include guard.
9158 * xtensa-tdep.h: Add include guard.
9159 * xcoffread.h: Rename include guard.
9160 * varobj-iter.h: Add include guard.
9161 * tui/tui.h: Rename include guard.
9162 * tui/tui-winsource.h: Rename include guard.
9163 * tui/tui-wingeneral.h: Rename include guard.
9164 * tui/tui-windata.h: Rename include guard.
9165 * tui/tui-win.h: Rename include guard.
9166 * tui/tui-stack.h: Rename include guard.
9167 * tui/tui-source.h: Rename include guard.
9168 * tui/tui-regs.h: Rename include guard.
9169 * tui/tui-out.h: Rename include guard.
9170 * tui/tui-layout.h: Rename include guard.
9171 * tui/tui-io.h: Rename include guard.
9172 * tui/tui-hooks.h: Rename include guard.
9173 * tui/tui-file.h: Rename include guard.
9174 * tui/tui-disasm.h: Rename include guard.
9175 * tui/tui-data.h: Rename include guard.
9176 * tui/tui-command.h: Rename include guard.
9177 * tic6x-tdep.h: Add include guard.
9178 * target/waitstatus.h: Rename include guard.
9179 * target/wait.h: Rename include guard.
9180 * target/target.h: Rename include guard.
9181 * target/resume.h: Rename include guard.
9182 * target-float.h: Rename include guard.
9183 * stabsread.h: Add include guard.
9184 * rs6000-tdep.h: Add include guard.
9185 * riscv-fbsd-tdep.h: Add include guard.
9186 * regformats/regdef.h: Rename include guard.
9187 * record.h: Rename include guard.
9188 * python/python.h: Rename include guard.
9189 * python/python-internal.h: Rename include guard.
9190 * python/py-stopevent.h: Rename include guard.
9191 * python/py-ref.h: Rename include guard.
9192 * python/py-record.h: Rename include guard.
9193 * python/py-record-full.h: Rename include guard.
9194 * python/py-record-btrace.h: Rename include guard.
9195 * python/py-instruction.h: Rename include guard.
9196 * python/py-events.h: Rename include guard.
9197 * python/py-event.h: Rename include guard.
9198 * procfs.h: Add include guard.
9199 * proc-utils.h: Add include guard.
9200 * p-lang.h: Add include guard.
9201 * or1k-tdep.h: Rename include guard.
9202 * observable.h: Rename include guard.
9203 * nto-tdep.h: Rename include guard.
9204 * nat/x86-linux.h: Rename include guard.
9205 * nat/x86-linux-dregs.h: Rename include guard.
9206 * nat/x86-gcc-cpuid.h: Add include guard.
9207 * nat/x86-dregs.h: Rename include guard.
9208 * nat/x86-cpuid.h: Rename include guard.
9209 * nat/ppc-linux.h: Rename include guard.
9210 * nat/mips-linux-watch.h: Rename include guard.
9211 * nat/linux-waitpid.h: Rename include guard.
9212 * nat/linux-ptrace.h: Rename include guard.
9213 * nat/linux-procfs.h: Rename include guard.
9214 * nat/linux-osdata.h: Rename include guard.
9215 * nat/linux-nat.h: Rename include guard.
9216 * nat/linux-namespaces.h: Rename include guard.
9217 * nat/linux-btrace.h: Rename include guard.
9218 * nat/glibc_thread_db.h: Rename include guard.
9219 * nat/gdb_thread_db.h: Rename include guard.
9220 * nat/gdb_ptrace.h: Rename include guard.
9221 * nat/fork-inferior.h: Rename include guard.
9222 * nat/amd64-linux-siginfo.h: Rename include guard.
9223 * nat/aarch64-sve-linux-sigcontext.h: Rename include guard.
9224 * nat/aarch64-sve-linux-ptrace.h: Rename include guard.
9225 * nat/aarch64-linux.h: Rename include guard.
9226 * nat/aarch64-linux-hw-point.h: Rename include guard.
9227 * mn10300-tdep.h: Add include guard.
9228 * mips-linux-tdep.h: Add include guard.
9229 * mi/mi-parse.h: Rename include guard.
9230 * mi/mi-out.h: Rename include guard.
9231 * mi/mi-main.h: Rename include guard.
9232 * mi/mi-interp.h: Rename include guard.
9233 * mi/mi-getopt.h: Rename include guard.
9234 * mi/mi-console.h: Rename include guard.
9235 * mi/mi-common.h: Rename include guard.
9236 * mi/mi-cmds.h: Rename include guard.
9237 * mi/mi-cmd-break.h: Rename include guard.
9238 * m2-lang.h: Add include guard.
9239 * location.h: Rename include guard.
9240 * linux-record.h: Rename include guard.
9241 * linux-nat.h: Add include guard.
9242 * linux-fork.h: Add include guard.
9243 * i386-darwin-tdep.h: Rename include guard.
9244 * hppa-linux-offsets.h: Add include guard.
9245 * guile/guile.h: Rename include guard.
9246 * guile/guile-internal.h: Rename include guard.
9247 * gnu-nat.h: Rename include guard.
9248 * gdb-stabs.h: Rename include guard.
9249 * frv-tdep.h: Add include guard.
9250 * f-lang.h: Add include guard.
9251 * event-loop.h: Add include guard.
9252 * darwin-nat.h: Rename include guard.
9253 * cp-abi.h: Rename include guard.
9254 * config/sparc/nm-sol2.h: Rename include guard.
9255 * config/nm-nto.h: Rename include guard.
9256 * config/nm-linux.h: Add include guard.
9257 * config/i386/nm-i386gnu.h: Rename include guard.
9258 * config/djgpp/nl_types.h: Rename include guard.
9259 * config/djgpp/langinfo.h: Rename include guard.
9260 * compile/gcc-cp-plugin.h: Add include guard.
9261 * compile/gcc-c-plugin.h: Add include guard.
9262 * compile/compile.h: Rename include guard.
9263 * compile/compile-object-run.h: Rename include guard.
9264 * compile/compile-object-load.h: Rename include guard.
9265 * compile/compile-internal.h: Rename include guard.
9266 * compile/compile-cplus.h: Rename include guard.
9267 * compile/compile-c.h: Rename include guard.
9268 * common/xml-utils.h: Rename include guard.
9269 * common/x86-xstate.h: Rename include guard.
9270 * common/version.h: Rename include guard.
9271 * common/vec.h: Rename include guard.
9272 * common/tdesc.h: Rename include guard.
9273 * common/selftest.h: Rename include guard.
9274 * common/scoped_restore.h: Rename include guard.
9275 * common/scoped_mmap.h: Rename include guard.
9276 * common/scoped_fd.h: Rename include guard.
9277 * common/safe-iterator.h: Rename include guard.
9278 * common/run-time-clock.h: Rename include guard.
9279 * common/refcounted-object.h: Rename include guard.
9280 * common/queue.h: Rename include guard.
9281 * common/ptid.h: Rename include guard.
9282 * common/print-utils.h: Rename include guard.
9283 * common/preprocessor.h: Rename include guard.
9284 * common/pathstuff.h: Rename include guard.
9285 * common/observable.h: Rename include guard.
9286 * common/netstuff.h: Rename include guard.
9287 * common/job-control.h: Rename include guard.
9288 * common/host-defs.h: Rename include guard.
9289 * common/gdb_wait.h: Rename include guard.
9290 * common/gdb_vecs.h: Rename include guard.
9291 * common/gdb_unlinker.h: Rename include guard.
9292 * common/gdb_unique_ptr.h: Rename include guard.
9293 * common/gdb_tilde_expand.h: Rename include guard.
9294 * common/gdb_sys_time.h: Rename include guard.
9295 * common/gdb_string_view.h: Rename include guard.
9296 * common/gdb_splay_tree.h: Rename include guard.
9297 * common/gdb_setjmp.h: Rename include guard.
9298 * common/gdb_ref_ptr.h: Rename include guard.
9299 * common/gdb_optional.h: Rename include guard.
9300 * common/gdb_locale.h: Rename include guard.
9301 * common/gdb_assert.h: Rename include guard.
9302 * common/filtered-iterator.h: Rename include guard.
9303 * common/filestuff.h: Rename include guard.
9304 * common/fileio.h: Rename include guard.
9305 * common/environ.h: Rename include guard.
9306 * common/common-utils.h: Rename include guard.
9307 * common/common-types.h: Rename include guard.
9308 * common/common-regcache.h: Rename include guard.
9309 * common/common-inferior.h: Rename include guard.
9310 * common/common-gdbthread.h: Rename include guard.
9311 * common/common-exceptions.h: Rename include guard.
9312 * common/common-defs.h: Rename include guard.
9313 * common/common-debug.h: Rename include guard.
9314 * common/cleanups.h: Rename include guard.
9315 * common/buffer.h: Rename include guard.
9316 * common/btrace-common.h: Rename include guard.
9317 * common/break-common.h: Rename include guard.
9318 * cli/cli-utils.h: Rename include guard.
9319 * cli/cli-style.h: Rename include guard.
9320 * cli/cli-setshow.h: Rename include guard.
9321 * cli/cli-script.h: Rename include guard.
9322 * cli/cli-interp.h: Rename include guard.
9323 * cli/cli-decode.h: Rename include guard.
9324 * cli/cli-cmds.h: Rename include guard.
9325 * charset-list.h: Add include guard.
9326 * buildsym-legacy.h: Rename include guard.
9327 * bfin-tdep.h: Add include guard.
9328 * ax.h: Rename include guard.
9329 * arm-linux-tdep.h: Add include guard.
9330 * arm-fbsd-tdep.h: Add include guard.
9331 * arch/xtensa.h: Rename include guard.
9332 * arch/tic6x.h: Add include guard.
9333 * arch/i386.h: Add include guard.
9334 * arch/arm.h: Rename include guard.
9335 * arch/arm-linux.h: Rename include guard.
9336 * arch/arm-get-next-pcs.h: Rename include guard.
9337 * arch/amd64.h: Add include guard.
9338 * arch/aarch64-insn.h: Rename include guard.
9339 * arch-utils.h: Rename include guard.
9340 * annotate.h: Add include guard.
9341 * amd64-darwin-tdep.h: Rename include guard.
9342 * aarch64-linux-tdep.h: Add include guard.
9343 * aarch64-fbsd-tdep.h: Add include guard.
9344 * aarch32-linux-nat.h: Add include guard.
9348 * macrotab.c (macro_define_internal): New function that
9349 factorizes macro_define_object_internal and macro_define_function
9351 (macro_define_object_internal): Use macro_define_internal.
9352 (macro_define_function): Likewise.
9356 * macrocmd.c (extract_identifier): Return
9357 a gdb::unique_xmalloc_ptr<char> instead of a char *, and update
9362 * fbsd-nat.c (fbsd_fetch_cmdline): Join arguments with spaces.
9366 * target.c (target_stack::unpush): Move assertion earlier.
9371 * python/python.c (execute_gdb_command): Use gdbpy_allow_threads.
9372 (gdbpy_parse_and_eval): Likewise.
9373 * python/python-internal.h (gdbpy_allow_threads): New class.
9377 * aarch64-fbsd-tdep.c (aarch64_fbsd_gregmap)
9378 (aarch64_fbsd_fpregmap): Move earlier.
9379 (AARCH64_MCONTEXT_REG_SIZE, AARCH64_MCONTEXT_FPREG_SIZE): Delete.
9380 (aarch64_fbsd_sigframe_init): Use trad_frame_set_reg_regmap
9381 instead of individual calls to trad_frame_set_reg_addr.
9382 * arm-fbsd-tdep.c (arm_fbsd_gregmap, arm_fbsd_vfpregmap): Move
9384 (ARM_MCONTEXT_REG_SIZE, ARM_MCONTEXT_VFP_REG_SIZE): Delete.
9385 (arm_fbsd_sigframe_init): Use trad_frame_set_reg_regmap
9386 instead of individual calls to trad_frame_set_reg_addr.
9390 * CONTRIBUTE: Replace contribution list with wiki link.
9394 * Makefile.in (GDB_CFLAGS): Don't add -I for common.
9398 * xtensa-linux-nat.c: Fix common/ includes.
9399 * xml-support.h: Fix common/ includes.
9400 * xml-support.c: Fix common/ includes.
9401 * x86-linux-nat.c: Fix common/ includes.
9402 * windows-nat.c: Fix common/ includes.
9403 * varobj.h: Fix common/ includes.
9404 * varobj.c: Fix common/ includes.
9405 * value.c: Fix common/ includes.
9406 * valops.c: Fix common/ includes.
9407 * utils.c: Fix common/ includes.
9408 * unittests/xml-utils-selftests.c: Fix common/ includes.
9409 * unittests/utils-selftests.c: Fix common/ includes.
9410 * unittests/unpack-selftests.c: Fix common/ includes.
9411 * unittests/tracepoint-selftests.c: Fix common/ includes.
9412 * unittests/style-selftests.c: Fix common/ includes.
9413 * unittests/string_view-selftests.c: Fix common/ includes.
9414 * unittests/scoped_restore-selftests.c: Fix common/ includes.
9415 * unittests/scoped_mmap-selftests.c: Fix common/ includes.
9416 * unittests/scoped_fd-selftests.c: Fix common/ includes.
9417 * unittests/rsp-low-selftests.c: Fix common/ includes.
9418 * unittests/parse-connection-spec-selftests.c: Fix common/
9420 * unittests/optional-selftests.c: Fix common/ includes.
9421 * unittests/offset-type-selftests.c: Fix common/ includes.
9422 * unittests/observable-selftests.c: Fix common/ includes.
9423 * unittests/mkdir-recursive-selftests.c: Fix common/ includes.
9424 * unittests/memrange-selftests.c: Fix common/ includes.
9425 * unittests/memory-map-selftests.c: Fix common/ includes.
9426 * unittests/lookup_name_info-selftests.c: Fix common/ includes.
9427 * unittests/function-view-selftests.c: Fix common/ includes.
9428 * unittests/environ-selftests.c: Fix common/ includes.
9429 * unittests/copy_bitwise-selftests.c: Fix common/ includes.
9430 * unittests/common-utils-selftests.c: Fix common/ includes.
9431 * unittests/cli-utils-selftests.c: Fix common/ includes.
9432 * unittests/array-view-selftests.c: Fix common/ includes.
9433 * ui-file.c: Fix common/ includes.
9434 * tui/tui-io.c: Fix common/ includes.
9435 * tracepoint.h: Fix common/ includes.
9436 * tracepoint.c: Fix common/ includes.
9437 * tracefile-tfile.c: Fix common/ includes.
9438 * top.h: Fix common/ includes.
9439 * top.c: Fix common/ includes.
9440 * thread.c: Fix common/ includes.
9441 * target/waitstatus.h: Fix common/ includes.
9442 * target/waitstatus.c: Fix common/ includes.
9443 * target.h: Fix common/ includes.
9444 * target.c: Fix common/ includes.
9445 * target-memory.c: Fix common/ includes.
9446 * target-descriptions.c: Fix common/ includes.
9447 * symtab.h: Fix common/ includes.
9448 * symfile.c: Fix common/ includes.
9449 * stap-probe.c: Fix common/ includes.
9450 * spu-linux-nat.c: Fix common/ includes.
9451 * sparc-nat.c: Fix common/ includes.
9452 * source.c: Fix common/ includes.
9453 * solib.c: Fix common/ includes.
9454 * solib-target.c: Fix common/ includes.
9455 * ser-unix.c: Fix common/ includes.
9456 * ser-tcp.c: Fix common/ includes.
9457 * ser-pipe.c: Fix common/ includes.
9458 * ser-base.c: Fix common/ includes.
9459 * selftest-arch.c: Fix common/ includes.
9460 * s12z-tdep.c: Fix common/ includes.
9461 * rust-exp.y: Fix common/ includes.
9462 * rs6000-aix-tdep.c: Fix common/ includes.
9463 * riscv-tdep.c: Fix common/ includes.
9464 * remote.c: Fix common/ includes.
9465 * remote-notif.h: Fix common/ includes.
9466 * remote-fileio.h: Fix common/ includes.
9467 * remote-fileio.c: Fix common/ includes.
9468 * regcache.h: Fix common/ includes.
9469 * regcache.c: Fix common/ includes.
9470 * record-btrace.c: Fix common/ includes.
9471 * python/python.c: Fix common/ includes.
9472 * python/py-type.c: Fix common/ includes.
9473 * python/py-inferior.c: Fix common/ includes.
9474 * progspace.h: Fix common/ includes.
9475 * producer.c: Fix common/ includes.
9476 * procfs.c: Fix common/ includes.
9477 * proc-api.c: Fix common/ includes.
9478 * printcmd.c: Fix common/ includes.
9479 * ppc-linux-nat.c: Fix common/ includes.
9480 * parser-defs.h: Fix common/ includes.
9481 * osdata.c: Fix common/ includes.
9482 * obsd-nat.c: Fix common/ includes.
9483 * nat/x86-linux.c: Fix common/ includes.
9484 * nat/x86-linux-dregs.c: Fix common/ includes.
9485 * nat/x86-dregs.h: Fix common/ includes.
9486 * nat/x86-dregs.c: Fix common/ includes.
9487 * nat/ppc-linux.c: Fix common/ includes.
9488 * nat/mips-linux-watch.h: Fix common/ includes.
9489 * nat/mips-linux-watch.c: Fix common/ includes.
9490 * nat/linux-waitpid.c: Fix common/ includes.
9491 * nat/linux-ptrace.h: Fix common/ includes.
9492 * nat/linux-ptrace.c: Fix common/ includes.
9493 * nat/linux-procfs.c: Fix common/ includes.
9494 * nat/linux-personality.c: Fix common/ includes.
9495 * nat/linux-osdata.c: Fix common/ includes.
9496 * nat/linux-namespaces.c: Fix common/ includes.
9497 * nat/linux-btrace.h: Fix common/ includes.
9498 * nat/linux-btrace.c: Fix common/ includes.
9499 * nat/fork-inferior.c: Fix common/ includes.
9500 * nat/amd64-linux-siginfo.c: Fix common/ includes.
9501 * nat/aarch64-sve-linux-ptrace.c: Fix common/ includes.
9502 * nat/aarch64-linux.c: Fix common/ includes.
9503 * nat/aarch64-linux-hw-point.h: Fix common/ includes.
9504 * nat/aarch64-linux-hw-point.c: Fix common/ includes.
9505 * namespace.h: Fix common/ includes.
9506 * mips-linux-tdep.c: Fix common/ includes.
9507 * minsyms.c: Fix common/ includes.
9508 * mi/mi-parse.h: Fix common/ includes.
9509 * mi/mi-main.c: Fix common/ includes.
9510 * mi/mi-cmd-env.c: Fix common/ includes.
9511 * memrange.h: Fix common/ includes.
9512 * memattr.c: Fix common/ includes.
9513 * maint.h: Fix common/ includes.
9514 * maint.c: Fix common/ includes.
9515 * main.c: Fix common/ includes.
9516 * machoread.c: Fix common/ includes.
9517 * location.c: Fix common/ includes.
9518 * linux-thread-db.c: Fix common/ includes.
9519 * linux-nat.c: Fix common/ includes.
9520 * linux-fork.c: Fix common/ includes.
9521 * inline-frame.c: Fix common/ includes.
9522 * infrun.c: Fix common/ includes.
9523 * inflow.c: Fix common/ includes.
9524 * inferior.h: Fix common/ includes.
9525 * inferior.c: Fix common/ includes.
9526 * infcmd.c: Fix common/ includes.
9527 * inf-ptrace.c: Fix common/ includes.
9528 * inf-child.c: Fix common/ includes.
9529 * ia64-linux-nat.c: Fix common/ includes.
9530 * i387-tdep.c: Fix common/ includes.
9531 * i386-tdep.c: Fix common/ includes.
9532 * i386-linux-tdep.c: Fix common/ includes.
9533 * i386-linux-nat.c: Fix common/ includes.
9534 * i386-go32-tdep.c: Fix common/ includes.
9535 * i386-fbsd-tdep.c: Fix common/ includes.
9536 * i386-fbsd-nat.c: Fix common/ includes.
9537 * guile/scm-type.c: Fix common/ includes.
9538 * guile/guile.c: Fix common/ includes.
9539 * go32-nat.c: Fix common/ includes.
9540 * gnu-nat.c: Fix common/ includes.
9541 * gdbthread.h: Fix common/ includes.
9542 * gdbarch-selftests.c: Fix common/ includes.
9543 * gdb_usleep.c: Fix common/ includes.
9544 * gdb_select.h: Fix common/ includes.
9545 * gdb_bfd.c: Fix common/ includes.
9546 * gcore.c: Fix common/ includes.
9547 * fork-child.c: Fix common/ includes.
9548 * findvar.c: Fix common/ includes.
9549 * fbsd-nat.c: Fix common/ includes.
9550 * event-top.c: Fix common/ includes.
9551 * event-loop.c: Fix common/ includes.
9552 * dwarf2read.c: Fix common/ includes.
9553 * dwarf2loc.c: Fix common/ includes.
9554 * dwarf2-frame.c: Fix common/ includes.
9555 * dwarf-index-cache.c: Fix common/ includes.
9556 * dtrace-probe.c: Fix common/ includes.
9557 * disasm-selftests.c: Fix common/ includes.
9558 * defs.h: Fix common/ includes.
9559 * csky-tdep.c: Fix common/ includes.
9560 * cp-valprint.c: Fix common/ includes.
9561 * cp-support.h: Fix common/ includes.
9562 * cp-support.c: Fix common/ includes.
9563 * corelow.c: Fix common/ includes.
9564 * completer.h: Fix common/ includes.
9565 * completer.c: Fix common/ includes.
9566 * compile/compile.c: Fix common/ includes.
9567 * compile/compile-loc2c.c: Fix common/ includes.
9568 * compile/compile-cplus-types.c: Fix common/ includes.
9569 * compile/compile-cplus-symbols.c: Fix common/ includes.
9570 * command.h: Fix common/ includes.
9571 * cli/cli-dump.c: Fix common/ includes.
9572 * cli/cli-cmds.c: Fix common/ includes.
9573 * charset.c: Fix common/ includes.
9574 * build-id.c: Fix common/ includes.
9575 * btrace.h: Fix common/ includes.
9576 * btrace.c: Fix common/ includes.
9577 * breakpoint.h: Fix common/ includes.
9578 * breakpoint.c: Fix common/ includes.
9580 (enum agent_op): Fix common/ includes.
9581 * ax-general.c (struct aop_map): Fix common/ includes.
9582 * ax-gdb.c: Fix common/ includes.
9583 * auxv.c: Fix common/ includes.
9584 * auto-load.c: Fix common/ includes.
9585 * arm-tdep.c: Fix common/ includes.
9586 * arch/riscv.c: Fix common/ includes.
9587 * arch/ppc-linux-common.c: Fix common/ includes.
9588 * arch/i386.c: Fix common/ includes.
9589 * arch/arm.c: Fix common/ includes.
9590 * arch/arm-linux.c: Fix common/ includes.
9591 * arch/arm-get-next-pcs.c: Fix common/ includes.
9592 * arch/amd64.c: Fix common/ includes.
9593 * arch/aarch64.c: Fix common/ includes.
9594 * arch/aarch64-insn.c: Fix common/ includes.
9595 * arch-utils.c: Fix common/ includes.
9596 * amd64-windows-tdep.c: Fix common/ includes.
9597 * amd64-tdep.c: Fix common/ includes.
9598 * amd64-sol2-tdep.c: Fix common/ includes.
9599 * amd64-obsd-tdep.c: Fix common/ includes.
9600 * amd64-nbsd-tdep.c: Fix common/ includes.
9601 * amd64-linux-tdep.c: Fix common/ includes.
9602 * amd64-linux-nat.c: Fix common/ includes.
9603 * amd64-fbsd-tdep.c: Fix common/ includes.
9604 * amd64-fbsd-nat.c: Fix common/ includes.
9605 * amd64-dicos-tdep.c: Fix common/ includes.
9606 * amd64-darwin-tdep.c: Fix common/ includes.
9607 * agent.c: Fix common/ includes.
9608 * ada-lang.h: Fix common/ includes.
9609 * ada-lang.c: Fix common/ includes.
9610 * aarch64-tdep.c: Fix common/ includes.
9614 * common/create-version.sh: Use common/version.h.
9618 * infrun.c (signal_stop, signal_print, signal_program)
9619 (signal_catch, signal_pass): Now arrays instead of pointers.
9620 (update_signals_program_target, do_target_resume)
9621 (signal_catch_update, handle_command, _initialize_infrun): Adjust.
9622 * linux-nat.c (linux_nat_target::pass_signals)
9623 (linux_nat_target::create_inferior, linux_nat_target::attach):
9625 * linux-nat.h (linux_nat_target::pass_signals): Adjust.
9626 * nto-procfs.c (nto_procfs_target::pass_signals): Adjust.
9627 * procfs.c (procfs_target::pass_signals): Adjust.
9628 * record-full.c (record_full_target::resume): Adjust.
9629 * remote.c (remote_target::pass_signals)
9630 (remote_target::program_signals): Adjust.
9631 * target-debug.h (target_debug_print_signals): Now takes a
9632 gdb::array_view as parameter. Adjust.
9633 * target.h (target_ops) <pass_signals, program_signals>: Replace
9634 pointer and length parameters with gdb::array_view.
9635 (target_pass_signals, target_program_signals): Likewise.
9636 * target-delegates.c: Regenerate.
9640 * common/forward-scope-exit.h
9641 (forward_scope_exit::forward_scope_exit): Pass arguments to
9642 m_bind_function directly, instead of creating a std::bind and
9647 * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
9649 (pass_in_v_vfp_candidate): Likewise.
9654 * regcache.c (class regcache_invalidator): Remove.
9655 (regcache::raw_write): Use make_scope_exit.
9659 * ui-out.h (class ui_out_emit_type): Update comment.
9663 * infrun.c (fetch_inferior_event): Update comment.
9668 * infrun.c (reinstall_readline_callback_handler_cleanup): Remove
9670 (fetch_inferior_event): Use SCOPE_EXIT.
9676 * infrun.c (disable_thread_events): Delete.
9677 (stop_all_threads): Use SCOPE_EXIT.
9682 * symfile.c: Include forward-scope-exit.h.
9683 (clear_symtab_users_cleanup): Replace forward declaration with
9684 a FORWARD_SCOPE_EXIT.
9685 (syms_from_objfile_1): Use the forward_scope_exit and
9686 gdb::optional instead of cleanup_function.
9687 (reread_symbols): Use the forward_scope_exit instead of
9689 (clear_symtab_users_cleanup): Remove function.
9694 * linux-nat.c: Include scope-exit.h.
9695 (cleanup_target_stop): Remove.
9696 (linux_nat_target::static_tracepoint_markers_by_strid): Use
9702 * infcall.c (cleanup_delete_std_terminate_breakpoint): Remove.
9703 (call_function_by_hand_dummy): Use SCOPE_EXIT.
9709 * infrun.c (fetch_inferior_event): Use scope_exit.
9710 * utils.h (make_bpstat_clear_actions_cleanup): Don't declare.
9711 * top.c (execute_command): Use scope_exit.
9712 * breakpoint.c (bpstat_do_actions): Use scope_exit.
9713 * utils.c (do_bpstat_clear_actions_cleanup)
9714 (make_bpstat_clear_actions_cleanup): Remove.
9719 * infrun.c: Include "common/scope-exit.h"
9720 (delete_just_stopped_threads_infrun_breakpoints_cleanup): Remove.
9721 (wait_for_inferior): Use SCOPE_EXIT.
9722 (fetch_inferior_event): Use scope_exit.
9727 * breakpoint.c (create_breakpoint): Remove cleanup.
9735 * gdbarch-selftests.c (struct on_exit): Use SCOPE_EXIT.
9740 * gdbthread.h: Include "common/forward-scope-exit.h".
9741 (scoped_finish_thread_state): Redefine custom class in terms of
9747 * common/forward-scope-exit.h: New file.
9753 * common/scope-exit.h: New file.
9757 * common/preprocessor.h (ESC): Rename to ...
9758 (ESC_PARENS): ... this.
9759 * common/valid-expr.h (CHECK_VALID_EXPR_1, CHECK_VALID_EXPR_2)
9760 (CHECK_VALID_EXPR_3, CHECK_VALID_EXPR_4): Adjust.
9764 * language.h (class scoped_switch_to_sym_language_if_auto):
9765 Initialize m_lang in both cases.
9769 * nat/aarch64-linux.c (aarch64_linux_new_thread): Replace XNEW
9774 * corelow.c: Do not include sys/file.h.
9778 * tui/tui-wingeneral.h: Include gdb_curses.h.
9782 * source-cache.h (class source_cache) <get_source_lines,
9783 get_plain_source_lines, extract_lines>: Rename "lines" parameter.
9787 * remote-fileio.h (struct remote_target): Declare.
9791 * python/py-arch.c: Do not include py-ref.h.
9792 * python/py-bpevent.c: Do not include py-ref.h.
9793 * python/py-cmd.c: Do not include py-ref.h.
9794 * python/py-continueevent.c: Do not include py-ref.h.
9795 * python/py-event.h: Do not include py-ref.h.
9796 * python/py-evtregistry.c: Do not include py-ref.h.
9797 * python/py-finishbreakpoint.c: Do not include py-ref.h.
9798 * python/py-frame.c: Do not include py-ref.h.
9799 * python/py-framefilter.c: Do not include py-ref.h.
9800 * python/py-function.c: Do not include py-ref.h.
9801 * python/py-infevents.c: Do not include py-ref.h.
9802 * python/py-linetable.c: Do not include py-ref.h.
9803 * python/py-objfile.c: Do not include py-ref.h.
9804 * python/py-param.c: Do not include py-ref.h.
9805 * python/py-prettyprint.c: Do not include py-ref.h.
9806 * python/py-progspace.c: Do not include py-ref.h.
9807 * python/py-symbol.c: Do not include py-ref.h.
9808 * python/py-symtab.c: Do not include py-ref.h.
9809 * python/py-type.c: Do not include py-ref.h.
9810 * python/py-unwind.c: Do not include py-ref.h.
9811 * python/py-utils.c: Do not include py-ref.h.
9812 * python/py-value.c: Do not include py-ref.h.
9813 * python/py-varobj.c: Do not include py-ref.h.
9814 * python/py-xmethods.c: Do not include py-ref.h.
9815 * python/python.c: Do not include py-ref.h.
9816 * varobj.c: Do not include py-ref.h.
9820 * objfiles.h (struct objfile_per_bfd_storage): Use "struct"
9825 * compile/compile-cplus-types.c: Remove a comment by #include.
9829 * compile/gcc-c-plugin.h: Include compile-internal.h.
9833 * stabsread.c (EXTERN): Do not define.
9834 (symnum, next_symbol_text_func, processing_gcc_compilation)
9835 (within_function, global_sym_chain, global_stabs)
9836 (previous_stab_code, this_object_header_files)
9837 (n_this_object_header_files)
9838 (n_allocated_this_object_header_files): Define.
9839 * stabsread.h (EXTERN): Never define. Use "extern".
9843 * event-top.c (handle_line_of_input): use unique_xmalloc_ptr for
9848 * ui-out.c: Fix includes.
9849 * tui/tui-source.c: Fix includes.
9850 * target.c: Fix includes.
9851 * remote.c: Fix includes.
9852 * regcache.c: Fix includes.
9853 * python/py-block.c: Fix includes.
9854 * printcmd.c: Fix includes.
9855 * or1k-tdep.c: Fix includes.
9856 * mi/mi-main.c: Fix includes.
9857 * m32r-tdep.c: Fix includes.
9858 * csky-tdep.c: Fix includes.
9859 * compile/compile-cplus-types.c: Fix includes.
9860 * cli/cli-interp.c: Fix includes.
9864 * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
9869 * objfiles.h (struct minimal_symbol_iterator): Rename. Move
9871 (struct objfile) <msymbols_range>: Move from top level.
9872 <msymbols>: New method.
9873 (class objfile_msymbols): Remove.
9874 * symtab.c (default_collect_symbol_completion_matches_break_on):
9876 * symmisc.c (dump_msymbols): Update.
9877 * stabsread.c (scan_file_globals): Update.
9878 * objc-lang.c (info_selectors_command, info_classes_command)
9879 (find_methods): Update.
9880 * minsyms.c (find_solib_trampoline_target): Update.
9881 * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Update.
9882 * coffread.c (coff_symfile_read): Update.
9883 * ada-lang.c (ada_lookup_simple_minsym)
9884 (ada_collect_symbol_completion_matches): Update.
9888 * objfiles.h (class objfile_msymbols) <iterator>: Change argument
9889 type. Remove no-argument constructor.
9890 <iterator::operator++>: Simplify.
9892 <end>: Use minimal_symbol_count.
9896 * objfiles.h (struct objfile) <psymtabs>: New method.
9897 (class objfile_psymtabs): Remove.
9898 * psymtab.h (class psymtab_storage) <partial_symtab_range>: New
9900 <range>: New method.
9901 (require_partial_symbols): Change return type.
9902 * psymtab.c (require_partial_symbols)
9903 (psym_expand_symtabs_matching): Update.
9904 * mdebugread.c (parse_partial_symbols): Update.
9905 * dbxread.c (dbx_end_psymtab): Update.
9909 * symtab.c (lookup_objfile_from_block)
9910 (lookup_symbol_in_objfile_symtabs)
9911 (basic_lookup_transparent_type_1, find_pc_sect_compunit_symtab)
9912 (find_line_symtab, info_sources_command)
9913 (default_collect_symbol_completion_matches_break_on)
9914 (make_source_files_completion_list): Update.
9915 * symmisc.c (print_objfile_statistics, dump_objfile)
9916 (maintenance_print_symbols, maintenance_info_symtabs)
9917 (maintenance_check_symtabs, maintenance_info_line_tables):
9919 * source.c (select_source_symtab)
9920 (forget_cached_source_info_for_objfile): Update.
9921 * objfiles.h (class objfile_compunits): Remove.
9922 (struct objfile) <compunits_range>: New typedef.
9923 (compunits): New method.
9924 * objfiles.c (objfile_relocate1): Update.
9925 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
9926 * maint.c (count_symtabs_and_blocks): Update.
9927 * linespec.c (iterate_over_all_matching_symtabs): Update.
9928 * cp-support.c (add_symbol_overload_list_qualified): Update.
9929 * coffread.c (coff_symtab_read): Update.
9930 * ada-lang.c (add_nonlocal_symbols)
9931 (ada_collect_symbol_completion_matches)
9932 (ada_add_global_exceptions): Update.
9936 * progspace.h (program_space) <objfiles_safe_range>: New
9938 <objfiles_safe>: New method.
9939 * objfiles.h (class all_objfiles_safe): Remove.
9940 * objfiles.c (free_all_objfiles, objfile_purge_solibs): Update.
9941 * jit.c (jit_inferior_exit_hook): Update.
9945 * progspace.h (program_space) <objfiles_range>: New typedef.
9946 <objfiles>: New method.
9947 <objfiles_head>: Rename from objfiles.
9948 (object_files): Update.
9949 * guile/scm-progspace.c (gdbscm_progspace_objfiles): Update.
9950 * guile/scm-pretty-print.c
9951 (ppscm_find_pretty_printer_from_objfiles): Update.
9952 * guile/scm-objfile.c (gdbscm_objfiles): Update.
9953 * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
9955 * python/py-progspace.c (pspy_get_objfiles): Update.
9956 * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
9958 * python/py-objfile.c (objfpy_lookup_objfile_by_name)
9959 (objfpy_lookup_objfile_by_build_id): Update.
9960 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
9961 * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
9963 * symtab.c (iterate_over_symtabs, matching_obj_sections)
9964 (expand_symtab_containing_pc, lookup_objfile_from_block)
9965 (lookup_static_symbol, basic_lookup_transparent_type)
9966 (find_pc_sect_compunit_symtab, find_symbol_at_address)
9967 (find_line_symtab, info_sources_command)
9968 (default_collect_symbol_completion_matches_break_on)
9969 (make_source_files_completion_list, find_main_name): Update.
9970 * symmisc.c (print_symbol_bcache_statistics)
9971 (print_objfile_statistics, maintenance_print_symbols)
9972 (maintenance_print_msymbols, maintenance_print_objfiles)
9973 (maintenance_info_symtabs, maintenance_check_symtabs)
9974 (maintenance_expand_symtabs, maintenance_info_line_tables):
9976 * symfile.c (remove_symbol_file_command, overlay_invalidate_all)
9977 (find_pc_overlay, find_pc_mapped_section, list_overlays_command)
9978 (map_overlay_command, unmap_overlay_command)
9979 (simple_overlay_update, expand_symtabs_matching)
9980 (map_symbol_filenames): Update.
9981 * symfile-debug.c (set_debug_symfile): Update.
9982 * spu-tdep.c (spu_overlay_update, spu_objfile_from_frame):
9984 * source.c (select_source_symtab, forget_cached_source_info):
9986 * solib.c (solib_read_symbols): Update.
9987 * solib-spu.c (append_ocl_sos): Update.
9988 * psymtab.c (maintenance_print_psymbols)
9989 (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
9990 * probe.c (parse_probes_in_pspace, find_probe_by_pc): Update.
9991 * printcmd.c (info_symbol_command): Update.
9992 * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created):
9994 * objfiles.h (class all_objfiles): Remove.
9995 * objfiles.c (have_partial_symbols, have_full_symbols)
9996 (have_minimal_symbols, qsort_cmp, update_section_map)
9997 (shared_objfile_contains_address_p)
9998 (default_iterate_over_objfiles_in_search_order): Update.
9999 * objc-lang.c (info_selectors_command, info_classes_command)
10000 (find_methods): Update.
10001 * minsyms.c (find_solib_trampoline_target): Update.
10002 * maint.c (maintenance_info_sections)
10003 (maintenance_translate_address, count_symtabs_and_blocks):
10005 * main.c (captured_main_1): Update.
10006 * linux-thread-db.c (try_thread_db_load_from_pdir)
10007 (has_libpthread): Update.
10008 * linespec.c (iterate_over_all_matching_symtabs)
10009 (search_minsyms_for_name): Update.
10010 * jit.c (jit_find_objf_with_entry_addr): Update.
10011 * hppa-tdep.c (find_unwind_entry)
10012 (hppa_lookup_stub_minimal_symbol): Update.
10013 * gcore.c (gcore_create_callback, objfile_find_memory_regions):
10015 * elfread.c (elf_gnu_ifunc_resolve_by_cache)
10016 (elf_gnu_ifunc_resolve_by_got): Update.
10017 * dwarf2-frame.c (dwarf2_frame_find_fde): Update.
10018 * dwarf-index-write.c (save_gdb_index_command): Update.
10019 * cp-support.c (add_symbol_overload_list_qualified): Update.
10020 * breakpoint.c (create_overlay_event_breakpoint)
10021 (create_longjmp_master_breakpoint)
10022 (create_std_terminate_master_breakpoint)
10023 (create_exception_master_breakpoint): Update.
10024 * blockframe.c (find_pc_partial_function): Update.
10025 * ada-lang.c (ada_lookup_simple_minsym, add_nonlocal_symbols)
10026 (ada_collect_symbol_completion_matches)
10027 (ada_add_global_exceptions): Update.
10031 * solib-target.c (lm_info_target_p): Remove typedef. Don't
10033 (solib_target_parse_libraries): Change return type.
10034 (library_list_start_segment, library_list_start_section)
10035 (library_list_end_library, library_list_start_library); Update.
10036 (solib_target_free_library_list): Remove.
10037 (solib_target_parse_libraries): Remove cleanup. Change return
10039 (solib_target_current_sos): Update.
10041 2019-01-17 Tom Tromey <tromey@bapiya>
10043 * valprint.c: Replace "the the" with "the".
10044 * symtab.c: Replace "the the" with "the".
10045 * solib.c: Replace "the the" with "the".
10046 * solib-dsbt.c: Replace "the the" with "the".
10047 * linespec.c: Replace "the the" with "the".
10048 * dwarf2loc.h: Replace "the the" with "the".
10049 * amd64-windows-tdep.c: Replace "the the" with "the".
10050 * aarch64-tdep.c: Replace "the the" with "the".
10055 * dwarf2read.c (dwarf2_cu) <ancestor>: New field.
10056 <builder>: Rename to ..
10057 <m_builder>: ... this and make private.
10058 (dwarf2_cu::get_builder): New method. Change all users of
10059 `builder' to use this method.
10060 (dwarf2_start_symtab): Move to ...
10061 (dwarf2_cu::start_symtab): ... here. Update all callers
10062 (setup_type_unit_groups): Move to ...
10063 (dwarf2_cu::setup_type_unit_groups): ... here. Update all
10065 (dwarf2_cu::reset_builder): New method.
10066 (process_full_compunit, process_full_type_unit): Use
10067 dwarf2_cu::reset_builder.
10068 (follow_die_offset): Record the ancestor CU if it is different
10069 from the followed DIE's CU.
10070 (follow_die_sig_1): Likewise.
10074 * remote.c (class remote_state) <buf>: Now a char_vector.
10075 <buf_size>: Remove.
10076 (remote_target::getpkt): Change type of buf. Remove sizeof_buf
10078 (remote_target::getpkt_or_notif_sane_1)
10079 (remote_target::getpkt_sane)
10080 (remote_target::getpkt_or_notif_sane): Likewise.
10081 (class remote_target) <putpkt>: New overload.
10082 (remote_target::read_frame): Change type of "buf_p". Remove
10083 sizeof_p parameter.
10084 (packet_ok): New overload.
10085 (packet_check_result): New overload.
10090 * remote-notif.c (handle_notification, remote_notif_ack)
10091 (remote_notif_parse): Make "buf" const.
10092 * remote-notif.h (struct notif_client) <parse, ack>: Make "buf"
10094 (remote_notif_parse, remote_notif_ack, handle_notification):
10096 * remote.c (remote_notif_stop_parse): Make "buf" const.
10097 (remote_target::remote_parse_stop_reply): Make "buf" const.
10098 (remote_notif_stop_ack): Make "buf" const.
10102 * remote.c (remote_console_output): Make parameter const.
10106 * target-debug.h (target_debug_print_signals): Constify.
10107 * nto-procfs.c (nto_procfs_target::pass_signals): Update.
10108 * procfs.c (procfs_target::pass_signals): Update.
10109 * linux-nat.c (linux_nat_target::pass_signals): Update.
10110 * linux-nat.h (class linux_nat_target) <pass_signals>: Update.
10111 * target-delegates.c: Rebuild.
10112 * remote.c (remote_target::program_signals): Update.
10113 (remote_target::pass_signals): Update.
10114 * target.c (target_pass_signals): Constify argument.
10115 (target_program_signals): Likewise.
10116 * target.h (struct target_ops) <pass_signals, program_signals>:
10118 (target_pass_signals, target_program_signals): Constify argument.
10123 * tui/tui-io.c (gdb_wgetch): Print \r when needed.
10127 * ppc-tdep.h (struct gdbarch_tdep) <ppc_v0_alias_regnum>: New
10129 * rs6000-tdep.c: Include reggroups.h.
10130 (IS_V_ALIAS_PSEUDOREG): Define.
10131 (rs6000_register_name): Return names for the "vX" aliases.
10132 (rs6000_pseudo_register_type): Return type for the "vX" aliases.
10133 (rs6000_pseudo_register_reggroup_p): Restore. Handle "vX"
10134 aliases. Call default_register_reggroup_p for all other
10136 (v_alias_pseudo_register_read, v_alias_pseudo_register_write):
10138 (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
10139 Handle "vX" aliases.
10140 (v_alias_pseudo_register_collect): New function.
10141 (rs6000_ax_pseudo_register_collect): Handle "vX" aliases.
10142 (rs6000_gdbarch_init): Initialize "vX" aliases as
10143 pseudo-registers. Restore registration of
10144 rs6000_pseudo_register_reggroup_p with
10145 set_tdesc_pseudo_register_reggroup_p.
10149 * xtensa-linux-tdep.c (xtensa_linux_init_abi): Update
10150 tdep->num_pseudo_regs. Add calls to set_gdbarch_num_regs and
10151 set_gdbarch_num_pseudo_regs.
10155 * cli/cli-style.h (class cli_style_option): <add_setshow_commands>
10156 Remove arg prefixname, add do_set and do_show.
10157 Add member functions set_list and show_list.
10158 * cli/cli-style.c (class cli_style_option): Update accordingly.
10159 (style_set_list): Move to file scope.
10160 (style_show_list): Likewise.
10161 (set_style): Call help_list.
10162 (show_style): Call cmd_show_list.
10163 (_initialize_cli_style): New macro STYLE_ADD_SETSHOW_COMMANDS.
10164 Update to use the new macro.
10168 * ada-lang.c (_initialize_ada_language): Expand the help text
10169 for the "catch exception" command.
10173 * symtab.c (matching_obj_sections): Initialize obj,
10174 declare it closer to its usage.
10178 * thread-iter.h (inf_threads_iterator): Use next_iterator.
10179 (basic_inf_threads_range): Remove.
10180 (inf_threads_range, inf_non_exited_threads_range)
10181 (safe_inf_threads_range): Use next_adapter.
10187 * dwarf2read.c (dw2_add_symbol_to_list): Remove.
10188 (fixup_go_packaging, new_symbol): Use add_symbol_to_list.
10194 * dictionary.c (pending_to_vector): Remove.
10195 (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
10196 Remove _1 suffix, replacing functions of the same name. Update
10198 (dict_create_hashed, dict_create_hashed_expandable)
10199 (dict_create_linear, dict_create_linear_expandable, dict_free)
10200 (dict_add_symbol, dict_add_pending, dict_size, dict_empty):
10201 Make functions static.
10207 * dictionary.h (struct dictionary): Replace declaration with
10209 (dict_create_hashed, dict_create_hashed_expandable)
10210 (dict_create_linear, dict_create_linear_expandable)
10211 (dict_free, dict_add_symbol, dict_add_pending, dict_empty)
10212 (dict_iterator_first, dict_iterator_next, dict_iter_match_first)
10213 (dict_iter_match_next, dict_size): Rename to "mdict_" versions
10214 taking multidictionary argument.
10215 [ALL_DICT_SYMBOLS]: Update for multidictionary.
10216 * block.h (struct block) <dict>: Change to multidictionary
10217 and rename `multidict'.
10218 * block.c, buildsym.c, jit.c, mdebugread.c, objfiles.c,
10219 symmisc.c: Update all dictionary references to multidictionary.
10225 * dictionary.c: Include unordered_map.
10226 (pending_to_vector): New function.
10227 (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
10228 Rewrite the non-"_1" functions to take vector instead
10230 (dict_create_hashed, dict_create_linear, dict_add_pending): Use the
10231 "new" _1 versions of the same name.
10232 (multidictionary): Define.
10233 (std::hash<enum language): New definition.
10234 (collate_pending_symbols_by_language, mdict_create_hashed)
10235 (mdict_create_hashed_expandable, mdict_create_linear)
10236 (mdict_create_linear_expandable, mdict_free)
10237 (find_language_dictionary, create_new_language_dictionary)
10238 (mdict_add_symbol, mdict_add_pending, mdict_iterator_first)
10239 (mdict_iterator_next, mdict_iter_match_first, mdict_iter_match_next)
10240 (mdict_size, mdict_empty): New functions.
10241 * dictionary.h (mdict_iterator): Define.
10245 * breakpoint.c (read_uploaded_action)
10246 (create_tracepoint_from_upload): Adjust to use
10247 gdb::unique_xmalloc_ptr.
10248 * ctf.c (ctf_write_uploaded_tp):
10249 (SET_ARRAY_FIELD): Use emplace_back.
10250 (SET_STRING_FIELD): Adjust to use gdb::unique_xmalloc_ptr.
10251 * tracefile-tfile.c (tfile_write_uploaded_tp):
10252 * tracepoint.c (parse_tracepoint_definition): Adjust to use
10253 gdb::unique_xmalloc_ptr.
10254 * tracepoint.h (struct uploaded_tp) <cond, actions, step_actions,
10255 at_string, cond_string, cmd_strings>: Replace char pointers
10256 with gdb::unique_xmalloc_ptr.
10260 * solib-target.c (library_list_start_library): Don't xstrdup name.
10264 * mdebugread.c (parse_partial_symbols): Use
10265 gdb::unique_xmalloc_ptr to manage heap-allocated 'stabsstring'.
10269 * linux-fork.c (scoped_switch_fork_info)
10270 <~scoped_switch_fork_info>: Fix incorrect variable name.
10274 * linux-fork.c (scoped_switch_fork_info)
10275 <scoped_switch_fork_info>: Make explicit.
10276 <~scoped_switch_fork_info>: Wrap core in TRY/CATCH.
10280 * objfiles.h (objfile::reset_psymtabs): Update.
10281 * objfiles.c (objfile::objfile): Update.
10282 * psymtab.h (psymtab_storage::obstack): Update.
10283 (psymtab_storage::m_obstack): Use gdb::optional.
10284 (class psymtab_storage): Update comment. Remove objfile
10286 * psymtab.c (psymtab_storage::psymtab_storage): Update.
10290 * psymtab.h (psymtab_storage::allocate_psymtab): New method.
10291 <free_psymtabs>: Now private.
10292 * psymtab.c (psymtab_storage::allocate_psymtab): Implement.
10293 (allocate_psymtab): Use new method.
10297 * xcoffread.c (xcoff_end_psymtab): Use allocate_dependencies.
10298 * psymtab.h (psymtab_storage::allocate_dependencies): New method.
10299 * mdebugread.c (parse_partial_symbols): Use
10300 allocate_dependencies.
10301 * dwarf2read.c (dwarf2_create_include_psymtab): Use
10302 allocate_dependencies.
10303 (process_psymtab_comp_unit_reader)
10304 (build_type_psymtab_dependencies): Likewise.
10305 * dbxread.c (dbx_end_psymtab): Use allocate_dependencies.
10309 * psymtab.c (add_psymbol_to_bcache): Pass psymtab obstack to
10310 PSYMBOL_SET_LANGUAGE.
10311 (allocate_psymtab): Allocate psymtab on the psymtab obstack.
10315 * psymtab.h (psymtab_storage::obstack): New method.
10316 <m_obstack>: Rename from obstack; now private.
10317 * psymtab.c (psymtab_storage): Update.
10318 * dwarf2read.c (create_addrmap_from_index)
10319 (create_addrmap_from_aranges, dwarf2_build_psymtabs_hard):
10324 * symfile.c (reread_symbols): Call objfile->reset_psymtabs.
10325 * objfiles.h (objfile::reset_psymtabs): New method.
10329 * symmisc.c (print_symbol_bcache_statistics): Update.
10330 (print_objfile_statistics): Update.
10331 * symfile.c (reread_symbols): Update.
10332 * psymtab.h (class psymtab_storage): New.
10333 * psymtab.c (psymtab_storage): New constructor.
10334 (~psymtab_storage): New destructor.
10335 (require_partial_symbols): Update.
10336 (ALL_OBJFILE_PSYMTABS_REQUIRED): Rewrite.
10337 (find_pc_sect_psymtab, find_pc_sect_psymbol)
10338 (match_partial_symbol, lookup_partial_symbol, dump_psymtab)
10339 (psym_dump, recursively_search_psymtabs, psym_has_symbols)
10340 (psym_find_compunit_symtab_by_address, sort_pst_symbols)
10341 (start_psymtab_common, end_psymtab_common)
10342 (add_psymbol_to_bcache, add_psymbol_to_list, init_psymbol_list)
10343 (allocate_psymtab): Update.
10344 (psymtab_storage::discard_psymtab): Rename from discard_psymtab.
10346 (dump_psymtab_addrmap, maintenance_print_psymbols)
10347 (maintenance_check_psymtabs): Update.
10348 (class objfile_psymtabs): Move to objfiles.h.
10349 * psympriv.h (discard_psymtab): Now inline.
10350 (psymtab_discarder::psymtab_discarder): Update.
10351 (psymtab_discarder::~psymtab_discarder): Update.
10352 (ALL_OBJFILE_PSYMTABS): Rewrite.
10353 * objfiles.h (struct objfile) <psymtabs, psymtabs_addrmap,
10354 free_psymtabs, psymbol_cache, global_psymbols, static_psymbols>:
10356 <partial_symtabs>: New field.
10357 (class objfile_psymtabs): Move from psymtab.h. Update.
10358 * objfiles.c (objfile::objfile): Initialize partial_symtabs, not
10360 (objfile::~objfile): Don't destroy psymbol_cache.
10361 * mdebugread.c (parse_partial_symbols): Update.
10362 * dwarf2read.c (create_addrmap_from_index)
10363 (create_addrmap_from_aranges, dw2_find_pc_sect_compunit_symtab)
10364 (process_psymtab_comp_unit_reader, dwarf2_build_psymtabs_hard)
10365 (add_partial_subprogram, dwarf2_ranges_read): Update.
10366 * dwarf-index-write.c (write_address_map)
10367 (write_one_signatured_type, recursively_write_psymbols)
10368 (class debug_names, class debug_names, write_psymtabs_to_index):
10373 * symtab.h (SYMBOL_SET_NAMES): Update.
10374 (symbol_set_names): Update.
10375 (MSYMBOL_SET_NAMES): Update.
10376 * symtab.c (symbol_set_names): Change argument to be an
10377 objfile_per_bfd_storage.
10378 * psymtab.c (add_psymbol_to_bcache): Update.
10379 * psympriv.h (PSYMBOL_SET_NAMES): Take per_bfd argument.
10383 * symtab.c (create_demangled_names_hash): Change argument to be an
10384 objfile_per_bfd_storage.
10385 (symbol_set_names): Update.
10389 * xcoffread.c (xcoff_initial_scan): Unconditionally call
10391 * psymtab.c (init_psymbol_list): Do nothing if already called.
10392 * psympriv.h (init_psymbol_list): Add comment.
10393 * dwarf2read.c (dwarf2_build_psymtabs): Unconditionally call
10395 * dbxread.c (dbx_symfile_read): Unconditionally call
10400 * xcoffread.c (scan_xcoff_symtab): Update.
10401 * psymtab.c (add_psymbol_to_list): Replace "list" parameter with
10403 * mdebugread.c (parse_partial_symbols)
10404 (handle_psymbol_enumerators): Update.
10405 * dwarf2read.c (add_partial_symbol, load_partial_dies): Update.
10406 * dbxread.c (read_dbx_symtab): Update.
10407 * psympriv.h (psymbol_placement): New enum.
10408 (add_psymbol_to_list): Update.
10412 * xcoffread.c (xcoff_start_psymtab): Remove global_psymbols and
10413 static_psymbols parameters.
10414 (scan_xcoff_symtab): Update.
10415 * psymtab.c (start_psymtab_common): Remove global_psymbols and
10416 static_psymbols parameters.
10417 * psympriv.h (start_psymtab_common): Update.
10418 * mdebugread.c (parse_partial_symbols): Update.
10419 * dwarf2read.c (create_partial_symtab): Update.
10420 * dbxread.c (read_dbx_symtab): Update.
10421 (start_psymtab): Remove global_psymbols and static_psymbols
10426 * xcoffread.c (xcoff_end_psymtab): Remove some initializations.
10427 * psymtab.c (allocate_psymtab): Add comment.
10428 * psympriv.h (allocate_psymtab): Add comment.
10429 * dwarf2read.c (dwarf2_create_include_psymtab): Remove some
10431 * dbxread.c (dbx_end_psymtab): Remove some initializations.
10435 * symfile.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
10437 * mipsread.c: Include mdebugread.h.
10438 * mdebugread.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
10440 * elfread.c: Include mdebugread.h.
10444 * dbxread.c (dbx_end_psymtab): Use objfile_psymtabs.
10445 * mdebugread.c (parse_partial_symbols): Use objfile_psymtabs.
10446 * psymtab.c (ALL_OBJFILE_PSYMTABS_REQUIRED): Remove.
10447 (psym_map_symtabs_matching_filename, find_pc_sect_psymtab)
10448 (psym_lookup_symbol, psym_find_last_source_symtab)
10449 (psym_forget_cached_source_info, psym_print_stats)
10450 (psym_expand_symtabs_for_function, psym_expand_all_symtabs)
10451 (psym_expand_symtabs_with_fullname, psym_map_symbol_filenames)
10452 (psym_map_matching_symbols, psym_expand_symtabs_matching)
10453 (psym_find_compunit_symtab_by_address)
10454 (maintenance_print_psymbols, maintenance_info_psymtabs)
10455 (maintenance_check_psymtabs): Use ranged for.
10456 * psymtab.h (class objfile_psymtabs): New.
10457 (require_partial_symbols): Return objfile_psymtabs.
10458 * psympriv.h (ALL_OBJFILE_PSYMTABS): Remove.
10462 * symfile.c (overlay_invalidate_all, find_pc_overlay)
10463 (find_pc_mapped_section, list_overlays_command)
10464 (map_overlay_command, unmap_overlay_command)
10465 (simple_overlay_update): Use all_objfiles.
10466 * spu-tdep.c (spu_overlay_update): Use all_objfiles.
10467 * printcmd.c (info_symbol_command): Use all_objfiles.
10468 * objfiles.h (ALL_OBJSECTIONS): Remove.
10469 * maint.c (maintenance_translate_address): Use all_objfiles.
10470 * gcore.c (gcore_create_callback): Use all_objfiles.
10471 (objfile_find_memory_regions): Likewise.
10475 * symtab.c (find_line_symtab, info_sources_command)
10476 (make_source_files_completion_list): Use objfile_compunits.
10477 * source.c (select_source_symtab): Use objfile_compunits.
10478 * objfiles.h (struct objfile): Update comment.
10479 (ALL_OBJFILES): Remove.
10480 (ALL_FILETABS): Remove.
10481 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Use
10486 * symmisc.c (print_objfile_statistics, dump_objfile)
10487 (maintenance_print_symbols): Use compunit_filetabs.
10488 * source.c (forget_cached_source_info_for_objfile): Use
10490 * objfiles.h (ALL_OBJFILE_FILETABS): Remove.
10491 (ALL_FILETABS): Use compunit_filetabs.
10492 * objfiles.c (objfile_relocate1): Use compunit_filetabs.
10493 * coffread.c (coff_symtab_read): Use compunit_filetabs.
10497 * symtab.h (ALL_COMPUNIT_FILETABS): Remove.
10498 (compunit_filetabs): New.
10499 * symtab.c (iterate_over_some_symtabs, find_pc_sect_line): Use
10501 (info_sources_command, make_source_files_completion_list): Remove
10503 * symmisc.c (print_objfile_statistics, dump_objfile)
10504 (maintenance_print_symbols): Remove declaration.
10505 (maintenance_info_symtabs): Use compunit_filetabs.
10506 (maintenance_info_line_tables): Likewise.
10507 * source.c (select_source_symtab): Change local variable name.
10508 (forget_cached_source_info_for_objfile): Remove declaration.
10509 * objfiles.h (ALL_OBJFILE_FILETABS): Use compunit_filetabs.
10510 * objfiles.c (objfile_relocate1): Remove declaration.
10511 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
10513 * maint.c (count_symtabs_and_blocks): Use compunit_filetabs.
10514 * coffread.c (coff_symtab_read): Remove declaration.
10515 * buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Use
10520 * symtab.c (lookup_objfile_from_block)
10521 (find_pc_sect_compunit_symtab, search_symbols)
10522 (default_collect_symbol_completion_matches_break_on): Use
10524 * objfiles.h (ALL_COMPUNITS): Remove.
10525 * maint.c (count_symtabs_and_blocks): Use objfile_compunits.
10526 * cp-support.c (add_symbol_overload_list_qualified): Use
10528 * ada-lang.c (ada_collect_symbol_completion_matches)
10529 (ada_add_global_exceptions): Use objfile_compunits.
10533 * source.c (select_source_symtab)
10534 (forget_cached_source_info_for_objfile): Remove declaration.
10535 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
10537 * maint.c (count_symtabs_and_blocks): Remove declaration.
10538 * cp-support.c (add_symbol_overload_list_qualified): Remove
10540 * coffread.c (coff_symtab_read): Remove declaration.
10541 * symtab.c (lookup_symbol_in_objfile_symtabs)
10542 (basic_lookup_transparent_type_1): Use objfile_compunits.
10543 (lookup_objfile_from_block, find_pc_sect_compunit_symtab)
10544 (info_sources_command, search_symbols)
10545 (default_collect_symbol_completion_matches_break_on)
10546 (make_source_files_completion_list): Remove declaration.
10547 * ada-lang.c (add_nonlocal_symbols): Use objfile_compunits.
10548 (ada_collect_symbol_completion_matches)
10549 (ada_add_global_exceptions): Remove declaration.
10550 * linespec.c (iterate_over_all_matching_symtabs): Use
10552 * objfiles.h (ALL_OBJFILE_COMPUNITS): Remove.
10553 (class objfile_compunits): New.
10554 (ALL_COMPUNITS): Use objfile_compunits.
10555 * symmisc.c (print_objfile_statistics, maintenance_info_symtabs)
10556 (maintenance_check_symtabs, maintenance_info_line_tables): Use
10558 * objfiles.c (objfile_relocate1): Use objfile_compunits.
10562 * symtab.c (search_symbols)
10563 (default_collect_symbol_completion_matches_break_on): Use
10565 * ada-lang.c (ada_lookup_simple_minsym)
10566 (ada_collect_symbol_completion_matches): Use objfile_msymbols.
10567 * minsyms.c (find_solib_trampoline_target): Use objfile_msymbols.
10568 * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Use
10570 * coffread.c (coff_symfile_read): Use objfile_msymbols.
10571 * symmisc.c (dump_msymbols): Use objfile_msymbols.
10572 * objc-lang.c (find_methods): Use objfile_msymbols.
10573 (info_selectors_command, info_classes_command): Likewise.
10574 * stabsread.c (scan_file_globals): Use objfile_msymbols.
10575 * objfiles.h (class objfile_msymbols): New.
10576 (ALL_OBJFILE_MSYMBOLS): Remove.
10577 (ALL_MSYMBOLS): Remove.
10581 * common/next-iterator.h (next_adapter): Add Iterator template
10583 * objfiles.h (ALL_OBJFILES_SAFE): Remove.
10584 (class all_objfiles_safe): New.
10585 * jit.c (jit_inferior_exit_hook): Use all_objfiles_safe.
10586 * objfiles.c (put_objfile_before): Update comment.
10587 (add_separate_debug_objfile): Likewise.
10588 (free_all_objfiles): Use all_objfiles_safe.
10589 (objfile_purge_solibs): Likewise.
10593 * symtab.c (iterate_over_symtabs, matching_obj_sections)
10594 (expand_symtab_containing_pc, lookup_static_symbol)
10595 (basic_lookup_transparent_type, find_pc_sect_compunit_symtab)
10596 (find_symbol_at_address, find_line_symtab, find_main_name): Use
10598 * probe.c (find_probe_by_pc, collect_probes): Use all_objfiles.
10599 * breakpoint.c (create_overlay_event_breakpoint)
10600 (create_longjmp_master_breakpoint)
10601 (create_std_terminate_master_breakpoint)
10602 (create_exception_master_breakpoint): Use all_objfiles.
10603 * linux-thread-db.c (try_thread_db_load_from_pdir)
10604 (has_libpthread): Use all_objfiles.
10605 * ada-lang.c (add_nonlocal_symbols): Use all_objfiles.
10606 * linespec.c (iterate_over_all_matching_symtabs)
10607 (search_minsyms_for_name): Use all_objfiles.
10608 * maint.c (maintenance_info_sections): Use all_objfiles.
10609 * main.c (captured_main_1): Use all_objfiles.
10610 * spu-tdep.c (spu_objfile_from_frame): Use all_objfiles.
10611 * guile/scm-objfile.c (gdbscm_objfiles): Use all_objfiles.
10612 * guile/scm-pretty-print.c
10613 (ppscm_find_pretty_printer_from_objfiles): Use all_objfiles.
10614 * solib-spu.c (append_ocl_sos): Use all_objfiles.
10615 * symmisc.c (maintenance_print_symbols): Use all_objfiles.
10616 (maintenance_print_msymbols): Use all_objfiles.
10617 * source.c (select_source_symtab): Use all_objfiles.
10618 * jit.c (jit_find_objf_with_entry_addr): Use all_objfiles.
10619 * symfile.c (remove_symbol_file_command)
10620 (expand_symtabs_matching, map_symbol_filenames): Use
10622 * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created): Use
10624 * dwarf2-frame.c (dwarf2_frame_find_fde): Use all_objfiles.
10625 * objc-lang.c (find_methods): Use all_objfiles.
10626 * objfiles.c (have_partial_symbols, have_full_symbols)
10627 (have_minimal_symbols, qsort_cmp)
10628 (default_iterate_over_objfiles_in_search_order): Use
10630 * hppa-tdep.c (find_unwind_entry): Use all_objfiles.
10631 * psymtab.c (maintenance_print_psymbols): Use all_objfiles.
10632 (maintenance_check_psymtabs): Use all_objfiles.
10633 (ALL_PSYMTABS): Remove.
10634 * compile/compile-object-run.c (do_module_cleanup): Use
10636 * blockframe.c (find_pc_partial_function): Use all_objfiles.
10637 * cp-support.c (add_symbol_overload_list_qualified): Use
10639 * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
10641 * dwarf-index-write.c (save_gdb_index_command): Use all_objfiles.
10642 * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers): Use
10644 * python/py-objfile.c (objfpy_lookup_objfile_by_name)
10645 (objfpy_lookup_objfile_by_build_id): Use all_objfiles.
10646 * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
10648 * solib.c (solib_read_symbols): Use all_objfiles
10652 * probe.c (parse_probes_in_pspace): Use all_objfiles.
10653 * guile/scm-progspace.c (gdbscm_progspace_objfiles): Use
10655 * objfiles.h (ALL_PSPACE_OBJFILES): Remove.
10656 * symmisc.c (print_symbol_bcache_statistics)
10657 (print_objfile_statistics, maintenance_print_objfiles)
10658 (maintenance_info_symtabs, maintenance_check_symtabs)
10659 (maintenance_expand_symtabs, maintenance_info_line_tables): Use
10661 * source.c (forget_cached_source_info): Use all_objfiles.
10662 * symfile-debug.c (set_debug_symfile): Use all_objfiles.
10663 * elfread.c (elf_gnu_ifunc_resolve_by_cache)
10664 (elf_gnu_ifunc_resolve_by_got): Use all_objfiles.
10665 * objfiles.c (update_section_map): Use all_objfiles.
10666 (shared_objfile_contains_address_p): Likewise.
10667 * psymtab.c (maintenance_info_psymtabs): Use all_objfiles.
10668 * python/py-progspace.c (pspy_get_objfiles): Use all_objfiles.
10672 * common/next-iterator.h: New file.
10673 * objfiles.h (class all_objfiles): New.
10674 (struct objfile_iterator): New.
10678 * NEWS: Move the description of the changed "frame", "select-frame",
10679 and "info frame" commands to the Changed commands section.
10683 * gdbtypes.c (check_stub_method_group): Remove handling of old
10685 * linespec.c (find_methods): Likewise.
10686 * stabsread.c (read_member_functions): Likewise.
10687 * valops.c (search_struct_method): Likewise.
10688 (value_struct_elt_for_reference): Likewise.
10689 * NEWS: Mention this change.
10693 * cli/cli-cmds.c (list_command): Pass a source_lines_range to
10694 print_source_lines.
10695 * source.c (print_source_lines_base): Update line number check.
10696 (print_source_lines): New function.
10697 (source_lines_range::source_lines_range): New function.
10698 * source.h (class source_lines_range): New class.
10699 (print_source_lines): New declaration.
10703 * linespec.c (linespec_state_destructor): Free self->canonical_names.
10709 * ada-exp.y (DOLLAR_VARIABLE): Rename from SPECIAL_VARIABLE.
10710 * ada-lex.l (DOLLAR_VARIABLE): Likewise.
10711 * c-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
10712 * f-exp.y (DOLLAR_VARIABLE): Likewise.
10713 * m2-exp.y (DOLLAR_VARIABLE): Rename from INTERNAL_VAR.
10714 * p-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
10718 * source.c (select_source_symtab): Move header comment to
10719 declaration in source.h.
10720 (forget_cached_source_info_for_objfile): Likewise.
10721 (forget_cached_source_info): Likewise.
10722 (identify_source_line): Likewise.
10723 * source.h (identify_source_line): Move declaration from symtab.h
10724 and add comment from source.c
10725 (print_source_lines): Likewise.
10726 (forget_cached_source_info_for_objfile): Likewise.
10727 (forget_cached_source_info): Likewise.
10728 (select_source_symtab): Likewise.
10729 (enum print_source_lines_flag): Move definition from symtab.h.
10730 * symtab.h (identify_source_line): Move declaration to source.h.
10731 (print_source_lines): Likewise.
10732 (forget_cached_source_info_for_objfile): Likewise.
10733 (forget_cached_source_info): Likewise.
10734 (select_source_symtab): Likewise.
10735 (enum print_source_lines_flag): Move definition to source.h.
10736 * tui/tui-hooks.c: Add 'source.h' include.
10740 * source.c (print_source_lines_base): Handle requests to print
10741 reverse line number sequences, and guard against empty lines
10746 * source.c (print_source_lines_base): Fix skip of '\r' if next
10751 * c-exp.y (struct c_parse_state) <macro_original_text,
10752 expansion_obstack>: New member.
10753 (macro_original_text, expansion_obstack): Remove globals.
10754 (scan_macro_expansion, scanning_macro_expansion)
10755 (finished_macro_expansion): Update.
10756 (scan_macro_cleanup): Remove.
10757 (yylex, c_parse): Update.
10761 * c-exp.y (struct c_parse_state) <strings>: New member.
10762 (operator_stoken): Update.
10766 * parser-defs.h (type_ptr): Remove typedef. Don't declare VEC.
10767 (union type_stack_elt) <typelist_val>: Now a pointer to
10769 (type_stack_cleanup): Don't declare.
10770 (push_typelist): Update.
10771 * parse.c (pop_typelist): Return a std::vector.
10772 (push_typelist): Take a std::vector.
10773 (follow_types): Update. Do not free args.
10774 (type_stack_cleanup): Remove.
10775 * c-exp.y (struct c_parse_state): New.
10776 (cpstate): New global.
10777 (type_aggregate_p, exp, ptr_operator, parameter_typelist)
10778 (nonempty_typelist): Update.
10779 (func_mod): Create a new vector.
10780 (c_parse): Create a c_parse_state.
10781 (check_parameter_typelist): Do not delete params.
10782 (function_method): Update. Do not delete type_list.
10787 * python/py-finishbreakpoint.c (bpfinishpy_init): Use
10789 * infcmd.c (finish_command_fsm_should_stop): Use check_typedef.
10790 (print_return_value): Likewise.
10794 * contrib/cleanup_check.py: Remove.
10795 * contrib/gcc-with-excheck: Remove.
10796 * contrib/exsummary.py: Remove.
10797 * contrib/excheck.py: Remove.
10801 * thread.c (delete_thread_1): Add gdb_assert that THR is not
10802 NULL. Initialize tpprev to NULL instead of assigning it
10803 to NULL on the next statement.
10804 * windows-nat.c (windows_delete_thread): Remove check for
10805 main_thread_id before printing thread exit notifications.
10806 (get_windows_debug_event) <EXIT_THREAD_DEBUG_EVENT>:
10807 Remove thread ID check against main_thread_id.
10808 <CREATE_PROCESS_DEBUG_EVENT>: Remove call to
10809 windows_delete_thread.
10810 <EXIT_PROCESS_DEBUG_EVENT>: Add call to windows_delete_thread.
10814 * compile/compile.c (_initialize_compile): Use upper case for
10815 metasyntactic variables.
10816 * symmisc.c (_initialize_symmisc): Use upper case for
10817 metasyntactic variables.
10818 * psymtab.c (_initialize_psymtab): Use upper case for
10819 metasyntactic variables.
10820 * demangle.c (demangle_command): Use upper case for metasyntactic
10822 (_initialize_demangler): Likewise.
10823 * ax-gdb.c (_initialize_ax_gdb): Use upper case for metasyntactic
10828 * tui/tui-source.c (tui_set_source_content): Use xstrdup.
10832 * python/py-symtab.c (salpy_str): Update.
10833 (struct salpy_sal_object) <symtab>: Now a PyObject.
10834 (salpy_dealloc): Update.
10835 (del_objfile_sal): Use gdbpy_ref.
10839 * python/py-type.c (convert_field): Use new_reference. Return
10841 (make_fielditem): Return gdbpy_ref.
10842 (typy_fields): Update.
10843 (typy_getitem): Update.
10844 (field_name): Return gdbpy_ref. Use new_reference.
10845 (typy_iterator_iternext): Update.
10849 * python/py-record.c (gdbpy_stop_recording): Use Py_RETURN_NONE.
10853 * python/py-value.c (valpy_dealloc): Use Py_XDECREF.
10854 * python/py-type.c (typy_fields_items): Use gdbpy_ref.
10855 * python/py-progspace.c (pspy_set_printers): Use gdbpy_ref.
10856 (pspy_set_frame_filters, pspy_set_frame_unwinders)
10857 (pspy_set_type_printers): Likewise.
10858 * python/py-function.c (fnpy_init): Use gdbpy_ref.
10859 * python/py-cmd.c (cmdpy_init): Use gdbpy_ref.
10860 * python/py-objfile.c (objfpy_set_printers): Use gdbpy_ref.
10861 (objfpy_set_frame_filters, objfpy_set_frame_unwinders)
10862 (objfpy_set_type_printers): Likewise.
10866 * python/python.c (gdbpy_enter, ~gdbpy_enter): Update.
10867 (gdbpy_print_stack): Use gdbpy_err_fetch.
10868 * python/python-internal.h (class gdbpy_err_fetch): New class.
10869 (class gdbpy_enter) <m_error_type, m_error_value,
10870 m_error_traceback>: Remove.
10871 <m_error>: New member.
10872 (gdbpy_exception_to_string): Don't declare.
10873 * python/py-varobj.c (py_varobj_iter_next): Use gdbpy_err_fetch.
10874 * python/py-value.c (convert_value_from_python): Use
10876 * python/py-utils.c (gdbpy_err_fetch::to_string): Rename from
10877 gdbpy_exception_to_string.
10878 (gdbpy_handle_exception): Use gdbpy_err_fetch.
10879 * python/py-prettyprint.c (print_stack_unless_memory_error): Use
10884 * linux-nat.c (delete_lwp_cleanup): Delete.
10885 (struct lwp_deleter): New struct.
10886 (lwp_info_up): New typedef.
10887 (linux_nat_target::follow_fork): Delete cleanup, and make use of
10892 * linux-fork.c (class scoped_switch_fork_info): New class.
10893 (inferior_call_waitpid): Update to use scoped_switch_fork_info.
10897 * valops.c (find_overload_match): Remove use of null_cleanup, and
10898 calls to do_cleanups.
10902 * compile/compile-cplus-types.c
10903 (compile_cplus_instance::decl_name): Handle changes to
10905 * cp-support.c (cp_func_name): Update header comment, update
10907 * cp-support.h (cp_func_name): Update return type in declaration.
10908 * valops.c (find_overload_match): Move temp_func local to top
10909 level of function and change its type. Use temp_func to hold and
10910 delete temporary string obtained from cp_func_name.
10914 * remote.c (remote_target::remote_check_symbols): Convert `msg` to
10915 gdb::char_vector, remove cleanup, and update uses of `msg`.
10919 * riscv-tdep.c (riscv_freg_feature): Drop s0 name from f8.
10923 * xml-tdesc.c (xml_cache): Hold a target_desc_up.
10924 (tdesc_parse_xml): Remove cleanups.
10925 * target-descriptions.h (make_cleanup_free_target_description):
10927 (target_desc_deleter): New struct.
10928 (target_desc_up): New typedef.
10929 * target-descriptions.c (target_desc_deleter::operator()): Rename
10930 from free_target_description.
10931 (make_cleanup_free_target_description): Remove.
10935 * linespec.c (struct linespec_parser): Rename from ls_parser. Add
10936 constructor, destructor.
10937 (linespec_parser): Remove typedef.
10938 (~linespec_parser): Rename from linespec_parser_delete.
10939 (linespec_lex_to_end, linespec_complete_label)
10940 (linespec_complete): Update.
10941 (decode_line_full): Remove cleanups.
10942 (decode_line_1): Update.
10946 * python/python-internal.h (inferior_to_inferior_object): Change
10948 * python/py-exitedevent.c (create_exited_event_object): Update.
10949 * python/py-inferior.c (inferior_to_inferior_object): Return
10951 (python_new_inferior, python_inferior_deleted)
10952 (thread_to_thread_object, delete_thread_object)
10953 (build_inferior_list, gdbpy_selected_inferior): Update.
10954 * python/py-infthread.c (create_thread_object): Update. Also fail
10955 if inferior_to_inferior_object fails.
10959 * inferior.h (class inferior) <displaced_step_state>: New field.
10960 * infrun.h (struct displaced_step_state): Move here from
10961 infrun.c. Initialize fields, add constructor.
10962 <inf>: Remove field.
10963 <reset>: New method.
10964 * infrun.c (struct displaced_step_inferior_state): Move to
10966 (displaced_step_inferior_states): Remove.
10967 (get_displaced_stepping_state): Adust.
10968 (displaced_step_in_progress_any_inferior): Adjust.
10969 (displaced_step_in_progress_thread): Adjust.
10970 (displaced_step_in_progress): Adjust.
10971 (add_displaced_stepping_state): Remove.
10972 (get_displaced_step_closure_by_addr): Adjust.
10973 (remove_displaced_stepping_state): Remove.
10974 (infrun_inferior_exit): Call displaced_step_state.reset.
10975 (use_displaced_stepping): Don't check for NULL.
10976 (displaced_step_prepare_throw): Call
10977 get_displaced_stepping_state.
10978 (displaced_step_fixup): Don't check for NULL.
10979 (prepare_for_detach): Don't check for NULL.
10983 * infcall.c (call_function_by_hand_dummy): cleanup/destroy sm
10984 in case of call that did not complete.
10988 * symfile.c (find_separate_debug_file): Fix search of debug files for
10993 * python/py-inferior.c (gdbpy_initialize_inferior): Fix
10995 * python/py-frame.c (frapy_older): Remove cast.
10996 (frapy_newer): Likewise.
10997 * python/py-breakpoint.c (local_setattro): Remove cast.
10998 * python/py-arch.c (archpy_name): Remove local variable.
10999 * python/py-type.c (gdbpy_lookup_type): Remove cast.
11003 * unittests/basic_string_view/element_access/char/empty.cc:
11004 Fix year range in copyright header.
11008 * arch/riscv.h (struct riscv_gdbarch_features) <hw_float_abi>:
11010 <operator==>: Update with for removed field.
11012 * riscv-tdep.h (struct gdbarch_tdep) <features>: Renamed to...
11013 <isa_features>: ...this.
11014 <abi_features>: New field.
11015 (riscv_isa_flen): Update comment.
11016 (riscv_abi_xlen): New declaration.
11017 (riscv_abi_flen): New declaration.
11018 * riscv-tdep.c (riscv_isa_xlen): Update to get answer from
11020 (riscv_abi_xlen): New function.
11021 (riscv_isa_flen): Update to get answer from isa_features.
11022 (riscv_abi_flen): New function.
11023 (riscv_has_fp_abi): Update to get answer from abi_features.
11024 (riscv_call_info::riscv_call_info): Use abi xlen and flen, not isa
11026 (riscv_call_info) <xlen, flen>: Update comment.
11027 (riscv_call_arg_struct): Remove invalid assertions
11028 (riscv_features_from_gdbarch_info): Update now hw_float_abi field
11030 (riscv_gdbarch_init): Gather isa features and abi features
11031 separately, ensure both match on the gdbarch when reusing an old
11032 gdbarch. Relax an error check to allow 32-bit abi float to run on
11033 a target with 64-bit float hardware.
11037 * source.c (search_command_helper): Stop reverse search
11038 when line 1 has been searched.
11042 * record-full.c (record_full_base_target::close): Rewrite
11043 record_full_core_buf_list free logic.
11047 * break-catch-syscall.c (print_one_catch_syscall): xfree
11052 * top.c (print_gdb_version): Update Copyright year in version
11057 Update copyright year range in all GDB files.
11061 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2018.
11063 For older changes see ChangeLog-2018.
11069 version-control: never