Fix 'obj' may be used uninitialized warning in symtab.c:matching_obj_sections.
[external/binutils.git] / gdb / ChangeLog
1 2019-01-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2
3         * symtab.c (matching_obj_sections): Initialize obj,
4         declare it closer to its usage.
5
6 2019-01-10  Tom Tromey  <tom@tromey.com>
7
8         * thread-iter.h (inf_threads_iterator): Use next_iterator.
9         (basic_inf_threads_range): Remove.
10         (inf_threads_range, inf_non_exited_threads_range)
11         (safe_inf_threads_range): Use next_adapter.
12
13 2019-01-10  Keith Seitz  <keiths@redhat.com>
14
15         PR gdb/23712
16         PR symtab/23010
17         * dwarf2read.c (dw2_add_symbol_to_list): Remove.
18         (fixup_go_packaging, new_symbol): Use add_symbol_to_list.
19
20 2019-01-10  Keith Seitz  <keiths@redhat.com>
21
22         PR gdb/23712
23         PR symtab/23010
24         * dictionary.c (pending_to_vector): Remove.
25         (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
26         Remove _1 suffix, replacing functions of the same name.  Update
27         all callers.
28         (dict_create_hashed, dict_create_hashed_expandable)
29         (dict_create_linear, dict_create_linear_expandable, dict_free)
30         (dict_add_symbol, dict_add_pending, dict_size, dict_empty):
31         Make functions static.
32
33 2019-01-10  Keith Seitz  <keiths@redhat.com>
34
35         PR gdb/23712
36         PR symtab/23010
37         * dictionary.h (struct dictionary): Replace declaration with
38         multidictionary.
39         (dict_create_hashed, dict_create_hashed_expandable)
40         (dict_create_linear, dict_create_linear_expandable)
41         (dict_free, dict_add_symbol, dict_add_pending, dict_empty)
42         (dict_iterator_first, dict_iterator_next, dict_iter_match_first)
43         (dict_iter_match_next, dict_size): Rename to "mdict_" versions
44         taking multidictionary argument.
45         [ALL_DICT_SYMBOLS]: Update for multidictionary.
46         * block.h (struct block) <dict>: Change to multidictionary
47         and rename `multidict'.
48         * block.c, buildsym.c, jit.c, mdebugread.c, objfiles.c,
49         symmisc.c: Update all dictionary references to multidictionary.
50
51 2019-01-10  Keith Seitz  <keiths@redhat.com>
52
53         PR gdb/23712
54         PR symtab/23010
55         * dictionary.c: Include unordered_map.
56         (pending_to_vector): New function.
57         (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
58         Rewrite the non-"_1" functions to take vector instead
59         of linked list.
60         (dict_create_hashed, dict_create_linear, dict_add_pending): Use the
61         "new" _1 versions of the same name.
62         (multidictionary): Define.
63         (std::hash<enum language): New definition.
64         (collate_pending_symbols_by_language, mdict_create_hashed)
65         (mdict_create_hashed_expandable, mdict_create_linear)
66         (mdict_create_linear_expandable, mdict_free)
67         (find_language_dictionary, create_new_language_dictionary)
68         (mdict_add_symbol, mdict_add_pending, mdict_iterator_first)
69         (mdict_iterator_next, mdict_iter_match_first, mdict_iter_match_next)
70         (mdict_size, mdict_empty): New functions.
71         * dictionary.h (mdict_iterator): Define.
72
73 2019-01-10  Pedro Alves  <palves@redhat.com>
74
75         * breakpoint.c (read_uploaded_action)
76         (create_tracepoint_from_upload): Adjust to use
77         gdb::unique_xmalloc_ptr.
78         * ctf.c (ctf_write_uploaded_tp):
79         (SET_ARRAY_FIELD): Use emplace_back.
80         (SET_STRING_FIELD): Adjust to use gdb::unique_xmalloc_ptr.
81         * tracefile-tfile.c (tfile_write_uploaded_tp):
82         * tracepoint.c (parse_tracepoint_definition): Adjust to use
83         gdb::unique_xmalloc_ptr.
84         * tracepoint.h (struct uploaded_tp) <cond, actions, step_actions,
85         at_string, cond_string, cmd_strings>: Replace char pointers
86         with gdb::unique_xmalloc_ptr.
87
88 2019-01-10  Pedro Alves  <palves@redhat.com>
89
90         * solib-target.c (library_list_start_library): Don't xstrdup name.
91
92 2019-01-10  Pedro Alves  <palves@redhat.com>
93
94         * mdebugread.c (parse_partial_symbols): Use
95         gdb::unique_xmalloc_ptr to manage heap-allocated 'stabsstring'.
96
97 2019-01-10  Andrew Burgess  <andrew.burgess@embecosm.com>
98
99         * linux-fork.c (scoped_switch_fork_info)
100         <~scoped_switch_fork_info>: Fix incorrect variable name.
101
102 2019-01-10  Andrew Burgess  <andrew.burgess@embecosm.com>
103
104         * linux-fork.c (scoped_switch_fork_info)
105         <scoped_switch_fork_info>: Make explicit.
106         <~scoped_switch_fork_info>: Wrap core in TRY/CATCH.
107
108 2019-01-10  Tom Tromey  <tom@tromey.com>
109
110         * objfiles.h (objfile::reset_psymtabs): Update.
111         * objfiles.c (objfile::objfile): Update.
112         * psymtab.h (psymtab_storage::obstack): Update.
113         (psymtab_storage::m_obstack): Use gdb::optional.
114         (class psymtab_storage): Update comment.  Remove objfile
115         parameter.
116         * psymtab.c (psymtab_storage::psymtab_storage): Update.
117
118 2019-01-10  Tom Tromey  <tom@tromey.com>
119
120         * psymtab.h (psymtab_storage::allocate_psymtab): New method.
121         <free_psymtabs>: Now private.
122         * psymtab.c (psymtab_storage::allocate_psymtab): Implement.
123         (allocate_psymtab): Use new method.
124
125 2019-01-10  Tom Tromey  <tom@tromey.com>
126
127         * xcoffread.c (xcoff_end_psymtab): Use allocate_dependencies.
128         * psymtab.h (psymtab_storage::allocate_dependencies): New method.
129         * mdebugread.c (parse_partial_symbols): Use
130         allocate_dependencies.
131         * dwarf2read.c (dwarf2_create_include_psymtab): Use
132         allocate_dependencies.
133         (process_psymtab_comp_unit_reader)
134         (build_type_psymtab_dependencies): Likewise.
135         * dbxread.c (dbx_end_psymtab): Use allocate_dependencies.
136
137 2019-01-10  Tom Tromey  <tom@tromey.com>
138
139         * psymtab.c (add_psymbol_to_bcache): Pass psymtab obstack to
140         PSYMBOL_SET_LANGUAGE.
141         (allocate_psymtab): Allocate psymtab on the psymtab obstack.
142
143 2019-01-10  Tom Tromey  <tom@tromey.com>
144
145         * psymtab.h (psymtab_storage::obstack): New method.
146         <m_obstack>: Rename from obstack; now private.
147         * psymtab.c (psymtab_storage): Update.
148         * dwarf2read.c (create_addrmap_from_index)
149         (create_addrmap_from_aranges, dwarf2_build_psymtabs_hard):
150         Update.
151
152 2019-01-10  Tom Tromey  <tom@tromey.com>
153
154         * symfile.c (reread_symbols): Call objfile->reset_psymtabs.
155         * objfiles.h (objfile::reset_psymtabs): New method.
156
157 2019-01-10  Tom Tromey  <tom@tromey.com>
158
159         * symmisc.c (print_symbol_bcache_statistics): Update.
160         (print_objfile_statistics): Update.
161         * symfile.c (reread_symbols): Update.
162         * psymtab.h (class psymtab_storage): New.
163         * psymtab.c (psymtab_storage): New constructor.
164         (~psymtab_storage): New destructor.
165         (require_partial_symbols): Update.
166         (ALL_OBJFILE_PSYMTABS_REQUIRED): Rewrite.
167         (find_pc_sect_psymtab, find_pc_sect_psymbol)
168         (match_partial_symbol, lookup_partial_symbol, dump_psymtab)
169         (psym_dump, recursively_search_psymtabs, psym_has_symbols)
170         (psym_find_compunit_symtab_by_address, sort_pst_symbols)
171         (start_psymtab_common, end_psymtab_common)
172         (add_psymbol_to_bcache, add_psymbol_to_list, init_psymbol_list)
173         (allocate_psymtab): Update.
174         (psymtab_storage::discard_psymtab): Rename from discard_psymtab.
175         Update.
176         (dump_psymtab_addrmap, maintenance_print_psymbols)
177         (maintenance_check_psymtabs): Update.
178         (class objfile_psymtabs): Move to objfiles.h.
179         * psympriv.h (discard_psymtab): Now inline.
180         (psymtab_discarder::psymtab_discarder): Update.
181         (psymtab_discarder::~psymtab_discarder): Update.
182         (ALL_OBJFILE_PSYMTABS): Rewrite.
183         * objfiles.h (struct objfile) <psymtabs, psymtabs_addrmap,
184         free_psymtabs, psymbol_cache, global_psymbols, static_psymbols>:
185         Remove fields.
186         <partial_symtabs>: New field.
187         (class objfile_psymtabs): Move from psymtab.h.  Update.
188         * objfiles.c (objfile::objfile): Initialize partial_symtabs, not
189         psymbol_cache.
190         (objfile::~objfile): Don't destroy psymbol_cache.
191         * mdebugread.c (parse_partial_symbols): Update.
192         * dwarf2read.c (create_addrmap_from_index)
193         (create_addrmap_from_aranges, dw2_find_pc_sect_compunit_symtab)
194         (process_psymtab_comp_unit_reader, dwarf2_build_psymtabs_hard)
195         (add_partial_subprogram, dwarf2_ranges_read): Update.
196         * dwarf-index-write.c (write_address_map)
197         (write_one_signatured_type, recursively_write_psymbols)
198         (class debug_names, class debug_names, write_psymtabs_to_index):
199         Update.
200
201 2019-01-10  Tom Tromey  <tom@tromey.com>
202
203         * symtab.h (SYMBOL_SET_NAMES): Update.
204         (symbol_set_names): Update.
205         (MSYMBOL_SET_NAMES): Update.
206         * symtab.c (symbol_set_names): Change argument to be an
207         objfile_per_bfd_storage.
208         * psymtab.c (add_psymbol_to_bcache): Update.
209         * psympriv.h (PSYMBOL_SET_NAMES): Take per_bfd argument.
210
211 2019-01-10  Tom Tromey  <tom@tromey.com>
212
213         * symtab.c (create_demangled_names_hash): Change argument to be an
214         objfile_per_bfd_storage.
215         (symbol_set_names): Update.
216
217 2019-01-10  Tom Tromey  <tom@tromey.com>
218
219         * xcoffread.c (xcoff_initial_scan): Unconditionally call
220         init_psymbol_list.
221         * psymtab.c (init_psymbol_list): Do nothing if already called.
222         * psympriv.h (init_psymbol_list): Add comment.
223         * dwarf2read.c (dwarf2_build_psymtabs): Unconditionally call
224         init_psymbol_list.
225         * dbxread.c (dbx_symfile_read): Unconditionally call
226         init_psymbol_list.
227
228 2019-01-10  Tom Tromey  <tom@tromey.com>
229
230         * xcoffread.c (scan_xcoff_symtab): Update.
231         * psymtab.c (add_psymbol_to_list): Replace "list" parameter with
232         "where".
233         * mdebugread.c (parse_partial_symbols)
234         (handle_psymbol_enumerators): Update.
235         * dwarf2read.c (add_partial_symbol, load_partial_dies): Update.
236         * dbxread.c (read_dbx_symtab): Update.
237         * psympriv.h (psymbol_placement): New enum.
238         (add_psymbol_to_list): Update.
239
240 2019-01-10  Tom Tromey  <tom@tromey.com>
241
242         * xcoffread.c (xcoff_start_psymtab): Remove global_psymbols and
243         static_psymbols parameters.
244         (scan_xcoff_symtab): Update.
245         * psymtab.c (start_psymtab_common): Remove global_psymbols and
246         static_psymbols parameters.
247         * psympriv.h (start_psymtab_common): Update.
248         * mdebugread.c (parse_partial_symbols): Update.
249         * dwarf2read.c (create_partial_symtab): Update.
250         * dbxread.c (read_dbx_symtab): Update.
251         (start_psymtab): Remove global_psymbols and static_psymbols
252         parameters.
253
254 2019-01-10  Tom Tromey  <tom@tromey.com>
255
256         * xcoffread.c (xcoff_end_psymtab): Remove some initializations.
257         * psymtab.c (allocate_psymtab): Add comment.
258         * psympriv.h (allocate_psymtab): Add comment.
259         * dwarf2read.c (dwarf2_create_include_psymtab): Remove some
260         initializations.
261         * dbxread.c (dbx_end_psymtab): Remove some initializations.
262
263 2019-01-10  Tom Tromey  <tom@tromey.com>
264
265         * symfile.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
266         Don't declare.
267         * mipsread.c: Include mdebugread.h.
268         * mdebugread.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
269         Declare.
270         * elfread.c: Include mdebugread.h.
271
272 2019-01-09  Tom Tromey  <tom@tromey.com>
273
274         * dbxread.c (dbx_end_psymtab): Use objfile_psymtabs.
275         * mdebugread.c (parse_partial_symbols): Use objfile_psymtabs.
276         * psymtab.c (ALL_OBJFILE_PSYMTABS_REQUIRED): Remove.
277         (psym_map_symtabs_matching_filename, find_pc_sect_psymtab)
278         (psym_lookup_symbol, psym_find_last_source_symtab)
279         (psym_forget_cached_source_info, psym_print_stats)
280         (psym_expand_symtabs_for_function, psym_expand_all_symtabs)
281         (psym_expand_symtabs_with_fullname, psym_map_symbol_filenames)
282         (psym_map_matching_symbols, psym_expand_symtabs_matching)
283         (psym_find_compunit_symtab_by_address)
284         (maintenance_print_psymbols, maintenance_info_psymtabs)
285         (maintenance_check_psymtabs): Use ranged for.
286         * psymtab.h (class objfile_psymtabs): New.
287         (require_partial_symbols): Return objfile_psymtabs.
288         * psympriv.h (ALL_OBJFILE_PSYMTABS): Remove.
289
290 2019-01-09  Tom Tromey  <tom@tromey.com>
291
292         * symfile.c (overlay_invalidate_all, find_pc_overlay)
293         (find_pc_mapped_section, list_overlays_command)
294         (map_overlay_command, unmap_overlay_command)
295         (simple_overlay_update): Use all_objfiles.
296         * spu-tdep.c (spu_overlay_update): Use all_objfiles.
297         * printcmd.c (info_symbol_command): Use all_objfiles.
298         * objfiles.h (ALL_OBJSECTIONS): Remove.
299         * maint.c (maintenance_translate_address): Use all_objfiles.
300         * gcore.c (gcore_create_callback): Use all_objfiles.
301         (objfile_find_memory_regions): Likewise.
302
303 2019-01-09  Tom Tromey  <tom@tromey.com>
304
305         * symtab.c (find_line_symtab, info_sources_command)
306         (make_source_files_completion_list): Use objfile_compunits.
307         * source.c (select_source_symtab): Use objfile_compunits.
308         * objfiles.h (struct objfile): Update comment.
309         (ALL_OBJFILES): Remove.
310         (ALL_FILETABS): Remove.
311         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Use
312         objfile_compunits.
313
314 2019-01-09  Tom Tromey  <tom@tromey.com>
315
316         * symmisc.c (print_objfile_statistics, dump_objfile)
317         (maintenance_print_symbols): Use compunit_filetabs.
318         * source.c (forget_cached_source_info_for_objfile): Use
319         compunit_filetabs.
320         * objfiles.h (ALL_OBJFILE_FILETABS): Remove.
321         (ALL_FILETABS): Use compunit_filetabs.
322         * objfiles.c (objfile_relocate1): Use compunit_filetabs.
323         * coffread.c (coff_symtab_read): Use compunit_filetabs.
324
325 2019-01-09  Tom Tromey  <tom@tromey.com>
326
327         * symtab.h (ALL_COMPUNIT_FILETABS): Remove.
328         (compunit_filetabs): New.
329         * symtab.c (iterate_over_some_symtabs, find_pc_sect_line): Use
330         compunit_filetabs.
331         (info_sources_command, make_source_files_completion_list): Remove
332         declaration.
333         * symmisc.c (print_objfile_statistics, dump_objfile)
334         (maintenance_print_symbols): Remove declaration.
335         (maintenance_info_symtabs): Use compunit_filetabs.
336         (maintenance_info_line_tables): Likewise.
337         * source.c (select_source_symtab): Change local variable name.
338         (forget_cached_source_info_for_objfile): Remove declaration.
339         * objfiles.h (ALL_OBJFILE_FILETABS): Use compunit_filetabs.
340         * objfiles.c (objfile_relocate1): Remove declaration.
341         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
342         declaration.
343         * maint.c (count_symtabs_and_blocks): Use compunit_filetabs.
344         * coffread.c (coff_symtab_read): Remove declaration.
345         * buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Use
346         compunit_filetabs.
347
348 2019-01-09  Tom Tromey  <tom@tromey.com>
349
350         * symtab.c (lookup_objfile_from_block)
351         (find_pc_sect_compunit_symtab, search_symbols)
352         (default_collect_symbol_completion_matches_break_on): Use
353         objfile_compunits.
354         * objfiles.h (ALL_COMPUNITS): Remove.
355         * maint.c (count_symtabs_and_blocks): Use objfile_compunits.
356         * cp-support.c (add_symbol_overload_list_qualified): Use
357         objfile_compunits.
358         * ada-lang.c (ada_collect_symbol_completion_matches)
359         (ada_add_global_exceptions): Use objfile_compunits.
360
361 2019-01-09  Tom Tromey  <tom@tromey.com>
362
363         * source.c (select_source_symtab)
364         (forget_cached_source_info_for_objfile): Remove declaration.
365         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
366         declaration.
367         * maint.c (count_symtabs_and_blocks): Remove declaration.
368         * cp-support.c (add_symbol_overload_list_qualified): Remove
369         declaration.
370         * coffread.c (coff_symtab_read): Remove declaration.
371         * symtab.c (lookup_symbol_in_objfile_symtabs)
372         (basic_lookup_transparent_type_1): Use objfile_compunits.
373         (lookup_objfile_from_block, find_pc_sect_compunit_symtab)
374         (info_sources_command, search_symbols)
375         (default_collect_symbol_completion_matches_break_on)
376         (make_source_files_completion_list): Remove declaration.
377         * ada-lang.c (add_nonlocal_symbols): Use objfile_compunits.
378         (ada_collect_symbol_completion_matches)
379         (ada_add_global_exceptions): Remove declaration.
380         * linespec.c (iterate_over_all_matching_symtabs): Use
381         objfile_compunits.
382         * objfiles.h (ALL_OBJFILE_COMPUNITS): Remove.
383         (class objfile_compunits): New.
384         (ALL_COMPUNITS): Use objfile_compunits.
385         * symmisc.c (print_objfile_statistics, maintenance_info_symtabs)
386         (maintenance_check_symtabs, maintenance_info_line_tables): Use
387         objfile_compunits.
388         * objfiles.c (objfile_relocate1): Use objfile_compunits.
389
390 2019-01-09  Tom Tromey  <tom@tromey.com>
391
392         * symtab.c (search_symbols)
393         (default_collect_symbol_completion_matches_break_on): Use
394         objfile_msymbols.
395         * ada-lang.c (ada_lookup_simple_minsym)
396         (ada_collect_symbol_completion_matches): Use objfile_msymbols.
397         * minsyms.c (find_solib_trampoline_target): Use objfile_msymbols.
398         * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Use
399         objfile_msymbols.
400         * coffread.c (coff_symfile_read): Use objfile_msymbols.
401         * symmisc.c (dump_msymbols): Use objfile_msymbols.
402         * objc-lang.c (find_methods): Use objfile_msymbols.
403         (info_selectors_command, info_classes_command): Likewise.
404         * stabsread.c (scan_file_globals): Use objfile_msymbols.
405         * objfiles.h (class objfile_msymbols): New.
406         (ALL_OBJFILE_MSYMBOLS): Remove.
407         (ALL_MSYMBOLS): Remove.
408
409 2019-01-09  Tom Tromey  <tom@tromey.com>
410
411         * common/next-iterator.h (next_adapter): Add Iterator template
412         parameter.
413         * objfiles.h (ALL_OBJFILES_SAFE): Remove.
414         (class all_objfiles_safe): New.
415         * jit.c (jit_inferior_exit_hook): Use all_objfiles_safe.
416         * objfiles.c (put_objfile_before): Update comment.
417         (add_separate_debug_objfile): Likewise.
418         (free_all_objfiles): Use all_objfiles_safe.
419         (objfile_purge_solibs): Likewise.
420
421 2019-01-09  Tom Tromey  <tom@tromey.com>
422
423         * symtab.c (iterate_over_symtabs, matching_obj_sections)
424         (expand_symtab_containing_pc, lookup_static_symbol)
425         (basic_lookup_transparent_type, find_pc_sect_compunit_symtab)
426         (find_symbol_at_address, find_line_symtab, find_main_name): Use
427         all_objfiles.
428         * probe.c (find_probe_by_pc, collect_probes): Use all_objfiles.
429         * breakpoint.c (create_overlay_event_breakpoint)
430         (create_longjmp_master_breakpoint)
431         (create_std_terminate_master_breakpoint)
432         (create_exception_master_breakpoint): Use all_objfiles.
433         * linux-thread-db.c (try_thread_db_load_from_pdir)
434         (has_libpthread): Use all_objfiles.
435         * ada-lang.c (add_nonlocal_symbols): Use all_objfiles.
436         * linespec.c (iterate_over_all_matching_symtabs)
437         (search_minsyms_for_name): Use all_objfiles.
438         * maint.c (maintenance_info_sections): Use all_objfiles.
439         * main.c (captured_main_1): Use all_objfiles.
440         * spu-tdep.c (spu_objfile_from_frame): Use all_objfiles.
441         * guile/scm-objfile.c (gdbscm_objfiles): Use all_objfiles.
442         * guile/scm-pretty-print.c
443         (ppscm_find_pretty_printer_from_objfiles): Use all_objfiles.
444         * solib-spu.c (append_ocl_sos): Use all_objfiles.
445         * symmisc.c (maintenance_print_symbols): Use all_objfiles.
446         (maintenance_print_msymbols): Use all_objfiles.
447         * source.c (select_source_symtab): Use all_objfiles.
448         * jit.c (jit_find_objf_with_entry_addr): Use all_objfiles.
449         * symfile.c (remove_symbol_file_command)
450         (expand_symtabs_matching, map_symbol_filenames): Use
451         all_objfiles.
452         * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created): Use
453         all_objfiles.
454         * dwarf2-frame.c (dwarf2_frame_find_fde): Use all_objfiles.
455         * objc-lang.c (find_methods): Use all_objfiles.
456         * objfiles.c (have_partial_symbols, have_full_symbols)
457         (have_minimal_symbols, qsort_cmp)
458         (default_iterate_over_objfiles_in_search_order): Use
459         all_objfiles.
460         * hppa-tdep.c (find_unwind_entry): Use all_objfiles.
461         * psymtab.c (maintenance_print_psymbols): Use all_objfiles.
462         (maintenance_check_psymtabs): Use all_objfiles.
463         (ALL_PSYMTABS): Remove.
464         * compile/compile-object-run.c (do_module_cleanup): Use
465         all_objfiles.
466         * blockframe.c (find_pc_partial_function): Use all_objfiles.
467         * cp-support.c (add_symbol_overload_list_qualified): Use
468         all_objfiles.
469         * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
470         Use all_objfiles.
471         * dwarf-index-write.c (save_gdb_index_command): Use all_objfiles.
472         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers): Use
473         all_objfiles.
474         * python/py-objfile.c (objfpy_lookup_objfile_by_name)
475         (objfpy_lookup_objfile_by_build_id): Use all_objfiles.
476         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
477         Uses all_objfiles.
478         * solib.c (solib_read_symbols): Use all_objfiles
479
480 2019-01-09  Tom Tromey  <tom@tromey.com>
481
482         * probe.c (parse_probes_in_pspace): Use all_objfiles.
483         * guile/scm-progspace.c (gdbscm_progspace_objfiles): Use
484         all_objfiles.
485         * objfiles.h (ALL_PSPACE_OBJFILES): Remove.
486         * symmisc.c (print_symbol_bcache_statistics)
487         (print_objfile_statistics, maintenance_print_objfiles)
488         (maintenance_info_symtabs, maintenance_check_symtabs)
489         (maintenance_expand_symtabs, maintenance_info_line_tables): Use
490         all_objfiles.
491         * source.c (forget_cached_source_info): Use all_objfiles.
492         * symfile-debug.c (set_debug_symfile): Use all_objfiles.
493         * elfread.c (elf_gnu_ifunc_resolve_by_cache)
494         (elf_gnu_ifunc_resolve_by_got): Use all_objfiles.
495         * objfiles.c (update_section_map): Use all_objfiles.
496         (shared_objfile_contains_address_p): Likewise.
497         * psymtab.c (maintenance_info_psymtabs): Use all_objfiles.
498         * python/py-progspace.c (pspy_get_objfiles): Use all_objfiles.
499
500 2019-01-09  Tom Tromey  <tom@tromey.com>
501
502         * common/next-iterator.h: New file.
503         * objfiles.h (class all_objfiles): New.
504         (struct objfile_iterator): New.
505
506 2019-01-09  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
507
508         * NEWS: Move the description of the changed "frame", "select-frame",
509          and "info frame" commands to the Changed commands section.
510
511 2019-01-09  Simon Marchi  <simon.marchi@ericsson.com>
512
513         * gdbtypes.c (check_stub_method_group): Remove handling of old
514         mangling schemes.
515         * linespec.c (find_methods): Likewise.
516         * stabsread.c (read_member_functions): Likewise.
517         * valops.c (search_struct_method): Likewise.
518         (value_struct_elt_for_reference): Likewise.
519         * NEWS: Mention this change.
520
521 2019-01-09  Andrew Burgess  <andrew.burgess@embecosm.com>
522
523         * cli/cli-cmds.c (list_command): Pass a source_lines_range to
524         print_source_lines.
525         * source.c (print_source_lines_base): Update line number check.
526         (print_source_lines): New function.
527         (source_lines_range::source_lines_range): New function.
528         * source.h (class source_lines_range): New class.
529         (print_source_lines): New declaration.
530
531 2019-01-09  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
532
533         * linespec.c (linespec_state_destructor): Free self->canonical_names.
534
535 2019-01-08  Tom Tromey  <tom@tromey.com>
536             Simon Marchi  <simon.marchi@ericsson.com>
537
538         PR gdb/24060
539         * ada-exp.y (DOLLAR_VARIABLE): Rename from SPECIAL_VARIABLE.
540         * ada-lex.l (DOLLAR_VARIABLE): Likewise.
541         * c-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
542         * f-exp.y (DOLLAR_VARIABLE): Likewise.
543         * m2-exp.y (DOLLAR_VARIABLE): Rename from INTERNAL_VAR.
544         * p-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
545
546 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
547
548         * source.c (select_source_symtab): Move header comment to
549         declaration in source.h.
550         (forget_cached_source_info_for_objfile): Likewise.
551         (forget_cached_source_info): Likewise.
552         (identify_source_line): Likewise.
553         * source.h (identify_source_line): Move declaration from symtab.h
554         and add comment from source.c
555         (print_source_lines): Likewise.
556         (forget_cached_source_info_for_objfile): Likewise.
557         (forget_cached_source_info): Likewise.
558         (select_source_symtab): Likewise.
559         (enum print_source_lines_flag): Move definition from symtab.h.
560         * symtab.h (identify_source_line): Move declaration to source.h.
561         (print_source_lines): Likewise.
562         (forget_cached_source_info_for_objfile): Likewise.
563         (forget_cached_source_info): Likewise.
564         (select_source_symtab): Likewise.
565         (enum print_source_lines_flag): Move definition to source.h.
566         * tui/tui-hooks.c: Add 'source.h' include.
567
568 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
569
570         * source.c (print_source_lines_base): Handle requests to print
571         reverse line number sequences, and guard against empty lines
572         string.
573
574 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
575
576         * source.c (print_source_lines_base): Fix skip of '\r' if next
577         character is '\n'.
578
579 2019-01-06  Tom Tromey  <tom@tromey.com>
580
581         * c-exp.y (struct c_parse_state) <macro_original_text,
582         expansion_obstack>: New member.
583         (macro_original_text, expansion_obstack): Remove globals.
584         (scan_macro_expansion, scanning_macro_expansion)
585         (finished_macro_expansion): Update.
586         (scan_macro_cleanup): Remove.
587         (yylex, c_parse): Update.
588
589 2019-01-06  Tom Tromey  <tom@tromey.com>
590
591         * c-exp.y (struct c_parse_state) <strings>: New member.
592         (operator_stoken): Update.
593
594 2019-01-06  Tom Tromey  <tom@tromey.com>
595
596         * parser-defs.h (type_ptr): Remove typedef.  Don't declare VEC.
597         (union type_stack_elt) <typelist_val>: Now a pointer to
598         std::vector.
599         (type_stack_cleanup): Don't declare.
600         (push_typelist): Update.
601         * parse.c (pop_typelist): Return a std::vector.
602         (push_typelist): Take a std::vector.
603         (follow_types): Update.  Do not free args.
604         (type_stack_cleanup): Remove.
605         * c-exp.y (struct c_parse_state): New.
606         (cpstate): New global.
607         (type_aggregate_p, exp, ptr_operator, parameter_typelist)
608         (nonempty_typelist): Update.
609         (func_mod): Create a new vector.
610         (c_parse): Create a c_parse_state.
611         (check_parameter_typelist): Do not delete params.
612         (function_method): Update.  Do not delete type_list.
613
614 2019-01-06  Tom Tromey  <tom@tromey.com>
615
616         PR gdb/28155:
617         * python/py-finishbreakpoint.c (bpfinishpy_init): Use
618         check_typedef.
619         * infcmd.c (finish_command_fsm_should_stop): Use check_typedef.
620         (print_return_value): Likewise.
621
622 2019-01-05  Tom Tromey  <tom@tromey.com>
623
624         * contrib/cleanup_check.py: Remove.
625         * contrib/gcc-with-excheck: Remove.
626         * contrib/exsummary.py: Remove.
627         * contrib/excheck.py: Remove.
628
629 2019-01-05  Joel Brobecker  <brobecker@adacore.com>
630
631         * thread.c (delete_thread_1): Add gdb_assert that THR is not
632         NULL. Initialize tpprev to NULL instead of assigning it
633         to NULL on the next statement.
634         * windows-nat.c (windows_delete_thread): Remove check for
635         main_thread_id before printing thread exit notifications.
636         (get_windows_debug_event) <EXIT_THREAD_DEBUG_EVENT>:
637         Remove thread ID check against main_thread_id.
638         <CREATE_PROCESS_DEBUG_EVENT>: Remove call to
639         windows_delete_thread.
640         <EXIT_PROCESS_DEBUG_EVENT>: Add call to windows_delete_thread.
641
642 2019-01-04  Tom Tromey  <tom@tromey.com>
643
644         * compile/compile.c (_initialize_compile): Use upper case for
645         metasyntactic variables.
646         * symmisc.c (_initialize_symmisc): Use upper case for
647         metasyntactic variables.
648         * psymtab.c (_initialize_psymtab): Use upper case for
649         metasyntactic variables.
650         * demangle.c (demangle_command): Use upper case for metasyntactic
651         variables.
652         (_initialize_demangler): Likewise.
653         * ax-gdb.c (_initialize_ax_gdb): Use upper case for metasyntactic
654         variables.
655
656 2019-01-03  Tom Tromey  <tom@tromey.com>
657
658         * tui/tui-source.c (tui_set_source_content): Use xstrdup.
659
660 2019-01-03  Tom Tromey  <tom@tromey.com>
661
662         * python/py-symtab.c (salpy_str): Update.
663         (struct salpy_sal_object) <symtab>: Now a PyObject.
664         (salpy_dealloc): Update.
665         (del_objfile_sal): Use gdbpy_ref.
666
667 2019-01-03  Tom Tromey  <tom@tromey.com>
668
669         * python/py-type.c (convert_field): Use new_reference.  Return
670         gdbpy_ref.
671         (make_fielditem): Return gdbpy_ref.
672         (typy_fields): Update.
673         (typy_getitem): Update.
674         (field_name): Return gdbpy_ref.  Use new_reference.
675         (typy_iterator_iternext): Update.
676
677 2019-01-03  Tom Tromey  <tom@tromey.com>
678
679         * python/py-record.c (gdbpy_stop_recording): Use Py_RETURN_NONE.
680
681 2019-01-03  Tom Tromey  <tom@tromey.com>
682
683         * python/py-value.c (valpy_dealloc): Use Py_XDECREF.
684         * python/py-type.c (typy_fields_items): Use gdbpy_ref.
685         * python/py-progspace.c (pspy_set_printers): Use gdbpy_ref.
686         (pspy_set_frame_filters, pspy_set_frame_unwinders)
687         (pspy_set_type_printers): Likewise.
688         * python/py-function.c (fnpy_init): Use gdbpy_ref.
689         * python/py-cmd.c (cmdpy_init): Use gdbpy_ref.
690         * python/py-objfile.c (objfpy_set_printers): Use gdbpy_ref.
691         (objfpy_set_frame_filters, objfpy_set_frame_unwinders)
692         (objfpy_set_type_printers): Likewise.
693
694 2019-01-03  Tom Tromey  <tom@tromey.com>
695
696         * python/python.c (gdbpy_enter, ~gdbpy_enter): Update.
697         (gdbpy_print_stack): Use gdbpy_err_fetch.
698         * python/python-internal.h (class gdbpy_err_fetch): New class.
699         (class gdbpy_enter) <m_error_type, m_error_value,
700         m_error_traceback>: Remove.
701         <m_error>: New member.
702         (gdbpy_exception_to_string): Don't declare.
703         * python/py-varobj.c (py_varobj_iter_next): Use gdbpy_err_fetch.
704         * python/py-value.c (convert_value_from_python): Use
705         gdbpy_err_fetch.
706         * python/py-utils.c (gdbpy_err_fetch::to_string): Rename from
707         gdbpy_exception_to_string.
708         (gdbpy_handle_exception): Use gdbpy_err_fetch.
709         * python/py-prettyprint.c (print_stack_unless_memory_error): Use
710         gdbpy_err_fetch.
711
712 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
713
714         * linux-nat.c (delete_lwp_cleanup): Delete.
715         (struct lwp_deleter): New struct.
716         (lwp_info_up): New typedef.
717         (linux_nat_target::follow_fork): Delete cleanup, and make use of
718         lwp_info_up.
719
720 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
721
722         * linux-fork.c (class scoped_switch_fork_info): New class.
723         (inferior_call_waitpid): Update to use scoped_switch_fork_info.
724
725 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
726
727         * valops.c (find_overload_match): Remove use of null_cleanup, and
728         calls to do_cleanups.
729
730 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
731
732         * compile/compile-cplus-types.c
733         (compile_cplus_instance::decl_name): Handle changes to
734         cp_func_name.
735         * cp-support.c (cp_func_name): Update header comment, update
736         return type.
737         * cp-support.h (cp_func_name): Update return type in declaration.
738         * valops.c (find_overload_match): Move temp_func local to top
739         level of function and change its type.  Use temp_func to hold and
740         delete temporary string obtained from cp_func_name.
741
742 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
743
744         * remote.c (remote_target::remote_check_symbols): Convert `msg` to
745         gdb::char_vector, remove cleanup, and update uses of `msg`.
746
747 2019-01-03  Jim Wilson  <jimw@sifive.com>
748
749         * riscv-tdep.c (riscv_freg_feature): Drop s0 name from f8.
750
751 2019-01-02  Tom Tromey  <tom@tromey.com>
752
753         * xml-tdesc.c (xml_cache): Hold a target_desc_up.
754         (tdesc_parse_xml): Remove cleanups.
755         * target-descriptions.h (make_cleanup_free_target_description):
756         Don't declare.
757         (target_desc_deleter): New struct.
758         (target_desc_up): New typedef.
759         * target-descriptions.c (target_desc_deleter::operator()): Rename
760         from free_target_description.
761         (make_cleanup_free_target_description): Remove.
762
763 2019-01-02  Tom Tromey  <tom@tromey.com>
764
765         * linespec.c (struct linespec_parser): Rename from ls_parser.  Add
766         constructor, destructor.
767         (linespec_parser): Remove typedef.
768         (~linespec_parser): Rename from linespec_parser_delete.
769         (linespec_lex_to_end, linespec_complete_label)
770         (linespec_complete): Update.
771         (decode_line_full): Remove cleanups.
772         (decode_line_1): Update.
773
774 2019-01-02  Tom Tromey  <tom@tromey.com>
775
776         * python/python-internal.h (inferior_to_inferior_object): Change
777         return type.
778         * python/py-exitedevent.c (create_exited_event_object): Update.
779         * python/py-inferior.c (inferior_to_inferior_object): Return
780         gdbpy_ref.
781         (python_new_inferior, python_inferior_deleted)
782         (thread_to_thread_object, delete_thread_object)
783         (build_inferior_list, gdbpy_selected_inferior): Update.
784         * python/py-infthread.c (create_thread_object): Update.  Also fail
785         if inferior_to_inferior_object fails.
786
787 2019-01-02  Simon Marchi  <simon.marchi@ericsson.com>
788
789         * inferior.h (class inferior) <displaced_step_state>: New field.
790         * infrun.h (struct displaced_step_state): Move here from
791         infrun.c.  Initialize fields, add constructor.
792         <inf>: Remove field.
793         <reset>: New method.
794         * infrun.c (struct displaced_step_inferior_state): Move to
795         infrun.h.
796         (displaced_step_inferior_states): Remove.
797         (get_displaced_stepping_state): Adust.
798         (displaced_step_in_progress_any_inferior): Adjust.
799         (displaced_step_in_progress_thread): Adjust.
800         (displaced_step_in_progress): Adjust.
801         (add_displaced_stepping_state): Remove.
802         (get_displaced_step_closure_by_addr): Adjust.
803         (remove_displaced_stepping_state): Remove.
804         (infrun_inferior_exit): Call displaced_step_state.reset.
805         (use_displaced_stepping): Don't check for NULL.
806         (displaced_step_prepare_throw): Call
807         get_displaced_stepping_state.
808         (displaced_step_fixup): Don't check for NULL.
809         (prepare_for_detach): Don't check for NULL.
810
811 2019-01-02  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
812
813         * infcall.c (call_function_by_hand_dummy): cleanup/destroy sm
814          in case of call that did not complete.
815
816 2019-01-02  Andrey Utkin  <autkin@undo.io>
817
818         * symfile.c (find_separate_debug_file): Fix search of debug files for
819         remote debuggee.
820
821 2019-01-02  Tom Tromey  <tom@tromey.com>
822
823         * python/py-inferior.c (gdbpy_initialize_inferior): Fix
824         indentation.
825         * python/py-frame.c (frapy_older): Remove cast.
826         (frapy_newer): Likewise.
827         * python/py-breakpoint.c (local_setattro): Remove cast.
828         * python/py-arch.c (archpy_name): Remove local variable.
829         * python/py-type.c (gdbpy_lookup_type): Remove cast.
830
831 2019-01-02  Joel Brobecker  <brobecker@adacore.com>
832
833         * unittests/basic_string_view/element_access/char/empty.cc:
834         Fix year range in copyright header.
835
836 2019-01-01  Andrew Burgess  <andrew.burgess@embecosm.com>
837
838         * arch/riscv.h (struct riscv_gdbarch_features) <hw_float_abi>:
839         Delete.
840         <operator==>: Update with for removed field.
841         <hash>: Likewise.
842         * riscv-tdep.h (struct gdbarch_tdep) <features>: Renamed to...
843         <isa_features>: ...this.
844         <abi_features>: New field.
845         (riscv_isa_flen): Update comment.
846         (riscv_abi_xlen): New declaration.
847         (riscv_abi_flen): New declaration.
848         * riscv-tdep.c (riscv_isa_xlen): Update to get answer from
849         isa_features.
850         (riscv_abi_xlen): New function.
851         (riscv_isa_flen): Update to get answer from isa_features.
852         (riscv_abi_flen): New function.
853         (riscv_has_fp_abi): Update to get answer from abi_features.
854         (riscv_call_info::riscv_call_info): Use abi xlen and flen, not isa
855         xlen and flen.
856         (riscv_call_info) <xlen, flen>: Update comment.
857         (riscv_call_arg_struct): Remove invalid assertions
858         (riscv_features_from_gdbarch_info): Update now hw_float_abi field
859         is removed.
860         (riscv_gdbarch_init): Gather isa features and abi features
861         separately, ensure both match on the gdbarch when reusing an old
862         gdbarch.  Relax an error check to allow 32-bit abi float to run on
863         a target with 64-bit float hardware.
864
865 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
866
867         * source.c (search_command_helper): Stop reverse search
868         when line 1 has been searched.
869
870 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
871
872         * record-full.c (record_full_base_target::close): Rewrite
873         record_full_core_buf_list free logic.
874
875 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
876
877         * break-catch-syscall.c (print_one_catch_syscall): xfree
878         the last text.
879
880 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
881
882         * top.c (print_gdb_version): Update Copyright year in version
883         message.
884
885 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
886
887         Update copyright year range in all GDB files.
888
889 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
890
891         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2018.
892
893 For older changes see ChangeLog-2018.
894 \f
895 Local Variables:
896 mode: change-log
897 left-margin: 8
898 fill-column: 74
899 version-control: never
900 coding: utf-8
901 End:
902