Fix GDB hang with remote after error from resume
[external/binutils.git] / gdb / ChangeLog
1 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
2
3         * infrun.c (keep_going_pass_signal): Clear step-over info when
4         insert_breakpoints fails.
5
6 2018-01-11  Pedro Alves  <palves@redhat.com>
7
8         PR gdb/22583
9         * infrun.c (resume): Rename to ...
10         (resume_1): ... this.
11         (resume): Reimplement as wrapper around resume_1.
12
13 2018-01-11  Pedro Alves  <palves@redhat.com>
14
15         PR remote/22597
16         * remote.c (remote_parse_stop_reply): Default to the last-set
17         general thread instead of to 'magic_null_ptid'.
18
19 2018-01-10  Pedro Alves  <palves@redhat.com>
20
21         * language.h (language_get_symbol_name_matcher): Rename ...
22         (get_symbol_name_matcher): ... this.
23         * language.c (language_get_symbol_name_matcher): Ditto.
24         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
25         callers adjusted.
26
27 2018-01-10  Pedro Alves  <palves@redhat.com>
28
29         PR gdb/22670
30         * dwarf2read.c
31         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
32         Adjust to use language_get_symbol_name_matcher instead of
33         language_defn::la_get_symbol_name_matcher.
34         * language.c (language_get_symbol_name_matcher): If in Ada mode
35         and the lookup name is a verbatim match, return Ada's matcher.
36         * language.h (language_get_symbol_name_matcher): Adjust comment.
37         (ada_lookup_name_info::verbatim_p):: New method.
38
39 2018-01-10  Pedro Alves  <palves@redhat.com>
40
41         PR gdb/22670
42         * ada-lang.c (ada_collect_symbol_completion_matches): If the
43         minsym's language is language_auto or language_cplus, pass down
44         language_ada instead.
45         * symtab.c (compare_symbol_name): Don't frob symbol language here.
46
47 2018-01-10  Pedro Alves  <palves@redhat.com>
48
49         PR gdb/22670
50         * minsyms.c (linkage_name_str): New function.
51         (iterate_over_minimal_symbols): Use it.
52
53 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
54
55         * NEWS: Document that 'info proc' now works on FreeBSD.
56
57 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
58
59         * configure.ac: Check for kinfo_getfile in libutil.
60         * configure: Regenerate.
61         * config.in: Regenerate.
62         * fbsd-nat.c: Include "fbsd-tdep.h".
63         (fbsd_fetch_cmdline): New.
64         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
65         rather than calling error.
66         (fbsd_info_proc): New.
67         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
68         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
69         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
70
71 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
72
73         * fbsd-nat.c (struct free_deleter): Remove.
74         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
75
76 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
77
78         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
79         NULL for an empty pathname.
80
81 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
82
83         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
84         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
85         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
86         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
87         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
88         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
89         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
90         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
91         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
92         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
93         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
94         (fbsd_core_fetch_timeval, fbsd_print_sigset)
95         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
96         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
97         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
98
99 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
100
101         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
102         (gnu_xfer_auxv): New function.
103         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
104         TARGET_OBJECT_AUXV.
105
106 2018-01-08  Yao Qi  <yao.qi@linaro.org>
107             Simon Marchi  <simon.marchi@ericsson.com>
108
109         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
110         common/selftest.c.
111         (COMMON_OBS): Remove selftest.o.
112         * configure.ac: Append selftest-arch.c and common/selftest.c to
113         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
114         * configure: Re-generated.
115         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
116         GDB_SELF_TEST.
117         (maintenance_info_selftests): Likewise.
118
119 2018-01-08  Xavier Roirand  <roirand@adacore.com>
120
121         * ada-valprint.c (val_print_packed_array_elements): Use
122         proper number of elements when printing an array indexed
123         by an enumeration type.
124
125 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
126
127         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
128         (dw2_get_file_names_reader): Adjust.
129         (lookup_dwo_signatured_type): Adjust.
130         (lookup_dwp_signatured_type): Adjust.
131         (lookup_signatured_type): Adjust.
132         (create_type_unit_group): Adjust.
133         (get_type_unit_group): Adjust.
134         (process_psymtab_comp_unit_reader): Adjust.
135         (build_type_psymtabs_reader): Adjust.
136         (scan_partial_symbols): Adjust.
137         (add_partial_symbol): Adjust.
138         (add_partial_subprogram): Adjust.
139         (peek_die_abbrev): Adjust.
140         (fixup_go_packaging): Adjust.
141         (process_imported_unit_die): Adjust.
142         (dwarf2_compute_name): Adjust.
143         (dwarf2_physname): Adjust.
144         (read_import_statement): Adjust.
145         (handle_DW_AT_stmt_list): Adjust.
146         (read_file_scope): Adjust.
147         (read_func_scope): Adjust.
148         (read_lexical_block_scope): Adjust.
149         (read_call_site_scope): Adjust.
150         (read_variable): Adjust.
151         (dwarf2_rnglists_process): Adjust.
152         (dwarf2_ranges_process): Adjust.
153         (dwarf2_ranges_read): Adjust.
154         (dwarf2_get_pc_bounds): Adjust.
155         (dwarf2_record_block_ranges): Adjust.
156         (dwarf2_add_field): Adjust.
157         (dwarf2_add_member_fn): Adjust.
158         (read_structure_type): Adjust.
159         (process_structure_scope): Adjust.
160         (read_enumeration_type): Adjust.
161         (read_array_type): Adjust.
162         (mark_common_block_symbol_computed): Adjust.
163         (read_common_block): Adjust.
164         (read_namespace_type): Adjust.
165         (read_namespace): Adjust.
166         (read_module_type): Adjust.
167         (read_tag_pointer_type): Adjust.
168         (read_tag_ptr_to_member_type): Adjust.
169         (read_tag_string_type): Adjust.
170         (read_subroutine_type): Adjust.
171         (read_typedef): Adjust.
172         (read_base_type): Adjust.
173         (attr_to_dynamic_prop): Adjust.
174         (read_subrange_type): Adjust.
175         (read_unspecified_type): Adjust.
176         (dwarf2_read_abbrevs): Adjust.
177         (load_partial_dies): Adjust.
178         (read_partial_die): Adjust.
179         (find_partial_die): Adjust.
180         (guess_partial_die_structure_name): Adjust.
181         (fixup_partial_die): Adjust.
182         (read_attribute_value): Adjust.
183         (read_addr_index): Adjust.
184         (read_addr_index_from_leb128): Adjust.
185         (read_str_index): Adjust.
186         (dwarf2_string_attr): Adjust.
187         (get_debug_line_section): Adjust.
188         (dwarf_decode_line_header): Adjust.
189         (lnp_state_machine::check_line_address): Adjust.
190         (dwarf_decode_lines_1): Adjust.
191         (dwarf_decode_lines): Adjust.
192         (dwarf2_start_symtab): Adjust.
193         (var_decode_location): Adjust.
194         (new_symbol_full): Adjust.
195         (dwarf2_const_value_data): Adjust.
196         (dwarf2_const_value_attr): Adjust.
197         (dwarf2_const_value): Adjust.
198         (die_type): Adjust.
199         (die_containing_type): Adjust.
200         (build_error_marker_type): Adjust.
201         (lookup_die_type): Adjust.
202         (guess_full_die_structure_name): Adjust.
203         (anonymous_struct_prefix): Adjust.
204         (determine_prefix): Adjust.
205         (dwarf2_name): Adjust.
206         (follow_die_ref_or_sig): Adjust.
207         (follow_die_offset): Adjust.
208         (follow_die_ref): Adjust.
209         (follow_die_sig_1): Adjust.
210         (follow_die_sig): Adjust.
211         (get_signatured_type): Adjust.
212         (get_DW_AT_signature_type): Adjust.
213         (decode_locdesc): Adjust.
214         (dwarf_decode_macros): Adjust.
215         (cu_debug_loc_section): Adjust.
216         (fill_in_loclist_baton): Adjust.
217         (dwarf2_symbol_mark_computed): Adjust.
218         (init_one_comp_unit): Don't assign
219         dwarf2_cu::dwarf2_per_objfile.
220         (set_die_type): Adjust.
221
222 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
223
224         * dwarf2read.c (struct mapped_debug_names): Add constructor.
225         <dwarf2_per_objfile>: New field.
226         (dwarf2_per_objfile): Remove global.
227         (get_dwarf2_per_objfile): New function.
228         (set_dwarf2_per_objfile): New function.
229         (dwarf2_build_psymtabs_hard): Change objfile parameter to
230         dwarf2_per_objfile.
231         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
232         (read_abbrev_offset): Likewise.
233         (read_indirect_string): Likewise.
234         (read_indirect_line_string): Likewise.
235         (read_indirect_string_at_offset): Likewise.
236         (read_indirect_string_from_dwz): Likewise.
237         (dwarf2_find_containing_comp_unit): Change objfile parameter to
238         dwarf2_per_objfile.
239         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
240         (create_all_comp_units): Change objfile parameter to
241         dwarf2_per_objfile.
242         (create_all_type_units): Likewise.
243         (process_queue): Add dwarf2_per_objfile parameter.
244         (read_and_check_comp_unit_head): Likewise.
245         (lookup_dwo_unit_in_dwp): Likewise.
246         (get_dwp_file): Likewise.
247         (process_cu_includes): Likewise.
248         (struct free_dwo_file_cleanup_data): New struct.
249         (dwarf2_has_info): Use get_dwarf2_per_objfile and
250         set_dwarf2_per_objfile.
251         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
252         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
253         context, adjust calls.
254         (dw2_instantiate_symtab): Likewise.
255         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
256         (dw2_get_cu): Likewise.
257         (create_cu_from_index_list): Change objfile parameter to
258         dwarf2_per_objfile.
259         (create_cus_from_index_list): Get dwarf2_per_objfile from
260         context, adjust calls.
261         (create_cus_from_index): Likewise.
262         (create_signatured_type_table_from_index): Change objfile
263         parameter to dwarf2_per_objfile.
264         (create_signatured_type_table_from_debug_names): Change objfile
265         parameter to dwarf2_per_objfile.
266         (create_addrmap_from_index): Likewise.
267         (create_addrmap_from_aranges): Likewise.
268         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
269         (dw2_setup): Remove.
270         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
271         context.
272         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
273         get_dwarf2_per_objfile.
274         (dw2_forget_cached_source_info): Likewise.
275         (dw2_map_symtabs_matching_filename): Likewise.
276         (struct dw2_symtab_iterator) <index>: Remove.
277         <dwarf2_per_objfile>: New field.
278         (dw2_symtab_iter_init): Replace index parameter with
279         dwarf2_per_objfile.
280         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
281         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
282         (dw2_print_stats): Likewise.
283         (dw2_dump): Likewise.
284         (dw2_expand_symtabs_for_function): Likewise.
285         (dw2_expand_all_symtabs): Likewise.
286         (dw2_expand_symtabs_with_fullname): Likewise.
287         (dw2_expand_marked_cus): Replace index and objfile parameters
288         with dwarf2_per_objfile.
289         (dw_expand_symtabs_matching_file_matcher): Add
290         dwarf2_per_objfile parameter and adjust calls.
291         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
292         adjust calls.
293         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
294         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
295         adjust calls.
296         (create_cus_from_debug_names_list): Replace objfile parameter
297         with dwarf2_per_objfile and adjust calls.
298         (create_cus_from_debug_names): Likewise.
299         (dwarf2_read_debug_names): Likewise.
300         (mapped_debug_names::namei_to_name): Adjust call.
301         (dw2_debug_names_iterator::next): Likewise.
302         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
303         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
304         (dw2_debug_names_dump): Likewise.
305         (dw2_debug_names_expand_symtabs_for_function): Likewise.
306         (dw2_debug_names_expand_symtabs_matching): Likewise.
307         (dwarf2_initialize_objfile): Likewise.
308         (dwarf2_build_psymtabs): Likewise.
309         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
310         this_cu.
311         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
312         (read_and_check_comp_unit_head): Likewise.
313         (read_abbrev_offset): Likewise.
314         (create_debug_type_hash_table): Likewise.
315         (create_debug_types_hash_table): Likewise.
316         (create_all_type_units): Replace objfile parameter with
317         dwarf2_per_objfile.
318         (add_type_unit): Add dwarf2_per_objfile parameter.
319         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
320         with dwarf2_per_objfile.
321         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
322         (lookup_dwp_signatured_type): Likewise.
323         (lookup_signatured_type): Likewise.
324         (read_cutu_die_from_dwo): Likewise.
325         (init_tu_and_read_dwo_dies): Likewise.
326         (init_cutu_and_read_dies): Likewise.
327         (init_cutu_and_read_dies_no_follow): Likewise.
328         (allocate_type_unit_groups_table): Add objfile parameter.
329         (create_type_unit_group): Use dwarf2_per_objfile from cu.
330         (get_type_unit_group): Likewise.
331         (process_psymtab_comp_unit): Update call.
332         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
333         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
334         (print_tu_stats): Likewise.
335         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
336         in void* parameter.
337         (build_type_psymtabs): Change objfile parameter to
338         dwarf2_per_objfile.
339         (process_skeletonless_type_unit): Use dwarf2_per_objfile
340         passed in void* parameter.
341         (process_skeletonless_type_units): Change objfile parameter to
342         dwarf2_per_objfile.
343         (set_partial_user): Likewise.
344         (dwarf2_build_psymtabs_hard): Likewise.
345         (read_comp_units_from_section): Likewise.
346         (create_all_comp_units): Likewise.
347         (scan_partial_symbols): Update calls.
348         (add_partial_symbol): Likewise.
349         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
350         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
351         (process_queue): Add dwarf2_per_objfile parameter.
352         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
353         (compute_compunit_symtab_includes): Likewise.
354         (process_cu_includes): Add dwarf2_per_objfile parameter.
355         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
356         (process_full_type_unit): Likewise.
357         (process_imported_unit_die): Update call.
358         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
359         (read_file_scope): Likewise.
360         (allocate_dwo_file_hash_table): Add objfile parameter.
361         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
362         (create_cus_hash_table): Likewise.
363         (create_dwp_hash_table): Likewise.
364         (create_dwo_unit_in_dwp_v1): Likewise.
365         (create_dwp_v2_section): Likewise.
366         (create_dwo_unit_in_dwp_v2): Likewise.
367         (lookup_dwo_unit_in_dwp): Likewise.
368         (try_open_dwop_file): Likewise.
369         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
370         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
371         cleanup to include a reference to dwarf2_per_objfile.
372         (open_dwp_file): Add dwarf2_per_objfile parameter.
373         (open_and_init_dwp_file): Likewise.
374         (get_dwp_file): Likewise.
375         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
376         (queue_and_load_all_dwo_tus): Update call.
377         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
378         data.
379         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
380         (dwarf2_ranges_process): Likewise.
381         (dwarf2_get_pc_bounds): Likewise.
382         (mark_common_block_symbol_computed): Likewise.
383         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
384         (dwarf2_read_abbrevs): Update call.
385         (read_partial_die): Use dwarf2_per_objfile from cu.
386         (find_partial_die): Likewise.
387         (fixup_partial_die): Likewise.
388         (read_attribute_value): Likewise.
389         (read_indirect_string_at_offset_from): Add objfile parameter.
390         (read_indirect_string_at_offset): Add dwarf2_per_objfile
391         parameter.
392         (read_indirect_string_from_dwz): Add objfile parameter.
393         (read_indirect_string): Add objfile parameter.
394         (read_addr_index_1): Add dwarf2_per_objfile parameter.
395         (read_addr_index): Use dwarf2_per_objfile from cu.
396         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
397         call dw2_setup.
398         (read_str_index): Use dwarf2_per_objfile from cu.
399         (get_debug_line_section): Likewise.
400         (read_formatted_entries): Add dwarf2_per_objfile parameter.
401         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
402         (new_symbol_full): Use dwarf2_per_objfile from cu.
403         (build_error_marker_type): Likewise.
404         (lookup_die_type): Likewise.
405         (determine_prefix): Likewise.
406         (follow_die_offset): Likewise.
407         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
408         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
409         (dwarf2_fetch_die_type_sect_off): Likewise.
410         (dwarf2_get_die_type): Likewise.
411         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
412         (get_signatured_type): Likewise.
413         (get_DW_AT_signature_type): Likewise.
414         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
415         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
416         (cu_debug_loc_section): Likewise.
417         (fill_in_loclist_baton): Likewise.
418         (dwarf2_symbol_mark_computed): Likewise.
419         (dwarf2_find_containing_comp_unit): Change objfile parameter to
420         dwarf2_per_objfile.
421         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
422         parameter.
423         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
424         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
425         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
426         (set_die_type): Use dwarf2_free_objfile from cu.
427         (get_die_type_at_offset): Likewise.
428         (dwarf2_per_objfile_free): Don't assign global variable.
429         (debug_names) <constructor>: Add dwarf2_per_objfile
430         parameter, update m_debugstrlookup construction.
431         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
432         parameter.
433         <m_dwarf2_per_objfile>: New field.
434         <lookup>: Use m_dwarf2_per_objfile.
435         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
436         (psyms_seen_size): Likewise.
437         (write_gdbindex): Replace objfile parameter with
438         dwarf2_per_objfile.
439         (write_debug_names): Likewise.
440         (write_psymtabs_to_index): Likewise.
441         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
442         calls.
443
444 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
445
446         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
447         <dwarf2_per_objfile>: New field.
448         (struct dwarf2_per_cu_data) <objfile>: Remove.
449         <dwarf2_per_objfile>: New field.
450         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
451         of objfile.
452         (create_signatured_type_table_from_index): Likewise.
453         (create_debug_type_hash_table): Likewise.
454         (fill_in_sig_entry_from_dwo_entry): Likewise.
455         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
456         (create_type_unit_group): Assign dwarf2_per_objfile instead of
457         objfile.
458         (create_partial_symtab): Access objfile through
459         dwarf2_per_objfile.
460         (process_psymtab_comp_unit_reader): Likewise.
461         (read_comp_units_from_section): Likewise.
462         (scan_partial_symbols): Likewise.
463         (add_partial_symbol): Likewise.
464         (add_partial_subprogram): Likewise.
465         (peek_die_abbrev): Likewise.
466         (fixup_go_packaging): Likewise.
467         (process_full_comp_unit): Likewise.
468         (process_full_type_unit): Likewise.
469         (process_imported_unit_die): Likewise.
470         (dwarf2_compute_name): Likewise.
471         (dwarf2_physname): Likewise.
472         (read_import_statement): Likewise.
473         (create_cus_hash_table): Assign dwarf2_physname instead of
474         objfile.
475         (read_func_scope): Access objfile through dwarf2_per_objfile.
476         (read_lexical_block_scope): Likewise.
477         (read_call_site_scope): Likewise.
478         (read_variable): Likewise.
479         (dwarf2_rnglists_process): Likewise.
480         (dwarf2_ranges_process): Likewise.
481         (dwarf2_ranges_read): Likewise.
482         (dwarf2_record_block_ranges): Likewise.
483         (dwarf2_add_field): Likewise.
484         (dwarf2_add_member_fn): Likewise.
485         (read_structure_type): Likewise.
486         (process_structure_scope): Likewise.
487         (read_enumeration_type): Likewise.
488         (read_array_type): Likewise.
489         (read_common_block): Likewise.
490         (read_namespace_type): Likewise.
491         (read_namespace): Likewise.
492         (read_module_type): Likewise.
493         (read_tag_pointer_type): Likewise.
494         (read_tag_ptr_to_member_type): Likewise.
495         (read_tag_string_type): Likewise.
496         (read_subroutine_type): Likewise.
497         (read_typedef): Likewise.
498         (read_base_type): Likewise.
499         (attr_to_dynamic_prop): Likewise.
500         (read_subrange_type): Likewise.
501         (read_unspecified_type): Likewise.
502         (load_partial_dies): Likewise.
503         (read_partial_die): Likewise.
504         (find_partial_die): Likewise.
505         (guess_partial_die_structure_name): Likewise.
506         (fixup_partial_die): Likewise.
507         (read_attribute_value): Likewise.
508         (read_addr_index_from_leb128): Likewise.
509         (dwarf2_read_addr_index): Likewise.
510         (dwarf2_string_attr): Likewise.
511         (lnp_state_machine::check_line_address): Likewise.
512         (dwarf_decode_lines_1): Likewise.
513         (dwarf_decode_lines): Likewise.
514         (dwarf2_start_symtab): Likewise.
515         (var_decode_location): Likewise.
516         (new_symbol_full): Likewise.
517         (dwarf2_const_value_data): Likewise.
518         (dwarf2_const_value_attr): Likewise.
519         (dwarf2_const_value): Likewise.
520         (die_type): Likewise.
521         (die_containing_type): Likewise.
522         (lookup_die_type): Likewise.
523         (guess_full_die_structure_name): Likewise.
524         (anonymous_struct_prefix): Likewise.
525         (dwarf2_name): Likewise.
526         (follow_die_ref_or_sig): Likewise.
527         (follow_die_offset): Likewise.
528         (follow_die_ref): Likewise.
529         (dwarf2_fetch_die_loc_sect_off): Likewise.
530         (dwarf2_fetch_constant_bytes): Likewise.
531         (dwarf2_fetch_die_type_sect_off): Likewise.
532         (dwarf2_get_die_type): Likewise.
533         (follow_die_sig): Likewise.
534         (decode_locdesc): Likewise.
535         (dwarf2_per_cu_objfile): Likewise.
536         (dwarf2_per_cu_text_offset): Likewise.
537         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
538         objfile.
539         (set_die_type): Access objfile through
540         dwarf2_per_objfile.
541
542 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
543
544         * valprint.c (converted_character_d): Remove typedef.
545         (DEF_VEC_O (converted_character_d)): Remove.
546         (count_next_character): Use std::vector.
547         (print_converted_chars_to_obstack): Likewise.
548         (generic_printstr): Likewise.
549
550 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
551
552         * xml-support.h (struct gdb_xml_value): Add constructor.
553         <value>: Change type to unique_xmalloc_ptr.
554         (gdb_xml_value_s): Remove typedef.
555         (DEF_VEC_O (gdb_xml_value_s)): Remove.
556         (gdb_xml_element_start_handler): Change parameter type to
557         std::vector.
558         (xml_find_attribute): Likewise.
559         * xml-support.c (xml_find_attribute): Change parameter type to
560         std::vector and adjust.
561         (gdb_xml_values_cleanup): Remove.
562         (gdb_xml_parser::start_element): Adjust to std::vector.
563         (xinclude_start_include): Change paraeter type to std::vector
564         and adjust.
565         * btrace.c (check_xml_btrace_version): Likewise.
566         (parse_xml_btrace_block): Likewise.
567         (parse_xml_btrace_pt_config_cpu): Likewise.
568         (parse_xml_btrace_pt): Likewise.
569         (parse_xml_btrace_conf_bts): Likewise.
570         (parse_xml_btrace_conf_pt): Likewise.
571         * memory-map.c (memory_map_start_memory): Likewise.
572         (memory_map_start_property): Likewise.
573         * osdata.c (osdata_start_osdata): Likewise.
574         (osdata_start_item): Likewise.
575         (osdata_start_column): Likewise.
576         * remote.c (start_thread): Likewise.
577         * solib-aix.c (library_list_start_library): Likewise.
578         (library_list_start_list): Likewise.
579         * solib-svr4.c (library_list_start_library): Likewise.
580         (svr4_library_list_start_list): Likewise.
581         * solib-target.c (library_list_start_segment): Likewise.
582         (library_list_start_section): Likewise.
583         (library_list_start_library): Likewise.
584         (library_list_start_list): Likewise.
585         * tracepoint.c (traceframe_info_start_memory): Likewise.
586         (traceframe_info_start_tvar): Likewise.
587         * xml-syscall.c (syscall_start_syscall): Likewise.
588         * xml-tdesc.c (tdesc_start_target): Likewise.
589         (tdesc_start_feature): Likewise.
590         (tdesc_start_reg): Likewise.
591         (tdesc_start_union): Likewise.
592         (tdesc_start_struct): Likewise.
593         (tdesc_start_flags): Likewise.
594         (tdesc_start_enum): Likewise.
595         (tdesc_start_field): Likewise.
596         (tdesc_start_enum_value): Likewise.
597         (tdesc_start_vector): Likewise.
598
599 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
600
601         * extension.h (struct xmethod_worker) <clone>: Remove.
602         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
603         Remove.
604         (python_xmethod_worker::clone): Remove.
605         * valops.c (find_overload_match): Use std::move instead of
606         clone.
607
608 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
609
610         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
611         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
612         <free_xmethod_worker_data>: Remove.
613         <get_matching_xmethod_workers>: Chance VEC to std::vector.
614         <get_xmethod_arg_types>: Remove.
615         <get_xmethod_result_type>: Remove.
616         <invoke_xmethod>: Remove.
617         * extension.c (new_xmethod_worker): Remove.
618         (clone_xmethod_worker): Remove.
619         (get_matching_xmethod_workers): Return void, pass std::vector by
620         pointer.
621         (get_xmethod_arg_types): Rename to...
622         (xmethod_worker::get_arg_types): ... this, and adjust.
623         (get_xmethod_result_type): Rename to...
624         (xmethod_worker::get_result_type): ... this, and adjust.
625         (invoke_xmethod): Remove.
626         (free_xmethod_worker): Remove.
627         (free_xmethod_worker_vec): Remove.
628         * extension.h (enum ext_lang_rc): Move here from
629         extension-priv.h.
630         (struct xmethod_worker): Add constructor and destructor.
631         <data>: Remove.
632         <value>: Remove.
633         <invoke, clone, do_get_result_type, do_get_arg_types>: New
634         virtual pure methods.
635         <get_arg_types, get_result_type>: New methods.
636         (xmethod_worker_ptr): Remove typedef.
637         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
638         (xmethod_worker_vec): Remove typedef.
639         (xmethod_worker_up): New typedef.
640         (invoke_xmethod): Remove.
641         (clone_xmethod_worker): Remove.
642         (free_xmethod_worker): Remove.
643         (free_xmethod_worker_vec): Remove.
644         (get_xmethod_arg_types): Remove.
645         (get_xmethod_result_type): Remove.
646         * valops.c (find_method_list): Use std::vector, don't use
647         intermediate vector.
648         (value_find_oload_method_list): Use std::vector.
649         (find_overload_match): Use std::vector.
650         (find_oload_champ): Use std::vector.
651         * value.c (value_free): Use operator delete.
652         (value_of_xmethod): Rename to...
653         (value_from_xmethod): ... this.  Don't assign
654         xmethod_worker::value, take rvalue-reference.
655         (result_type_of_xmethod): Adjust.
656         (call_xmethod): Adjust.
657         * value.h: Include extension.h.
658         (struct xmethod_worker): Don't forward-declare.
659         (value_of_xmethod): Rename to...
660         (value_from_xmethod): ... this, take rvalue-reference.
661         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
662         (struct python_xmethod_worker): ... this, add constructor and
663         destructor.
664         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
665         (gdbpy_free_xmethod_worker_data): Rename to...
666         (python_xmethod_worker::~python_xmethod_worker): ... this and
667         adjust.
668         (gdbpy_clone_xmethod_worker_data): Rename to...
669         (python_xmethod_worker::clone): ... this and adjust.
670         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
671         temporary vector.
672         (gdbpy_get_xmethod_arg_types): Rename to...
673         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
674         (gdbpy_get_xmethod_result_type): Rename to...
675         (python_xmethod_worker::do_get_result_type): ... this and
676         adjust.
677         (gdbpy_invoke_xmethod): Rename to...
678         (python_xmethod_worker::invoke): ... this and adjust.
679         (new_python_xmethod_worker): Rename to...
680         (python_xmethod_worker::python_xmethod_worker): ... this and
681         adjust.
682         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
683         Remove.
684         (gdbpy_free_xmethod_worker_data): Remove.
685         (gdbpy_get_matching_xmethod_workers): Use std::vector.
686         (gdbpy_get_xmethod_arg_types): Remove.
687         (gdbpy_get_xmethod_result_type): Remove.
688         (gdbpy_invoke_xmethod): Remove.
689         * python/python.c (python_extension_ops): Remove obsolete
690         callbacks.
691
692 2018-01-05  Pedro Alves  <palves@redhat.com>
693
694         PR gdb/18653
695         * common/signals-state-save-restore.c
696         (save_original_signals_state): New parameter 'quiet'.  Warn if we
697         find a custom handler preinstalled, instead of internal erroring.
698         But only warn if !quiet.
699         * common/signals-state-save-restore.h
700         (save_original_signals_state): New parameter 'quiet'.
701         * main.c (captured_main_1): Move save_original_signals_state call
702         after option handling, and pass QUIET.
703
704 2018-01-05  Pedro Alves  <palves@redhat.com>
705
706         * spu-tdep.c (spu_catch_start): Pass
707         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
708
709 2018-01-05  Pedro Alves  <palves@redhat.com>
710
711         PR gdb/22670
712         * ada-lang.c (literal_symbol_name_matcher): New function.
713         (ada_get_symbol_name_matcher): Use it for
714         symbol_name_match_type::SEARCH_NAME.
715         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
716         it down instead of assuming symbol_name_match_type::FULL.
717         * block.h (block_lookup_symbol): New parameter 'match_type'.
718         * c-valprint.c (print_unpacked_pointer): Use
719         lookup_symbol_search_name instead of lookup_symbol.
720         * compile/compile-object-load.c (get_out_value_type): Pass down
721         symbol_name_match_type::SEARCH_NAME.
722         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
723         symbol_name_match_type::FULL.
724         * cp-support.c (cp_get_symbol_name_matcher): Handle
725         symbol_name_match_type::SEARCH_NAME.
726         * infrun.c (insert_exception_resume_breakpoint): Use
727         lookup_symbol_search_name.
728         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
729         * psymtab.c (maintenance_check_psymtabs): Use
730         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
731         * stack.c (print_frame_args): Use lookup_symbol_search_name and
732         SYMBOL_SEARCH_NAME.
733         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
734         if symbol_name_match_type::SEARCH_NAME.
735         (lookup_symbol_in_language): Pass down
736         symbol_name_match_type::FULL.
737         (lookup_symbol_search_name): New.
738         (lookup_language_this): Pass down
739         symbol_name_match_type::SEARCH_NAME.
740         (lookup_symbol_aux, lookup_local_symbol): New parameter
741         'match_type'.  Pass it down.
742         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
743         (lookup_symbol_search_name): New declaration.
744         (lookup_symbol_in_block): New 'match_type' parameter.
745
746 2018-01-05  Pedro Alves  <palves@redhat.com>
747
748         PR gdb/22670
749         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
750         ada_lookup_symbol.
751         (ada_lookup_symbol): Reimplement in terms of
752         ada_lookup_symbol_list, bits factored out from
753         ada_lookup_encoded_symbol.
754
755 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
756
757         * ada-exp.y (write_object_renaming): When subscripting an array
758         using a symbol as the index, pass the block in call to
759         ada_lookup_encoded_symbol when looking that symbol up.
760
761 2018-01-05  Jerome Guitton  <guitton@adacore.com>
762
763         * ada-lang.c (ada_array_length): Use ada_index_type instead of
764         TYPE_INDEX_TYPE.
765
766 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
767
768         * ada-lang.c (ada_to_fixed_value_create): Add handling of
769         the case where VALUE_LVAL (val0) is not lval_memory.
770
771 2018-01-05  Xavier Roirand  <roirand@adacore.com>
772
773         * ada-valprint.c (print_optional_low_bound): Handle
774         character-indexed array printing like boolean-indexed array
775         printing.
776
777 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
778
779         * NEWS: Create a new section for the next release branch.
780         Rename the section of the current branch, now that it has
781         been cut.
782
783 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
784
785         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
786         * version.in: Bump version to 8.1.50.DATE-git.
787
788 2018-01-03  Xavier Roirand  <roirand@adacore.com>
789
790         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
791         Add field.
792         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
793         Add field.
794         (default_exception_support_info) <catch_handlers_sym>: Add field.
795         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
796         (ada_exception_name_addr_1): Add "catch handlers" handling.
797         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
798         Update all callers.
799         (create_excep_cond_exprs) <ex>: Add parameter.
800         (re_set_exception): Update create_excep_cond_exprs call.
801         (print_it_exception, print_one_exception, print_mention_exception)
802         (print_recreate_exception): Add "catch handler" handling.
803         (allocate_location_catch_handlers, re_set_catch_handlers)
804         (check_status_catch_handlers, print_it_catch_handlers)
805         (print_one_catch_handlers, print_mention_catch_handlers)
806         (print_recreate_catch_handlers): New function.
807         (catch_handlers_breakpoint_ops): New variable.
808         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
809         Add parameter.  Add "catch handler" handling.
810         (ada_exception_sym_name, ada_exception_breakpoint_ops):
811         Add "catch handler" handling.
812         (ada_exception_catchpoint_cond_string): Add "catch handler"
813         handling.
814         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
815         call.
816         (catch_ada_handlers_command): New function.
817         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
818         operations structure.
819         (_initialize_ada_language): Add "catch handlers" command entry.
820         * NEWS: Document "catch handlers" feature.
821
822 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
823
824         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
825         account when creating the array type of the slice.
826         (ada_value_slice): Likewise.
827
828 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
829
830         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
831         New enum value.
832         (create_array_type_with_stride): Add byte_stride_prop parameter.
833         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
834         New parameter.  Update all callers in this file.
835         (array_type_has_dynamic_stride): New function.
836         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
837         of arrays with dynamic byte strides.
838         * dwarf2read.c (read_array_type): Add support for dynamic
839         DW_AT_byte_stride attributes.
840
841 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
842
843         * dwarf2read.c (read_unspecified_type): Treat
844         DW_TAG_enumeration_type DIEs from Ada units as stubs.
845
846 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
847
848         Update copyright year range in all GDB files.
849
850 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
851
852         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
853         and gdb/testsuite/gdb.base/step-line.c.
854
855 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
856
857         * copyright.py (main): Dump the contents of
858         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
859         even if BY_HAND is empty.
860
861 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
862
863         * top.c (print_gdb_version): Update Copyright year in version
864         message.
865
866 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
867
868         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
869
870 For older changes see ChangeLog-2017.
871 \f
872 Local Variables:
873 mode: change-log
874 left-margin: 8
875 fill-column: 74
876 version-control: never
877 coding: utf-8
878 End: