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