Remove cleanup_delete_std_terminate_breakpoint
[external/binutils.git] / gdb / ChangeLog
1 2019-01-23  Tom Tromey  <tom@tromey.com>
2             Pedro Alves  <palves@redhat.com>
3
4         * infcall.c (cleanup_delete_std_terminate_breakpoint): Remove.
5         (call_function_by_hand_dummy): Use SCOPE_EXIT.
6
7 2019-01-23  Tom Tromey  <tom@tromey.com>
8             Andrew Burgess  <andrew.burgess@embecosm.com>
9             Pedro Alves  <palves@redhat.com>
10
11         * infrun.c (fetch_inferior_event): Use scope_exit.
12         * utils.h (make_bpstat_clear_actions_cleanup): Don't declare.
13         * top.c (execute_command): Use scope_exit.
14         * breakpoint.c (bpstat_do_actions): Use scope_exit.
15         * utils.c (do_bpstat_clear_actions_cleanup)
16         (make_bpstat_clear_actions_cleanup): Remove.
17
18 2019-01-23  Tom Tromey  <tom@tromey.com>
19             Pedro Alves  <palves@redhat.com>
20
21         * infrun.c: Include "common/scope-exit.h"
22         (delete_just_stopped_threads_infrun_breakpoints_cleanup): Remove.
23         (wait_for_inferior): Use SCOPE_EXIT.
24         (fetch_inferior_event): Use scope_exit.
25
26 2019-01-23  Tom Tromey  <tom@tromey.com>
27             Pedro Alves  <palves@redhat.com>
28
29         * breakpoint.c (create_breakpoint): Remove cleanup.
30
31 2019-01-23  Tom Tromey  <tom@tromey.com>
32             Andrew Burgess  <andrew.burgess@embecosm.com>
33             Pedro Alves  <palves@redhat.com>
34
35 2019-01-23  Pedro Alves  <palves@redhat.com>
36
37         * gdbarch-selftests.c (struct on_exit): Use SCOPE_EXIT.
38
39 2019-01-23  Pedro Alves  <palves@redhat.com>
40             Andrew Burgess  <andrew.burgess@embecosm.com>
41
42         * gdbthread.h: Include "common/forward-scope-exit.h".
43         (scoped_finish_thread_state): Redefine custom class in terms of
44         forward_scope_exit.
45
46 2019-01-23  Pedro Alves  <palves@redhat.com>
47             Andrew Burgess  <andrew.burgess@embecosm.com>
48
49         * common/forward-scope-exit.h: New file.
50
51 2019-01-23  Pedro Alves  <palves@redhat.com>
52             Andrew Burgess  <andrew.burgess@embecosm.com>
53             Tom Tromey  <tom@tromey.com>
54
55         * common/scope-exit.h: New file.
56
57 2019-01-23  Pedro Alves  <palves@redhat.com>
58
59         * common/preprocessor.h (ESC): Rename to ...
60         (ESC_PARENS): ... this.
61         * common/valid-expr.h (CHECK_VALID_EXPR_1, CHECK_VALID_EXPR_2)
62         (CHECK_VALID_EXPR_3, CHECK_VALID_EXPR_4): Adjust.
63
64 2019-01-23  Tom Tromey  <tom@tromey.com>
65
66         * language.h (class scoped_switch_to_sym_language_if_auto):
67         Initialize m_lang in both cases.
68
69 2019-01-23  Alan Hayward  <alan.hayward@arm.com>
70
71         * nat/aarch64-linux.c (aarch64_linux_new_thread): Replace XNEW
72         with XCNEW.
73
74 2019-01-22  Tom Tromey  <tom@tromey.com>
75
76         * corelow.c: Do not include sys/file.h.
77
78 2019-01-22  Tom Tromey  <tom@tromey.com>
79
80         * tui/tui-wingeneral.h: Include gdb_curses.h.
81
82 2019-01-22  Tom Tromey  <tom@tromey.com>
83
84         * source-cache.h (class source_cache) <get_source_lines,
85         get_plain_source_lines, extract_lines>: Rename "lines" parameter.
86
87 2019-01-22  Tom Tromey  <tom@tromey.com>
88
89         * remote-fileio.h (struct remote_target): Declare.
90
91 2019-01-22  Tom Tromey  <tom@tromey.com>
92
93         * python/py-arch.c: Do not include py-ref.h.
94         * python/py-bpevent.c: Do not include py-ref.h.
95         * python/py-cmd.c: Do not include py-ref.h.
96         * python/py-continueevent.c: Do not include py-ref.h.
97         * python/py-event.h: Do not include py-ref.h.
98         * python/py-evtregistry.c: Do not include py-ref.h.
99         * python/py-finishbreakpoint.c: Do not include py-ref.h.
100         * python/py-frame.c: Do not include py-ref.h.
101         * python/py-framefilter.c: Do not include py-ref.h.
102         * python/py-function.c: Do not include py-ref.h.
103         * python/py-infevents.c: Do not include py-ref.h.
104         * python/py-linetable.c: Do not include py-ref.h.
105         * python/py-objfile.c: Do not include py-ref.h.
106         * python/py-param.c: Do not include py-ref.h.
107         * python/py-prettyprint.c: Do not include py-ref.h.
108         * python/py-progspace.c: Do not include py-ref.h.
109         * python/py-symbol.c: Do not include py-ref.h.
110         * python/py-symtab.c: Do not include py-ref.h.
111         * python/py-type.c: Do not include py-ref.h.
112         * python/py-unwind.c: Do not include py-ref.h.
113         * python/py-utils.c: Do not include py-ref.h.
114         * python/py-value.c: Do not include py-ref.h.
115         * python/py-varobj.c: Do not include py-ref.h.
116         * python/py-xmethods.c: Do not include py-ref.h.
117         * python/python.c: Do not include py-ref.h.
118         * varobj.c: Do not include py-ref.h.
119
120 2019-01-22  Tom Tromey  <tom@tromey.com>
121
122         * objfiles.h (struct objfile_per_bfd_storage): Use "struct"
123         keyword for bcache.
124
125 2019-01-22  Tom Tromey  <tom@tromey.com>
126
127         * compile/compile-cplus-types.c: Remove a comment by #include.
128
129 2019-01-22  Tom Tromey  <tom@tromey.com>
130
131         * compile/gcc-c-plugin.h: Include compile-internal.h.
132
133 2019-01-22  Tom Tromey  <tom@tromey.com>
134
135         * stabsread.c (EXTERN): Do not define.
136         (symnum, next_symbol_text_func, processing_gcc_compilation)
137         (within_function, global_sym_chain, global_stabs)
138         (previous_stab_code, this_object_header_files)
139         (n_this_object_header_files)
140         (n_allocated_this_object_header_files): Define.
141         * stabsread.h (EXTERN): Never define.  Use "extern".
142
143 2019-01-22  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
144
145         * event-top.c (handle_line_of_input): use unique_xmalloc_ptr for
146         history_value.
147
148 2019-01-21  Tom Tromey  <tom@tromey.com>
149
150         * ui-out.c: Fix includes.
151         * tui/tui-source.c: Fix includes.
152         * target.c: Fix includes.
153         * remote.c: Fix includes.
154         * regcache.c: Fix includes.
155         * python/py-block.c: Fix includes.
156         * printcmd.c: Fix includes.
157         * or1k-tdep.c: Fix includes.
158         * mi/mi-main.c: Fix includes.
159         * m32r-tdep.c: Fix includes.
160         * csky-tdep.c: Fix includes.
161         * compile/compile-cplus-types.c: Fix includes.
162         * cli/cli-interp.c: Fix includes.
163
164 2019-01-21  Alan Hayward  <alan.hayward@arm.com>
165
166         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
167         for padding.
168
169 2019-01-16  Tom Tromey  <tom@tromey.com>
170
171         * objfiles.h (struct minimal_symbol_iterator): Rename.  Move
172         earlier.
173         (struct objfile) <msymbols_range>: Move from top level.
174         <msymbols>: New method.
175         (class objfile_msymbols): Remove.
176         * symtab.c (default_collect_symbol_completion_matches_break_on):
177         Update.
178         * symmisc.c (dump_msymbols): Update.
179         * stabsread.c (scan_file_globals): Update.
180         * objc-lang.c (info_selectors_command, info_classes_command)
181         (find_methods): Update.
182         * minsyms.c (find_solib_trampoline_target): Update.
183         * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Update.
184         * coffread.c (coff_symfile_read): Update.
185         * ada-lang.c (ada_lookup_simple_minsym)
186         (ada_collect_symbol_completion_matches): Update.
187
188 2019-01-16  Tom Tromey  <tom@tromey.com>
189
190         * objfiles.h (class objfile_msymbols) <iterator>: Change argument
191         type.  Remove no-argument constructor.
192         <iterator::operator++>: Simplify.
193         <begin>: Update.
194         <end>: Use minimal_symbol_count.
195
196 2019-01-16  Tom Tromey  <tom@tromey.com>
197
198         * objfiles.h (struct objfile) <psymtabs>: New method.
199         (class objfile_psymtabs): Remove.
200         * psymtab.h (class psymtab_storage) <partial_symtab_range>: New
201         typedef.
202         <range>: New method.
203         (require_partial_symbols): Change return type.
204         * psymtab.c (require_partial_symbols)
205         (psym_expand_symtabs_matching): Update.
206         * mdebugread.c (parse_partial_symbols): Update.
207         * dbxread.c (dbx_end_psymtab): Update.
208
209 2019-01-15  Tom Tromey  <tom@tromey.com>
210
211         * symtab.c (lookup_objfile_from_block)
212         (lookup_symbol_in_objfile_symtabs)
213         (basic_lookup_transparent_type_1, find_pc_sect_compunit_symtab)
214         (find_line_symtab, info_sources_command)
215         (default_collect_symbol_completion_matches_break_on)
216         (make_source_files_completion_list): Update.
217         * symmisc.c (print_objfile_statistics, dump_objfile)
218         (maintenance_print_symbols, maintenance_info_symtabs)
219         (maintenance_check_symtabs, maintenance_info_line_tables):
220         Update.
221         * source.c (select_source_symtab)
222         (forget_cached_source_info_for_objfile): Update.
223         * objfiles.h (class objfile_compunits): Remove.
224         (struct objfile) <compunits_range>: New typedef.
225         (compunits): New method.
226         * objfiles.c (objfile_relocate1): Update.
227         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
228         * maint.c (count_symtabs_and_blocks): Update.
229         * linespec.c (iterate_over_all_matching_symtabs): Update.
230         * cp-support.c (add_symbol_overload_list_qualified): Update.
231         * coffread.c (coff_symtab_read): Update.
232         * ada-lang.c (add_nonlocal_symbols)
233         (ada_collect_symbol_completion_matches)
234         (ada_add_global_exceptions): Update.
235
236 2019-01-15  Tom Tromey  <tom@tromey.com>
237
238         * progspace.h (program_space) <objfiles_safe_range>: New
239         typedef.
240         <objfiles_safe>: New method.
241         * objfiles.h (class all_objfiles_safe): Remove.
242         * objfiles.c (free_all_objfiles, objfile_purge_solibs): Update.
243         * jit.c (jit_inferior_exit_hook): Update.
244
245 2019-01-17  Tom Tromey  <tom@tromey.com>
246
247         * progspace.h (program_space) <objfiles_range>: New typedef.
248         <objfiles>: New method.
249         <objfiles_head>: Rename from objfiles.
250         (object_files): Update.
251         * guile/scm-progspace.c (gdbscm_progspace_objfiles): Update.
252         * guile/scm-pretty-print.c
253         (ppscm_find_pretty_printer_from_objfiles): Update.
254         * guile/scm-objfile.c (gdbscm_objfiles): Update.
255         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
256         Update.
257         * python/py-progspace.c (pspy_get_objfiles): Update.
258         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
259         Update.
260         * python/py-objfile.c (objfpy_lookup_objfile_by_name)
261         (objfpy_lookup_objfile_by_build_id): Update.
262         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
263         * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
264         Update.
265         * symtab.c (iterate_over_symtabs, matching_obj_sections)
266         (expand_symtab_containing_pc, lookup_objfile_from_block)
267         (lookup_static_symbol, basic_lookup_transparent_type)
268         (find_pc_sect_compunit_symtab, find_symbol_at_address)
269         (find_line_symtab, info_sources_command)
270         (default_collect_symbol_completion_matches_break_on)
271         (make_source_files_completion_list, find_main_name): Update.
272         * symmisc.c (print_symbol_bcache_statistics)
273         (print_objfile_statistics, maintenance_print_symbols)
274         (maintenance_print_msymbols, maintenance_print_objfiles)
275         (maintenance_info_symtabs, maintenance_check_symtabs)
276         (maintenance_expand_symtabs, maintenance_info_line_tables):
277         Update.
278         * symfile.c (remove_symbol_file_command, overlay_invalidate_all)
279         (find_pc_overlay, find_pc_mapped_section, list_overlays_command)
280         (map_overlay_command, unmap_overlay_command)
281         (simple_overlay_update, expand_symtabs_matching)
282         (map_symbol_filenames): Update.
283         * symfile-debug.c (set_debug_symfile): Update.
284         * spu-tdep.c (spu_overlay_update, spu_objfile_from_frame):
285         Update.
286         * source.c (select_source_symtab, forget_cached_source_info):
287         Update.
288         * solib.c (solib_read_symbols): Update.
289         * solib-spu.c (append_ocl_sos): Update.
290         * psymtab.c (maintenance_print_psymbols)
291         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
292         * probe.c (parse_probes_in_pspace, find_probe_by_pc): Update.
293         * printcmd.c (info_symbol_command): Update.
294         * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created):
295         Update.
296         * objfiles.h (class all_objfiles): Remove.
297         * objfiles.c (have_partial_symbols, have_full_symbols)
298         (have_minimal_symbols, qsort_cmp, update_section_map)
299         (shared_objfile_contains_address_p)
300         (default_iterate_over_objfiles_in_search_order): Update.
301         * objc-lang.c (info_selectors_command, info_classes_command)
302         (find_methods): Update.
303         * minsyms.c (find_solib_trampoline_target): Update.
304         * maint.c (maintenance_info_sections)
305         (maintenance_translate_address, count_symtabs_and_blocks):
306         Update.
307         * main.c (captured_main_1): Update.
308         * linux-thread-db.c (try_thread_db_load_from_pdir)
309         (has_libpthread): Update.
310         * linespec.c (iterate_over_all_matching_symtabs)
311         (search_minsyms_for_name): Update.
312         * jit.c (jit_find_objf_with_entry_addr): Update.
313         * hppa-tdep.c (find_unwind_entry)
314         (hppa_lookup_stub_minimal_symbol): Update.
315         * gcore.c (gcore_create_callback, objfile_find_memory_regions):
316         Update.
317         * elfread.c (elf_gnu_ifunc_resolve_by_cache)
318         (elf_gnu_ifunc_resolve_by_got): Update.
319         * dwarf2-frame.c (dwarf2_frame_find_fde): Update.
320         * dwarf-index-write.c (save_gdb_index_command): Update.
321         * cp-support.c (add_symbol_overload_list_qualified): Update.
322         * breakpoint.c (create_overlay_event_breakpoint)
323         (create_longjmp_master_breakpoint)
324         (create_std_terminate_master_breakpoint)
325         (create_exception_master_breakpoint): Update.
326         * blockframe.c (find_pc_partial_function): Update.
327         * ada-lang.c (ada_lookup_simple_minsym, add_nonlocal_symbols)
328         (ada_collect_symbol_completion_matches)
329         (ada_add_global_exceptions): Update.
330
331 2019-01-17  Tom Tromey  <tom@tromey.com>
332
333         * solib-target.c (lm_info_target_p): Remove typedef.  Don't
334         declare VEC.
335         (solib_target_parse_libraries): Change return type.
336         (library_list_start_segment, library_list_start_section)
337         (library_list_end_library, library_list_start_library); Update.
338         (solib_target_free_library_list): Remove.
339         (solib_target_parse_libraries): Remove cleanup.  Change return
340         type.
341         (solib_target_current_sos): Update.
342
343 2019-01-17  Tom Tromey  <tromey@bapiya>
344
345         * valprint.c: Replace "the the" with "the".
346         * symtab.c: Replace "the the" with "the".
347         * solib.c: Replace "the the" with "the".
348         * solib-dsbt.c: Replace "the the" with "the".
349         * linespec.c: Replace "the the" with "the".
350         * dwarf2loc.h: Replace "the the" with "the".
351         * amd64-windows-tdep.c: Replace "the the" with "the".
352         * aarch64-tdep.c: Replace "the the" with "the".
353
354 2019-01-16  Keith Seitz  <keiths@redhat.com>
355
356         PR gdb/23773
357         * dwarf2read.c (dwarf2_cu) <ancestor>: New field.
358         <builder>: Rename to ..
359         <m_builder>: ... this and make private.
360         (dwarf2_cu::get_builder): New method.  Change all users of
361         `builder' to use this method.
362         (dwarf2_start_symtab): Move to ...
363         (dwarf2_cu::start_symtab): ... here.  Update all callers
364         (setup_type_unit_groups): Move to ...
365         (dwarf2_cu::setup_type_unit_groups): ... here.  Update all
366         callers.
367         (dwarf2_cu::reset_builder): New method.
368         (process_full_compunit, process_full_type_unit): Use
369         dwarf2_cu::reset_builder.
370         (follow_die_offset): Record the ancestor CU if it is different
371         from the followed DIE's CU.
372         (follow_die_sig_1): Likewise.
373
374 2019-01-15  Tom Tromey  <tom@tromey.com>
375
376         * remote.c (class remote_state) <buf>: Now a char_vector.
377         <buf_size>: Remove.
378         (remote_target::getpkt): Change type of buf.  Remove sizeof_buf
379         parameter.
380         (remote_target::getpkt_or_notif_sane_1)
381         (remote_target::getpkt_sane)
382         (remote_target::getpkt_or_notif_sane): Likewise.
383         (class remote_target) <putpkt>: New overload.
384         (remote_target::read_frame): Change type of "buf_p".  Remove
385         sizeof_p parameter.
386         (packet_ok): New overload.
387         (packet_check_result): New overload.
388         Update all uses.
389
390 2019-01-14  Tom Tromey  <tom@tromey.com>
391
392         * remote-notif.c (handle_notification, remote_notif_ack)
393         (remote_notif_parse): Make "buf" const.
394         * remote-notif.h (struct notif_client) <parse, ack>: Make "buf"
395         const.
396         (remote_notif_parse, remote_notif_ack, handle_notification):
397         Likewise.
398         * remote.c (remote_notif_stop_parse): Make "buf" const.
399         (remote_target::remote_parse_stop_reply): Make "buf" const.
400         (remote_notif_stop_ack): Make "buf" const.
401
402 2019-01-14  Tom Tromey  <tom@tromey.com>
403
404         * remote.c (remote_console_output): Make parameter const.
405
406 2019-01-14  Tom Tromey  <tom@tromey.com>
407
408         * target-debug.h (target_debug_print_signals): Constify.
409         * nto-procfs.c (nto_procfs_target::pass_signals): Update.
410         * procfs.c (procfs_target::pass_signals): Update.
411         * linux-nat.c (linux_nat_target::pass_signals): Update.
412         * linux-nat.h (class linux_nat_target) <pass_signals>: Update.
413         * target-delegates.c: Rebuild.
414         * remote.c (remote_target::program_signals): Update.
415         (remote_target::pass_signals): Update.
416         * target.c (target_pass_signals): Constify argument.
417         (target_program_signals): Likewise.
418         * target.h (struct target_ops) <pass_signals, program_signals>:
419         Constify argument.
420         (target_pass_signals, target_program_signals): Constify argument.
421
422 2019-01-14  Tom Tromey  <tom@tromey.com>
423
424         PR tui/28819:
425         * tui/tui-io.c (gdb_wgetch): Print \r when needed.
426
427 2019-01-14  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
428
429         * ppc-tdep.h (struct gdbarch_tdep) <ppc_v0_alias_regnum>: New
430         field.
431         * rs6000-tdep.c: Include reggroups.h.
432         (IS_V_ALIAS_PSEUDOREG): Define.
433         (rs6000_register_name): Return names for the "vX" aliases.
434         (rs6000_pseudo_register_type): Return type for the "vX" aliases.
435         (rs6000_pseudo_register_reggroup_p): Restore.  Handle "vX"
436         aliases.  Call default_register_reggroup_p for all other
437         pseudo-registers.
438         (v_alias_pseudo_register_read, v_alias_pseudo_register_write):
439         New functions.
440         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
441         Handle "vX" aliases.
442         (v_alias_pseudo_register_collect): New function.
443         (rs6000_ax_pseudo_register_collect): Handle "vX" aliases.
444         (rs6000_gdbarch_init): Initialize "vX" aliases as
445         pseudo-registers.  Restore registration of
446         rs6000_pseudo_register_reggroup_p with
447         set_tdesc_pseudo_register_reggroup_p.
448
449 2019-01-13  Max Filippov  <jcmvbkbc@gmail.com>
450
451         * xtensa-linux-tdep.c (xtensa_linux_init_abi): Update
452         tdep->num_pseudo_regs. Add calls to set_gdbarch_num_regs and
453         set_gdbarch_num_pseudo_regs.
454
455 2019-01-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
456
457         * cli/cli-style.h (class cli_style_option): <add_setshow_commands>
458         Remove arg prefixname, add do_set and do_show.
459         Add member functions set_list and show_list.
460         * cli/cli-style.c (class cli_style_option): Update accordingly.
461         (style_set_list): Move to file scope.
462         (style_show_list): Likewise.
463         (set_style): Call help_list.
464         (show_style): Call cmd_show_list.
465         (_initialize_cli_style): New macro STYLE_ADD_SETSHOW_COMMANDS.
466         Update to use the new macro.
467
468 2019-10-12  Joel Brobecker  <brobecker@adacore.com>
469
470         * ada-lang.c (_initialize_ada_language): Expand the help text
471         for the "catch exception" command.
472
473 2019-01-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
474
475         * symtab.c (matching_obj_sections): Initialize obj,
476         declare it closer to its usage.
477
478 2019-01-10  Tom Tromey  <tom@tromey.com>
479
480         * thread-iter.h (inf_threads_iterator): Use next_iterator.
481         (basic_inf_threads_range): Remove.
482         (inf_threads_range, inf_non_exited_threads_range)
483         (safe_inf_threads_range): Use next_adapter.
484
485 2019-01-10  Keith Seitz  <keiths@redhat.com>
486
487         PR gdb/23712
488         PR symtab/23010
489         * dwarf2read.c (dw2_add_symbol_to_list): Remove.
490         (fixup_go_packaging, new_symbol): Use add_symbol_to_list.
491
492 2019-01-10  Keith Seitz  <keiths@redhat.com>
493
494         PR gdb/23712
495         PR symtab/23010
496         * dictionary.c (pending_to_vector): Remove.
497         (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
498         Remove _1 suffix, replacing functions of the same name.  Update
499         all callers.
500         (dict_create_hashed, dict_create_hashed_expandable)
501         (dict_create_linear, dict_create_linear_expandable, dict_free)
502         (dict_add_symbol, dict_add_pending, dict_size, dict_empty):
503         Make functions static.
504
505 2019-01-10  Keith Seitz  <keiths@redhat.com>
506
507         PR gdb/23712
508         PR symtab/23010
509         * dictionary.h (struct dictionary): Replace declaration with
510         multidictionary.
511         (dict_create_hashed, dict_create_hashed_expandable)
512         (dict_create_linear, dict_create_linear_expandable)
513         (dict_free, dict_add_symbol, dict_add_pending, dict_empty)
514         (dict_iterator_first, dict_iterator_next, dict_iter_match_first)
515         (dict_iter_match_next, dict_size): Rename to "mdict_" versions
516         taking multidictionary argument.
517         [ALL_DICT_SYMBOLS]: Update for multidictionary.
518         * block.h (struct block) <dict>: Change to multidictionary
519         and rename `multidict'.
520         * block.c, buildsym.c, jit.c, mdebugread.c, objfiles.c,
521         symmisc.c: Update all dictionary references to multidictionary.
522
523 2019-01-10  Keith Seitz  <keiths@redhat.com>
524
525         PR gdb/23712
526         PR symtab/23010
527         * dictionary.c: Include unordered_map.
528         (pending_to_vector): New function.
529         (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
530         Rewrite the non-"_1" functions to take vector instead
531         of linked list.
532         (dict_create_hashed, dict_create_linear, dict_add_pending): Use the
533         "new" _1 versions of the same name.
534         (multidictionary): Define.
535         (std::hash<enum language): New definition.
536         (collate_pending_symbols_by_language, mdict_create_hashed)
537         (mdict_create_hashed_expandable, mdict_create_linear)
538         (mdict_create_linear_expandable, mdict_free)
539         (find_language_dictionary, create_new_language_dictionary)
540         (mdict_add_symbol, mdict_add_pending, mdict_iterator_first)
541         (mdict_iterator_next, mdict_iter_match_first, mdict_iter_match_next)
542         (mdict_size, mdict_empty): New functions.
543         * dictionary.h (mdict_iterator): Define.
544
545 2019-01-10  Pedro Alves  <palves@redhat.com>
546
547         * breakpoint.c (read_uploaded_action)
548         (create_tracepoint_from_upload): Adjust to use
549         gdb::unique_xmalloc_ptr.
550         * ctf.c (ctf_write_uploaded_tp):
551         (SET_ARRAY_FIELD): Use emplace_back.
552         (SET_STRING_FIELD): Adjust to use gdb::unique_xmalloc_ptr.
553         * tracefile-tfile.c (tfile_write_uploaded_tp):
554         * tracepoint.c (parse_tracepoint_definition): Adjust to use
555         gdb::unique_xmalloc_ptr.
556         * tracepoint.h (struct uploaded_tp) <cond, actions, step_actions,
557         at_string, cond_string, cmd_strings>: Replace char pointers
558         with gdb::unique_xmalloc_ptr.
559
560 2019-01-10  Pedro Alves  <palves@redhat.com>
561
562         * solib-target.c (library_list_start_library): Don't xstrdup name.
563
564 2019-01-10  Pedro Alves  <palves@redhat.com>
565
566         * mdebugread.c (parse_partial_symbols): Use
567         gdb::unique_xmalloc_ptr to manage heap-allocated 'stabsstring'.
568
569 2019-01-10  Andrew Burgess  <andrew.burgess@embecosm.com>
570
571         * linux-fork.c (scoped_switch_fork_info)
572         <~scoped_switch_fork_info>: Fix incorrect variable name.
573
574 2019-01-10  Andrew Burgess  <andrew.burgess@embecosm.com>
575
576         * linux-fork.c (scoped_switch_fork_info)
577         <scoped_switch_fork_info>: Make explicit.
578         <~scoped_switch_fork_info>: Wrap core in TRY/CATCH.
579
580 2019-01-10  Tom Tromey  <tom@tromey.com>
581
582         * objfiles.h (objfile::reset_psymtabs): Update.
583         * objfiles.c (objfile::objfile): Update.
584         * psymtab.h (psymtab_storage::obstack): Update.
585         (psymtab_storage::m_obstack): Use gdb::optional.
586         (class psymtab_storage): Update comment.  Remove objfile
587         parameter.
588         * psymtab.c (psymtab_storage::psymtab_storage): Update.
589
590 2019-01-10  Tom Tromey  <tom@tromey.com>
591
592         * psymtab.h (psymtab_storage::allocate_psymtab): New method.
593         <free_psymtabs>: Now private.
594         * psymtab.c (psymtab_storage::allocate_psymtab): Implement.
595         (allocate_psymtab): Use new method.
596
597 2019-01-10  Tom Tromey  <tom@tromey.com>
598
599         * xcoffread.c (xcoff_end_psymtab): Use allocate_dependencies.
600         * psymtab.h (psymtab_storage::allocate_dependencies): New method.
601         * mdebugread.c (parse_partial_symbols): Use
602         allocate_dependencies.
603         * dwarf2read.c (dwarf2_create_include_psymtab): Use
604         allocate_dependencies.
605         (process_psymtab_comp_unit_reader)
606         (build_type_psymtab_dependencies): Likewise.
607         * dbxread.c (dbx_end_psymtab): Use allocate_dependencies.
608
609 2019-01-10  Tom Tromey  <tom@tromey.com>
610
611         * psymtab.c (add_psymbol_to_bcache): Pass psymtab obstack to
612         PSYMBOL_SET_LANGUAGE.
613         (allocate_psymtab): Allocate psymtab on the psymtab obstack.
614
615 2019-01-10  Tom Tromey  <tom@tromey.com>
616
617         * psymtab.h (psymtab_storage::obstack): New method.
618         <m_obstack>: Rename from obstack; now private.
619         * psymtab.c (psymtab_storage): Update.
620         * dwarf2read.c (create_addrmap_from_index)
621         (create_addrmap_from_aranges, dwarf2_build_psymtabs_hard):
622         Update.
623
624 2019-01-10  Tom Tromey  <tom@tromey.com>
625
626         * symfile.c (reread_symbols): Call objfile->reset_psymtabs.
627         * objfiles.h (objfile::reset_psymtabs): New method.
628
629 2019-01-10  Tom Tromey  <tom@tromey.com>
630
631         * symmisc.c (print_symbol_bcache_statistics): Update.
632         (print_objfile_statistics): Update.
633         * symfile.c (reread_symbols): Update.
634         * psymtab.h (class psymtab_storage): New.
635         * psymtab.c (psymtab_storage): New constructor.
636         (~psymtab_storage): New destructor.
637         (require_partial_symbols): Update.
638         (ALL_OBJFILE_PSYMTABS_REQUIRED): Rewrite.
639         (find_pc_sect_psymtab, find_pc_sect_psymbol)
640         (match_partial_symbol, lookup_partial_symbol, dump_psymtab)
641         (psym_dump, recursively_search_psymtabs, psym_has_symbols)
642         (psym_find_compunit_symtab_by_address, sort_pst_symbols)
643         (start_psymtab_common, end_psymtab_common)
644         (add_psymbol_to_bcache, add_psymbol_to_list, init_psymbol_list)
645         (allocate_psymtab): Update.
646         (psymtab_storage::discard_psymtab): Rename from discard_psymtab.
647         Update.
648         (dump_psymtab_addrmap, maintenance_print_psymbols)
649         (maintenance_check_psymtabs): Update.
650         (class objfile_psymtabs): Move to objfiles.h.
651         * psympriv.h (discard_psymtab): Now inline.
652         (psymtab_discarder::psymtab_discarder): Update.
653         (psymtab_discarder::~psymtab_discarder): Update.
654         (ALL_OBJFILE_PSYMTABS): Rewrite.
655         * objfiles.h (struct objfile) <psymtabs, psymtabs_addrmap,
656         free_psymtabs, psymbol_cache, global_psymbols, static_psymbols>:
657         Remove fields.
658         <partial_symtabs>: New field.
659         (class objfile_psymtabs): Move from psymtab.h.  Update.
660         * objfiles.c (objfile::objfile): Initialize partial_symtabs, not
661         psymbol_cache.
662         (objfile::~objfile): Don't destroy psymbol_cache.
663         * mdebugread.c (parse_partial_symbols): Update.
664         * dwarf2read.c (create_addrmap_from_index)
665         (create_addrmap_from_aranges, dw2_find_pc_sect_compunit_symtab)
666         (process_psymtab_comp_unit_reader, dwarf2_build_psymtabs_hard)
667         (add_partial_subprogram, dwarf2_ranges_read): Update.
668         * dwarf-index-write.c (write_address_map)
669         (write_one_signatured_type, recursively_write_psymbols)
670         (class debug_names, class debug_names, write_psymtabs_to_index):
671         Update.
672
673 2019-01-10  Tom Tromey  <tom@tromey.com>
674
675         * symtab.h (SYMBOL_SET_NAMES): Update.
676         (symbol_set_names): Update.
677         (MSYMBOL_SET_NAMES): Update.
678         * symtab.c (symbol_set_names): Change argument to be an
679         objfile_per_bfd_storage.
680         * psymtab.c (add_psymbol_to_bcache): Update.
681         * psympriv.h (PSYMBOL_SET_NAMES): Take per_bfd argument.
682
683 2019-01-10  Tom Tromey  <tom@tromey.com>
684
685         * symtab.c (create_demangled_names_hash): Change argument to be an
686         objfile_per_bfd_storage.
687         (symbol_set_names): Update.
688
689 2019-01-10  Tom Tromey  <tom@tromey.com>
690
691         * xcoffread.c (xcoff_initial_scan): Unconditionally call
692         init_psymbol_list.
693         * psymtab.c (init_psymbol_list): Do nothing if already called.
694         * psympriv.h (init_psymbol_list): Add comment.
695         * dwarf2read.c (dwarf2_build_psymtabs): Unconditionally call
696         init_psymbol_list.
697         * dbxread.c (dbx_symfile_read): Unconditionally call
698         init_psymbol_list.
699
700 2019-01-10  Tom Tromey  <tom@tromey.com>
701
702         * xcoffread.c (scan_xcoff_symtab): Update.
703         * psymtab.c (add_psymbol_to_list): Replace "list" parameter with
704         "where".
705         * mdebugread.c (parse_partial_symbols)
706         (handle_psymbol_enumerators): Update.
707         * dwarf2read.c (add_partial_symbol, load_partial_dies): Update.
708         * dbxread.c (read_dbx_symtab): Update.
709         * psympriv.h (psymbol_placement): New enum.
710         (add_psymbol_to_list): Update.
711
712 2019-01-10  Tom Tromey  <tom@tromey.com>
713
714         * xcoffread.c (xcoff_start_psymtab): Remove global_psymbols and
715         static_psymbols parameters.
716         (scan_xcoff_symtab): Update.
717         * psymtab.c (start_psymtab_common): Remove global_psymbols and
718         static_psymbols parameters.
719         * psympriv.h (start_psymtab_common): Update.
720         * mdebugread.c (parse_partial_symbols): Update.
721         * dwarf2read.c (create_partial_symtab): Update.
722         * dbxread.c (read_dbx_symtab): Update.
723         (start_psymtab): Remove global_psymbols and static_psymbols
724         parameters.
725
726 2019-01-10  Tom Tromey  <tom@tromey.com>
727
728         * xcoffread.c (xcoff_end_psymtab): Remove some initializations.
729         * psymtab.c (allocate_psymtab): Add comment.
730         * psympriv.h (allocate_psymtab): Add comment.
731         * dwarf2read.c (dwarf2_create_include_psymtab): Remove some
732         initializations.
733         * dbxread.c (dbx_end_psymtab): Remove some initializations.
734
735 2019-01-10  Tom Tromey  <tom@tromey.com>
736
737         * symfile.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
738         Don't declare.
739         * mipsread.c: Include mdebugread.h.
740         * mdebugread.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
741         Declare.
742         * elfread.c: Include mdebugread.h.
743
744 2019-01-09  Tom Tromey  <tom@tromey.com>
745
746         * dbxread.c (dbx_end_psymtab): Use objfile_psymtabs.
747         * mdebugread.c (parse_partial_symbols): Use objfile_psymtabs.
748         * psymtab.c (ALL_OBJFILE_PSYMTABS_REQUIRED): Remove.
749         (psym_map_symtabs_matching_filename, find_pc_sect_psymtab)
750         (psym_lookup_symbol, psym_find_last_source_symtab)
751         (psym_forget_cached_source_info, psym_print_stats)
752         (psym_expand_symtabs_for_function, psym_expand_all_symtabs)
753         (psym_expand_symtabs_with_fullname, psym_map_symbol_filenames)
754         (psym_map_matching_symbols, psym_expand_symtabs_matching)
755         (psym_find_compunit_symtab_by_address)
756         (maintenance_print_psymbols, maintenance_info_psymtabs)
757         (maintenance_check_psymtabs): Use ranged for.
758         * psymtab.h (class objfile_psymtabs): New.
759         (require_partial_symbols): Return objfile_psymtabs.
760         * psympriv.h (ALL_OBJFILE_PSYMTABS): Remove.
761
762 2019-01-09  Tom Tromey  <tom@tromey.com>
763
764         * symfile.c (overlay_invalidate_all, find_pc_overlay)
765         (find_pc_mapped_section, list_overlays_command)
766         (map_overlay_command, unmap_overlay_command)
767         (simple_overlay_update): Use all_objfiles.
768         * spu-tdep.c (spu_overlay_update): Use all_objfiles.
769         * printcmd.c (info_symbol_command): Use all_objfiles.
770         * objfiles.h (ALL_OBJSECTIONS): Remove.
771         * maint.c (maintenance_translate_address): Use all_objfiles.
772         * gcore.c (gcore_create_callback): Use all_objfiles.
773         (objfile_find_memory_regions): Likewise.
774
775 2019-01-09  Tom Tromey  <tom@tromey.com>
776
777         * symtab.c (find_line_symtab, info_sources_command)
778         (make_source_files_completion_list): Use objfile_compunits.
779         * source.c (select_source_symtab): Use objfile_compunits.
780         * objfiles.h (struct objfile): Update comment.
781         (ALL_OBJFILES): Remove.
782         (ALL_FILETABS): Remove.
783         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Use
784         objfile_compunits.
785
786 2019-01-09  Tom Tromey  <tom@tromey.com>
787
788         * symmisc.c (print_objfile_statistics, dump_objfile)
789         (maintenance_print_symbols): Use compunit_filetabs.
790         * source.c (forget_cached_source_info_for_objfile): Use
791         compunit_filetabs.
792         * objfiles.h (ALL_OBJFILE_FILETABS): Remove.
793         (ALL_FILETABS): Use compunit_filetabs.
794         * objfiles.c (objfile_relocate1): Use compunit_filetabs.
795         * coffread.c (coff_symtab_read): Use compunit_filetabs.
796
797 2019-01-09  Tom Tromey  <tom@tromey.com>
798
799         * symtab.h (ALL_COMPUNIT_FILETABS): Remove.
800         (compunit_filetabs): New.
801         * symtab.c (iterate_over_some_symtabs, find_pc_sect_line): Use
802         compunit_filetabs.
803         (info_sources_command, make_source_files_completion_list): Remove
804         declaration.
805         * symmisc.c (print_objfile_statistics, dump_objfile)
806         (maintenance_print_symbols): Remove declaration.
807         (maintenance_info_symtabs): Use compunit_filetabs.
808         (maintenance_info_line_tables): Likewise.
809         * source.c (select_source_symtab): Change local variable name.
810         (forget_cached_source_info_for_objfile): Remove declaration.
811         * objfiles.h (ALL_OBJFILE_FILETABS): Use compunit_filetabs.
812         * objfiles.c (objfile_relocate1): Remove declaration.
813         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
814         declaration.
815         * maint.c (count_symtabs_and_blocks): Use compunit_filetabs.
816         * coffread.c (coff_symtab_read): Remove declaration.
817         * buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Use
818         compunit_filetabs.
819
820 2019-01-09  Tom Tromey  <tom@tromey.com>
821
822         * symtab.c (lookup_objfile_from_block)
823         (find_pc_sect_compunit_symtab, search_symbols)
824         (default_collect_symbol_completion_matches_break_on): Use
825         objfile_compunits.
826         * objfiles.h (ALL_COMPUNITS): Remove.
827         * maint.c (count_symtabs_and_blocks): Use objfile_compunits.
828         * cp-support.c (add_symbol_overload_list_qualified): Use
829         objfile_compunits.
830         * ada-lang.c (ada_collect_symbol_completion_matches)
831         (ada_add_global_exceptions): Use objfile_compunits.
832
833 2019-01-09  Tom Tromey  <tom@tromey.com>
834
835         * source.c (select_source_symtab)
836         (forget_cached_source_info_for_objfile): Remove declaration.
837         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
838         declaration.
839         * maint.c (count_symtabs_and_blocks): Remove declaration.
840         * cp-support.c (add_symbol_overload_list_qualified): Remove
841         declaration.
842         * coffread.c (coff_symtab_read): Remove declaration.
843         * symtab.c (lookup_symbol_in_objfile_symtabs)
844         (basic_lookup_transparent_type_1): Use objfile_compunits.
845         (lookup_objfile_from_block, find_pc_sect_compunit_symtab)
846         (info_sources_command, search_symbols)
847         (default_collect_symbol_completion_matches_break_on)
848         (make_source_files_completion_list): Remove declaration.
849         * ada-lang.c (add_nonlocal_symbols): Use objfile_compunits.
850         (ada_collect_symbol_completion_matches)
851         (ada_add_global_exceptions): Remove declaration.
852         * linespec.c (iterate_over_all_matching_symtabs): Use
853         objfile_compunits.
854         * objfiles.h (ALL_OBJFILE_COMPUNITS): Remove.
855         (class objfile_compunits): New.
856         (ALL_COMPUNITS): Use objfile_compunits.
857         * symmisc.c (print_objfile_statistics, maintenance_info_symtabs)
858         (maintenance_check_symtabs, maintenance_info_line_tables): Use
859         objfile_compunits.
860         * objfiles.c (objfile_relocate1): Use objfile_compunits.
861
862 2019-01-09  Tom Tromey  <tom@tromey.com>
863
864         * symtab.c (search_symbols)
865         (default_collect_symbol_completion_matches_break_on): Use
866         objfile_msymbols.
867         * ada-lang.c (ada_lookup_simple_minsym)
868         (ada_collect_symbol_completion_matches): Use objfile_msymbols.
869         * minsyms.c (find_solib_trampoline_target): Use objfile_msymbols.
870         * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Use
871         objfile_msymbols.
872         * coffread.c (coff_symfile_read): Use objfile_msymbols.
873         * symmisc.c (dump_msymbols): Use objfile_msymbols.
874         * objc-lang.c (find_methods): Use objfile_msymbols.
875         (info_selectors_command, info_classes_command): Likewise.
876         * stabsread.c (scan_file_globals): Use objfile_msymbols.
877         * objfiles.h (class objfile_msymbols): New.
878         (ALL_OBJFILE_MSYMBOLS): Remove.
879         (ALL_MSYMBOLS): Remove.
880
881 2019-01-09  Tom Tromey  <tom@tromey.com>
882
883         * common/next-iterator.h (next_adapter): Add Iterator template
884         parameter.
885         * objfiles.h (ALL_OBJFILES_SAFE): Remove.
886         (class all_objfiles_safe): New.
887         * jit.c (jit_inferior_exit_hook): Use all_objfiles_safe.
888         * objfiles.c (put_objfile_before): Update comment.
889         (add_separate_debug_objfile): Likewise.
890         (free_all_objfiles): Use all_objfiles_safe.
891         (objfile_purge_solibs): Likewise.
892
893 2019-01-09  Tom Tromey  <tom@tromey.com>
894
895         * symtab.c (iterate_over_symtabs, matching_obj_sections)
896         (expand_symtab_containing_pc, lookup_static_symbol)
897         (basic_lookup_transparent_type, find_pc_sect_compunit_symtab)
898         (find_symbol_at_address, find_line_symtab, find_main_name): Use
899         all_objfiles.
900         * probe.c (find_probe_by_pc, collect_probes): Use all_objfiles.
901         * breakpoint.c (create_overlay_event_breakpoint)
902         (create_longjmp_master_breakpoint)
903         (create_std_terminate_master_breakpoint)
904         (create_exception_master_breakpoint): Use all_objfiles.
905         * linux-thread-db.c (try_thread_db_load_from_pdir)
906         (has_libpthread): Use all_objfiles.
907         * ada-lang.c (add_nonlocal_symbols): Use all_objfiles.
908         * linespec.c (iterate_over_all_matching_symtabs)
909         (search_minsyms_for_name): Use all_objfiles.
910         * maint.c (maintenance_info_sections): Use all_objfiles.
911         * main.c (captured_main_1): Use all_objfiles.
912         * spu-tdep.c (spu_objfile_from_frame): Use all_objfiles.
913         * guile/scm-objfile.c (gdbscm_objfiles): Use all_objfiles.
914         * guile/scm-pretty-print.c
915         (ppscm_find_pretty_printer_from_objfiles): Use all_objfiles.
916         * solib-spu.c (append_ocl_sos): Use all_objfiles.
917         * symmisc.c (maintenance_print_symbols): Use all_objfiles.
918         (maintenance_print_msymbols): Use all_objfiles.
919         * source.c (select_source_symtab): Use all_objfiles.
920         * jit.c (jit_find_objf_with_entry_addr): Use all_objfiles.
921         * symfile.c (remove_symbol_file_command)
922         (expand_symtabs_matching, map_symbol_filenames): Use
923         all_objfiles.
924         * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created): Use
925         all_objfiles.
926         * dwarf2-frame.c (dwarf2_frame_find_fde): Use all_objfiles.
927         * objc-lang.c (find_methods): Use all_objfiles.
928         * objfiles.c (have_partial_symbols, have_full_symbols)
929         (have_minimal_symbols, qsort_cmp)
930         (default_iterate_over_objfiles_in_search_order): Use
931         all_objfiles.
932         * hppa-tdep.c (find_unwind_entry): Use all_objfiles.
933         * psymtab.c (maintenance_print_psymbols): Use all_objfiles.
934         (maintenance_check_psymtabs): Use all_objfiles.
935         (ALL_PSYMTABS): Remove.
936         * compile/compile-object-run.c (do_module_cleanup): Use
937         all_objfiles.
938         * blockframe.c (find_pc_partial_function): Use all_objfiles.
939         * cp-support.c (add_symbol_overload_list_qualified): Use
940         all_objfiles.
941         * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
942         Use all_objfiles.
943         * dwarf-index-write.c (save_gdb_index_command): Use all_objfiles.
944         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers): Use
945         all_objfiles.
946         * python/py-objfile.c (objfpy_lookup_objfile_by_name)
947         (objfpy_lookup_objfile_by_build_id): Use all_objfiles.
948         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
949         Uses all_objfiles.
950         * solib.c (solib_read_symbols): Use all_objfiles
951
952 2019-01-09  Tom Tromey  <tom@tromey.com>
953
954         * probe.c (parse_probes_in_pspace): Use all_objfiles.
955         * guile/scm-progspace.c (gdbscm_progspace_objfiles): Use
956         all_objfiles.
957         * objfiles.h (ALL_PSPACE_OBJFILES): Remove.
958         * symmisc.c (print_symbol_bcache_statistics)
959         (print_objfile_statistics, maintenance_print_objfiles)
960         (maintenance_info_symtabs, maintenance_check_symtabs)
961         (maintenance_expand_symtabs, maintenance_info_line_tables): Use
962         all_objfiles.
963         * source.c (forget_cached_source_info): Use all_objfiles.
964         * symfile-debug.c (set_debug_symfile): Use all_objfiles.
965         * elfread.c (elf_gnu_ifunc_resolve_by_cache)
966         (elf_gnu_ifunc_resolve_by_got): Use all_objfiles.
967         * objfiles.c (update_section_map): Use all_objfiles.
968         (shared_objfile_contains_address_p): Likewise.
969         * psymtab.c (maintenance_info_psymtabs): Use all_objfiles.
970         * python/py-progspace.c (pspy_get_objfiles): Use all_objfiles.
971
972 2019-01-09  Tom Tromey  <tom@tromey.com>
973
974         * common/next-iterator.h: New file.
975         * objfiles.h (class all_objfiles): New.
976         (struct objfile_iterator): New.
977
978 2019-01-09  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
979
980         * NEWS: Move the description of the changed "frame", "select-frame",
981          and "info frame" commands to the Changed commands section.
982
983 2019-01-09  Simon Marchi  <simon.marchi@ericsson.com>
984
985         * gdbtypes.c (check_stub_method_group): Remove handling of old
986         mangling schemes.
987         * linespec.c (find_methods): Likewise.
988         * stabsread.c (read_member_functions): Likewise.
989         * valops.c (search_struct_method): Likewise.
990         (value_struct_elt_for_reference): Likewise.
991         * NEWS: Mention this change.
992
993 2019-01-09  Andrew Burgess  <andrew.burgess@embecosm.com>
994
995         * cli/cli-cmds.c (list_command): Pass a source_lines_range to
996         print_source_lines.
997         * source.c (print_source_lines_base): Update line number check.
998         (print_source_lines): New function.
999         (source_lines_range::source_lines_range): New function.
1000         * source.h (class source_lines_range): New class.
1001         (print_source_lines): New declaration.
1002
1003 2019-01-09  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1004
1005         * linespec.c (linespec_state_destructor): Free self->canonical_names.
1006
1007 2019-01-08  Tom Tromey  <tom@tromey.com>
1008             Simon Marchi  <simon.marchi@ericsson.com>
1009
1010         PR gdb/24060
1011         * ada-exp.y (DOLLAR_VARIABLE): Rename from SPECIAL_VARIABLE.
1012         * ada-lex.l (DOLLAR_VARIABLE): Likewise.
1013         * c-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
1014         * f-exp.y (DOLLAR_VARIABLE): Likewise.
1015         * m2-exp.y (DOLLAR_VARIABLE): Rename from INTERNAL_VAR.
1016         * p-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
1017
1018 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1019
1020         * source.c (select_source_symtab): Move header comment to
1021         declaration in source.h.
1022         (forget_cached_source_info_for_objfile): Likewise.
1023         (forget_cached_source_info): Likewise.
1024         (identify_source_line): Likewise.
1025         * source.h (identify_source_line): Move declaration from symtab.h
1026         and add comment from source.c
1027         (print_source_lines): Likewise.
1028         (forget_cached_source_info_for_objfile): Likewise.
1029         (forget_cached_source_info): Likewise.
1030         (select_source_symtab): Likewise.
1031         (enum print_source_lines_flag): Move definition from symtab.h.
1032         * symtab.h (identify_source_line): Move declaration to source.h.
1033         (print_source_lines): Likewise.
1034         (forget_cached_source_info_for_objfile): Likewise.
1035         (forget_cached_source_info): Likewise.
1036         (select_source_symtab): Likewise.
1037         (enum print_source_lines_flag): Move definition to source.h.
1038         * tui/tui-hooks.c: Add 'source.h' include.
1039
1040 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1041
1042         * source.c (print_source_lines_base): Handle requests to print
1043         reverse line number sequences, and guard against empty lines
1044         string.
1045
1046 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1047
1048         * source.c (print_source_lines_base): Fix skip of '\r' if next
1049         character is '\n'.
1050
1051 2019-01-06  Tom Tromey  <tom@tromey.com>
1052
1053         * c-exp.y (struct c_parse_state) <macro_original_text,
1054         expansion_obstack>: New member.
1055         (macro_original_text, expansion_obstack): Remove globals.
1056         (scan_macro_expansion, scanning_macro_expansion)
1057         (finished_macro_expansion): Update.
1058         (scan_macro_cleanup): Remove.
1059         (yylex, c_parse): Update.
1060
1061 2019-01-06  Tom Tromey  <tom@tromey.com>
1062
1063         * c-exp.y (struct c_parse_state) <strings>: New member.
1064         (operator_stoken): Update.
1065
1066 2019-01-06  Tom Tromey  <tom@tromey.com>
1067
1068         * parser-defs.h (type_ptr): Remove typedef.  Don't declare VEC.
1069         (union type_stack_elt) <typelist_val>: Now a pointer to
1070         std::vector.
1071         (type_stack_cleanup): Don't declare.
1072         (push_typelist): Update.
1073         * parse.c (pop_typelist): Return a std::vector.
1074         (push_typelist): Take a std::vector.
1075         (follow_types): Update.  Do not free args.
1076         (type_stack_cleanup): Remove.
1077         * c-exp.y (struct c_parse_state): New.
1078         (cpstate): New global.
1079         (type_aggregate_p, exp, ptr_operator, parameter_typelist)
1080         (nonempty_typelist): Update.
1081         (func_mod): Create a new vector.
1082         (c_parse): Create a c_parse_state.
1083         (check_parameter_typelist): Do not delete params.
1084         (function_method): Update.  Do not delete type_list.
1085
1086 2019-01-06  Tom Tromey  <tom@tromey.com>
1087
1088         PR gdb/28155:
1089         * python/py-finishbreakpoint.c (bpfinishpy_init): Use
1090         check_typedef.
1091         * infcmd.c (finish_command_fsm_should_stop): Use check_typedef.
1092         (print_return_value): Likewise.
1093
1094 2019-01-05  Tom Tromey  <tom@tromey.com>
1095
1096         * contrib/cleanup_check.py: Remove.
1097         * contrib/gcc-with-excheck: Remove.
1098         * contrib/exsummary.py: Remove.
1099         * contrib/excheck.py: Remove.
1100
1101 2019-01-05  Joel Brobecker  <brobecker@adacore.com>
1102
1103         * thread.c (delete_thread_1): Add gdb_assert that THR is not
1104         NULL. Initialize tpprev to NULL instead of assigning it
1105         to NULL on the next statement.
1106         * windows-nat.c (windows_delete_thread): Remove check for
1107         main_thread_id before printing thread exit notifications.
1108         (get_windows_debug_event) <EXIT_THREAD_DEBUG_EVENT>:
1109         Remove thread ID check against main_thread_id.
1110         <CREATE_PROCESS_DEBUG_EVENT>: Remove call to
1111         windows_delete_thread.
1112         <EXIT_PROCESS_DEBUG_EVENT>: Add call to windows_delete_thread.
1113
1114 2019-01-04  Tom Tromey  <tom@tromey.com>
1115
1116         * compile/compile.c (_initialize_compile): Use upper case for
1117         metasyntactic variables.
1118         * symmisc.c (_initialize_symmisc): Use upper case for
1119         metasyntactic variables.
1120         * psymtab.c (_initialize_psymtab): Use upper case for
1121         metasyntactic variables.
1122         * demangle.c (demangle_command): Use upper case for metasyntactic
1123         variables.
1124         (_initialize_demangler): Likewise.
1125         * ax-gdb.c (_initialize_ax_gdb): Use upper case for metasyntactic
1126         variables.
1127
1128 2019-01-03  Tom Tromey  <tom@tromey.com>
1129
1130         * tui/tui-source.c (tui_set_source_content): Use xstrdup.
1131
1132 2019-01-03  Tom Tromey  <tom@tromey.com>
1133
1134         * python/py-symtab.c (salpy_str): Update.
1135         (struct salpy_sal_object) <symtab>: Now a PyObject.
1136         (salpy_dealloc): Update.
1137         (del_objfile_sal): Use gdbpy_ref.
1138
1139 2019-01-03  Tom Tromey  <tom@tromey.com>
1140
1141         * python/py-type.c (convert_field): Use new_reference.  Return
1142         gdbpy_ref.
1143         (make_fielditem): Return gdbpy_ref.
1144         (typy_fields): Update.
1145         (typy_getitem): Update.
1146         (field_name): Return gdbpy_ref.  Use new_reference.
1147         (typy_iterator_iternext): Update.
1148
1149 2019-01-03  Tom Tromey  <tom@tromey.com>
1150
1151         * python/py-record.c (gdbpy_stop_recording): Use Py_RETURN_NONE.
1152
1153 2019-01-03  Tom Tromey  <tom@tromey.com>
1154
1155         * python/py-value.c (valpy_dealloc): Use Py_XDECREF.
1156         * python/py-type.c (typy_fields_items): Use gdbpy_ref.
1157         * python/py-progspace.c (pspy_set_printers): Use gdbpy_ref.
1158         (pspy_set_frame_filters, pspy_set_frame_unwinders)
1159         (pspy_set_type_printers): Likewise.
1160         * python/py-function.c (fnpy_init): Use gdbpy_ref.
1161         * python/py-cmd.c (cmdpy_init): Use gdbpy_ref.
1162         * python/py-objfile.c (objfpy_set_printers): Use gdbpy_ref.
1163         (objfpy_set_frame_filters, objfpy_set_frame_unwinders)
1164         (objfpy_set_type_printers): Likewise.
1165
1166 2019-01-03  Tom Tromey  <tom@tromey.com>
1167
1168         * python/python.c (gdbpy_enter, ~gdbpy_enter): Update.
1169         (gdbpy_print_stack): Use gdbpy_err_fetch.
1170         * python/python-internal.h (class gdbpy_err_fetch): New class.
1171         (class gdbpy_enter) <m_error_type, m_error_value,
1172         m_error_traceback>: Remove.
1173         <m_error>: New member.
1174         (gdbpy_exception_to_string): Don't declare.
1175         * python/py-varobj.c (py_varobj_iter_next): Use gdbpy_err_fetch.
1176         * python/py-value.c (convert_value_from_python): Use
1177         gdbpy_err_fetch.
1178         * python/py-utils.c (gdbpy_err_fetch::to_string): Rename from
1179         gdbpy_exception_to_string.
1180         (gdbpy_handle_exception): Use gdbpy_err_fetch.
1181         * python/py-prettyprint.c (print_stack_unless_memory_error): Use
1182         gdbpy_err_fetch.
1183
1184 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1185
1186         * linux-nat.c (delete_lwp_cleanup): Delete.
1187         (struct lwp_deleter): New struct.
1188         (lwp_info_up): New typedef.
1189         (linux_nat_target::follow_fork): Delete cleanup, and make use of
1190         lwp_info_up.
1191
1192 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1193
1194         * linux-fork.c (class scoped_switch_fork_info): New class.
1195         (inferior_call_waitpid): Update to use scoped_switch_fork_info.
1196
1197 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1198
1199         * valops.c (find_overload_match): Remove use of null_cleanup, and
1200         calls to do_cleanups.
1201
1202 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1203
1204         * compile/compile-cplus-types.c
1205         (compile_cplus_instance::decl_name): Handle changes to
1206         cp_func_name.
1207         * cp-support.c (cp_func_name): Update header comment, update
1208         return type.
1209         * cp-support.h (cp_func_name): Update return type in declaration.
1210         * valops.c (find_overload_match): Move temp_func local to top
1211         level of function and change its type.  Use temp_func to hold and
1212         delete temporary string obtained from cp_func_name.
1213
1214 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1215
1216         * remote.c (remote_target::remote_check_symbols): Convert `msg` to
1217         gdb::char_vector, remove cleanup, and update uses of `msg`.
1218
1219 2019-01-03  Jim Wilson  <jimw@sifive.com>
1220
1221         * riscv-tdep.c (riscv_freg_feature): Drop s0 name from f8.
1222
1223 2019-01-02  Tom Tromey  <tom@tromey.com>
1224
1225         * xml-tdesc.c (xml_cache): Hold a target_desc_up.
1226         (tdesc_parse_xml): Remove cleanups.
1227         * target-descriptions.h (make_cleanup_free_target_description):
1228         Don't declare.
1229         (target_desc_deleter): New struct.
1230         (target_desc_up): New typedef.
1231         * target-descriptions.c (target_desc_deleter::operator()): Rename
1232         from free_target_description.
1233         (make_cleanup_free_target_description): Remove.
1234
1235 2019-01-02  Tom Tromey  <tom@tromey.com>
1236
1237         * linespec.c (struct linespec_parser): Rename from ls_parser.  Add
1238         constructor, destructor.
1239         (linespec_parser): Remove typedef.
1240         (~linespec_parser): Rename from linespec_parser_delete.
1241         (linespec_lex_to_end, linespec_complete_label)
1242         (linespec_complete): Update.
1243         (decode_line_full): Remove cleanups.
1244         (decode_line_1): Update.
1245
1246 2019-01-02  Tom Tromey  <tom@tromey.com>
1247
1248         * python/python-internal.h (inferior_to_inferior_object): Change
1249         return type.
1250         * python/py-exitedevent.c (create_exited_event_object): Update.
1251         * python/py-inferior.c (inferior_to_inferior_object): Return
1252         gdbpy_ref.
1253         (python_new_inferior, python_inferior_deleted)
1254         (thread_to_thread_object, delete_thread_object)
1255         (build_inferior_list, gdbpy_selected_inferior): Update.
1256         * python/py-infthread.c (create_thread_object): Update.  Also fail
1257         if inferior_to_inferior_object fails.
1258
1259 2019-01-02  Simon Marchi  <simon.marchi@ericsson.com>
1260
1261         * inferior.h (class inferior) <displaced_step_state>: New field.
1262         * infrun.h (struct displaced_step_state): Move here from
1263         infrun.c.  Initialize fields, add constructor.
1264         <inf>: Remove field.
1265         <reset>: New method.
1266         * infrun.c (struct displaced_step_inferior_state): Move to
1267         infrun.h.
1268         (displaced_step_inferior_states): Remove.
1269         (get_displaced_stepping_state): Adust.
1270         (displaced_step_in_progress_any_inferior): Adjust.
1271         (displaced_step_in_progress_thread): Adjust.
1272         (displaced_step_in_progress): Adjust.
1273         (add_displaced_stepping_state): Remove.
1274         (get_displaced_step_closure_by_addr): Adjust.
1275         (remove_displaced_stepping_state): Remove.
1276         (infrun_inferior_exit): Call displaced_step_state.reset.
1277         (use_displaced_stepping): Don't check for NULL.
1278         (displaced_step_prepare_throw): Call
1279         get_displaced_stepping_state.
1280         (displaced_step_fixup): Don't check for NULL.
1281         (prepare_for_detach): Don't check for NULL.
1282
1283 2019-01-02  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1284
1285         * infcall.c (call_function_by_hand_dummy): cleanup/destroy sm
1286          in case of call that did not complete.
1287
1288 2019-01-02  Andrey Utkin  <autkin@undo.io>
1289
1290         * symfile.c (find_separate_debug_file): Fix search of debug files for
1291         remote debuggee.
1292
1293 2019-01-02  Tom Tromey  <tom@tromey.com>
1294
1295         * python/py-inferior.c (gdbpy_initialize_inferior): Fix
1296         indentation.
1297         * python/py-frame.c (frapy_older): Remove cast.
1298         (frapy_newer): Likewise.
1299         * python/py-breakpoint.c (local_setattro): Remove cast.
1300         * python/py-arch.c (archpy_name): Remove local variable.
1301         * python/py-type.c (gdbpy_lookup_type): Remove cast.
1302
1303 2019-01-02  Joel Brobecker  <brobecker@adacore.com>
1304
1305         * unittests/basic_string_view/element_access/char/empty.cc:
1306         Fix year range in copyright header.
1307
1308 2019-01-01  Andrew Burgess  <andrew.burgess@embecosm.com>
1309
1310         * arch/riscv.h (struct riscv_gdbarch_features) <hw_float_abi>:
1311         Delete.
1312         <operator==>: Update with for removed field.
1313         <hash>: Likewise.
1314         * riscv-tdep.h (struct gdbarch_tdep) <features>: Renamed to...
1315         <isa_features>: ...this.
1316         <abi_features>: New field.
1317         (riscv_isa_flen): Update comment.
1318         (riscv_abi_xlen): New declaration.
1319         (riscv_abi_flen): New declaration.
1320         * riscv-tdep.c (riscv_isa_xlen): Update to get answer from
1321         isa_features.
1322         (riscv_abi_xlen): New function.
1323         (riscv_isa_flen): Update to get answer from isa_features.
1324         (riscv_abi_flen): New function.
1325         (riscv_has_fp_abi): Update to get answer from abi_features.
1326         (riscv_call_info::riscv_call_info): Use abi xlen and flen, not isa
1327         xlen and flen.
1328         (riscv_call_info) <xlen, flen>: Update comment.
1329         (riscv_call_arg_struct): Remove invalid assertions
1330         (riscv_features_from_gdbarch_info): Update now hw_float_abi field
1331         is removed.
1332         (riscv_gdbarch_init): Gather isa features and abi features
1333         separately, ensure both match on the gdbarch when reusing an old
1334         gdbarch.  Relax an error check to allow 32-bit abi float to run on
1335         a target with 64-bit float hardware.
1336
1337 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1338
1339         * source.c (search_command_helper): Stop reverse search
1340         when line 1 has been searched.
1341
1342 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1343
1344         * record-full.c (record_full_base_target::close): Rewrite
1345         record_full_core_buf_list free logic.
1346
1347 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1348
1349         * break-catch-syscall.c (print_one_catch_syscall): xfree
1350         the last text.
1351
1352 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
1353
1354         * top.c (print_gdb_version): Update Copyright year in version
1355         message.
1356
1357 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
1358
1359         Update copyright year range in all GDB files.
1360
1361 2019-01-01, 19  Joel Brobecker  <brobecker@adacore.com>
1362
1363         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2018.
1364
1365 For older changes see ChangeLog-2018.
1366 \f
1367 Local Variables:
1368 mode: change-log
1369 left-margin: 8
1370 fill-column: 74
1371 version-control: never
1372 coding: utf-8
1373 End:
1374