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