Fix segfault with 'set print object on' + 'whatis <struct>' & co
[external/binutils.git] / gdb / ChangeLog
1 2018-01-22  Pedro Alves  <palves@redhat.com>
2             Sergio Durigan Junior  <sergiodj@redhat.com>
3
4         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
5         case.
6
7 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
8
9         * MAINTAINERS: Update my company e-mail address.
10
11 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12
13         * regcache.c (cooked_write_test): New function.
14         (_initialize_regcache): Register the test.
15
16 2018-01-22  Yao Qi  <yao.qi@linaro.org>
17
18         * ia64-tdep.c (ia64_pseudo_register_read): Call
19         regcache->cooked_read instead of regcache_cooked_read_unsigned.
20         * m32c-tdep.c (m32c_cat_read): Likewise.
21         (m32c_r3r2r1r0_read): Likewise.
22         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
23         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
24
25 2018-01-22  Yao Qi  <yao.qi@linaro.org>
26
27         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
28         method raw_read instead of regcache_raw_read.
29         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
30         * arm-tdep.c (arm_neon_quad_read): Likewise.
31         * avr-tdep.c (avr_pseudo_register_read): Likewise.
32         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
33         * frv-tdep.c (frv_pseudo_register_read): Likewise.
34         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
35         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
36         (i386_pseudo_register_read_into_value): Likewise.
37         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
38         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
39         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
40         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
41         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
42         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
43         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
44         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
45         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
46
47 2018-01-22  Yao Qi  <yao.qi@linaro.org>
48
49         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
50         * configure.tgt: Remove target mt.
51         * mt-tdep.c: Remove.
52         * regcache.c (cooked_read_test): Remove the check for mt.
53
54 2018-01-22  Yao Qi  <yao.qi@linaro.org>
55
56         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
57         instead of gdbarch_pseudo_register_read_value.
58
59 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
60
61         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
62         language is Ada.
63
64 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
65
66         * linespec.c (create_sals_line_offset): Remove code that preserved
67         the symtab_and_line's line number.
68
69 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
70
71         * varobj.c (varobj_create): Don't set valid_block when creating a
72         floating varobj.
73
74 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
75
76         * varobj.c (varobj_create): Remove out of date comment.
77
78 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
79
80         PR mi/20395
81         * ada-exp.y (write_var_from_sym): Pass extra parameter when
82         updating innermost block.
83         * parse.c (innermost_block_tracker::update): Take extra type
84         parameter, and check types match before updating innermost block.
85         (write_dollar_variable): Update innermost block for registers.
86         * parser-defs.h (enum innermost_block_tracker_type): New enum.
87         (innermost_block_tracker::innermost_block_tracker): Initialise
88         m_types member.
89         (innermost_block_tracker::reset): Take type parameter.
90         (innermost_block_tracker::update): Take type parameter, and pass
91         type through as needed.
92         (innermost_block_tracker::m_types): New member.
93         * varobj.c (varobj_create): Pass type when reseting innermost
94         block.
95
96 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
97
98         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
99         * ada-lang.c (resolve_subexp): Likewise.
100         * breakpoint.c (set_breakpoint_condition) Likewise.
101         (watch_command_1) Likewise.
102         * c-exp.y (variable): Likewise.
103         * d-exp.y (PrimaryExpression): Likewise.
104         * f-exp.y (variable): Likewise.
105         * go-exp.y (variable): Likewise.
106         * m2-exp.y (variable): Likewise.
107         * objfiles.c (objfile::~objfile): Likewise.
108         * p-exp.y (variable): Likewise.
109         * parse.c (innermost_block): Change type.
110         * parser-defs.h (class innermost_block_tracker): New.
111         (innermost_block): Change to innermost_block_tracker.
112         * printcmd.c (display_command): Switch to innermost_block API.
113         (do_one_display): Likewise.
114         * rust-exp.y (do_one_display): Likewise.
115         * symfile.c (clear_symtab_users): Likewise.
116         * varobj.c (varobj_create): Switch to innermost_block API, replace
117         use of innermost_block with block stored on varobj object.
118
119 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
120
121         * expression.h (innermost_block): Remove declaration.
122         * varobj.c: Add 'parser-defs.h' include.
123
124 2018-01-19  Tom Tromey  <tom@tromey.com>
125
126         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
127         symbols in the static and global blocks.
128
129 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
130
131         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
132         gdb_ptrace.h, and move including gdb_wait.h ...
133         * nat/linux-ptrace.h: ... to here.
134
135 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
136
137         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
138         inf_ptrace_detach_success.
139         (inf_ptrace_detach_success): Add inferior parameter, use it
140         instead of inferior_ptid, pass it to detach_inferior.
141         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
142         parameter.
143         * inferior.c (detach_inferior): Add overload that takes an
144         inferior object.
145         * inferior.h (detach_inferior): Likewise.
146         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
147         use inferior_ptid, adjust call to inf_ptrace_detach_success.
148         * linux-thread-db.c (thread_db_detach): Use inf parameter.
149
150 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
151
152         * target.h (struct target_ops) <to_detach>: Add inferior
153         parameter.
154         (target_detach): Likewise.
155         * target.c (dispose_inferior): Pass inferior down.
156         (target_detach): Pass inferior down.  Assert that it is equal to
157         the current inferior.
158         * aix-thread.c (aix_thread_detach): Pass inferior down.
159         * corefile.c (core_file_command): Pass current_inferior() down.
160         * corelow.c (core_detach): Add inferior parameter.
161         * darwin-nat.c (darwin_detach): Likewise.
162         * gnu-nat.c (gnu_detach): Likewise.
163         * inf-ptrace.c (inf_ptrace_detach): Likewise.
164         * infcmd.c (detach_command): Pass current_inferior() down to
165         target_detach.
166         * infrun.c (follow_fork_inferior): Pass parent_inf to
167         target_detach.
168         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
169         target_detach.
170         * linux-nat.c (linux_nat_detach): Add inferior parameter.
171         * linux-thread-db.c (thread_db_detach): Likewise.
172         * nto-procfs.c (procfs_detach): Likewise.
173         * procfs.c (procfs_detach): Likewise.
174         * record.c (record_detach): Likewise.
175         * record.h (struct inferior): Forward-declare.
176         (record_detach): Add inferior parameter.
177         * remote-sim.c (gdbsim_detach): Likewise.
178         * remote.c (remote_detach_1): Likewise.
179         (remote_detach): Likewise.
180         (extended_remote_detach): Likewise.
181         * sol-thread.c (sol_thread_detach): Likewise.
182         * target-debug.h (target_debug_print_inferior_p): New macro.
183         * target-delegates.c: Re-generate.
184         * top.c (kill_or_detach): Pass inferior down to target_detach.
185         * windows-nat.c (windows_detach): Add inferior parameter.
186
187 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
188
189         * target.h (struct target_ops) <to_detach>: Remove args
190         parameter.
191         (target_detach): Likewise.
192         * target.c (dispose_inferior): Adjust.
193         (target_detach): Remove args parameter, adjust.
194         * aix-thread.c (aix_thread_detach): Adjust.
195         * corefile.c (core_file_command): Adjust.
196         * corelow.c (core_detach): Adjust.
197         * darwin-nat.c (darwin_detach): Adjust.
198         * gnu-nat.c (gnu_detach): Adjust.
199         * inf-ptrace.c (inf_ptrace_detach): Adjust.
200         * infcmd.c (detach_command): Adjust
201         * infrun.c (follow_fork_inferior): Adjust.
202         (handle_vfork_child_exec_or_exit): Adjust.
203         * linux-fork.c (linux_fork_detach): Remove args parameter.
204         * linux-fork.h (linux_fork_detach): Likewise.
205         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
206         * linux-thread-db.c (thread_db_detach): Likewise.
207         * nto-procfs.c (procfs_detach): Likewise.
208         * procfs.c (procfs_detach): Likewise.
209         (do_detach): Remove signo parameter.
210         * record.c (record_detach): Remove args parameter.
211         * record.h (record_detach): Likewise.
212         * remote-sim.c (gdbsim_detach): Likewise.
213         * remote.c (remote_detach_1): Likewise.
214         (remote_detach): Likewise.
215         (extended_remote_detach): Likewise.
216         * sol-thread.c (sol_thread_detach): Likewise.
217         * target-delegates.c: Re-generate.
218         * top.c (struct qt_args) <args>: Remove field.
219         (kill_or_detach): Don't pass args.
220         (quit_force): Don't set args.
221         * windows-nat.c (windows_detach): Remove args parameter.
222
223 2018-01-19  Yao Qi  <yao.qi@linaro.org>
224
225         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
226         (arm_linux_init_abi): Install it.
227
228 2018-01-19  Yao Qi  <yao.qi@linaro.org>
229
230         * osabi.c (gdb_osabi_names): Extend the regexp for
231         arm-linux-gnueabihf.
232
233 2018-01-18  Yao Qi  <yao.qi@linaro.org>
234
235         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
236         m_abbrevs.
237         (abbrev_table::add_abbrev): Update.
238         (abbrev_table::lookup_abbrev): Update.
239
240 2018-01-18  Yao Qi  <yao.qi@linaro.org>
241
242         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
243
244 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
245
246         * compile/compile.c (compile_to_object): Convert "triplet_rx"
247         to "std::string".
248
249 2018-01-17  Tom Tromey  <tom@tromey.com>
250
251         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
252
253 2018-01-17  Tom Tromey  <tom@tromey.com>
254
255         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
256         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
257         (create_array_type_with_stride): Update.
258         * dwarf2read.c (set_die_type): Update.
259
260 2018-01-17  Tom Tromey  <tom@tromey.com>
261
262         * dwarf2read.c (delayed_method_info): Remove typedef.
263         (dwarf2_cu::method_info): Now a std::vector.
264         (add_to_method_list): Update.
265         (free_delayed_list): Remove.
266         (compute_delayed_physnames): Update.
267         (process_full_comp_unit, process_full_type_unit): Clear the method
268         list.  Remove cleanups.
269         (psymtab_include_file_name): Add name_holder parameter.  Use
270         unique_xmalloc_ptr.
271         (dwarf_decode_lines): Update.
272
273 2018-01-17  Tom Tromey  <tom@tromey.com>
274             Simon Marchi  <simon.marchi@ericsson.com>
275
276         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
277         (dwarf2_per_objfile::free_cached_comp_units)
278         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
279         (init_cutu_and_read_dies_no_follow): Update.
280         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
281         (dwarf2_cu::~dwarf2_cu): New.
282         (free_heap_comp_unit, free_stack_comp_unit): Remove.
283         (age_cached_comp_units, free_one_cached_comp_unit): Update.
284
285 2018-01-17  Tom Tromey  <tom@tromey.com>
286             Simon Marchi  <simon.marchi@ericsson.com>
287
288         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
289         (struct die_reader_specs) <abbrev_table>: New member.
290         (struct abbrev_table): Add constructor.
291         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
292         <abbrev_obstack>: Now an auto_obstack.
293         (abbrev_table_up): New typedef.
294         (init_cu_die_reader): Add abbrev_table parameter.
295         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
296         Add result_dwo_abbrev_table.
297         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
298         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
299         Update.
300         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
301         parameter.
302         (skip_children): Update.
303         (abbrev_table::alloc_abbrev): Rename from
304         abbrev_table_alloc_abbrev.
305         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
306         (abbrev_table::lookup_abbrev): Rename from
307         abbrev_table_lookup_abbrev.
308         (abbrev_table_read_table): Return abbrev_table_up.
309         (abbrev_table_free, abbrev_table_free_cleanup)
310         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
311         (load_partial_dies): Update.
312
313 2018-01-17  Tom Tromey  <tom@tromey.com>
314
315         * dwarf2read.c (dwarf2_compute_name): Update comment.
316         (read_func_scope, read_variable): Update.
317         (new_symbol): Remove.
318         (new_symbol_full): Rename to new_symbol.
319
320 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
321
322         PR gdb/16577
323         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
324         a warning instead of throwing an error, set section size to 0 and return
325         NULL.
326         * gdb_bfd.h (gdb_bfd_map_section): Update description.
327
328 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
329
330         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
331         std::string.
332         (linux_ptrace_attach_fail_reason_string): Likewise.
333         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
334         Likewise.
335         (linux_ptrace_attach_fail_reason_string): Likewise.
336         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
337
338 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
339
340         * linux-nat.c (linux_nat_attach): Remove xstrdup.
341
342 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
343
344         PR gdb/21559
345         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
346         checking for fs_base/gs_base fields in struct user_regs_struct.
347         * configure: Regenerate.
348
349 2018-01-17  Yao Qi  <yao.qi@linaro.org>
350
351         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
352         function.
353         (aarch64_linux_init_abi): Install it to gdbarch hook
354         gcc_target_options.
355
356 2018-01-15  Pedro Alves  <palves@redhat.com>
357
358         * common/signals-state-save-restore.c
359         (save_original_signals_state): Fix typos.
360
361 2017-01-12  Tom Tromey  <tom@tromey.com>
362             Sergio Durigan Junior  <sergiodj@redhat.com>
363
364         * Makefile.in (install-only): Install gdb-add-index.
365
366 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
367
368         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
369
370 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
371
372         * infrun.c (keep_going_pass_signal): Clear step-over info when
373         insert_breakpoints fails.
374
375 2018-01-11  Pedro Alves  <palves@redhat.com>
376
377         PR gdb/22583
378         * infrun.c (resume): Rename to ...
379         (resume_1): ... this.
380         (resume): Reimplement as wrapper around resume_1.
381
382 2018-01-11  Pedro Alves  <palves@redhat.com>
383
384         PR remote/22597
385         * remote.c (remote_parse_stop_reply): Default to the last-set
386         general thread instead of to 'magic_null_ptid'.
387
388 2018-01-10  Pedro Alves  <palves@redhat.com>
389
390         * language.h (language_get_symbol_name_matcher): Rename ...
391         (get_symbol_name_matcher): ... this.
392         * language.c (language_get_symbol_name_matcher): Ditto.
393         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
394         callers adjusted.
395
396 2018-01-10  Pedro Alves  <palves@redhat.com>
397
398         PR gdb/22670
399         * dwarf2read.c
400         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
401         Adjust to use language_get_symbol_name_matcher instead of
402         language_defn::la_get_symbol_name_matcher.
403         * language.c (language_get_symbol_name_matcher): If in Ada mode
404         and the lookup name is a verbatim match, return Ada's matcher.
405         * language.h (language_get_symbol_name_matcher): Adjust comment.
406         (ada_lookup_name_info::verbatim_p):: New method.
407
408 2018-01-10  Pedro Alves  <palves@redhat.com>
409
410         PR gdb/22670
411         * ada-lang.c (ada_collect_symbol_completion_matches): If the
412         minsym's language is language_auto or language_cplus, pass down
413         language_ada instead.
414         * symtab.c (compare_symbol_name): Don't frob symbol language here.
415
416 2018-01-10  Pedro Alves  <palves@redhat.com>
417
418         PR gdb/22670
419         * minsyms.c (linkage_name_str): New function.
420         (iterate_over_minimal_symbols): Use it.
421
422 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
423
424         * NEWS: Document that 'info proc' now works on FreeBSD.
425
426 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
427
428         * configure.ac: Check for kinfo_getfile in libutil.
429         * configure: Regenerate.
430         * config.in: Regenerate.
431         * fbsd-nat.c: Include "fbsd-tdep.h".
432         (fbsd_fetch_cmdline): New.
433         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
434         rather than calling error.
435         (fbsd_info_proc): New.
436         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
437         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
438         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
439
440 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
441
442         * fbsd-nat.c (struct free_deleter): Remove.
443         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
444
445 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
446
447         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
448         NULL for an empty pathname.
449
450 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
451
452         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
453         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
454         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
455         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
456         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
457         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
458         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
459         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
460         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
461         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
462         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
463         (fbsd_core_fetch_timeval, fbsd_print_sigset)
464         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
465         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
466         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
467
468 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
469
470         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
471         (gnu_xfer_auxv): New function.
472         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
473         TARGET_OBJECT_AUXV.
474
475 2018-01-08  Yao Qi  <yao.qi@linaro.org>
476             Simon Marchi  <simon.marchi@ericsson.com>
477
478         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
479         common/selftest.c.
480         (COMMON_OBS): Remove selftest.o.
481         * configure.ac: Append selftest-arch.c and common/selftest.c to
482         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
483         * configure: Re-generated.
484         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
485         GDB_SELF_TEST.
486         (maintenance_info_selftests): Likewise.
487
488 2018-01-08  Xavier Roirand  <roirand@adacore.com>
489
490         * ada-valprint.c (val_print_packed_array_elements): Use
491         proper number of elements when printing an array indexed
492         by an enumeration type.
493
494 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
495
496         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
497         (dw2_get_file_names_reader): Adjust.
498         (lookup_dwo_signatured_type): Adjust.
499         (lookup_dwp_signatured_type): Adjust.
500         (lookup_signatured_type): Adjust.
501         (create_type_unit_group): Adjust.
502         (get_type_unit_group): Adjust.
503         (process_psymtab_comp_unit_reader): Adjust.
504         (build_type_psymtabs_reader): Adjust.
505         (scan_partial_symbols): Adjust.
506         (add_partial_symbol): Adjust.
507         (add_partial_subprogram): Adjust.
508         (peek_die_abbrev): Adjust.
509         (fixup_go_packaging): Adjust.
510         (process_imported_unit_die): Adjust.
511         (dwarf2_compute_name): Adjust.
512         (dwarf2_physname): Adjust.
513         (read_import_statement): Adjust.
514         (handle_DW_AT_stmt_list): Adjust.
515         (read_file_scope): Adjust.
516         (read_func_scope): Adjust.
517         (read_lexical_block_scope): Adjust.
518         (read_call_site_scope): Adjust.
519         (read_variable): Adjust.
520         (dwarf2_rnglists_process): Adjust.
521         (dwarf2_ranges_process): Adjust.
522         (dwarf2_ranges_read): Adjust.
523         (dwarf2_get_pc_bounds): Adjust.
524         (dwarf2_record_block_ranges): Adjust.
525         (dwarf2_add_field): Adjust.
526         (dwarf2_add_member_fn): Adjust.
527         (read_structure_type): Adjust.
528         (process_structure_scope): Adjust.
529         (read_enumeration_type): Adjust.
530         (read_array_type): Adjust.
531         (mark_common_block_symbol_computed): Adjust.
532         (read_common_block): Adjust.
533         (read_namespace_type): Adjust.
534         (read_namespace): Adjust.
535         (read_module_type): Adjust.
536         (read_tag_pointer_type): Adjust.
537         (read_tag_ptr_to_member_type): Adjust.
538         (read_tag_string_type): Adjust.
539         (read_subroutine_type): Adjust.
540         (read_typedef): Adjust.
541         (read_base_type): Adjust.
542         (attr_to_dynamic_prop): Adjust.
543         (read_subrange_type): Adjust.
544         (read_unspecified_type): Adjust.
545         (dwarf2_read_abbrevs): Adjust.
546         (load_partial_dies): Adjust.
547         (read_partial_die): Adjust.
548         (find_partial_die): Adjust.
549         (guess_partial_die_structure_name): Adjust.
550         (fixup_partial_die): Adjust.
551         (read_attribute_value): Adjust.
552         (read_addr_index): Adjust.
553         (read_addr_index_from_leb128): Adjust.
554         (read_str_index): Adjust.
555         (dwarf2_string_attr): Adjust.
556         (get_debug_line_section): Adjust.
557         (dwarf_decode_line_header): Adjust.
558         (lnp_state_machine::check_line_address): Adjust.
559         (dwarf_decode_lines_1): Adjust.
560         (dwarf_decode_lines): Adjust.
561         (dwarf2_start_symtab): Adjust.
562         (var_decode_location): Adjust.
563         (new_symbol_full): Adjust.
564         (dwarf2_const_value_data): Adjust.
565         (dwarf2_const_value_attr): Adjust.
566         (dwarf2_const_value): Adjust.
567         (die_type): Adjust.
568         (die_containing_type): Adjust.
569         (build_error_marker_type): Adjust.
570         (lookup_die_type): Adjust.
571         (guess_full_die_structure_name): Adjust.
572         (anonymous_struct_prefix): Adjust.
573         (determine_prefix): Adjust.
574         (dwarf2_name): Adjust.
575         (follow_die_ref_or_sig): Adjust.
576         (follow_die_offset): Adjust.
577         (follow_die_ref): Adjust.
578         (follow_die_sig_1): Adjust.
579         (follow_die_sig): Adjust.
580         (get_signatured_type): Adjust.
581         (get_DW_AT_signature_type): Adjust.
582         (decode_locdesc): Adjust.
583         (dwarf_decode_macros): Adjust.
584         (cu_debug_loc_section): Adjust.
585         (fill_in_loclist_baton): Adjust.
586         (dwarf2_symbol_mark_computed): Adjust.
587         (init_one_comp_unit): Don't assign
588         dwarf2_cu::dwarf2_per_objfile.
589         (set_die_type): Adjust.
590
591 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
592
593         * dwarf2read.c (struct mapped_debug_names): Add constructor.
594         <dwarf2_per_objfile>: New field.
595         (dwarf2_per_objfile): Remove global.
596         (get_dwarf2_per_objfile): New function.
597         (set_dwarf2_per_objfile): New function.
598         (dwarf2_build_psymtabs_hard): Change objfile parameter to
599         dwarf2_per_objfile.
600         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
601         (read_abbrev_offset): Likewise.
602         (read_indirect_string): Likewise.
603         (read_indirect_line_string): Likewise.
604         (read_indirect_string_at_offset): Likewise.
605         (read_indirect_string_from_dwz): Likewise.
606         (dwarf2_find_containing_comp_unit): Change objfile parameter to
607         dwarf2_per_objfile.
608         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
609         (create_all_comp_units): Change objfile parameter to
610         dwarf2_per_objfile.
611         (create_all_type_units): Likewise.
612         (process_queue): Add dwarf2_per_objfile parameter.
613         (read_and_check_comp_unit_head): Likewise.
614         (lookup_dwo_unit_in_dwp): Likewise.
615         (get_dwp_file): Likewise.
616         (process_cu_includes): Likewise.
617         (struct free_dwo_file_cleanup_data): New struct.
618         (dwarf2_has_info): Use get_dwarf2_per_objfile and
619         set_dwarf2_per_objfile.
620         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
621         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
622         context, adjust calls.
623         (dw2_instantiate_symtab): Likewise.
624         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
625         (dw2_get_cu): Likewise.
626         (create_cu_from_index_list): Change objfile parameter to
627         dwarf2_per_objfile.
628         (create_cus_from_index_list): Get dwarf2_per_objfile from
629         context, adjust calls.
630         (create_cus_from_index): Likewise.
631         (create_signatured_type_table_from_index): Change objfile
632         parameter to dwarf2_per_objfile.
633         (create_signatured_type_table_from_debug_names): Change objfile
634         parameter to dwarf2_per_objfile.
635         (create_addrmap_from_index): Likewise.
636         (create_addrmap_from_aranges): Likewise.
637         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
638         (dw2_setup): Remove.
639         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
640         context.
641         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
642         get_dwarf2_per_objfile.
643         (dw2_forget_cached_source_info): Likewise.
644         (dw2_map_symtabs_matching_filename): Likewise.
645         (struct dw2_symtab_iterator) <index>: Remove.
646         <dwarf2_per_objfile>: New field.
647         (dw2_symtab_iter_init): Replace index parameter with
648         dwarf2_per_objfile.
649         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
650         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
651         (dw2_print_stats): Likewise.
652         (dw2_dump): Likewise.
653         (dw2_expand_symtabs_for_function): Likewise.
654         (dw2_expand_all_symtabs): Likewise.
655         (dw2_expand_symtabs_with_fullname): Likewise.
656         (dw2_expand_marked_cus): Replace index and objfile parameters
657         with dwarf2_per_objfile.
658         (dw_expand_symtabs_matching_file_matcher): Add
659         dwarf2_per_objfile parameter and adjust calls.
660         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
661         adjust calls.
662         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
663         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
664         adjust calls.
665         (create_cus_from_debug_names_list): Replace objfile parameter
666         with dwarf2_per_objfile and adjust calls.
667         (create_cus_from_debug_names): Likewise.
668         (dwarf2_read_debug_names): Likewise.
669         (mapped_debug_names::namei_to_name): Adjust call.
670         (dw2_debug_names_iterator::next): Likewise.
671         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
672         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
673         (dw2_debug_names_dump): Likewise.
674         (dw2_debug_names_expand_symtabs_for_function): Likewise.
675         (dw2_debug_names_expand_symtabs_matching): Likewise.
676         (dwarf2_initialize_objfile): Likewise.
677         (dwarf2_build_psymtabs): Likewise.
678         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
679         this_cu.
680         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
681         (read_and_check_comp_unit_head): Likewise.
682         (read_abbrev_offset): Likewise.
683         (create_debug_type_hash_table): Likewise.
684         (create_debug_types_hash_table): Likewise.
685         (create_all_type_units): Replace objfile parameter with
686         dwarf2_per_objfile.
687         (add_type_unit): Add dwarf2_per_objfile parameter.
688         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
689         with dwarf2_per_objfile.
690         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
691         (lookup_dwp_signatured_type): Likewise.
692         (lookup_signatured_type): Likewise.
693         (read_cutu_die_from_dwo): Likewise.
694         (init_tu_and_read_dwo_dies): Likewise.
695         (init_cutu_and_read_dies): Likewise.
696         (init_cutu_and_read_dies_no_follow): Likewise.
697         (allocate_type_unit_groups_table): Add objfile parameter.
698         (create_type_unit_group): Use dwarf2_per_objfile from cu.
699         (get_type_unit_group): Likewise.
700         (process_psymtab_comp_unit): Update call.
701         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
702         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
703         (print_tu_stats): Likewise.
704         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
705         in void* parameter.
706         (build_type_psymtabs): Change objfile parameter to
707         dwarf2_per_objfile.
708         (process_skeletonless_type_unit): Use dwarf2_per_objfile
709         passed in void* parameter.
710         (process_skeletonless_type_units): Change objfile parameter to
711         dwarf2_per_objfile.
712         (set_partial_user): Likewise.
713         (dwarf2_build_psymtabs_hard): Likewise.
714         (read_comp_units_from_section): Likewise.
715         (create_all_comp_units): Likewise.
716         (scan_partial_symbols): Update calls.
717         (add_partial_symbol): Likewise.
718         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
719         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
720         (process_queue): Add dwarf2_per_objfile parameter.
721         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
722         (compute_compunit_symtab_includes): Likewise.
723         (process_cu_includes): Add dwarf2_per_objfile parameter.
724         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
725         (process_full_type_unit): Likewise.
726         (process_imported_unit_die): Update call.
727         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
728         (read_file_scope): Likewise.
729         (allocate_dwo_file_hash_table): Add objfile parameter.
730         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
731         (create_cus_hash_table): Likewise.
732         (create_dwp_hash_table): Likewise.
733         (create_dwo_unit_in_dwp_v1): Likewise.
734         (create_dwp_v2_section): Likewise.
735         (create_dwo_unit_in_dwp_v2): Likewise.
736         (lookup_dwo_unit_in_dwp): Likewise.
737         (try_open_dwop_file): Likewise.
738         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
739         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
740         cleanup to include a reference to dwarf2_per_objfile.
741         (open_dwp_file): Add dwarf2_per_objfile parameter.
742         (open_and_init_dwp_file): Likewise.
743         (get_dwp_file): Likewise.
744         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
745         (queue_and_load_all_dwo_tus): Update call.
746         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
747         data.
748         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
749         (dwarf2_ranges_process): Likewise.
750         (dwarf2_get_pc_bounds): Likewise.
751         (mark_common_block_symbol_computed): Likewise.
752         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
753         (dwarf2_read_abbrevs): Update call.
754         (read_partial_die): Use dwarf2_per_objfile from cu.
755         (find_partial_die): Likewise.
756         (fixup_partial_die): Likewise.
757         (read_attribute_value): Likewise.
758         (read_indirect_string_at_offset_from): Add objfile parameter.
759         (read_indirect_string_at_offset): Add dwarf2_per_objfile
760         parameter.
761         (read_indirect_string_from_dwz): Add objfile parameter.
762         (read_indirect_string): Add objfile parameter.
763         (read_addr_index_1): Add dwarf2_per_objfile parameter.
764         (read_addr_index): Use dwarf2_per_objfile from cu.
765         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
766         call dw2_setup.
767         (read_str_index): Use dwarf2_per_objfile from cu.
768         (get_debug_line_section): Likewise.
769         (read_formatted_entries): Add dwarf2_per_objfile parameter.
770         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
771         (new_symbol_full): Use dwarf2_per_objfile from cu.
772         (build_error_marker_type): Likewise.
773         (lookup_die_type): Likewise.
774         (determine_prefix): Likewise.
775         (follow_die_offset): Likewise.
776         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
777         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
778         (dwarf2_fetch_die_type_sect_off): Likewise.
779         (dwarf2_get_die_type): Likewise.
780         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
781         (get_signatured_type): Likewise.
782         (get_DW_AT_signature_type): Likewise.
783         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
784         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
785         (cu_debug_loc_section): Likewise.
786         (fill_in_loclist_baton): Likewise.
787         (dwarf2_symbol_mark_computed): Likewise.
788         (dwarf2_find_containing_comp_unit): Change objfile parameter to
789         dwarf2_per_objfile.
790         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
791         parameter.
792         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
793         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
794         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
795         (set_die_type): Use dwarf2_free_objfile from cu.
796         (get_die_type_at_offset): Likewise.
797         (dwarf2_per_objfile_free): Don't assign global variable.
798         (debug_names) <constructor>: Add dwarf2_per_objfile
799         parameter, update m_debugstrlookup construction.
800         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
801         parameter.
802         <m_dwarf2_per_objfile>: New field.
803         <lookup>: Use m_dwarf2_per_objfile.
804         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
805         (psyms_seen_size): Likewise.
806         (write_gdbindex): Replace objfile parameter with
807         dwarf2_per_objfile.
808         (write_debug_names): Likewise.
809         (write_psymtabs_to_index): Likewise.
810         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
811         calls.
812
813 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
814
815         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
816         <dwarf2_per_objfile>: New field.
817         (struct dwarf2_per_cu_data) <objfile>: Remove.
818         <dwarf2_per_objfile>: New field.
819         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
820         of objfile.
821         (create_signatured_type_table_from_index): Likewise.
822         (create_debug_type_hash_table): Likewise.
823         (fill_in_sig_entry_from_dwo_entry): Likewise.
824         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
825         (create_type_unit_group): Assign dwarf2_per_objfile instead of
826         objfile.
827         (create_partial_symtab): Access objfile through
828         dwarf2_per_objfile.
829         (process_psymtab_comp_unit_reader): Likewise.
830         (read_comp_units_from_section): Likewise.
831         (scan_partial_symbols): Likewise.
832         (add_partial_symbol): Likewise.
833         (add_partial_subprogram): Likewise.
834         (peek_die_abbrev): Likewise.
835         (fixup_go_packaging): Likewise.
836         (process_full_comp_unit): Likewise.
837         (process_full_type_unit): Likewise.
838         (process_imported_unit_die): Likewise.
839         (dwarf2_compute_name): Likewise.
840         (dwarf2_physname): Likewise.
841         (read_import_statement): Likewise.
842         (create_cus_hash_table): Assign dwarf2_physname instead of
843         objfile.
844         (read_func_scope): Access objfile through dwarf2_per_objfile.
845         (read_lexical_block_scope): Likewise.
846         (read_call_site_scope): Likewise.
847         (read_variable): Likewise.
848         (dwarf2_rnglists_process): Likewise.
849         (dwarf2_ranges_process): Likewise.
850         (dwarf2_ranges_read): Likewise.
851         (dwarf2_record_block_ranges): Likewise.
852         (dwarf2_add_field): Likewise.
853         (dwarf2_add_member_fn): Likewise.
854         (read_structure_type): Likewise.
855         (process_structure_scope): Likewise.
856         (read_enumeration_type): Likewise.
857         (read_array_type): Likewise.
858         (read_common_block): Likewise.
859         (read_namespace_type): Likewise.
860         (read_namespace): Likewise.
861         (read_module_type): Likewise.
862         (read_tag_pointer_type): Likewise.
863         (read_tag_ptr_to_member_type): Likewise.
864         (read_tag_string_type): Likewise.
865         (read_subroutine_type): Likewise.
866         (read_typedef): Likewise.
867         (read_base_type): Likewise.
868         (attr_to_dynamic_prop): Likewise.
869         (read_subrange_type): Likewise.
870         (read_unspecified_type): Likewise.
871         (load_partial_dies): Likewise.
872         (read_partial_die): Likewise.
873         (find_partial_die): Likewise.
874         (guess_partial_die_structure_name): Likewise.
875         (fixup_partial_die): Likewise.
876         (read_attribute_value): Likewise.
877         (read_addr_index_from_leb128): Likewise.
878         (dwarf2_read_addr_index): Likewise.
879         (dwarf2_string_attr): Likewise.
880         (lnp_state_machine::check_line_address): Likewise.
881         (dwarf_decode_lines_1): Likewise.
882         (dwarf_decode_lines): Likewise.
883         (dwarf2_start_symtab): Likewise.
884         (var_decode_location): Likewise.
885         (new_symbol_full): Likewise.
886         (dwarf2_const_value_data): Likewise.
887         (dwarf2_const_value_attr): Likewise.
888         (dwarf2_const_value): Likewise.
889         (die_type): Likewise.
890         (die_containing_type): Likewise.
891         (lookup_die_type): Likewise.
892         (guess_full_die_structure_name): Likewise.
893         (anonymous_struct_prefix): Likewise.
894         (dwarf2_name): Likewise.
895         (follow_die_ref_or_sig): Likewise.
896         (follow_die_offset): Likewise.
897         (follow_die_ref): Likewise.
898         (dwarf2_fetch_die_loc_sect_off): Likewise.
899         (dwarf2_fetch_constant_bytes): Likewise.
900         (dwarf2_fetch_die_type_sect_off): Likewise.
901         (dwarf2_get_die_type): Likewise.
902         (follow_die_sig): Likewise.
903         (decode_locdesc): Likewise.
904         (dwarf2_per_cu_objfile): Likewise.
905         (dwarf2_per_cu_text_offset): Likewise.
906         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
907         objfile.
908         (set_die_type): Access objfile through
909         dwarf2_per_objfile.
910
911 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
912
913         * valprint.c (converted_character_d): Remove typedef.
914         (DEF_VEC_O (converted_character_d)): Remove.
915         (count_next_character): Use std::vector.
916         (print_converted_chars_to_obstack): Likewise.
917         (generic_printstr): Likewise.
918
919 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
920
921         * xml-support.h (struct gdb_xml_value): Add constructor.
922         <value>: Change type to unique_xmalloc_ptr.
923         (gdb_xml_value_s): Remove typedef.
924         (DEF_VEC_O (gdb_xml_value_s)): Remove.
925         (gdb_xml_element_start_handler): Change parameter type to
926         std::vector.
927         (xml_find_attribute): Likewise.
928         * xml-support.c (xml_find_attribute): Change parameter type to
929         std::vector and adjust.
930         (gdb_xml_values_cleanup): Remove.
931         (gdb_xml_parser::start_element): Adjust to std::vector.
932         (xinclude_start_include): Change paraeter type to std::vector
933         and adjust.
934         * btrace.c (check_xml_btrace_version): Likewise.
935         (parse_xml_btrace_block): Likewise.
936         (parse_xml_btrace_pt_config_cpu): Likewise.
937         (parse_xml_btrace_pt): Likewise.
938         (parse_xml_btrace_conf_bts): Likewise.
939         (parse_xml_btrace_conf_pt): Likewise.
940         * memory-map.c (memory_map_start_memory): Likewise.
941         (memory_map_start_property): Likewise.
942         * osdata.c (osdata_start_osdata): Likewise.
943         (osdata_start_item): Likewise.
944         (osdata_start_column): Likewise.
945         * remote.c (start_thread): Likewise.
946         * solib-aix.c (library_list_start_library): Likewise.
947         (library_list_start_list): Likewise.
948         * solib-svr4.c (library_list_start_library): Likewise.
949         (svr4_library_list_start_list): Likewise.
950         * solib-target.c (library_list_start_segment): Likewise.
951         (library_list_start_section): Likewise.
952         (library_list_start_library): Likewise.
953         (library_list_start_list): Likewise.
954         * tracepoint.c (traceframe_info_start_memory): Likewise.
955         (traceframe_info_start_tvar): Likewise.
956         * xml-syscall.c (syscall_start_syscall): Likewise.
957         * xml-tdesc.c (tdesc_start_target): Likewise.
958         (tdesc_start_feature): Likewise.
959         (tdesc_start_reg): Likewise.
960         (tdesc_start_union): Likewise.
961         (tdesc_start_struct): Likewise.
962         (tdesc_start_flags): Likewise.
963         (tdesc_start_enum): Likewise.
964         (tdesc_start_field): Likewise.
965         (tdesc_start_enum_value): Likewise.
966         (tdesc_start_vector): Likewise.
967
968 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
969
970         * extension.h (struct xmethod_worker) <clone>: Remove.
971         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
972         Remove.
973         (python_xmethod_worker::clone): Remove.
974         * valops.c (find_overload_match): Use std::move instead of
975         clone.
976
977 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
978
979         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
980         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
981         <free_xmethod_worker_data>: Remove.
982         <get_matching_xmethod_workers>: Chance VEC to std::vector.
983         <get_xmethod_arg_types>: Remove.
984         <get_xmethod_result_type>: Remove.
985         <invoke_xmethod>: Remove.
986         * extension.c (new_xmethod_worker): Remove.
987         (clone_xmethod_worker): Remove.
988         (get_matching_xmethod_workers): Return void, pass std::vector by
989         pointer.
990         (get_xmethod_arg_types): Rename to...
991         (xmethod_worker::get_arg_types): ... this, and adjust.
992         (get_xmethod_result_type): Rename to...
993         (xmethod_worker::get_result_type): ... this, and adjust.
994         (invoke_xmethod): Remove.
995         (free_xmethod_worker): Remove.
996         (free_xmethod_worker_vec): Remove.
997         * extension.h (enum ext_lang_rc): Move here from
998         extension-priv.h.
999         (struct xmethod_worker): Add constructor and destructor.
1000         <data>: Remove.
1001         <value>: Remove.
1002         <invoke, clone, do_get_result_type, do_get_arg_types>: New
1003         virtual pure methods.
1004         <get_arg_types, get_result_type>: New methods.
1005         (xmethod_worker_ptr): Remove typedef.
1006         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
1007         (xmethod_worker_vec): Remove typedef.
1008         (xmethod_worker_up): New typedef.
1009         (invoke_xmethod): Remove.
1010         (clone_xmethod_worker): Remove.
1011         (free_xmethod_worker): Remove.
1012         (free_xmethod_worker_vec): Remove.
1013         (get_xmethod_arg_types): Remove.
1014         (get_xmethod_result_type): Remove.
1015         * valops.c (find_method_list): Use std::vector, don't use
1016         intermediate vector.
1017         (value_find_oload_method_list): Use std::vector.
1018         (find_overload_match): Use std::vector.
1019         (find_oload_champ): Use std::vector.
1020         * value.c (value_free): Use operator delete.
1021         (value_of_xmethod): Rename to...
1022         (value_from_xmethod): ... this.  Don't assign
1023         xmethod_worker::value, take rvalue-reference.
1024         (result_type_of_xmethod): Adjust.
1025         (call_xmethod): Adjust.
1026         * value.h: Include extension.h.
1027         (struct xmethod_worker): Don't forward-declare.
1028         (value_of_xmethod): Rename to...
1029         (value_from_xmethod): ... this, take rvalue-reference.
1030         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
1031         (struct python_xmethod_worker): ... this, add constructor and
1032         destructor.
1033         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
1034         (gdbpy_free_xmethod_worker_data): Rename to...
1035         (python_xmethod_worker::~python_xmethod_worker): ... this and
1036         adjust.
1037         (gdbpy_clone_xmethod_worker_data): Rename to...
1038         (python_xmethod_worker::clone): ... this and adjust.
1039         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
1040         temporary vector.
1041         (gdbpy_get_xmethod_arg_types): Rename to...
1042         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
1043         (gdbpy_get_xmethod_result_type): Rename to...
1044         (python_xmethod_worker::do_get_result_type): ... this and
1045         adjust.
1046         (gdbpy_invoke_xmethod): Rename to...
1047         (python_xmethod_worker::invoke): ... this and adjust.
1048         (new_python_xmethod_worker): Rename to...
1049         (python_xmethod_worker::python_xmethod_worker): ... this and
1050         adjust.
1051         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
1052         Remove.
1053         (gdbpy_free_xmethod_worker_data): Remove.
1054         (gdbpy_get_matching_xmethod_workers): Use std::vector.
1055         (gdbpy_get_xmethod_arg_types): Remove.
1056         (gdbpy_get_xmethod_result_type): Remove.
1057         (gdbpy_invoke_xmethod): Remove.
1058         * python/python.c (python_extension_ops): Remove obsolete
1059         callbacks.
1060
1061 2018-01-05  Pedro Alves  <palves@redhat.com>
1062
1063         PR gdb/18653
1064         * common/signals-state-save-restore.c
1065         (save_original_signals_state): New parameter 'quiet'.  Warn if we
1066         find a custom handler preinstalled, instead of internal erroring.
1067         But only warn if !quiet.
1068         * common/signals-state-save-restore.h
1069         (save_original_signals_state): New parameter 'quiet'.
1070         * main.c (captured_main_1): Move save_original_signals_state call
1071         after option handling, and pass QUIET.
1072
1073 2018-01-05  Pedro Alves  <palves@redhat.com>
1074
1075         * spu-tdep.c (spu_catch_start): Pass
1076         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
1077
1078 2018-01-05  Pedro Alves  <palves@redhat.com>
1079
1080         PR gdb/22670
1081         * ada-lang.c (literal_symbol_name_matcher): New function.
1082         (ada_get_symbol_name_matcher): Use it for
1083         symbol_name_match_type::SEARCH_NAME.
1084         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
1085         it down instead of assuming symbol_name_match_type::FULL.
1086         * block.h (block_lookup_symbol): New parameter 'match_type'.
1087         * c-valprint.c (print_unpacked_pointer): Use
1088         lookup_symbol_search_name instead of lookup_symbol.
1089         * compile/compile-object-load.c (get_out_value_type): Pass down
1090         symbol_name_match_type::SEARCH_NAME.
1091         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
1092         symbol_name_match_type::FULL.
1093         * cp-support.c (cp_get_symbol_name_matcher): Handle
1094         symbol_name_match_type::SEARCH_NAME.
1095         * infrun.c (insert_exception_resume_breakpoint): Use
1096         lookup_symbol_search_name.
1097         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
1098         * psymtab.c (maintenance_check_psymtabs): Use
1099         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
1100         * stack.c (print_frame_args): Use lookup_symbol_search_name and
1101         SYMBOL_SEARCH_NAME.
1102         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
1103         if symbol_name_match_type::SEARCH_NAME.
1104         (lookup_symbol_in_language): Pass down
1105         symbol_name_match_type::FULL.
1106         (lookup_symbol_search_name): New.
1107         (lookup_language_this): Pass down
1108         symbol_name_match_type::SEARCH_NAME.
1109         (lookup_symbol_aux, lookup_local_symbol): New parameter
1110         'match_type'.  Pass it down.
1111         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
1112         (lookup_symbol_search_name): New declaration.
1113         (lookup_symbol_in_block): New 'match_type' parameter.
1114
1115 2018-01-05  Pedro Alves  <palves@redhat.com>
1116
1117         PR gdb/22670
1118         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
1119         ada_lookup_symbol.
1120         (ada_lookup_symbol): Reimplement in terms of
1121         ada_lookup_symbol_list, bits factored out from
1122         ada_lookup_encoded_symbol.
1123
1124 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
1125
1126         * ada-exp.y (write_object_renaming): When subscripting an array
1127         using a symbol as the index, pass the block in call to
1128         ada_lookup_encoded_symbol when looking that symbol up.
1129
1130 2018-01-05  Jerome Guitton  <guitton@adacore.com>
1131
1132         * ada-lang.c (ada_array_length): Use ada_index_type instead of
1133         TYPE_INDEX_TYPE.
1134
1135 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
1136
1137         * ada-lang.c (ada_to_fixed_value_create): Add handling of
1138         the case where VALUE_LVAL (val0) is not lval_memory.
1139
1140 2018-01-05  Xavier Roirand  <roirand@adacore.com>
1141
1142         * ada-valprint.c (print_optional_low_bound): Handle
1143         character-indexed array printing like boolean-indexed array
1144         printing.
1145
1146 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
1147
1148         * NEWS: Create a new section for the next release branch.
1149         Rename the section of the current branch, now that it has
1150         been cut.
1151
1152 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
1153
1154         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
1155         * version.in: Bump version to 8.1.50.DATE-git.
1156
1157 2018-01-03  Xavier Roirand  <roirand@adacore.com>
1158
1159         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
1160         Add field.
1161         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
1162         Add field.
1163         (default_exception_support_info) <catch_handlers_sym>: Add field.
1164         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
1165         (ada_exception_name_addr_1): Add "catch handlers" handling.
1166         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
1167         Update all callers.
1168         (create_excep_cond_exprs) <ex>: Add parameter.
1169         (re_set_exception): Update create_excep_cond_exprs call.
1170         (print_it_exception, print_one_exception, print_mention_exception)
1171         (print_recreate_exception): Add "catch handler" handling.
1172         (allocate_location_catch_handlers, re_set_catch_handlers)
1173         (check_status_catch_handlers, print_it_catch_handlers)
1174         (print_one_catch_handlers, print_mention_catch_handlers)
1175         (print_recreate_catch_handlers): New function.
1176         (catch_handlers_breakpoint_ops): New variable.
1177         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
1178         Add parameter.  Add "catch handler" handling.
1179         (ada_exception_sym_name, ada_exception_breakpoint_ops):
1180         Add "catch handler" handling.
1181         (ada_exception_catchpoint_cond_string): Add "catch handler"
1182         handling.
1183         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
1184         call.
1185         (catch_ada_handlers_command): New function.
1186         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
1187         operations structure.
1188         (_initialize_ada_language): Add "catch handlers" command entry.
1189         * NEWS: Document "catch handlers" feature.
1190
1191 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
1192
1193         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
1194         account when creating the array type of the slice.
1195         (ada_value_slice): Likewise.
1196
1197 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
1198
1199         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
1200         New enum value.
1201         (create_array_type_with_stride): Add byte_stride_prop parameter.
1202         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
1203         New parameter.  Update all callers in this file.
1204         (array_type_has_dynamic_stride): New function.
1205         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
1206         of arrays with dynamic byte strides.
1207         * dwarf2read.c (read_array_type): Add support for dynamic
1208         DW_AT_byte_stride attributes.
1209
1210 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
1211
1212         * dwarf2read.c (read_unspecified_type): Treat
1213         DW_TAG_enumeration_type DIEs from Ada units as stubs.
1214
1215 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
1216
1217         Update copyright year range in all GDB files.
1218
1219 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
1220
1221         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
1222         and gdb/testsuite/gdb.base/step-line.c.
1223
1224 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
1225
1226         * copyright.py (main): Dump the contents of
1227         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
1228         even if BY_HAND is empty.
1229
1230 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
1231
1232         * top.c (print_gdb_version): Update Copyright year in version
1233         message.
1234
1235 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
1236
1237         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
1238
1239 For older changes see ChangeLog-2017.
1240 \f
1241 Local Variables:
1242 mode: change-log
1243 left-margin: 8
1244 fill-column: 74
1245 version-control: never
1246 coding: utf-8
1247 End: