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