Factorize killing the children in linux-ptrace.c, and fix a 'process leak'.
[external/binutils.git] / gdb / ChangeLog
1 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2
3         * nat/linux-ptrace.c (kill_child): New function.
4         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
5         Add a call to kill_child in case of early return after fork.
6         (linux_check_ptrace_features): Use kill_child instead of local code.
7         (linux_test_for_tracefork): Likewise.
8
9 2018-12-14  Tom Tromey  <tom@tromey.com>
10
11         * Makefile.in: Remove "alloca" comment.
12         (INFOFILES): Remove.
13         (local-maintainer-clean): Don't use INFOFILES.
14
15 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
16
17         * syscalls/update-freebsd.sh: New file.
18         * syscalls/freebsd.xml: Regenerate.
19
20 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
21
22         * NEWS: Add entry documenting system call aliases.
23         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
24         to get_syscalls_by_name.
25         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
26         * gdbarch.h: Regenerate.
27         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
28         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
29         from get_syscall_by_name.  Now accepts a pointer to a vector of
30         integers and returns a bool.
31         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
32         (syscall_create_syscall_desc): Add alias parameter and pass it to
33         syscall_desc constructor.
34         (syscall_start_syscall): Handle alias attribute.
35         (syscall_attr): Add alias attribute.
36         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
37         Now accepts a pointer to a vector of integers and returns a
38         bool.  Add syscalls whose alias or name matches the requested
39         name.
40         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
41         accepts a pointer to a vector of integers and returns a bool.
42         * xml-syscall.h (get_syscalls_by_name): Likewise.
43
44 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
45
46         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
47         to get_syscalls_by_group.
48         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
49         false.
50         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
51         numbers to an existing vector of integers and return a bool.
52         (get_syscalls_by_group): Accept pointer to vector of integers
53         and change return type to bool.
54         * xml-syscall.h (get_syscalls_by_group): Likewise.
55
56 2018-12-13  Jim Wilson  <jimw@sifive.com>
57
58         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
59         comment for SD field, and correct xlen calculation.  For MISA, add
60         comment for MXL field, add call to register_size, and correct base
61         calculation.
62
63 2018-12-13  Stafford Horne  <shorne@gmail.com>
64
65         * NEWS(New targets): Add or1k*-*-linux*.
66
67 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
68
69         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
70         declare on one line to fix ARI warning.
71
72 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
73
74         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
75         (infcall_suspend_state::registers): New.
76         (infcall_suspend_state::restore): New.
77         (infcall_suspend_state::thread_suspend): Rename to...
78         (infcall_suspend_state::m_thread_suspend): ...this.
79         (infcall_suspend_state::registers): Rename to...
80         (infcall_suspend_state::m_registers): ...this.
81         (infcall_suspend_state::siginfo_gdbarch): Rename to...
82         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
83         (infcall_suspend_state::siginfo_data): Rename to...
84         (infcall_suspend_state::m_siginfo_data): ...this.
85         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
86         constructor.
87         (restore_infcall_suspend_state): Rewrite to use
88         infcall_suspend_state::restore method.
89         (get_infcall_suspend_state_regcache): Use
90         infcall_suspend_state::registers method.
91
92 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
93
94         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
95         arguments are passed in integer registers.
96         (riscv_call_arg_complex_float): Likewise.
97
98 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
99
100         * nat/linux-osdata.c (common_getter): New function.
101         (struct osdata_type): Change getter to take_snapshot.
102         Add LONGEST len_avail and struct buffer buffer.
103         Change all elements in the initializer.
104         Add an element for the list of types.
105         (linux_xfer_osdata_info_os_types): New function.
106         (linux_common_xfer_osdata): Use common_getter for the list of types.
107         Replace getter call by common_getter.
108         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
109         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
110         (linux_xfer_osdata_fds): Likewise.
111         (linux_xfer_osdata_modules): Likewise.
112         (linux_xfer_osdata_msg): Likewise.
113         (linux_xfer_osdata_processes): Likewise.
114         (linux_xfer_osdata_processgroups): Likewise.
115         (linux_xfer_osdata_sem): Likewise.
116         (linux_xfer_osdata_shm): Likewise.
117         (linux_xfer_osdata_isockets): Likewise.
118         (linux_xfer_osdata_threads): Likewise.
119
120 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
121
122         * nat/linux-osdata.c: Removed various trailing spaces.
123
124 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
125
126         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
127         leading whitespace before #include line.
128
129 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
130             Дилян Палаузов  <dilyan.palauzov@aegee.org>
131
132         PR gdb/23950
133         * configure.ac: Search for tgetent in libtinfow.
134         * configure: Re-generate.
135
136 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
137
138         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
139         (thread_db_err_str): Forward declare.
140         (delete_thread_db_info): Call td_ta_delete_p if available.
141         (try_thread_db_load_1): Acquire td_ta_delete address.
142         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
143
144 2018-12-08  Pedro Alves  <palves@redhat.com>
145
146         * source.c (forward_search_command): Rename to ...
147         (search_command_helper): ... this.  Add 'forward' parameter.
148         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
149         buffer.  Handle backward searches too.
150         (forward_search_command, reverse_search_command): Reimplement by
151         calling search_command_helper.
152
153 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
154
155         * .dir-locals.el: Copy most of the settings from c-mode over to
156         c++-mode.
157
158 2018-12-08  Stafford Horne  <shorne@gmail.com>
159
160         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
161         * configure.tgt: Add or1k*-*-linux*.
162         * or1k-linux-tdep.c: New file.
163         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
164
165 2018-12-07  Pedro Alves  <palves@redhat.com>
166
167         * dwarf2read.c (get_gdb_index_contents_from_section): Use
168         gdb::make_array_view.
169
170 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
171
172         * language.c (_initialize_language): Fix leak by assigning
173         a static string to language.  Same for range and case_sensitive,
174         even if no leak is detected for these variables.
175
176 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
177
178         * configure: Re-generate.
179         * configure.ac: Use separate sed expressions to escape variables
180         in auto-load directories.
181
182 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
183
184         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
185         (riscv_find_default_target_description): Use new function to
186         extract feature from gdbarch_info.
187         (riscv_gdbarch_init): Add error checks for xlen and flen between
188         target description and bfd headers.  Be smarter about when we
189         think the hardware floating point abi should be used.
190
191 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
192
193         * nat/aarch64-linux-hw-point.c
194         (aarch64_linux_any_set_debug_regs_state): New function.
195         * nat/aarch64-linux-hw-point.h
196         (aarch64_linux_any_set_debug_regs_state): New declaration.
197         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
198         BPs or WPs are set.
199
200 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
201
202         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
203         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
204
205 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
206             Simon Marchi  <simon.marchi@ericsson.com>
207
208         * linespec.c (symtab_vector_up): Remove.
209         (symtabs_from_filename): Change return type to std::vector.
210         (collect_symtabs_from_filename): Likewise.
211         (create_sals_line_offset): Assign return value of
212         collect_symtabs_from_filename to *ls->file_symtabs.
213         (convert_explicit_location_to_linespec): Remove call to release.
214         (parse_linespec): Likewise.
215         (symtab_collector) <symtab_collector>: Remove initialization of
216         m_symtabs.
217         <release_symtabs>: Change return type to std::vector<symtab *>.
218         <operator ()>: Adjust.
219
220 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
221
222         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
223         defined.
224         (union sigval32, struct siginfo32, fbsd_siginfo_size)
225         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
226         of KERN_PROC_AUXV and PT_LWPINFO.
227         (fbsd_nat_target::xfer_partial): Define method unconditionally.
228         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
229         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
230         Make TARGET_OBJECT_FREEBSD_VMMAP and
231         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
232         and KERN_PROC_PS_STRINGS.
233         * fbsd-nat.h: Include <sys/proc.h>.
234         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
235
236 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
237
238         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
239         header files.
240         (riscv_linux_nat_target::read_description): New method.
241
242 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
243
244         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
245         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
246         (riscv_tdesc_cache): New global.
247         (riscv_create_target_description): Look in the cache before
248         creating a new target description.
249
250 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
251
252         * arch/riscv.h (riscv_gdb_features::operator==): New.
253         (riscv_gdb_features::operator!=): New.
254         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
255         operator.
256
257 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
258
259         * arch/riscv.h (riscv_create_target_description): Make return type
260         const.
261         * arch/riscv.c (riscv_create_target_description): Likewise.
262         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
263
264 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
265             Keith Seitz  <keiths@redhat.com>
266             Tom Tromey  <tom@tromey.com>
267             Sergio Durigan Junior  <sergiodj@redhat.com>
268
269         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
270         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
271         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
272         inside the CU.
273
274 2018-11-30  Pedro Alves  <palves@redhat.com>
275
276         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
277         <stratum>: New override.
278         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
279         <stratum>: New override.
280         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
281         <stratum>: New override.
282         * exec.c (exec_target) <exec_target>: Delete.
283         <stratum>: New override.
284         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
285         stratum method instead of the to_stratum field.
286         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
287         <stratum>: New override.
288         (thread_db_target::thread_db_target): Delete.
289         * make-target-delegates (print_class): Don't print a ctor
290         declaration.  Print a stratum method override declaration.
291         * process-stratum-target.h (process_stratum_target)
292         <process_stratum_target>: Delete.
293         <stratum>: New override.
294         * ravenscar-thread.c (ravenscar_thread_target)
295         <ravenscar_thread_target>: Delete.
296         <stratum>: New override.
297         * record-btrace.c (record_btrace_target)
298         <record_btrace_target>: Delete.
299         <stratum>: New override.
300         * record-full.c (record_full_base_target)
301         <record_full_base_target>: Delete.
302         <stratum>: New override.
303         * record.c (record_disconnect, record_detach)
304         (record_mourn_inferior, record_kill): Adjust to use the stratum
305         method instead of the to_stratum field.
306         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
307         * sol-thread.c (sol_thread_target)
308         <sol_thread_target>: Delete.
309         <stratum>: New override.
310         * spu-multiarch.c (spu_multiarch_target)
311         <spu_multiarch_target>: Delete.
312         <stratum>: New override.
313         * target-delegates.c: Regenerate.
314         * target.c (target_stack::push, target_stack::unpush)
315         (pop_all_targets_above, pop_all_targets_at_and_above)
316         (info_target_command, target_require_runnable)
317         (target_stack::find_beneath): Adjust to use the stratum method
318         instead of the to_stratum field.
319         (dummy_target::dummy_target): Delete.
320         (dummy_target::stratum): New.
321         (debug_target::debug_target): Delete.
322         (debug_target::stratum): New.
323         (maintenance_print_target_stack): Adjust to use the stratum method
324         instead of the to_stratum field.
325         * target.h (struct target_ops) <stratum>: New method.
326         <to_stratum>: Delete.
327         <is_pushed>: Adjust to use the stratum method
328         instead of the to_stratum field.
329
330 2018-11-30  Pedro Alves  <palves@redhat.com>
331
332         * corelow.c (core_target) <has_all_memory, has_execution>: New
333         overrides.
334         * inf-child.c (inf_child_target::has_all_memory)
335         (inf_child_target::has_memory, inf_child_target::has_stack)
336         (inf_child_target::has_registers)
337         (inf_child_target::has_execution): Delete.
338         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
339         has_stack, has_registers, has_execution>: Delete.
340         * process-stratum-target.c
341         (process_stratum_target::has_all_memory)
342         (process_stratum_target::has_memory)
343         (process_stratum_target::has_stack)
344         (process_stratum_target::has_registers)
345         (process_stratum_target::has_execution): New.
346         * process-stratum-target.h (process_stratum_target)
347         <has_all_memory, has_memory, has_stack, has_registers,
348         has_execution>: New method overrides.
349         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
350         has_memory, has_stack, has_registers, has_execution>: Delete.
351         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
352         has_execution>: Delete.
353         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
354         has_registers, has_execution>: Delete.
355         * target.c (default_child_has_all_memory)
356         (default_child_has_memory, default_child_has_stack)
357         (default_child_has_registers, default_child_has_execution):
358         Delete.
359         * target.h (default_child_has_all_memory)
360         (default_child_has_memory, default_child_has_stack)
361         (default_child_has_registers, default_child_has_execution):
362         Delete.
363         * tracefile.h (tracefile_target) <has_execution>: New override.
364
365 2018-11-30  Pedro Alves  <palves@redhat.com>
366
367         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
368         * bsd-kvm.c: Include "process-stratum-target.h".
369         (bsd_kvm_target): Now inherits from process_stratum_target.
370         (bsd_kvm_target::bsd_kvm_target): Default it.
371         * corelow.c: Include "process-stratum-target.h".
372         (core_target): Now inherits from process_stratum_target.
373         (core_target::core_target): Don't set to_stratum here.
374         * inf-child.c (inf_child_target::inf_child_target): Delete.
375         * inf-child.h: Include "process-stratum-target.h".
376         (inf_child_target): Inherit from process_stratum_target.
377         (inf_child_target) <inf_child_target>: Default it.
378         <can_async_p, supports_non_stop, supports_disable_randomization>:
379         Delete overrides.
380         * process-stratum-target.c: New file.
381         * process-stratum-target.h: New file.
382         * remote-sim.c: Include "process-stratum-target.h".
383         (gdbsim_target): Inherit from process_stratum_target.
384         <gdbsim_target>: Default it.
385         * remote.c: Include "process-stratum-target.h".
386         (remote_target): Inherit from process_stratum_target.
387         <remote_target>: Default it.
388         * target.c (default_thread_address_space)
389         (default_thread_architecture): Delete.
390         * target.h (target_ops) <thread_architecture>: Now returns NULL by
391         default.
392         <thread_address_space>: Ditto.
393         * test-target.h: Include "process-stratum-target.h" instead of
394         "target.h".
395         (test_target_ops): Inherit from process_stratum_target.
396         <test_target_ops>: Default it.
397         * tracefile.c (tracefile_target::tracefile_target): Delete.
398         * tracefile.h: Include "process-stratum-target.h".
399         (tracefile_target): Inherit from process_stratum_target.
400         <tracefile_target>: Default it.
401         * target-delegates.c: Regenerate.
402
403 2018-11-30  Pedro Alves  <palves@redhat.com>
404
405         * Makefile.in (COMMON_SFILES): Add test-target.c.
406         * gdbarch-selftests.c: Include "test-target.h".
407         * regcache.c: Include "test-target.h".
408         * target.c (test_target_info, test_target_ops::info): Move to ...
409         * test-target.c: ... this new file.
410         * target.h (test_target_ops): Move to ...
411         * test-target.h: ... this new file.
412
413 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
414
415         * source.c (forward_search_command): Fix leak by using
416         xrealloc even for the first allocation in the loop, as buf
417         is static.
418
419 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
420
421         PR gdb/23093
422         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
423         (fbsd_gdb_signal_to_target): New.
424         (fbsd_init_abi): Install gdbarch "signal_from_target" and
425         "signal_to_target" methods.
426
427 2018-11-29  Tom Tromey  <tom@tromey.com>
428
429         * valarith.c (value_x_unop): Don't set argvec[3].
430
431 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
432
433         PR gdb/23917
434         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
435         semicolon.
436
437 2018-11-26  Pedro Alves  <palves@redhat.com>
438
439         * procfs.c (procfs_notice_thread): Replace uses of
440         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
441         * sol-thread.c (sol_thread_target::wait)
442         (sol_update_thread_list_callback): Likewise.
443
444 2018-11-25  Tom Tromey  <tom@tromey.com>
445
446         * ui-out.c (ui_out::field_fmt): Remove comment.
447         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
448         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
449
450 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
451
452         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
453         leak in open_source_file' has been partially undone by '2179fbc36d23
454         Return scoped_fd from open_source_file'. Re-add the transfer of
455         current s->fullname to the unique_xmalloc_ptr fullname given
456         to find_and_open_source.
457
458 2018-11-23  Pedro Alves  <palves@redhat.com>
459
460         * gdbthread.h (enum thread_state): Move comments here.
461         (is_running, is_stopped, is_exited): Remove declarations.
462
463 2018-11-22  Pedro Alves  <palves@redhat.com>
464
465         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
466         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
467         ALL_NON_EXITED_THREADS with all_non_exited_threads.
468         (print_one_breakpoint_location): Replace ALL_INFERIORS with
469         all_inferiors.
470         * bsd-kvm.c: Include inferior.h.
471         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
472         with all_non_exited_threads.
473         * common/filtered-iterator.h: New.
474         * common/safe-iterator.h: New.
475         * corelow.c (core_target_open): Don't call init_thread_list here.
476         * darwin-nat.c (thread_info_from_private_thread_info): Replace
477         ALL_THREADS with all_threads.
478         * fbsd-nat.c (fbsd_nat_target::resume): Replace
479         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
480         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
481         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
482         * fork-child.c (postfork_hook): Don't call init_thread_list here.
483         * gdbarch-selftests.c (register_to_value_test): Adjust.
484         * gdbthread.h: Don't include "inferior.h" here.
485         (struct inferior): Forward declare.
486         (enum step_over_calls_kind): Moved here from inferior.h.
487         (thread_info::deletable): Definition moved to thread.c.
488         (find_thread_ptid (inferior *, ptid_t)): Declare.
489         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
490         Include "thread-iter.h".
491         (all_threads, all_non_exited_threads, all_threads_safe): New.
492         (any_thread_p): Declare.
493         (thread_list): Delete.
494         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
495         all_non_exited_threads.
496         (proceed_after_attach_callback): Delete.
497         (proceed_after_attach): Take an inferior pointer instead of an
498         integer PID.  Adjust to use range-for.
499         (attach_post_wait): Pass down inferior pointer instead of pid.
500         Use range-for instead of ALL_NON_EXITED_THREADS.
501         (detach_command): Remove init_thread_list call.
502         * inferior-iter.h: New.
503         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
504         (delete_thread_of_inferior): Delete.
505         (delete_inferior, exit_inferior_1): Use range-for with
506         inf->threads_safe() instead of iterate_over_threads.
507         (inferior_appeared): Call init_thread_list here.
508         (discard_all_inferiors): Use all_non_exited_inferiors.
509         (find_inferior_id, find_inferior_pid): Use all_inferiors.
510         (iterate_over_inferiors): Use all_inferiors_safe.
511         (have_inferiors, number_of_live_inferiors): Use
512         all_non_exited_inferiors.
513         (number_of_inferiors): Use all_inferiors and std::distance.
514         (print_inferior): Use all_inferiors.
515         * inferior.h: Include gdbthread.h.
516         (enum step_over_calls_kind): Moved to gdbthread.h.
517         (struct inferior) <thread_list>: New field.
518         <threads, non_exited_threads, threads_safe>: New methods.
519         (ALL_INFERIORS): Delete.
520         Include "inferior-iter.h".
521         (ALL_NON_EXITED_INFERIORS): Delete.
522         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
523         functions.
524         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
525         ALL_NON_EXITED_THREADS with all_non_exited_threads.
526         * infrun.c (follow_exec): Use all_threads_safe.
527         (clear_proceed_status, proceed): Use all_non_exited_threads.
528         (init_wait_for_inferior): Don't clear inline frame state here.
529         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
530         all_threads instead of ALL_NON_EXITED_THREADS.
531         (random_pending_event_thread): Use all_non_exited_threads instead
532         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
533         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
534         instead of ALL_NON_EXITED_THREADS.
535         (handle_no_resumed): Use all_non_exited_threads instead of
536         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
537         ALL_INFERIORS.
538         (restart_threads, switch_back_to_stepped_thread): Use
539         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
540         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
541         all_inferiors.
542         (kill_unfollowed_fork_children): Use inf->non_exited_threads
543         instead of ALL_NON_EXITED_THREADS.
544         * linux-tdep.c (linux_make_corefile_notes): Use
545         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
546         * linux-thread-db.c (thread_db_target::update_thread_list):
547         Replace ALL_INFERIORS with all_inferiors.
548         (thread_db_target::thread_handle_to_thread_info): Use
549         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
550         * mi/mi-interp.c (multiple_inferiors_p): New.
551         (mi_on_resume_1): Simplify using all_non_exited_threads and
552         multiple_inferiors_p.
553         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
554         instead of ALL_NON_EXITED_THREADS.
555         * nto-procfs.c (nto_procfs_target::open): Don't call
556         init_thread_list here.
557         * record-btrace.c (record_btrace_target_open)
558         (record_btrace_target::stop_recording)
559         (record_btrace_target::close)
560         (record_btrace_target::record_is_replaying)
561         (record_btrace_target::resume, record_btrace_target::wait)
562         (record_btrace_target::record_stop_replaying): Use
563         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
564         * record-full.c (record_full_wait_1): Use all_non_exited_threads
565         instead of ALL_NON_EXITED_THREADS.
566         * regcache.c (cooked_read_test): Remove reference to global
567         thread_list.
568         * remote-sim.c (gdbsim_target::create_inferior): Don't call
569         init_thread_list here.
570         * remote.c (remote_target::update_thread_list): Use
571         all_threads_safe instead of ALL_NON_EXITED_THREADS.
572         (remote_target::process_initial_stop_replies): Replace
573         ALL_INFERIORS with all_non_exited_inferiors and use
574         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
575         (remote_target::open_1): Don't call init_thread_list here.
576         (remote_target::append_pending_thread_resumptions)
577         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
578         instead of ALL_NON_EXITED_THREADS.
579         (remote_target::commit_resume)
580         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
581         with all_non_exited_inferiors and use all_non_exited_threads
582         instead of ALL_NON_EXITED_THREADS.
583         (remote_target::kill_new_fork_children): Use
584         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
585         init_thread_list and init_wait_for_inferior calls.
586         (remote_target::remote_btrace_maybe_reopen)
587         (remote_target::thread_handle_to_thread_info): Use
588         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
589         * target.c (target_terminal::restore_inferior)
590         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
591         all_non_exited_inferiors.
592         * thread-iter.c: New file.
593         * thread-iter.h: New file.
594         * thread.c: Include "inline-frame.h".
595         (thread_list): Delete.
596         (clear_thread_inferior_resources): Call clear_inline_frame_state.
597         (init_thread_list): Use all_threads_safe instead of
598         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
599         (new_thread): Adjust to per-inferior thread lists.
600         (add_thread_silent): Pass inferior to find_thread_ptid.
601         (thread_info::deletable): New, moved from the header.
602         (delete_thread_1): Adjust to per-inferior thread lists.
603         (find_thread_global_id): Use inf->threads().
604         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
605         find_thread_ptid.
606         (find_thread_ptid(inferior*, ptid_t)): New overload.
607         (iterate_over_threads): Use all_threads_safe.
608         (any_thread_p): New.
609         (thread_count): Use all_threads and std::distance.
610         (live_threads_count): Use all_non_exited_threads and
611         std::distance.
612         (valid_global_thread_id): Use all_threads.
613         (in_thread_list): Use find_thread_ptid.
614         (first_thread_of_inferior): Adjust to per-inferior thread lists.
615         (any_thread_of_inferior, any_live_thread_of_inferior): Use
616         inf->non_exited_threads().
617         (prune_threads, delete_exited_threads): Use all_threads_safe.
618         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
619         (set_resumed, set_running): Use all_non_exited_threads.
620         (is_thread_state, is_stopped, is_exited, is_running)
621         (is_executing): Delete.
622         (set_executing, set_stop_requested, finish_thread_state): Use
623         all_non_exited_threads.
624         (print_thread_info_1): Use all_inferiors and all_threads.
625         (thread_apply_all_command): Use all_non_exited_threads.
626         (thread_find_command): Use all_threads.
627         (update_threads_executing): Use all_non_exited_threads.
628         * tid-parse.c (parse_thread_id): Use inf->threads.
629         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
630
631 2018-11-22  Pedro Alves  <palves@redhat.com>
632
633         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
634         switch to it before calling into try_open_exec_file.
635
636 2018-11-22  Pedro Alves  <palves@redhat.com>
637
638         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
639         inferior_thread instead of find_thread_ptid, and only when
640         inferior_ptid is not null_ptid.
641         * inferior.c (add_inferior): Don't include target_pid_to_str
642         output when the inferior is not started.
643         * python/py-inferior.c (python_on_normal_stop): Don't use
644         find_thread_ptid.
645         (tui_on_user_selected_context_changed): Use inferior_thread
646         instead of find_thread_ptid, and only when inferior_ptid is not
647         null_ptid.
648
649 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
650
651         PR python/23714
652         * gdb/python/python.c (execute_gdb_command): Call
653         prevent_dont_repeat earlier to avoid affecting dont_repeat.
654
655 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
656
657         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
658         (HFILES_NO_SRCDIR): Add arch/riscv.h.
659         * arch/riscv.c: New file.
660         * arch/riscv.h: New file.
661         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
662         this list, and add arch/riscv.o.
663         * features/Makefile: Add riscv features.
664         * features/riscv/32bit-cpu.c: New file.
665         * features/riscv/32bit-cpu.xml: New file.
666         * features/riscv/32bit-csr.c: New file.
667         * features/riscv/32bit-csr.xml: New file.
668         * features/riscv/32bit-fpu.c: New file.
669         * features/riscv/32bit-fpu.xml: New file.
670         * features/riscv/64bit-cpu.c: New file.
671         * features/riscv/64bit-cpu.xml: New file.
672         * features/riscv/64bit-csr.c: New file.
673         * features/riscv/64bit-csr.xml: New file.
674         * features/riscv/64bit-fpu.c: New file.
675         * features/riscv/64bit-fpu.xml: New file.
676         * features/riscv/rebuild-csr-xml.sh: New file.
677         * riscv-tdep.c: Add 'arch/riscv.h' include.
678         (riscv_gdb_reg_names): Delete.
679         (csr_reggroup): New global.
680         (struct riscv_register_alias): Delete.
681         (struct riscv_register_feature): New structure.
682         (riscv_register_aliases): Delete.
683         (riscv_xreg_feature): New global.
684         (riscv_freg_feature): New global.
685         (riscv_virtual_feature): New global.
686         (riscv_csr_feature): New global.
687         (riscv_create_csr_aliases): New function.
688         (riscv_read_misa_reg): Delete.
689         (riscv_has_feature): Delete.
690         (riscv_isa_xlen): Simplify, just return cached xlen.
691         (riscv_isa_flen): Simplify, just return cached flen.
692         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
693         (riscv_register_name): Update to make use of tdesc_register_name.
694         Look up xreg and freg names in the new globals riscv_xreg_feature
695         and riscv_freg_feature.  Don't supply csr aliases here.
696         (riscv_fpreg_q_type): Delete.
697         (riscv_register_type): Use tdesc_register_type in almost all
698         cases, override the returned type in a few specific cases only.
699         (riscv_print_one_register_info): Handle errors reading registers.
700         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
701         registers that are otherwise unknown to GDB.  Also check the
702         csr_reggroup.
703         (riscv_print_registers_info): Remove assert about upper register
704         number, and use gdbarch_register_reggroup_p instead of
705         short-cutting.
706         (riscv_find_default_target_description): New function.
707         (riscv_check_tdesc_feature): New function.
708         (riscv_add_reggroups): New function.
709         (riscv_setup_register_aliases): New function.
710         (riscv_init_reggroups): New function.
711         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
712         setup register groups.  Register new riscv debug variable.
713         * riscv-tdep.h: Add 'arch/riscv.h' include.
714         (struct gdbarch_tdep): Remove abi union, and add
715         riscv_gdbarch_features field.  Remove cached quad floating point
716         type, and provide initialisation for double type field.
717         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
718         the list of targets using the feature based target descriptions.
719         * NEWS: Mention target description support.
720
721 2018-11-21  Pedro Alves  <palves@redhat.com>
722
723         * valops.c (find_method_list, value_find_oload_method_list)
724         (find_overload_match, find_oload_champ): Rename parameters and
725         locals.
726
727 2018-11-21  Pedro Alves  <palves@redhat.com>
728
729         * valops.c (find_method_list): Replace pointer and length
730         parameters with an gdb::array_view.  Adjust.
731         (value_find_oload_method_list): Likewise.
732         (find_overload_match): Use gdb::array_view for methods list.
733         Adjust to find_oload_champ interface change.
734         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
735         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
736
737 2018-11-21  Pedro Alves  <palves@redhat.com>
738
739         * gdbtypes.c (compare_badness): Change type of parameters to const
740         reference.  Adjust to badness_vector being a std::vector now.
741         (rank_function): Adjust to badness_vector being a std::vector now.
742         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
743         (LENGTH_MATCH): Delete.
744         (compare_badness): Change type of parameters to const reference.
745         (rank_function): Return a badness_vector by value now.
746         (find_overload_match): Adjust to badness_vector being a
747         std::vector now.  Remove cleanups.
748         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
749         badness_vector pointer.
750         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
751         a badness_vector pointer.  Adjust to badness_vector being a
752         std::vector now.  Remove cleanups.
753         (find_oload_champ): 'oload_champ_bv' parameter now
754         a badness_vector pointer.  Adjust to badness_vector being a
755         std::vector now.  Remove cleanups.
756
757 2018-11-21  Pedro Alves  <palves@redhat.com>
758
759         * cp-support.c (sym_return_val_size, sym_return_val_index)
760         (sym_return_val): Delete.
761         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
762         add to the vector.
763         (make_symbol_overload_list): Adjust to return a std::vector
764         instead of maintaining a global open coded vector.
765         (make_symbol_overload_list_block): Add std::vector parameter.
766         (make_symbol_overload_list_block): Rename to ...
767         (add_symbol_overload_list_block): ... this and add std::vector
768         parameter.
769         (make_symbol_overload_list_namespace): Rename to ...
770         (add_symbol_overload_list_namespace): ... this and add std::vector
771         parameter.
772         (make_symbol_overload_list_adl_namespace): Rename to ...
773         (add_symbol_overload_list_adl_namespace): ... this and add
774         std::vector parameter.
775         (make_symbol_overload_list_adl): Delete.
776         (add_symbol_overload_list_adl): New.
777         (make_symbol_overload_list_using): Rename to ...
778         (add_symbol_overload_list_using): ... this and add std::vector
779         parameter.
780         (make_symbol_overload_list_qualified): Rename to ...
781         (add_symbol_overload_list_qualified): ... this and add std::vector
782         parameter.
783         * cp-support.h: Include "common/array-view.h" and <vector>.
784         (make_symbol_overload_list): Change return type to std::vector.
785         (make_symbol_overload_list_adl): Delete declaration.
786         (add_symbol_overload_list_adl): New declaration.
787         * valops.c (find_overload_match): Local 'oload_syms' now a
788         std::vector.
789         (find_oload_champ_namespace): 'oload_syms' parameter now a
790         std::vector pointer.
791         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
792         std::vector pointer.  Adjust to new make_symbol_overload_list
793         interface.
794
795 2018-11-21  Pedro Alves  <palves@redhat.com>
796
797         * common/array-view.h (array_view::splice(size_type, size_t)): New.
798         (array_view::splice(size_type)): New.
799         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
800         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
801         std::vector.
802         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
803         * extension.h: Include "common/array-view.h".
804         (xmethod_worker::invoke): Adjust to use gdb::array_view.
805         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
806         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
807         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
808         (xmethod_worker::do_get_result_type): Adjust to use
809         gdb::array_view.
810         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
811         * gdbtypes.h: Include "common/array-view.h".
812         (rank_function): Adjust to use gdb::array_view.
813         * python/py-xmethods.c (python_xmethod_worker::invoke)
814         (python_xmethod_worker::do_get_arg_types)
815         (python_xmethod_worker::do_get_result_type)
816         (python_xmethod_worker::invoke): Adjust to new interfaces.
817         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
818         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
819         * valops.c (find_overload_match, find_oload_champ_namespace)
820         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
821         gdb:array_view and the new xmethod_worker interfaces.
822         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
823         gdb::array_view.
824         * value.h (find_overload_match, result_type_of_xmethod)
825         (call_xmethod): Adjust to use gdb::array_view.
826         * unittests/array-view-selftests.c: Add slicing tests.
827
828 2018-11-21  Pedro Alves  <palves@redhat.com>
829
830         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
831         * common/array-view.h (make_array_view): New.
832         * compile/compile-object-run.c (compile_object_run): Adjust to
833         pass an array_view.
834         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
835         * eval.c (eval_call): Adjust to pass an array_view.
836         (evaluate_subexp_standard): Adjust to pass an array_view.
837         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
838         * guile/scm-value.c (gdbscm_value_call): Likewise.
839         * infcall.c (push_dummy_code): Replace pointer + size parameters
840         with an array_view parameter.
841         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
842         adjust.
843         * infcall.h: Include "common/array-view.h".
844         (call_function_by_hand, call_function_by_hand_dummy): Replace
845         pointer + size parameters with an array_view parameter.
846         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
847         * linux-tdep.c (linux_infcall_mmap): Likewise.
848         * objc-lang.c (lookup_objc_class, lookup_child_selector)
849         (value_nsstring, print_object_command): Likewise.
850         * python/py-value.c (valpy_call): Likewise.
851         * rust-lang.c (rust_evaluate_funcall): Likewise.
852         * spu-tdep.c (flush_ea_cache): Likewise.
853         * valarith.c (value_x_binop, value_x_unop): Likewise.
854         * valops.c (value_allocate_space_in_inferior): Likewise.
855         * unittests/array-view-selftests.c (run_tests): Add
856         gdb::make_array_view test.
857
858 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
859
860         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
861         than a fixed size buffer.
862
863 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
864
865         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
866         and remove insertion of extra spaces in GDB's output.
867         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
868         Layout field into a temporary buffer, and then output it as a
869         string field.
870
871 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
872
873         * NEWS: Document the language choice done by
874         'info [types|functions|variables]|rbreak'.
875
876 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
877
878         * symtab.c (treg_matches_sym_type_name): Use
879         scoped_switch_to_sym_language_if_auto instead of local logic.
880         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
881         to switch to SYM language when language mode is auto.
882
883 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
884
885         * language.h (scoped_switch_to_sym_language_if_auto): New class.
886
887 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
888
889         * symtab.c (search_symbols): Properly check absence of type regexp
890         before entering the loop scanning the minimal symbols.
891
892 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
893
894         * s12z-tdep.c (s12z_extract_return_value): New function.
895         (inv_reg_perm) New array.
896         (s12z_return_value): Populate readbuf if non-null.
897
898 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
899
900         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
901         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
902         to MinGW fixed by Gnulib.
903         (O_NOINHERIT): Define if not defined.
904
905 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
906
907         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
908
909 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
910
911         * infrun.c (displaced_step_inferior_state) <next>: Remove.
912
913 2018-11-19  Tom Tromey  <tom@tromey.com>
914
915         * source.c (get_filename_and_charpos): Return void.
916
917 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
918
919         * skip.c (_initialize_step_skip): Fix "info skip" help.
920
921 2018-11-16  Tom Tromey  <tom@tromey.com>
922
923         PR rust/23625:
924         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
925
926 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
927
928         * infrun.c (displaced_step_inferior_states): Change type to
929         std::forward_list.
930         (get_displaced_stepping_state): Adjust.
931         (displaced_step_in_progress_any_inferior): Adjust.
932         (add_displaced_stepping_state): Adjust.
933         (remove_displaced_stepping_state): Adjust.
934
935 2018-11-18  Tom Tromey  <tom@tromey.com>
936
937         PR build/23814:
938         * target-delegates.c: Rebuild.
939         * ia64-linux-nat.c (class ia64_linux_nat_target)
940         <have_steppable_watchpoint>: Use override.  Return true, not 1.
941         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
942         "self" argument.
943         (ia64_linux_nat_target::low_new_thread): Rename.
944         (class ia64_linux_nat_target) <read_description>: Don't declare.
945         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
946         bool.
947
948 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
949
950         PR gdb/22736:
951         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
952         lang_struct_return code.
953
954 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
955
956         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
957         return_method.
958         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
959         * amd64-tdep.c (amd64_push_arguments): Likewise.
960         (amd64_push_dummy_call): Likewise.
961         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
962         * arc-tdep.c (arc_push_dummy_call): Likewise.
963         * arm-tdep.c (arm_push_dummy_call): Likewise.
964         * avr-tdep.c (avr_push_dummy_call): Likewise.
965         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
966         * cris-tdep.c (cris_push_dummy_call): Likewise.
967         * csky-tdep.c (csky_push_dummy_call): Likewise.
968         * frv-tdep.c (frv_push_dummy_call): Likewise.
969         * gdbarch.c: Regenerate.
970         * gdbarch.h: Regenerate.
971         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
972         return_method.
973         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
974         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
975         (hppa64_push_dummy_call): Likewise.
976         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
977         * i386-tdep.c (i386_push_dummy_call): Likewise.
978         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
979         * infcall.c (call_function_by_hand_dummy): Likewise.
980         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
981         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
982         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
983         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
984         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
985         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
986         * mep-tdep.c (mep_push_dummy_call): Likewise.
987         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
988         (mips_n32n64_push_dummy_call): Likewise.
989         (mips_o32_push_dummy_call): Likewise.
990         (mips_o64_push_dummy_call): Likewise.
991         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
992         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
993         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
994         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
995         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
996         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
997         (ppc64_sysv_abi_push_dummy_call): Likewise.
998         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
999         (ppc64_sysv_abi_push_dummy_call): Likewise.
1000         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1001         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1002         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1003         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1004         * rx-tdep.c (rx_push_dummy_call): Likewise.
1005         * s390-tdep.c (s390_push_dummy_call): Likewise.
1006         * score-tdep.c (score_push_dummy_call): Likewise.
1007         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1008         (sh_push_dummy_call_nofpu): Likewise.
1009         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1010         (sparc32_push_dummy_call): Likewise.
1011         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1012         (sparc64_push_dummy_call): Likewise.
1013         * spu-tdep.c (spu_push_dummy_call): Likewise.
1014         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1015         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1016         * v850-tdep.c (v850_push_dummy_call): Likewise.
1017         * vax-tdep.c (vax_push_dummy_call): Likewise.
1018         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1019         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1020
1021 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1022
1023         * gdbarch.sh (enum function_call_return_method): Add enum.
1024         * gdbarch.h: Regenerate.
1025         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1026
1027 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1028
1029         * unittests/copy_bitwise-selftests.c: New file.
1030         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1031         (selftests::copy_bitwise_tests): Delete, moving this code to
1032         unittests/copy_bitwise-selftests.c instead.
1033         (_initialize_utils): Do not register copy_bitwise tests.
1034         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1035         unittests/copy_bitwise-selftests.c.
1036
1037 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1038
1039         * ada-lang.c (move_bits): Delete. Update all callers to use
1040         copy_bitwise instead.
1041         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1042         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1043         Move from here to utils.c.
1044         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1045         selftests.
1046         * utils.h (copy_bitwise): Add declaration.
1047         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1048         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1049         Moved here from dwarf2loc.c.
1050         (_initialize_utils): Register copy_bitwise selftests.
1051
1052 2018-11-14  Jim Wilson  <jimw@sifive.com>
1053
1054         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1055         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1056         then increment next_regnum if odd.
1057         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1058         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1059         function type.  Pass new arg to riscv_arg_location based on function
1060         type.
1061         (riscv_return_value): Pass new arg to riscv_arg_location.
1062
1063         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1064         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1065         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1066
1067         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1068         setting len.  New local align, set to max of arg align and xlen,
1069         and pass to first riscv_assign_stack_location call.
1070
1071 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1072
1073         * skip.c (complete_skip_number): New function.
1074         (_initialize_step_skip): Add completers to some skip commands.
1075
1076 2018-11-09  Tom Tromey  <tom@tromey.com>
1077
1078         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1079         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1080         <guesses>: Now a std::vector.
1081         (remote_g_packet_data_init, register_remote_g_packet_guess):
1082         Update.
1083         (remote_read_description_p): Update.  Return bool.
1084         (remote_target::read_description): Update.
1085         (struct remote_g_packet_guess): Add constructor.
1086
1087 2018-11-09  Tom Tromey  <tom@tromey.com>
1088
1089         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1090         move assignment operator.
1091         * psymtab.c (psymtab_to_fullname): Update.
1092         * source.h (open_source_file): Return scoped_fd.
1093         (find_and_open_source): Likewise.
1094         * source.c (open_source_file): Return scoped_fd.
1095         (get_filename_and_charpos): Update.
1096         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1097         (forward_search_command): Likewise.
1098         (reverse_search_command): Likewise.
1099         (find_and_open_source): Return scoped_fd.
1100         * tui/tui-source.c (tui_set_source_content): Update.  Use
1101         gdb_file_up.
1102
1103 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1104
1105         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1106         overflow.
1107
1108 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1109
1110         * configure: Regenerate.
1111
1112 2018-11-09  Tom de Vries  <tdevries@suse.de>
1113
1114         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1115         unconditionally, to set the language of the symbol.  Manage freeing
1116         returned pointer using gdb::unique_xmalloc_ptr.
1117
1118 2018-11-08  Tom Tromey  <tom@tromey.com>
1119
1120         * record.c (require_record_target): Upper-case "<TAB>".
1121
1122 2018-11-08  Tom Tromey  <tom@tromey.com>
1123
1124         * python/lib/gdb/command/pretty_printers.py
1125         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1126
1127 2018-11-08  Tom Tromey  <tom@tromey.com>
1128
1129         PR gdb/23555:
1130         PR gdb/23838:
1131         * target.h (target_supports_terminal_ours): Return bool.
1132         * target.c (target_supports_terminal_ours): Handle case where
1133         current_top_target returns nullptr.  Return bool.
1134
1135 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1136
1137         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1138         return the correct count for potential HFAs.
1139
1140 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1141
1142         * i387-tdep.c (i387_supply_xsave): Split handling of
1143         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1144         (i387_collect_xsave): Likewise.
1145
1146 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1147
1148         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1149         (riscv_frame_this_id): Catch errors thrown while building the
1150         frame cache, leave the frame id as the default, which is the outer
1151         frame id.
1152
1153 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1154
1155         * ada-lang.c (read_atcb): Only set task_info->called_task if
1156         task_info->state == Entry_Caller_Sleep.
1157         (print_ada_task_info): Do not check task_info->state before
1158         checking task_info->called_task.
1159         (info_task): Likewise.
1160
1161 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1162
1163         * ada-tasks.c (read_atcb): Clear task_info before computing
1164         the value of each of its fields.
1165
1166 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1167
1168         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1169         NULL before dereferencing it.
1170
1171 2018-11-06  Tom de Vries  <tdevries@suse.de>
1172
1173         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1174         program headers.
1175
1176 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1177
1178         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1179         so that it applies to uclinux as well.
1180
1181 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1182
1183         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1184         when on AAPCS.
1185
1186 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1187
1188         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1189         RISCV_CSR_SSTATUS_REGNUM.
1190
1191 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1192
1193         * source.c (open_source_file): Fix leak by transferring the
1194         current s->fullname to the unique_xmalloc_ptr fullname given
1195         to find_and_open_source.
1196
1197 2018-11-04  Tom Tromey  <tom@tromey.com>
1198
1199         * varobj.c (install_default_visualizer): Update.
1200         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1201         Return gdbpy_ref.
1202         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1203         (find_pretty_printer_from_progspace)
1204         (find_pretty_printer_from_gdb, find_pretty_printer)
1205         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1206         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1207         Update.
1208
1209 2018-11-04  Tom Tromey  <tom@tromey.com>
1210
1211         * python/python.c (gdbpy_parameter_value): Update.
1212         * python/python-internal.h (python_string_to_unicode)
1213         (python_string_to_target_python_string)
1214         (host_string_to_python_string): Return gdbpy_ref.
1215         * python/py-utils.c (python_string_to_unicode)
1216         (unicode_to_encoded_python_string)
1217         (unicode_to_target_python_string)
1218         (python_string_to_target_string)
1219         (python_string_to_target_python_string): Return gdbpy_ref.
1220         (python_string_to_host_string): Update.
1221         (host_string_to_python_string): Return gdbpy_ref.
1222         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1223         (stpy_fullname): Update.
1224         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1225         Update.
1226         * python/py-prettyprint.c (print_string_repr): Update.
1227         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1228         (objfpy_get_build_id): Update.
1229         * python/py-breakpoint.c (bppy_get_location)
1230         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1231         Update.
1232
1233 2018-11-04  Tom Tromey  <tom@tromey.com>
1234
1235         * python/python-internal.h (gdb_py_object_from_longest)
1236         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1237         * python/py-value.c (valpy_int): Update.
1238         * python/py-utils.c (gdb_py_object_from_longest): Return
1239         gdbpy_ref.
1240         (gdb_py_object_from_ulongest): Likewise.
1241         * python/py-type.c (typy_get_alignof): Update.
1242         * python/py-linetable.c (ltpy_get_all_source_lines)
1243         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1244         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1245
1246 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1247
1248         * ada-lang.c (_initialize_ada_language): Fix typo.
1249
1250 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1251
1252         * language.c (type): Remove.
1253         (_initialize_language): Remove assignment to type.
1254
1255 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1256
1257         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1258         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1259         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1260         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1261         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1262         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1263         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1264         and aarch64-ravenscar-thread.o.
1265         * NEWS: Add entry documenting Ravenscar tasking support
1266         on AArch64 ELF.
1267
1268 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1269
1270         * symtab.c (info_functions_command): Initialize quiet flag.
1271         * stack.c (info_args_command): Likewise.
1272
1273 2018-11-01  Jim Wilson  <jimw@sifive.com>
1274
1275         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1276         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1277         debugging messages.
1278
1279 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1280
1281         * ada-lang.c (ada_watch_location_expression): New function.
1282         (ada_language_defn): Set la_watch_location_expression to
1283         ada_watch_location_expression.
1284
1285 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1286
1287         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1288
1289 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1290
1291         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1292         shifting.
1293
1294 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1295             Joel Brobecker  <brobecker@adacore.com>
1296
1297         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1298         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1299         * arm-pikeos-tdep.c: New file.
1300         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1301         embedded system.
1302         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1303
1304 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1305
1306         * common/pathstuff.c (get_standard_temp_dir): New.
1307         * common/pathstuff.h (get_standard_temp_dir): New.
1308         * config.in: Re-generate.
1309         * configure: Re-generate.
1310         * configure.ac: Don't check for mkdtemp.
1311         * gnulib/aclocal-m4-deps.mk: Re-generate.
1312         * gnulib/aclocal.m4: Re-generate.
1313         * gnulib/config.in: Re-generate.
1314         * gnulib/configure: Re-generate.
1315         * gnulib/import/Makefile.am: Re-generate.
1316         * gnulib/import/Makefile.in: Re-generate.
1317         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1318         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1319         * gnulib/import/m4/mkdtemp.m4: New file.
1320         * gnulib/import/mkdtemp.c: New file.
1321         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1322         Add mkdtemp module.
1323         * unittests/mkdir-recursive-selftests.c (test): Use
1324         get_standard_temp_dir.
1325         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1326         ifdef.
1327         * compile/compile.c (get_compile_file_tempdir): Likewise.
1328
1329 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1330
1331         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1332         (SIG_FRAME_LR_OFFSET64): New define.
1333         (SIG_FRAME_FP_OFFSET64): New define.
1334         (aix_sighandle_frame_cache): New Function.
1335         (aix_sighandle_frame_this_id): New Function.
1336         (aix_sighandle_frame_prev_register): New Function.
1337         (aix_sighandle_frame_sniffer): New Function.
1338         (aix_sighandle_frame_unwind): New global variable.
1339         (rs6000_aix_init_osabi): Install new frame unwinder.
1340
1341 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1342
1343         PR gdb/23835
1344         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1345         already defined.
1346
1347 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1348
1349         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1350
1351 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1352
1353         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1354         (producer_is_icc): New function.
1355         (check_producer): Set producer_is_icc field on dwarf2_cu.
1356         (dwarf2_init_integer_type): New function.
1357         (read_base_type): Call dwarf2_init_integer_type instead of
1358         init_integer_type in all cases.
1359         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1360         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1361         LEN is greater than 0.
1362
1363 2018-10-30  Tom Tromey  <tom@tromey.com>
1364
1365         * main.c (captured_main_1): Check return value of bfd_init.
1366
1367 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1368
1369         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1370         Adjust comments.
1371
1372 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1373
1374         * procfs.c: Include common/pathstuff.h.
1375
1376 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1377
1378         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1379         Add missing braces.  No functional change.
1380
1381 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1382
1383         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1384         to report a bad option and fix indentation.
1385         * demangle.c (demangle_command): Use report_unrecognized_option_error
1386         to report a bad option and correctly report the bad option.
1387
1388 2018-10-27  Tom Tromey  <tom@tromey.com>
1389
1390         PR cli/23364:
1391         * darwin-nat.c (copied_shell): New global.
1392         (may_have_sip): Rename from should_disable_startup_with_shell.
1393         (copy_shell_to_cache, maybe_cache_shell): New functions.
1394         (darwin_nat_target::create_inferior): Update.  Use
1395         copied_shell.
1396
1397 2018-10-27  Tom Tromey  <tom@tromey.com>
1398
1399         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1400         (run_tests): Call test_to_file.
1401         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1402         temporary files.
1403         * common/scoped_fd.h (scoped_fd::to_file): New method.
1404
1405 2018-10-27  Tom Tromey  <tom@tromey.com>
1406
1407         * unittests/scoped_mmap-selftests.c (test_normal): Use
1408         gdb_mkostemp_cloexec.
1409         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1410         Use gdb_mkostemp_cloexec.
1411         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1412         gnulib/config.in, gnulib/configure,
1413         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1414         gnulib/import/m4/gnulib-cache.m4,
1415         gnulib/import/m4/gnulib-comp.m4: Update.
1416         * gnulib/import/m4/mkostemp.m4: New file.
1417         * gnulib/import/m4/mkstemp.m4: Remove.
1418         * gnulib/import/mkostemp.c: New file.
1419         * gnulib/import/mkstemp.m4: Remove.
1420         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1421         mkstemp, add mkostemp.  Apply new patch.
1422         * gnulib/import/stdlib.in.h: Apply patch.
1423         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1424         New file.
1425         * dwarf-index-write.c (write_psymtabs_to_index): Use
1426         gdb_mkostemp_cloexec.
1427         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1428
1429 2018-10-27  Tom Tromey  <tom@tromey.com>
1430
1431         * unittests/mkdir-recursive-selftests.c: New file.
1432         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1433         unittests/mkdir-recursive-selftests.c.
1434         * dwarf-index-cache.c (mkdir_recursive): Move to
1435         common/filestuff.c.
1436         (index_cache::store): Check return value of mkdir_recursive.
1437         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1438         (_initialize_index_cache): Don't register test.
1439         * common/filestuff.h (mkdir_recursive): Declare.
1440         * common/filestuff.c (mkdir_recursive): Move from
1441         dwarf-index-cache.c.  Return bool.
1442
1443 2018-10-27  Tom Tromey  <tom@tromey.com>
1444
1445         * dwarf-index-write.c (write_psymtabs_to_index): Move
1446         make_temp_filename to common/pathstuff.c.
1447         * common/pathstuff.h (make_temp_filename): Declare.
1448         * common/pathstuff.c (make_temp_filename): New function, moved
1449         from dwarf-index-write.c.
1450
1451 2018-10-27  Tom Tromey  <tom@tromey.com>
1452
1453         * procfs.c (procfs_target::create_inferior): Use get_shell.
1454         * cli/cli-cmds.c (shell_escape): Use get_shell.
1455         * windows-nat.c (windows_nat_target::create_inferior): Use
1456         get_shell.
1457         * common/pathstuff.c (get_shell): New function.
1458         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1459         (fork_inferior): Use get_shell.
1460         * common/pathstuff.h (get_shell): Declare.
1461
1462 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1463
1464         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1465
1466 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1467
1468         * stack.c (print_variable_and_value_data): Add preg and treg.
1469         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1470         and update callers.
1471         (print_frame_arg_vars): Likewise.
1472         (prepare_reg): New function.
1473         (info_locals_command): Extract info print args and use them.
1474         (info_args_command): Likewise.
1475         (_initialize_stack): Modify on-line help.
1476         * symtab.c (treg_matches_sym_type_name): New function.
1477         (search_symbols): New arg t_regexp.
1478         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1479         (info_variables_command): Extract info print args and use them.
1480         (info_functions_command): Likewise.
1481         (info_types_command): Update call to symtab_symbol_info.
1482         (_initialize_symtab): Modify on-line help.
1483         * symtab.h (treg_matches_sym_type_name): New function.
1484         (search_symbols): New t_regexp arg.
1485
1486 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1487
1488         * cli-utils.c (extract_arg_maybe_quoted): New function.
1489         (extract_info_print_args): New function.
1490         (info_print_args_help): New function.
1491         (report_unrecognized_option_error): New function.
1492         * cli-utils.h (extract_arg_maybe_quoted): New function.
1493         (extract_info_print_args): New function.
1494         (info_print_args_help): New function.
1495         (report_unrecognized_option_error): New function.
1496
1497 2018-10-26  Tom Tromey  <tom@tromey.com>
1498
1499         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1500         (compute_compunit_symtab_includes): Update.
1501         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1502         (compunit_symtab_ptr): Likewise.
1503
1504 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1505
1506         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1507         default_print_auxv_entry for specific tag values.
1508
1509 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1510
1511         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1512
1513 2018-10-26  Jim Wilson  <jimw@sifive.com>
1514
1515         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1516         (riscv_linux_sigframe_init): Declare.
1517         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1518         (riscv_linux_sigframe): New.
1519         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1520         (riscv_linux_sigframe_init): Define.
1521         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1522
1523         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1524         (riscv_isa_flen): Likewise.  Drop static.
1525         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1526         (riscv_isa_flen): Likewise.  Declare.
1527
1528 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1529             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1530
1531         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1532         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1533         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1534         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1535         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1536         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1537         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1538         Define.
1539         (struct ppc_linux_features) <htm>: New field.
1540         (ppc_linux_no_features): Add initializer for htm field.
1541         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1542         new tdescs.
1543         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1544         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1545         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1546         Define if not already defined.
1547         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1548         and rs6000/powerpc-isa207-htm-vsx64l.
1549         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1550         rs6000/powerpc-isa207-htm-vsx64l.xml.
1551         * features/rs6000/power-htm-spr.xml: New file.
1552         * features/rs6000/power-htm-core.xml: New file.
1553         * features/rs6000/power64-htm-core.xml: New file.
1554         * features/rs6000/power-htm-fpu.xml: New file.
1555         * features/rs6000/power-htm-altivec.xml: New file.
1556         * features/rs6000/power-htm-vsx.xml: New file.
1557         * features/rs6000/power-htm-ppr.xml: New file.
1558         * features/rs6000/power-htm-dscr.xml: New file.
1559         * features/rs6000/power-htm-tar.xml: New file.
1560         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1561         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1562         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1563         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1564         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1565         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1566         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1567         fetch_regset with HTM regsets.
1568         (store_register, store_ppc_registers): Call store_regset with HTM
1569         regsets.
1570         (ppc_linux_nat_target::read_description): Set htm field in the
1571         features struct if needed.
1572         * ppc-linux-tdep.c: Include
1573         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1574         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1575         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1576         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1577         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1578         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1579         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1580         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1581         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1582         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1583         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1584         (ppc32_linux_ctarregset): New globals.
1585         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1586         (ppc_linux_collect_core_cpgrregset): New function.
1587         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1588         regsets.
1589         (ppc_linux_core_read_description): Check if the tm spr section is
1590         present and set htm in the features struct.
1591         (_initialize_ppc_linux_tdep): Call
1592         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1593         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1594         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1595         Declare.
1596         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1597         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1598         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1599         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1600         New fields.
1601         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1602         Likewise.
1603         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1604         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1605         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1606         New enum fields.
1607         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1608         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1609         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1610         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1611         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1612         <PPC_CTAR_REGNUM>: Likewise.
1613         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1614         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1615         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1616         (IS_CEFP_PSEUDOREG): Define.
1617         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1618         registers.  Return names for the checkpointed DFP, VSX, and EFP
1619         pseudo registers.
1620         (rs6000_pseudo_register_type): Remove initial assert and raise an
1621         internal error in the else clause instead.  Return types for the
1622         checkpointed DFP, VSX, and EFP pseudo registers.
1623         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1624         checkpointed DFP pseudo registers.
1625         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1626         checkpointed VSX pseudo registers.
1627         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1628         from efpr_pseudo_register_read and
1629         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1630         registers.
1631         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1632         Handle checkpointed DFP, VSX, and EFP registers.
1633         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1634         (efp_ax_pseudo_register_collect): New functions.
1635         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1636         register logic to new functions.  Handle checkpointed DFP, VSX,
1637         and EFP pseudo registers.
1638         (rs6000_gdbarch_init): Look for and validate the htm features.
1639         Include checkpointed DFP, VSX and EFP pseudo-registers.
1640         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1641         HTM registers.
1642
1643 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1644
1645         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1646         without altivec or fpu.
1647
1648 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1649             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1650
1651         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1652         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1653         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1654         Define if not already defined.
1655         * features/rs6000/power-ebb.xml: New file.
1656         * features/rs6000/power-linux-pmu.xml: New file.
1657         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1658         features.
1659         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1660         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1661         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1662         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1663         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1664         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1665         fetch_regset with ebb and pmu regsets.
1666         (store_register, store_ppc_registers): Call store_regset with ebb
1667         and pmu regsets.
1668         (ppc_linux_nat_target::read_description): Set isa207 field in the
1669         features struct if ebb and pmu are avaiable.
1670         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1671         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1672         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1673         and pmu regsets.
1674         (ppc_linux_core_read_description): Check if the pmu section is
1675         present and set isa207 in the features struct.
1676         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1677         (ppc32_linux_pmuregset): Declare.
1678         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1679         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1680         <ppc_sier_regnum>: New field.
1681         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1682         New enum values.
1683         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1684         values.
1685         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1686         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1687         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1688         ebb and pmu features.
1689
1690 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1691             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1692
1693         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1694         (tdesc_powerpc_isa207_vsx64l): Declare.
1695         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1696         (struct ppc_linux_features) <isa207>: New field.
1697         (ppc_linux_no_features): Add initializer for isa207 field.
1698         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1699         new tdescs.
1700         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1701         (NT_PPC_TAR): Define if not already defined.
1702         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1703         rs6000/powerpc-isa207-vsx64l.
1704         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1705         rs6000/powerpc-isa207-vsx64l.xml.
1706         * features/rs6000/power-tar.xml: New file.
1707         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1708         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1709         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1710         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1711         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1712         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1713         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1714         fetch_regset with the TAR regset.
1715         (store_register, store_ppc_registers): Call store_regset with the
1716         TAR regset.
1717         (ppc_linux_nat_target::read_description): Set isa207 field in the
1718         features struct if needed.
1719         * ppc-linux-tdep.c: Include
1720         features/rs6000/powerpc-isa207-vsx32l.c and
1721         features/rs6000/powerpc-isa207-vsx64l.c.
1722         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1723         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1724         regset.
1725         (ppc_linux_core_read_description): Check if the tar section is
1726         present and set isa207 in the features struct.
1727         (_initialize_ppc_linux_tdep): Call
1728         initialize_tdesc_powerpc_isa207_vsx32l and
1729         initialize_tdesc_powerpc_isa207_vsx64l.
1730         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1731         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1732         (enum) <PPC_TAR_REGNUM>: New enum value.
1733         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1734         feature.
1735         (ppc_process_record_op31): Record changes to TAR.
1736
1737 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1738             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1739
1740         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1741         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1742         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1743         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1744         (struct ppc_linux_features) <ppr_dscr>: New field.
1745         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1746         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1747         new tdescs.
1748         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1749         Define if not already defined.
1750         * features/Makefile (WHICH): Add
1751         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1752         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1753         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1754         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1755         * features/rs6000/power-dscr.xml: New file.
1756         * features/rs6000/power-ppr.xml: New file.
1757         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1758         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1759         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1760         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1761         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1762         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1763         * ppc-linux-nat.c: Include <sys/uio.h>.
1764         (fetch_regset, store_regset, check_regset): New functions.
1765         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1766         DSCR and PPR regsets.
1767         (store_register, store_ppc_registers): Call store_regset with
1768         DSCR and PPR regsets.
1769         (ppc_linux_get_hwcap2): New function.
1770         (ppc_linux_nat_target::read_description): Call
1771         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1772         features struct if needed.
1773         * ppc-linux-tdep.c: Include
1774         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1775         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1776         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1777         (ppc32_linux_dscrregset): New globals.
1778         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1779         and dscr regsets.
1780         (ppc_linux_core_read_description): Check if the ppr and dscr
1781         sections are present and set ppr_dscr in the features struct.
1782         (_initialize_ppc_linux_tdep): Call
1783         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1784         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1785         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1786         (ppc32_linux_dscrregset): Declare.
1787         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1788         <ppc_dscr_regnum>: New field.
1789         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1790         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1791         and dscr features.
1792         (ppc_process_record_op31): Record changes to PPR and DSCR.
1793
1794 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1795
1796         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1797         second initializer line for the have_* variables.  Initialize
1798         have_fpu to 0 instead of 1.
1799
1800 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1801
1802         * arch/ppc-linux-common.c (ppc_linux_match_description):
1803         Parenthesize tdesc assignements and indent them properly.
1804
1805 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1806
1807         * ppc-linux-nat.c (fetch_register): Change if statement to else
1808         if.
1809         (store_register): Likewise.
1810
1811 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1812
1813         * rs6000-tdep.c: Remove reggroups.h include.
1814         (rs6000_pseudo_register_reggroup_p): Remove.
1815         (rs6000_gdbarch_init): Remove call to
1816         set_tdesc_pseudo_register_reggroup_p.
1817
1818 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1819
1820         * reggroups.c (default_register_reggroup_p): Return true for
1821         decfloat registers and float_reggroup.
1822
1823 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1824
1825         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1826         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1827         ppc_linux_collect_vrregset by regcache_collect_regset.
1828
1829 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1830
1831         * linux-tdep.c (linux_collect_regset_section_cb): Use
1832         std::vector<gdb_byte> instead of char * and malloc for buf.
1833         Remove xfree.
1834
1835 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1836
1837         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1838         symtab_start instead of always using language_unknown.
1839
1840 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1841
1842         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1843         READ_P parameter, catch and ignore register access errors from
1844         either the old or new MISA location.
1845         (riscv_has_feature): Update call to riscv_read_misa_reg.
1846
1847 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1848
1849         * python/py-function.c (convert_values_to_python): Return
1850         gdbpy_ref<>.  Add header comment.
1851         (fnpy_call): Adjust.
1852
1853 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1854
1855         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1856         (cmdpy_completer_handle_brkchars): Adjust.
1857         (cmdpy_completer): Adjust.
1858
1859 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1860
1861         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1862         Pass correct regnum to raw_supply_zeroed.
1863
1864 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1865
1866         * regcache.c (cooked_read_test): Add CSKY to the list of
1867         architectures with a save_reggroup
1868
1869 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1870
1871         PR gdb/23368
1872         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1873         transfer terminal state from old new new inferior.
1874         * terminal.h (swap_terminal_info): New function.
1875         * inflow.c (swap_terminal_info): New function.
1876
1877 2018-10-23  Tom Tromey  <tom@tromey.com>
1878
1879         * record-btrace.c (get_thread_current_frame_id): Rename from
1880         get_thread_current_frame.  Return a frame_id.
1881         (record_btrace_start_replaying): Update.
1882
1883 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1884
1885         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1886         for CSRs.
1887
1888 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1889
1890         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1891         have_nonsteppable_watchpoint attribute to 1.
1892
1893 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1894
1895         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1896         register names.
1897         (struct register_alias): Rename to...
1898         (struct riscv_register_alias): ...this, and update comment.
1899         (riscv_register_aliases): Update type, and alias names.  Remove
1900         CSR names from this list.
1901         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1902         register names.  Add an extra assertion.
1903         (riscv_is_regnum_a_named_csr): New function.
1904         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1905
1906 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1907
1908         * configure.tgt: Add configuration for s12z.
1909         * s12z-tdep.c:  New file.
1910         * NEWS: Mention new target.
1911
1912 2018-10-22  Jim Wilson  <jimw@sifive.com>
1913
1914         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1915         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1916
1917         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1918         (riscv_register_type): Use them.
1919         (riscv_print_one_register_info): Handle union of floats same as float.
1920         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1921         riscv_fpreg_q_type fields.
1922
1923 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1924
1925         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1926         * gdbarch.h: Re-generate.
1927         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1928         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1929         * eval.c (evaluate_subexp_standard): Likewise.
1930         * findvar.c (value_of_register): Likewise.
1931         (value_of_register_lazy): Likewise.
1932         (address_from_register): Likewise.
1933         * frame.c (get_frame_register_bytes): Likewise.
1934         * gdbarch-selftests.c (register_to_value_test): Likewise.
1935         * h8300-tdep.c (h8300_register_type): Likewise.
1936         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1937         (i386_svr4_reg_to_regnum): Likewise.
1938         * infcmd.c (default_print_registers_info): Likewise.
1939         (registers_info): Likewise.
1940         (print_vector_info): Likewise.
1941         (default_print_float_info): Likewise.
1942         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1943         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1944         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1945         (mi_cmd_data_list_changed_registers): Likewise.
1946         (mi_cmd_data_list_register_values): Likewise.
1947         (mi_cmd_data_write_register_values): Likewise.
1948         (mi_cmd_trace_frame_collected): Likewise.
1949         * mips-tdep.c (print_gp_register_row): Likewise.
1950         (mips_print_registers_info): Likewise.
1951         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1952         * regcache.c (init_regcache_descr): Likewise.
1953         (register_size): Likewise.
1954         (register_dump::dump): Likewise.
1955         (cooked_read_test): Likewise.
1956         (cooked_write_test): Likewise.
1957         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1958         (rs6000_gdbarch_init): Likewise.
1959         * stabsread.c (stab_reg_to_regnum): Likewise.
1960         * stack.c (info_frame_command): Likewise.
1961         * target-descriptions.c (tdesc_register_name): Likewise.
1962         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1963         * tui/tui-regs.c (tui_show_register_group): Likewise.
1964         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1965         (user_reg_map_regnum_to_name): Likewise.
1966         (value_of_user_reg): Likewise.
1967         (maintenance_print_user_registers): Likewise.
1968         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1969         (xtensa_register_name): Likewise.
1970         (xtensa_register_type): Likewise.
1971         (xtensa_reg_to_regnum): Likewise.
1972         (xtensa_pseudo_register_read): Likewise.
1973         (xtensa_pseudo_register_write): Likewise.
1974
1975 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1976
1977         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1978         correctly-sized buffer with raw_read.
1979         (amd64_pseudo_register_write): Use correctly-sized buffer for
1980         raw_read/raw_write.
1981
1982 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1983
1984         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1985         in add_prefix_cmd of set print type.
1986
1987 2018-10-19  Tom Tromey  <tom@tromey.com>
1988
1989         PR tui/18388:
1990         * NEWS: Mention tabset deprecation.
1991         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1992         (update_tab_width): New function.
1993         (tui_set_tab_width, tui_show_tab_width): New functions.
1994         (tui_set_tab_width_command): Use update_tab_width.
1995         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1996         Add new "set tui tab-width" command.
1997         * tui/tui-source.c (tui_set_source_content): Update.
1998         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1999         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2000         Don't declare.
2001         (tui_tab_width): Declare.
2002         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2003         (tui_set_default_tab_len): Remove.
2004
2005 2018-10-19  Tom Tromey  <tom@tromey.com>
2006
2007         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2008         (key_is_backspace, tui_getc): Don't declare.
2009         * tui/tui-io.c (key_is_start_sequence): Now static.
2010         (key_is_end_sequence, key_is_backspace): Remove.
2011         (tui_getc): Now static.
2012
2013 2018-10-19  Tom Tromey  <tom@tromey.com>
2014
2015         * symfile.c (reread_symbols): Clear "static_links".
2016
2017 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2018
2019         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2020         define.
2021         (aarch64_linux_sigframe_init): Extra boundary checks.
2022
2023 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2024
2025         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2026         the possibly non-existent tdesc type 'vec128', but the type of raw
2027         register v16 instead.
2028
2029 2018-10-19  Gary Benson <gbenson@redhat.com>
2030
2031         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2032
2033 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2034
2035         PR cli/23785
2036         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2037         NULL.
2038
2039 2018-10-17  Paul Koning  <paul_koning@dell.com>
2040
2041         * charset.c (convert_between_encodings): Fix unsigned overflow.
2042
2043 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2044
2045         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2046         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2047         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2048         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2049         New functions.
2050         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2051         and fbsd_info_proc_mappings_header.
2052         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2053         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2054         New.
2055
2056 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2057
2058         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2059         Solaris Maintainer.
2060
2061 2018-10-15  Tom Tromey  <tom@tromey.com>
2062
2063         * tui/tui.c (strcat_to_buf): Remove casts.
2064         * tui/tui-winsource.c (tui_show_source_line)
2065         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2066         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2067         * tui/tui-windata.c (tui_first_data_item_displayed)
2068         (tui_delete_data_content_windows, tui_erase_data_content)
2069         (tui_display_all_data, tui_display_data_from)
2070         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2071         * tui/tui-win.c (tui_set_win_height)
2072         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2073         casts.
2074         * tui/tui-win.c (tui_resize_all): Remove casts.
2075         (tui_scroll_backward_command, tui_set_focus)
2076         (tui_set_tab_width_command): Likewise.
2077         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2078         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2079         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2080         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2081         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2082         Remove casts.
2083
2084 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2085
2086         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2087         AArch64/ARM maintainer.
2088
2089 2018-10-11  Gary Benson <gbenson@redhat.com>
2090
2091         * interps.h (interp::m_name): Make private and mutable.
2092         * interps.c (interp::~interp): Free m_name.
2093
2094 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2095             Simon Marchi <simark@simark.ca>
2096
2097         * README (`configure' options): Add documentation for new
2098         "--enable-unit-tests" option.
2099         * acinclude.m4: Include "selftest.m4".
2100         * configure: Regenerate.
2101         * configure.ac: Use "GDB_AC_SELFTEST".
2102         * maint.c (maintenance_selftest): Update message informing
2103         that selftests have been disabled.
2104         (maintenance_info_selftests): Likewise.
2105         * selftest.m4: New file.
2106
2107 2018-10-10  Gary Benson <gbenson@redhat.com>
2108
2109         * remote.c (remote_target::remote_send_printf): Add
2110         missing va_end found by Coverity.
2111
2112 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2113
2114         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2115
2116 2018-10-09  Tom Tromey  <tom@tromey.com>
2117
2118         * configure: Rebuild.
2119         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2120         * NEWS: Update --enable-ubsan documentation.
2121
2122 2018-10-09  Gary Benson <gbenson@redhat.com>
2123
2124         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2125         found by Coverity.
2126
2127 2018-10-08  Tom Tromey  <tom@tromey.com>
2128
2129         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2130         variable.
2131         (riscv_fbsd_init_abi): Likewise.
2132
2133 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2134         * valops.c (value_struct_elt_for_reference): Rename local variable
2135         to work around the shadowing a previous local warning.
2136
2137 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2138
2139         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2140         * NEWS: Mention new FreeBSD/riscv native configuration.
2141         * configure.host: Add riscv*-*-freebsd*.
2142         * configure.nat: Likewise.
2143         * riscv-fbsd-nat.c: New file.
2144
2145 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2146
2147         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2148         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2149         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2150         * NEWS: Mention new FreeBSD/riscv target.
2151         * configure.tgt: Add riscv*-*-freebsd*.
2152         * riscv-fbsd-tdep.c: New file.
2153         * riscv-fbsd-tdep.h: New file.
2154
2155 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2156
2157         * regcache.h (struct regcache_map_entry): Note that this type can
2158         be used with traditional frame caches.
2159         * trad-frame.c (trad_frame_set_reg_regmap): New.
2160         * trad-frame.h (trad_frame_set_reg_regmap): New.
2161
2162 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2163
2164         PR c++/16841
2165         * valops.c (get_virtual_base_offset): New function.
2166         (value_struct_elt_for_reference): Use it to get virtual base offset
2167         and add it in calculating class member address.
2168
2169 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2170
2171         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2172         (check_producer): Check if the producer is codewarrior.
2173         (producer_is_codewarrior): New function.
2174         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2175         produced by codewarrior.
2176         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2177
2178 2018-10-06  Tom Tromey  <tom@tromey.com>
2179
2180         PR python/19399:
2181         * python/py-inferior.c: Add "architecture" entry.
2182         (infpy_architecture): New function.
2183
2184 2018-10-06  Tom Tromey  <tom@tromey.com>
2185
2186         PR python/21765:
2187         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2188         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2189         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2190         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2191
2192 2018-10-06  Tom Tromey  <tom@tromey.com>
2193
2194         PR build/17077:
2195         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2196         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2197         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2198         #include.
2199
2200 2018-10-06  Tom Tromey  <tom@tromey.com>
2201
2202         * python/py-breakpoint.c (bppy_get_location): Handle a
2203         bp_breakpoint without a location.
2204
2205 2018-10-06  Tom Tromey  <tom@tromey.com>
2206
2207         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2208         (_RegEx): Reformat help text.
2209         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2210         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2211         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2212         text.
2213         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2214         (EnableXMethod, DisableXMethod): Remove help indentation.
2215         Capitalize meta-syntactic variables.
2216         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2217         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2218         Capitalize meta-syntactic variables.
2219         * python/lib/gdb/command/explore.py (ExploreCommand)
2220         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2221         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2222         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2223         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2224         Remove help indentation.
2225         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2226         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2227         (DisableFrameFilter, SetFrameFilterPriority)
2228         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2229
2230 2018-10-06  Tom Tromey  <tom@tromey.com>
2231
2232         PR tui/28819:
2233         * tui/tui-io.c (gdb_wgetch): New function.
2234         (tui_mld_getc, tui_getc): Use it.
2235
2236 2018-10-05  Tom Tromey  <tom@tromey.com>
2237
2238         * sol-thread.c (sol_thread_target::wait): Rename inner
2239         "save_ptid".
2240
2241 2018-10-04  Tom Tromey  <tom@tromey.com>
2242
2243         * configure: Rebuild.
2244         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2245
2246 2018-10-04  Tom Tromey  <tom@tromey.com>
2247
2248         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2249         declaration of "block".
2250
2251 2018-10-04  Tom Tromey  <tom@tromey.com>
2252
2253         * common/filestuff.c (fdwalk): Remove inner declaration of
2254         "result".
2255
2256 2018-10-04  Tom Tromey  <tom@tromey.com>
2257
2258         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2259         "structs_addr" and hoist declaration.
2260
2261 2018-10-04  Tom Tromey  <tom@tromey.com>
2262
2263         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2264         variable "size".
2265
2266 2018-10-04  Tom Tromey  <tom@tromey.com>
2267
2268         * mdebugread.c (parse_partial_symbols): Use std::string.
2269
2270 2018-10-04  Tom Tromey  <tom@tromey.com>
2271
2272         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2273         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2274         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2275         header.
2276         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2277         more inner scope.
2278         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2279         * varobj.c (varobj_update): Rename inner "newobj",
2280         "type_changed".
2281         * valprint.c (generic_emit_char): Rename inner "buf".
2282         * valops.c (find_overload_match): Rename inner "temp".
2283         (value_struct_elt_for_reference): Declare "v" in more inner
2284         scope.
2285         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2286         * unittests/array-view-selftests.c (run_tests): Rename inner
2287         "vec".
2288         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2289         header.
2290         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2291         "tsv" in more inner scope.
2292         (print_one_static_tracepoint_marker): Rename inner
2293         "tuple_emitter".
2294         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2295         (tic6x_push_dummy_call): Don't redeclare "addr".
2296         * target-float.c: Declare "dto" lower.
2297         * symtab.c (lookup_local_symbol): Rename inner "sym".
2298         (find_pc_sect_line): Rename inner "pc".
2299         * stack.c (print_frame): Don't redeclare "gdbarch".
2300         (return_command): Rename inner "gdbarch".
2301         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2302         "sp".
2303         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2304         header.
2305         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2306         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2307         scope.
2308         * remote.c (remote_target::update_thread_list): Don't redeclare
2309         "tp".
2310         (remote_target::process_initial_stop_replies): Rename inner
2311         "thread".
2312         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2313         (remote_target::wait_as): Don't redeclare "stop_reply".
2314         (remote_target::get_thread_local_address): Rename inner
2315         "result".
2316         (remote_target::get_tib_address): Likewise.
2317
2318         * regcache.c (cooked_read_test): Rename "regnum".
2319         * record-btrace.c (cmd_record_btrace_start): Rename inner
2320         "exception".
2321         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2322         loop header.
2323         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2324         header.
2325         (ppu2spu_sniffer): Rename inner "buf".
2326         * parse.c (operator_check_standard): Rename inner "type",
2327         "objfile".
2328         * p-valprint.c (pascal_val_print): Introduce new scope for
2329         "low_bound", "high_bound".
2330         * p-exp.y (yylex): Declare "i" in loop header.
2331         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2332         Lower declaration of "s".
2333         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2334         header.
2335         (nios2_push_dummy_call): Rename "len".
2336         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2337         "buf".
2338         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2339         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2340         (linux_xfer_osdata_modules): Likewise.
2341         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2342         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2343         (mips_o64_push_dummy_call): Likewise.
2344         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2345         "op".
2346         * mi/mi-main.c (list_available_thread_groups): Rename inner
2347         "tuple_emitter".
2348         (mi_cmd_data_read_memory): Rename inner "opts".
2349         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2350         "tuple_emitter".
2351         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2352         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2353         more inner scope.
2354         (parse_partial_symbols): Rename inner "pst", "p", "name"
2355         * main.c (captured_main_1): Rename inner "i"s.
2356         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2357         "oso2".
2358         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2359         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2360         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2361         (handle_signal_stop): Rename inner "gdbarch".
2362         (handle_command): Declare "signum" in loop header.
2363         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2364         "status".
2365         (examine_prologue): Rename inner "sol" and "sof".
2366         (ia64_extract_return_value): Rename inner "val".  Declare another
2367         "val" in a more inner scope.
2368         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2369         inner scope.
2370         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2371         "except".
2372         * findvar.c (default_read_var_value): Don't redeclare "addr".
2373         * f-exp.y (yylex): Declare "i" in loop header.
2374         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2375         Rename inner "type", "expect_type".
2376         (evaluate_subexp_for_sizeof): Rename inner "pc".
2377         * elfread.c (elf_symfile_read): Rename inner "abfd".
2378         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2379         "bytes_read".
2380         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2381         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2382         (dwarf_decode_line_header): Rename inner "lh".
2383         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2384         "offset".  Declare "i" in loop header.
2385         (disassemble_dwarf_expression): Rename inner "addr_size".
2386         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2387         inner "result".
2388         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2389         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2390         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2391         "inner_list_emitter".
2392         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2393         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2394         declaration in a block.
2395         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2396         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2397         "obstack_final_size".
2398         * cp-support.c (inspect_type): Declare "i" in loop header.
2399         * compile/compile.c (compile_instance::insert_symbol_error):
2400         Rename inner "e".
2401         * common/agent.c (agent_run_command): Remove inner "ret"
2402         declaration.
2403         * coffread.c (coff_symfile_read): Rename inner "name".
2404         (coff_symfile_read): Rename inner "abfd".
2405         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2406         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2407         "high".
2408         * c-exp.y (lex_one_token): Move "len" declaration lower.
2409         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2410         "gdbarch".
2411         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2412         "b".
2413         (watch_command_1): Declare "mark" later.
2414         (clear_command): Don't shadow "a" or "b".
2415         (delete_command): Rename inner "b".
2416         (delete_trace_command): Likewise.
2417         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2418         "op".
2419         (arm_gdbarch_init): Remove inner "e_flags".
2420         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2421         "offset" in inner blocks.
2422
2423 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2424
2425         * dwarf-index-write.c (file_write): Don't write if the vector is
2426         empty.
2427
2428 2018-10-05  Tom de Vries  <tdevries@suse.de>
2429
2430         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2431         PyArg_ParseTuple call.
2432
2433 2018-10-05  Tom de Vries  <tdevries@suse.de>
2434
2435         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2436         PyArg_ParseTuple call.
2437
2438 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2439
2440         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2441         to avoid exceeding 80 characters per line limit.
2442
2443 2018-10-04  Tom Tromey  <tom@tromey.com>
2444
2445         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2446         (reread_symbols): Update.
2447         * complaints.h (clear_complaints): Remove argument.
2448         * complaints.c (enum complaint_series): Remove.
2449         (series): Remove global.
2450         (complaint_internal): Update.
2451         (clear_complaints): Remove argument.
2452
2453 2018-10-04  Tom Tromey  <tom@tromey.com>
2454
2455         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2456         debugging symbols" message if there is a separate debug objfile.
2457
2458 2018-10-04  Tom Tromey  <tom@tromey.com>
2459
2460         PR cli/19551:
2461         * symfile.c (symbol_file_add_with_addrs): Update output.
2462         * psymtab.c (require_partial_symbols): Update output.
2463
2464 2018-10-04  Tom Tromey  <tom@tromey.com>
2465
2466         PR cli/22234:
2467         * complaints.c: Emit \n.
2468
2469 2018-10-04  Tom Tromey  <tom@tromey.com>
2470
2471         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2472         (separate_debug_file_exists, find_separate_debug_file)
2473         (add_symbol_file_command, reread_symbols, allocate_symtab)
2474         (allocate_compunit_symtab): Use filtered printing, not
2475         unfiltered.
2476         * psymtab.c (require_partial_symbols, dump_psymtab)
2477         (allocate_psymtab): Use filtered printing, not unfiltered.
2478
2479 2018-10-04  Tom Tromey  <tom@tromey.com>
2480
2481         * complaints.c (complaint_internal): Correctly check complaint
2482         count.
2483
2484 2018-10-04  Tom Tromey  <tom@tromey.com>
2485
2486         * complaints.h (struct complaints): Remove declaration.
2487         * complaints.c (clear_complaints): Remove an unused variable.
2488
2489 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2490
2491         * MAINTAINERS (Write After Approval): Add self.
2492
2493 2018-10-03  Tom Tromey  <tom@tromey.com>
2494
2495         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2496         "buffer_contents".
2497         * coffread.c (coff_symtab_read): Initialize "newobj".
2498
2499 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2500
2501         * dwarf2read.c (read_func_scope): Remove struct keyword in
2502         range-based for.
2503
2504 2018-10-03  Tom Tromey  <tom@tromey.com>
2505
2506         * README: Mention --enable-ubsan.
2507         * NEWS: Mention --enable-ubsan.
2508         * acinclude.m4: Include sanitize.m4.
2509         * configure: Rebuild.
2510         * configure.ac: Call AM_GDB_UBSAN.
2511         * sanitize.m4: New file.
2512
2513 2018-10-03  Tom Tromey  <tom@tromey.com>
2514
2515         * expression.h (enum exp_opcode): Use uint8_t as base type.
2516         * expprint.c (op_name): Handle invalid opcodes.
2517
2518 2018-10-03  Tom Tromey  <tom@tromey.com>
2519
2520         * parse.c (prefixify_expression): Add assert.
2521         (parse_exp_in_context_1): Throw exception if the expression is
2522         empty.
2523
2524 2018-10-03  Tom Tromey  <tom@tromey.com>
2525
2526         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2527
2528 2018-10-03  Tom Tromey  <tom@tromey.com>
2529
2530         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2531
2532 2018-10-03  Tom Tromey  <tom@tromey.com>
2533
2534         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2535         unsigned.
2536
2537 2018-10-03  Tom Tromey  <tom@tromey.com>
2538
2539         * findvar.c (extract_integer): Do work in an unsigned type.
2540
2541 2018-10-03  Tom Tromey  <tom@tromey.com>
2542
2543         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2544         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2545         base type.
2546         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2547         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2548         type.
2549         * c-lang.h (enum c_string_type_values): Use unsigned as base
2550         type.
2551         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2552
2553 2018-10-03  Tom Tromey  <tom@tromey.com>
2554
2555         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2556         <~dwarf2_frame_state_reg_info>: Update.
2557         <dwarf2_frame_state_reg_info>: Update.
2558         <alloc_regs>: Add assertion.  Update.
2559         <reg>: Now a std::vector.
2560         <num_regs>: Remove.
2561         <swap>: Update.
2562         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2563         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2564
2565 2018-10-03  Tom Tromey  <tom@tromey.com>
2566
2567         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2568
2569 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2570
2571         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2572
2573 2018-10-02  Tom Tromey  <tom@tromey.com>
2574
2575         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2576
2577 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2578
2579         * NEWS: Mention changed commands.
2580         * ser-uds.c: New file.
2581         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2582         * configure: Regenerate.
2583         * Makefile.in: Add new file.
2584         * serial.c (serial_open): Check if filename is a socket
2585         and lookup the appropriate interface accordingly.
2586
2587 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2588
2589         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2590         define.
2591         (AARCH64_EXTRA_MAGIC): Likewise.
2592         (AARCH64_FPSIMD_MAGIC): Likewise.
2593         (AARCH64_SVE_MAGIC): Likewise.
2594         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2595         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2596         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2597         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2598         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2599         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2600         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2601         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2602         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2603         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2604         (read_aarch64_ctx): Add function.
2605         (aarch64_linux_sigframe_init): Detect FP registers.
2606
2607 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2608
2609         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2610         (AARCH64_D0_REGNUM): Likewise.
2611         (AARCH64_S0_REGNUM): Likewise.
2612         (AARCH64_H0_REGNUM): Likewise.
2613         (AARCH64_B0_REGNUM): Likewise.
2614         (AARCH64_SVE_V0_REGNUM): Likewise.
2615         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2616         (AARCH64_D0_REGNUM): Likewise.
2617         (AARCH64_S0_REGNUM): Likewise.
2618         (AARCH64_H0_REGNUM): Likewise.
2619         (AARCH64_B0_REGNUM): Likewise.
2620         (AARCH64_SVE_V0_REGNUM): Likewise.
2621
2622 2018-10-01  Gary Benson <gbenson@redhat.com>
2623
2624         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2625         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2626         prfpregset_t instead of gdb_prfpregset_t.
2627         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2628         * configure, config.in: Rebuild.
2629
2630 2018-10-01  Gary Benson <gbenson@redhat.com>
2631
2632         * common/gdb_proc_service.h: New file, factored out from...
2633         * gdb_proc_service.h: Moved common code to the above file.
2634         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2635
2636 2018-10-01  Gary Benson <gbenson@redhat.com>
2637
2638         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2639         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2640
2641 2018-10-01  Gary Benson <gbenson@redhat.com>
2642
2643         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2644         (AC_CHECK_HEADERS): Check for linux/elf.h.
2645         * configure, config.in: Rebuild.
2646         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2647         doesn't define elf_fpregset_t.
2648
2649 2018-10-01  Gary Benson <gbenson@redhat.com>
2650
2651         * gdb_proc_service.h: Whitespace change.
2652
2653 2018-10-01  Tom Tromey  <tom@tromey.com>
2654
2655         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2656         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2657         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2658
2659 2018-10-01  Tom Tromey  <tom@tromey.com>
2660
2661         * README: Minor change.
2662
2663 2018-09-30  Pedro Alves  <palves@redhat.com>
2664
2665         * darwin-nat-info.c (darwin_debug_regions_recurse)
2666         (info_mach_exceptions_command): Remove unused local variables.
2667         * darwin-nat.c (darwin_decode_notify_message)
2668         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2669         (darwin_stop_inferior, darwin_setup_exceptions)
2670         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2671         (darwin_nat_target::attach, darwin_nat_target::detach)
2672         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2673         local variables.
2674         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2675         variables.
2676
2677 2018-09-29  Tom Tromey  <tom@tromey.com>
2678
2679         * README: Remove some leftover text.
2680
2681 2018-09-29  Tom Tromey  <tom@tromey.com>
2682
2683         * PROBLEMS: Rewrite.
2684         * README: Update.
2685
2686 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2687
2688         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2689         case with explicit breakpoint kind.
2690         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2691         'additional_info' and related logic.
2692         (riscv_debug_breakpoints): New variable.
2693         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2694         instruction to determine the breakpoint kind.
2695         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2696         flag.  Update description of 'set/show riscv
2697         use-compressed-breakpoints' flag.
2698
2699 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2700
2701         (NEWS): Mention changes to frame related commands.
2702         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2703         (add_prefix_cmd_suppress_notification): New function.
2704         (add_com_suppress_notification): Call
2705         add_cmd_suppress_notification.
2706         * command.h (add_cmd_suppress_notification): Declare.
2707         (add_prefix_cmd_suppress_notification): Declare.
2708         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2709         (parse_frame_specification): Moved from stack.c, with
2710         simplification to handle a single argument.
2711         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2712         switch to the selected frame.  Add a header comment.
2713         * stack.c: Remove 'safe-ctype.h' include.
2714         (find_frame_for_function): Add declaration.
2715         (find_frame_for_address): New function.
2716         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2717         (frame_selection_by_function_completer): New function.
2718         (info_frame_command): Rename to...
2719         (info_frame_command_core): ...this, and update parameter types.
2720         (select_frame_command): Rename to...
2721         (select_frame_command_core): ...this, and update parameter types.
2722         (frame_command): Rename to...
2723         (frame_command_core): ...this, and update parameter types.
2724         (class frame_command_helper): New class to wrap implementations of
2725         frame related sub-commands.
2726         (frame_apply_cmd_list): New static global.
2727         (frame_cmd_list): Make static.
2728         (select_frame_cmd_list): New global for sub-commands.
2729         (info_frame_cmd_list): New global for sub-commands.
2730         (_initialize_stack): Register sub-commands for 'frame',
2731         'select-frame', and 'info frame'.  Update 'frame apply' commands
2732         to use frame_apply_cmd_list.  Move function local static
2733         frame_apply_list to file static frame_apply_cmd_list for
2734         consistency.
2735         * stack.h (select_frame_command): Delete declarationn.
2736         (select_frame_for_mi): Declare new function.
2737
2738 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2739
2740         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2741         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2742         and NOP.
2743
2744 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2745
2746         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2747
2748 2018-09-26  Tom Tromey  <tom@tromey.com>
2749
2750         * valops.c (auto_abandon): Remove dead code.
2751
2752 2018-09-26  Tom Tromey  <tom@tromey.com>
2753
2754         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2755
2756 2018-09-24  Tom Tromey  <tom@tromey.com>
2757
2758         * common/pathstuff.c (get_standard_cache_dir): Make
2759         "xdg_cache_home" and "home" const.
2760         * top.c (init_history): Make "tmpenv" const.
2761         * main.c (get_init_files): Make "homedir" const.
2762
2763 2018-09-23  Tom Tromey  <tom@tromey.com>
2764
2765         PR python/18852:
2766         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2767
2768 2018-09-23  Tom Tromey  <tom@tromey.com>
2769
2770         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2771         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2772         * python/python-internal.h (gdbpy_handle_exception): Declare.
2773         * python/py-utils.c (gdbpy_handle_exception): New function.
2774
2775 2018-09-23  Tom Tromey  <tom@tromey.com>
2776
2777         PR python/17284:
2778         * python/py-type.c (typy_template_argument): Check for negative
2779         argument number.
2780
2781 2018-09-23  Tom Tromey  <tom@tromey.com>
2782
2783         PR python/14062:
2784         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2785
2786 2018-09-23  Tom Tromey  <tom@tromey.com>
2787
2788         PR python/18170:
2789         * python/py-value.c (valpy_int): Allow conversion from pointer
2790         type.
2791
2792 2018-09-23  Tom Tromey  <tom@tromey.com>
2793
2794         PR python/20126:
2795         * python/py-value.c (valpy_int): Respect type sign.
2796
2797 2018-09-23  Tom Tromey  <tom@tromey.com>
2798
2799         PR python/18352;
2800         * python/py-value.c (valpy_float): Allow conversions from int or
2801         char.
2802         (valpy_int, valpy_long): Allow conversions from float.
2803
2804 2018-09-23  Tom Tromey  <tom@tromey.com>
2805
2806         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2807         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2808
2809 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2810
2811         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2812         __sighndlr.
2813         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2814
2815 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2816
2817         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2818         target_terminal::ours().
2819
2820 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2821
2822         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2823         of vl to ULONGEST.
2824
2825 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2826
2827         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2828         redundant condition.
2829
2830 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2831
2832         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2833
2834         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2835         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2836         * sol-thread.c (ps_pdmodel): Don't guard definition.
2837
2838         * procfs.c: Fix formatting.
2839
2840         * procfs.c (sysset_t_alloc): Remove.
2841         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2842         (procfs_debug_inferior): Likewise.
2843         (procfs_set_exec_trap): Likewise.
2844         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2845         (proc_set_traced_sysexit): Likewise.
2846
2847         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2848         (dead_procinfo): Likewise.
2849         (proc_warn): Likewise.
2850         (proc_error): Likewise.
2851         (proc_get_LDT_entry): Likewise.
2852         (do_attach): Likewise.
2853         (procfs_target::pid_to_str): Likewise.
2854         (iterate_over_mappings): Likewise.
2855
2856         * procfs.c (create_procinfo): Fix ARI warning.
2857         (proc_get_status): Likewise.
2858         (proc_stop_process): Likewise.
2859         (proc_run_process): Likewise.
2860         (proc_kill): Likewise.
2861         (proc_get_LDT_entry): Likewise.
2862         (procfs_find_LDT_entry): Likewise.
2863         (proc_update_threads): Likewise.
2864         (proc_iterate_over_threads): Likewise.
2865         (do_attach): Likewise.
2866         (procfs_xfer_memory): Likewise.
2867         (invalidate_cache): Likewise.
2868         (procfs_target::resume): Likewise.
2869         (procfs_init_inferior): Likewise.
2870         (procfs_set_exec_trap): Likewise.
2871         (procfs_target::thread_alive): Likewise.
2872         (procfs_target::pid_to_exec_file): Likewise.
2873         (iterate_over_mappings): Likewise.
2874         (procfs_target::make_corefile_notes): Likewise.
2875         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2876
2877         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2878         (procfs_find_LDT_entry): Likewise.
2879         * sol-thread.c (ps_lgetLDT): Likewise.
2880
2881 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2882
2883         PR tdep/17903
2884         * procfs.c (procfs_target): Declare pid_to_exec_file.
2885         (procfs_target::pid_to_exec_file): New.
2886
2887 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2888
2889         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2890         renaming.
2891         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2892         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2893
2894 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2895
2896         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2897         (supply_fpregset, fill_fpregset): Move ...
2898         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2899         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2900         Remove references to ioctl-based procfs.
2901         Include <sys/reg.h>.
2902         Remove PR_MODEL_NATIVE guards.
2903         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2904         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2905
2906 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2907
2908         PR gdb/20981:
2909         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2910         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2911         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2912
2913 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2914
2915         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2916         (fbsd_print_sockaddr_in6): Likewise.
2917
2918 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2919             Chris January  <chris.january@arm.com>
2920
2921         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2922         (evaluate_subexp_standard): Return a dummy type when
2923         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2924         OP_F77_UNDETERMINED_ARGLIST case.
2925         * expression.h (enum noside): Update comment.
2926
2927 2018-09-19  George Vasick <george.vasick@oracle.com>
2928
2929         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2930
2931 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2932             April Chin <april.chin@oracle.com>
2933             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2934
2935         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2936         uint_t lwpid_t.
2937         (create_procinfo): Print pids in /proc without leading zeros.
2938
2939 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2940
2941         * nios2-tdep.c (nios2_gcc_target_options): New.
2942         (nios2_gdb_arch_init): Install new hook.
2943
2944 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2945
2946         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2947         New file.
2948         * update-gnulib.sh: Apply patch.
2949         * configure: Re-generate.
2950
2951 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2952
2953         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2954         description.  Make "info proc" command descriptions more
2955         consistent.
2956
2957 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2958
2959         * NEWS: Mention 'info proc files' command.
2960
2961 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2962
2963         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2964         descriptors for IP_FILES and IP_ALL.
2965
2966 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2967
2968         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2969         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2970         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2971         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2972         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2973         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2974         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2975         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2976         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2977         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2978         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2979         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2980         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2981         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2982         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2983         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2984         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2985         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2986         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2987         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2988         (struct fbsd_sockaddr_un): New types.
2989         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2990         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2991         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2992         (fbsd_core_info_proc_files): New functions.
2993         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2994         IP_ALL.
2995         * fbsd-tdep.h (fbsd_info_proc_files_header)
2996         (fbsd_info_proc_files_entry): New.
2997
2998 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2999
3000         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3001         * infcmd.c (info_proc_cmd_files): New function.
3002         (_initialize_infcmd): Register 'info proc files' command.
3003
3004 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3005
3006         * gnulib/aclocal-m4-deps.mk: Re-generate.
3007         * gnulib/aclocal.m4: Re-generate.
3008         * gnulib/config.in: Re-generate.
3009         * gnulib/configure: Re-generate.
3010         * gnulib/import/Makefile.am: Re-generate.
3011         * gnulib/import/Makefile.in: Re-generate.
3012         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3013         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3014         * gnulib/import/arpa_inet.in.h: New file.
3015         * gnulib/import/inet_ntop.c: New file.
3016         * gnulib/import/m4/arpa_inet_h.m4: New file.
3017         * gnulib/import/m4/inet_ntop.m4: New file.
3018         * gnulib/import/m4/netinet_in_h.m4: New file.
3019         * gnulib/import/m4/socklen.m4: New file.
3020         * gnulib/import/m4/sockpfaf.m4: New file.
3021         * gnulib/import/m4/stdalign.m4: New file.
3022         * gnulib/import/m4/sys_uio_h.m4: New file.
3023         * gnulib/import/netinet_in.in.h: New file.
3024         * gnulib/import/stdalign.in.h: New file.
3025         * gnulib/import/sys_socket.c: New file.
3026         * gnulib/import/sys_socket.in.h: New file.
3027         * gnulib/import/sys_uio.in.h: New file.
3028         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3029         module.
3030
3031 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3032
3033         * gnulib/aclocal-m4-deps.mk: New file.
3034         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3035         deterministically.
3036
3037 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3038
3039         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3040         KVE_PATH.
3041
3042 2018-09-18  Tom Tromey  <tom@tromey.com>
3043
3044         * compile/compile-object-load.c (struct
3045         link_hash_table_cleanup_data): Add constructor and destructor.
3046         Use DISABLE_COPY_AND_ASSIGN.
3047         (~link_hash_table_cleanup_data): Rename from
3048         link_hash_table_free.  Now a destructor.
3049         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3050
3051 2018-09-18  Tom Tromey  <tom@tromey.com>
3052
3053         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3054         * compile/compile-object-load.c (struct munmap_list): Move to
3055         header file.
3056         (munmap_list::add): Rename from munmap_list_add; rewrite.
3057         (munmap_list::~munmap_list): Rename from munmap_list_free.
3058         (munmap_listp_free_cleanup): Remove.
3059         (compile_object_load): Update.
3060         * compile/compile-object-load.h (struct munmap_list): Move from
3061         compile-object-load.c.  Rewrite.
3062
3063 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3064
3065         * aarch64-tdep.c (pass_in_v): Use register size.
3066         (aarch64_extract_return_value): Likewise.
3067         (aarch64_store_return_value): Likewise.
3068
3069 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3070
3071         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3072         rlim_t.
3073
3074 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3075
3076         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3077         Fix short help line.
3078
3079 2018-09-17  Tom Tromey  <tom@tromey.com>
3080
3081         PR python/20445:
3082         * configure: Rebuild.
3083         * configure.ac: Conditionally use -DNDEBUG for Python.
3084
3085 2018-09-17  Tom Tromey  <tom@tromey.com>
3086
3087         * configure: Rebuild.
3088         * configure.ac: Use gmp as a library dependency when checking for
3089         mpfr.
3090
3091 2018-09-17  Pedro Alves  <palves@redhat.com>
3092
3093         * python/py-inferior.c (find_inferior_object): Delete.
3094
3095 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3096
3097         * compile/compile-cplus-types.c
3098         (compile_cplus_instance::enter_scope): Don't use new_scope after
3099         std::move.
3100
3101 2018-09-17  Tom Tromey  <tom@tromey.com>
3102
3103         * common/pathstuff.c (get_standard_cache_dir): Use
3104         ~/Library/Caches on macOS.
3105         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3106
3107 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3108
3109         PR python/23669
3110         * breakpoint.c (commands_cmd_element): New.
3111         (_initialize_breakpoint): Assign commands_cmd_element.
3112         * breakpoint.h (commands_cmd_element): New.
3113         * cli/cli-script.c (while_cmd_element, if_command,
3114         define_cmd_element): New.
3115         (command_name_equals): Remove.
3116         (process_next_line): Compare commands by pointer, not by name.
3117         (_initialize_cli_script): Assign the various cmd_list_element
3118         variables.
3119         * compile/compile.c (compile_cmd_element): New.
3120         (_initialize_compile): Assign compile_cmd_element.
3121         * compile/compile.h (compile_cmd_element): New.
3122         * guile/guile.c (guile_cmd_element): New.
3123         (install_gdb_commands): Assign guile_cmd_element.
3124         * guile/guile.h (guile_cmd_element): New.
3125         * python/python.c (python_cmd_element): New.
3126         (_initialize_python): Assign python_cmd_element.
3127         * python/python.h (python_cmd_element): New.
3128         * tracepoint.c (while_stepping_cmd_element): New.
3129         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3130         * tracepoint.h (while_stepping_cmd_element): New.
3131
3132 2018-09-17  Tom Tromey  <tom@tromey.com>
3133
3134         * infrun.c (save_infcall_suspend_state): Return
3135         infcall_suspend_state_up.
3136         (save_infcall_control_state): Return infcall_control_state_up.
3137         * inferior.h (save_infcall_suspend_state)
3138         (save_infcall_control_state): Declare later.  Return unique
3139         pointers.
3140
3141 2018-09-17  Tom Tromey  <tom@tromey.com>
3142
3143         * infrun.c (struct stop_context): Declare constructor,
3144         destructor, "changed" method.
3145         (stop_context::stop_context): Rename from save_stop_context.
3146         (stop_context::~stop_context): Rename from
3147         release_stop_context_cleanup.
3148         (normal_stop): Update.
3149         (stop_context::changed): Rename from stop_context_changed.  Return
3150         bool.
3151
3152 2018-09-17  Tom Tromey  <tom@tromey.com>
3153
3154         * inferior.h (struct infcall_suspend_state_deleter): New.
3155         (infcall_suspend_state_up): New typedef.
3156         (struct infcall_control_state_deleter): New.
3157         (infcall_control_state_up): New typedef.
3158         (make_cleanup_restore_infcall_suspend_state)
3159         (make_cleanup_restore_infcall_control_state): Don't declare.
3160         * infcall.c (call_function_by_hand_dummy): Update.
3161         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3162         (make_cleanup_restore_infcall_suspend_state): Remove.
3163         (do_restore_infcall_control_state_cleanup)
3164         (make_cleanup_restore_infcall_control_state): Remove.
3165
3166 2018-09-17  Tom Tromey  <tom@tromey.com>
3167
3168         * gdbthread.h (struct thread_control_state): Add initializer.
3169         (class thread_info) <control>: Remove initializer.
3170         * inferior.h (struct inferior_control_state): Add initializer.
3171         (class inferior) <control>: Remove initializer.
3172         (exit_inferior_1): Update.
3173         * infrun.c (struct infcall_control_state): Add constructors.
3174         (save_infcall_control_state): Use new.
3175         (restore_infcall_control_state, discard_infcall_control_state):
3176         Use delete.
3177
3178 2018-09-17  Tom Tromey  <tom@tromey.com>
3179
3180         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3181         unique_ptr.
3182         <siginfo_data>: Now a unique_xmalloc_ptr.
3183         (save_infcall_suspend_state, restore_infcall_suspend_state)
3184         (discard_infcall_suspend_state)
3185         (get_infcall_suspend_state_regcache): Update.
3186
3187 2018-09-17  Tom Tromey  <tom@tromey.com>
3188
3189         * gdbthread.h (struct thread_suspend_state): Add initializers.
3190         (class thread_info) <suspend>: Remove initializer.
3191         * infrun.c (struct infcall_suspend_state): Add initializers.
3192         (save_infcall_suspend_state): Use new.
3193         (discard_infcall_suspend_state): Use delete.
3194
3195 2018-09-16  Tom Tromey  <tom@tromey.com>
3196
3197         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3198         Remove.
3199         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3200         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3201         (py_varobj_iter_new): Likewise.
3202         (py_varobj_get_iterator): Use gdbpy_ref.
3203
3204 2018-09-16  Tom Tromey  <tom@tromey.com>
3205
3206         * python/py-threadevent.c (py_get_event_thread): Simplify.
3207         * python/py-inferior.c (infpy_thread_from_thread_handle):
3208         Return immediately after calling thread_to_thread_object.  Use
3209         Py_RETURN_NONE.
3210         (thread_to_thread_object): Set the exception on a NULL return.
3211
3212 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3213
3214         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3215
3216 2018-09-16  Tom Tromey  <tom@tromey.com>
3217
3218         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3219         Remove.
3220
3221 2018-09-16  Tom Tromey  <tom@tromey.com>
3222
3223         * python/python-internal.h (thread_to_thread_object): Change
3224         return type.
3225         * python/py-inferior.c (thread_to_thread_object): Return a new
3226         reference.
3227         (infpy_thread_from_thread_handle): Update.
3228         * python/py-infthread.c (gdbpy_selected_thread): Update.
3229         * python/py-stopevent.c (create_stop_event_object): Update.
3230         * python/py-threadevent.c (py_get_event_thread): Return a new
3231         reference.
3232         (py_get_event_thread): Update.
3233         * python/py-event.h (py_get_event_thread): Change return type.
3234         * python/py-continueevent.c (create_continue_event_object):
3235         Update.
3236
3237 2018-09-16  Tom Tromey  <tom@tromey.com>
3238
3239         * python/py-progspace.c (pspy_get_objfiles): Update.
3240         * python/python-internal.h (objfile_to_objfile_object): Change
3241         return type.
3242         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3243         Update.
3244         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3245         Update.
3246         * python/python.c (gdbpy_get_current_objfile): Update.
3247         (gdbpy_objfiles): Update.
3248         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3249         Update.
3250         (objfile_to_objfile_object): Return a new reference.
3251         * python/py-symtab.c (stpy_get_objfile): Update.
3252         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3253         Update.
3254
3255 2018-09-16  Tom Tromey  <tom@tromey.com>
3256
3257         * python/py-inferior.c (infpy_get_progspace): Update.
3258         * python/python-internal.h (pspace_to_pspace_object): Change
3259         return type.
3260         * python/py-newobjfileevent.c
3261         (create_clear_objfiles_event_object): Update.
3262         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3263         Update.
3264         * python/python.c (gdbpy_get_current_progspace): Update.
3265         (gdbpy_progspaces): Update.
3266         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3267         reference.
3268         * python/py-objfile.c (objfpy_get_progspace): Update.
3269         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3270         Update.
3271
3272 2018-09-16  Tom Tromey  <tom@tromey.com>
3273
3274         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3275         (solib_name, block_for_pc, find_pc_line): New functions.
3276         (execute_unwinders): Update.
3277         * python/py-block.c (gdbpy_block_for_pc): Remove.
3278         * python/py-inferior.c (infpy_get_progspace): New function.
3279         (inferior_object_getset) <progspace>: Add.
3280         * python/py-progspace.c (pspy_objfiles): Rewrite.
3281         (pspy_solib_name, pspy_block_for_pc)
3282         (pspy_find_pc_line, pspy_is_valid): New functions.
3283         (progspace_object_methods): Add entries for solib_name,
3284         block_for_pc, find_pc_line, is_valid.
3285         * python/python-internal.h (gdbpy_block_for_pc)
3286         (build_objfiles_list): Don't declare.
3287         * python/python.c: Don't include solib.h.
3288         (gdbpy_solib_name, gdbpy_find_pc_line)
3289         (gdbpy_get_current_progspace, build_objfiles_list)
3290         (gdbpy_objfiles): Remove.
3291         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3292         solib_name, find_pc_line>: Remove entries.
3293
3294 2018-09-16  Tom Tromey  <tom@tromey.com>
3295
3296         * top.c (new_ui_command): Use GNU style for metasyntactic
3297         variables.
3298         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3299         variables.
3300         * maint.c (maintenance_translate_address): Remove "<>" around
3301         text.
3302         * interps.c (interpreter_exec_cmd): Use GNU style for
3303         metasyntactic variables.
3304         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3305         metasyntactic variables.
3306         * tracepoint.c (tfind_range_command): Use GNU style for
3307         metasyntactic variables.
3308         (tfind_outside_command): Likewise.
3309         (_initialize_tracepoint): Likewise.
3310         * remote.c (extended_remote_target::create_inferior): Use GNU
3311         style for metasyntactic variables.
3312         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3313         metasyntactic variables.
3314         (adi_assign_command): Likewise.
3315
3316 2018-09-16  Tom Tromey  <tom@tromey.com>
3317
3318         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3319         metasyntactic variables.  Print message if no disassembler options
3320         are available.
3321
3322 2018-09-15  Tom Tromey  <tom@tromey.com>
3323
3324         * infcmd.c (get_inferior_args): Return const char *.
3325         * inferior.h (get_inferior_args): Return type now const.
3326         * linux-tdep.c (linux_fill_prpsinfo): Update.
3327         * procfs.c (procfs_target::make_corefile_notes): Update.
3328
3329 2018-09-07  Tom Tromey  <tom@tromey.com>
3330
3331         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3332         inside the TRY.
3333
3334 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3335
3336         * nios2-tdep.c (nios2_type_align): New.
3337         (nios2_gdb_arch_init): Install type_align hook.
3338
3339 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3340
3341         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3342         type that is neither object file owned, nor gdbarch owned.
3343         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3344         gdbarch is non-NULL.
3345         (alloc_type_instance): Allocate non-objfile owned types on the
3346         gdbarch obstack.
3347         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3348         using TYPE_ALLOC to ensure memory is allocated on the correct
3349         obstack.
3350         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3351         obstack, or the gdbarch obstack.
3352         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3353
3354 2018-09-14  Tom Tromey  <tom@tromey.com>
3355
3356         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3357         block.
3358
3359 2018-09-14  Tom Tromey  <tom@tromey.com>
3360
3361         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3362
3363 2018-09-13  Tom Tromey  <tom@tromey.com>
3364
3365         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3366         static.
3367
3368 2018-09-13  Tom Tromey  <tom@tromey.com>
3369
3370         * exec.c (try_open_exec_file): Use std::string.
3371
3372 2018-09-13  Tom Tromey  <tom@tromey.com>
3373
3374         * utils.h (gdb_bfd_errmsg): Return std::string.
3375         * exec.c (exec_file_attach): Update.
3376         * compile/compile-object-load.c (compile_object_load): Update.
3377         * utils.c (gdb_bfd_errmsg): Return std::string.
3378
3379 2018-09-13  Tom Tromey  <tom@tromey.com>
3380
3381         * procfs.c (struct procinfo_deleter): New.
3382         (procinfo_up): New typedef.
3383         (do_destroy_procinfo_cleanup): Remove.
3384         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3385
3386 2018-09-13  Tom Tromey  <tom@tromey.com>
3387
3388         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3389
3390 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3391 2018-09-13  Tom Tromey  <tom@tromey.com>
3392
3393         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3394         (pspy_get_objfiles): New function.
3395         (progspace_object_methods): New.
3396         (pspace_object_type): Add tp_methods callback.
3397         * python/python-internal.h (build_objfiles_list): New
3398         declaration.
3399         * python/python.c (build_objfiles_list): New function.
3400         (gdbpy_objfiles): Implement using build_objfiles_list.
3401         * NEWS: Mention the Progspace.objfiles method.
3402
3403 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3404
3405         * python/py-inferior.c (infpy_get_progspace): New function.
3406         (inferior_object_getset): Add progspace property.
3407         * NEWS: Mention the new property.
3408
3409 2018-09-13  Tom Tromey  <tom@tromey.com>
3410
3411         PR rust/23650:
3412         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3413
3414 2018-09-13  Tom Tromey  <tom@tromey.com>
3415
3416         PR rust/23626:
3417         * rust-lang.c (rust_enum_variant): Now static.
3418         (rust_empty_enum_p): New function.
3419         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3420         Handle empty enum.
3421
3422 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3423
3424         * python/py-inferior.c (infpy_repr): New.
3425         (inferior_object_type): Register infpy_repr.
3426         * python/py-objfile.c (objfpy_repr): New.
3427         (objfile_object_type): Register objfpy_repr.
3428
3429 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3430
3431         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3432
3433 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3434
3435         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3436         typo.
3437
3438 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3439
3440         * common/common-utils.c: Don't include '<sys/stat.h>'.
3441         (is_regular_file): Move to...
3442         * common/filestuff.c (is_regular_file): ... here.
3443         * common/common-utils.h (is_regular_file): Move to...
3444         * common/filestuff.h (is_regular_file): ... here.
3445
3446 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3447
3448         * skip.c (debug_skip): New variable.
3449         (skiplist_entry::do_skip_file_p): Add debug output.
3450         (skiplist_entry::do_skip_gfile_p): Likewise.
3451         (skiplist_entry::skip_function_p): Likewise.
3452         (_initialize_step_skip): Create debug command.
3453         * NEWS: Mention set/show debug skip.
3454
3455 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3456
3457         * darwin-nat.c (should_disable_startup_with_shell):
3458         New function.
3459         (darwin_nat_target::create_inferior): Add call.
3460
3461 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3462
3463         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3464         inf_port, msg_state>: Initialize.
3465         (struct darwin_thread_info) <signaled, single_step>: Change
3466         type and initialize.
3467         (struct darwin_thread_info) <event>: Initialize.
3468
3469 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3470
3471         PR gdb/23555
3472         PR gdb/23558
3473         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3474         guesses.
3475
3476 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3477
3478         Revert:
3479         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3480
3481         PR gdb/23555
3482         PR gdb/23558
3483         * gnulib/aclocal.m4: Regenerate.
3484         * gnulib/config.in: Regenerate.
3485         * gnulib/configure: Regenerate.
3486         * gnulib/import/Makefile.am: Update.
3487         * gnulib/import/Makefile.in: Update.
3488         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3489         * gnulib/import/_Noreturn.h: ... this.
3490         * gnulib/import/alloca.in.h: Update.
3491         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3492         * gnulib/import/arg-nonnull.h: ... this.
3493         * gnulib/import/assure.h: Update.
3494         * gnulib/import/at-func.c: Update.
3495         * gnulib/import/basename-lgpl.c: Update.
3496         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3497         * gnulib/import/c++defs.h: ... this.
3498         * gnulib/import/canonicalize-lgpl.c: Update.
3499         * gnulib/import/cdefs.h: Update.
3500         * gnulib/import/chdir-long.c: Update.
3501         * gnulib/import/chdir-long.h: Update.
3502         * gnulib/import/cloexec.c: Update.
3503         * gnulib/import/cloexec.h: Update.
3504         * gnulib/import/close.c: Update.
3505         * gnulib/import/closedir.c: Update.
3506         * gnulib/import/config.charset: Update.
3507         * gnulib/import/dirent-private.h: Update.
3508         * gnulib/import/dirent.in.h: Update.
3509         * gnulib/import/dirfd.c: Update.
3510         * gnulib/import/dirname-lgpl.c: Update.
3511         * gnulib/import/dirname.h: Update.
3512         * gnulib/import/dosname.h: Update.
3513         * gnulib/import/dup-safer-flag.c: Update.
3514         * gnulib/import/dup-safer.c: Update.
3515         * gnulib/import/dup.c: Update.
3516         * gnulib/import/dup2.c: Update.
3517         * gnulib/import/errno.in.h: Update.
3518         * gnulib/import/error.c: Update.
3519         * gnulib/import/error.h: Update.
3520         * gnulib/import/exitfail.c: Update.
3521         * gnulib/import/exitfail.h: Update.
3522         * gnulib/import/extra/update-copyright: Update.
3523         * gnulib/import/fchdir.c: Update.
3524         * gnulib/import/fcntl.c: Update.
3525         * gnulib/import/fcntl.in.h: Update.
3526         * gnulib/import/fd-hook.c: Update.
3527         * gnulib/import/fd-hook.h: Update.
3528         * gnulib/import/fd-safer-flag.c: Update.
3529         * gnulib/import/fd-safer.c: Update.
3530         * gnulib/import/fdopendir.c: Update.
3531         * gnulib/import/filename.h: Update.
3532         * gnulib/import/filenamecat-lgpl.c: Update.
3533         * gnulib/import/filenamecat.h: Update.
3534         * gnulib/import/flexmember.h: Update.
3535         * gnulib/import/float+.h: Update.
3536         * gnulib/import/float.c: Update.
3537         * gnulib/import/float.in.h: Update.
3538         * gnulib/import/fnmatch.c: Update.
3539         * gnulib/import/fnmatch.in.h: Update.
3540         * gnulib/import/fnmatch_loop.c: Update.
3541         * gnulib/import/fpucw.h: Update.
3542         * gnulib/import/frexp.c: Update.
3543         * gnulib/import/frexpl.c: Update.
3544         * gnulib/import/fstat.c: Update.
3545         * gnulib/import/fstatat.c: Update.
3546         * gnulib/import/getcwd-lgpl.c: Update.
3547         * gnulib/import/getcwd.c: Update.
3548         * gnulib/import/getdtablesize.c: Update.
3549         * gnulib/import/getlogin_r.c: Update.
3550         * gnulib/import/getprogname.c: Update.
3551         * gnulib/import/getprogname.h: Update.
3552         * gnulib/import/gettext.h: Update.
3553         * gnulib/import/gettimeofday.c: Update.
3554         * gnulib/import/glob-libc.h: Update.
3555         * gnulib/import/glob.c: Update.
3556         * gnulib/import/glob.in.h: Update.
3557         * gnulib/import/glob_internal.h: Update.
3558         * gnulib/import/glob_pattern_p.c: Update.
3559         * gnulib/import/globfree.c: Update.
3560         * gnulib/import/hard-locale.c: Update.
3561         * gnulib/import/hard-locale.h: Update.
3562         * gnulib/import/intprops.h: Update.
3563         * gnulib/import/inttypes.in.h: Update.
3564         * gnulib/import/isnan.c: Update.
3565         * gnulib/import/isnand-nolibm.h: Update.
3566         * gnulib/import/isnand.c: Update.
3567         * gnulib/import/isnanl-nolibm.h: Update.
3568         * gnulib/import/isnanl.c: Update.
3569         * gnulib/import/itold.c: Update.
3570         * gnulib/import/libc-config.h: Update.
3571         * gnulib/import/limits.in.h: Update.
3572         * gnulib/import/localcharset.c: Update.
3573         * gnulib/import/localcharset.h: Update.
3574         * gnulib/import/localtime-buffer.c: Update.
3575         * gnulib/import/localtime-buffer.h: Update.
3576         * gnulib/import/lstat.c: Update.
3577         * gnulib/import/m4/00gnulib.m4: Update.
3578         * gnulib/import/m4/__inline.m4: Update.
3579         * gnulib/import/m4/absolute-header.m4: Update.
3580         * gnulib/import/m4/alloca.m4: Update.
3581         * gnulib/import/m4/builtin-expect.m4: Update.
3582         * gnulib/import/m4/canonicalize.m4: Update.
3583         * gnulib/import/m4/chdir-long.m4: Update.
3584         * gnulib/import/m4/close.m4: Update.
3585         * gnulib/import/m4/closedir.m4: Update.
3586         * gnulib/import/m4/configmake.m4: Update.
3587         * gnulib/import/m4/d-ino.m4: Update.
3588         * gnulib/import/m4/d-type.m4: Update.
3589         * gnulib/import/m4/dirent_h.m4: Update.
3590         * gnulib/import/m4/dirfd.m4: Update.
3591         * gnulib/import/m4/dirname.m4: Update.
3592         * gnulib/import/m4/double-slash-root.m4: Update.
3593         * gnulib/import/m4/dup.m4: Update.
3594         * gnulib/import/m4/dup2.m4: Update.
3595         * gnulib/import/m4/eealloc.m4: Update.
3596         * gnulib/import/m4/environ.m4: Update.
3597         * gnulib/import/m4/errno_h.m4: Update.
3598         * gnulib/import/m4/error.m4: Update.
3599         * gnulib/import/m4/exponentd.m4: Update.
3600         * gnulib/import/m4/exponentl.m4: Update.
3601         * gnulib/import/m4/extensions.m4: Update.
3602         * gnulib/import/m4/extern-inline.m4: Update.
3603         * gnulib/import/m4/fchdir.m4: Update.
3604         * gnulib/import/m4/fcntl-o.m4: Update.
3605         * gnulib/import/m4/fcntl.m4: Update.
3606         * gnulib/import/m4/fcntl_h.m4: Update.
3607         * gnulib/import/m4/fdopendir.m4: Update.
3608         * gnulib/import/m4/filenamecat.m4: Update.
3609         * gnulib/import/m4/flexmember.m4: Update.
3610         * gnulib/import/m4/float_h.m4: Update.
3611         * gnulib/import/m4/fnmatch.m4: Update.
3612         * gnulib/import/m4/fnmatch_h.m4: Update.
3613         * gnulib/import/m4/fpieee.m4: Update.
3614         * gnulib/import/m4/frexp.m4: Update.
3615         * gnulib/import/m4/frexpl.m4: Update.
3616         * gnulib/import/m4/fstat.m4: Update.
3617         * gnulib/import/m4/fstatat.m4: Update.
3618         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3619         * gnulib/import/m4/getcwd-path-max.m4: Update.
3620         * gnulib/import/m4/getcwd.m4: Update.
3621         * gnulib/import/m4/getdtablesize.m4: Update.
3622         * gnulib/import/m4/getlogin.m4: Update.
3623         * gnulib/import/m4/getlogin_r.m4: Update.
3624         * gnulib/import/m4/getpagesize.m4: Update.
3625         * gnulib/import/m4/getprogname.m4: Update.
3626         * gnulib/import/m4/gettimeofday.m4: Update.
3627         * gnulib/import/m4/glibc21.m4: Update.
3628         * gnulib/import/m4/glob.m4: Update.
3629         * gnulib/import/m4/glob_h.m4: Update.
3630         * gnulib/import/m4/gnulib-cache.m4: Update.
3631         * gnulib/import/m4/gnulib-common.m4: Update.
3632         * gnulib/import/m4/gnulib-comp.m4: Update.
3633         * gnulib/import/m4/gnulib-tool.m4: Update.
3634         * gnulib/import/m4/hard-locale.m4: Update.
3635         * gnulib/import/m4/include_next.m4: Update.
3636         * gnulib/import/m4/inttypes-pri.m4: Update.
3637         * gnulib/import/m4/inttypes.m4: Update.
3638         * gnulib/import/m4/isnand.m4: Update.
3639         * gnulib/import/m4/isnanl.m4: Update.
3640         * gnulib/import/m4/largefile.m4: Update.
3641         * gnulib/import/m4/limits-h.m4: Update.
3642         * gnulib/import/m4/localcharset.m4: Update.
3643         * gnulib/import/m4/locale-fr.m4: Update.
3644         * gnulib/import/m4/locale-ja.m4: Update.
3645         * gnulib/import/m4/locale-zh.m4: Update.
3646         * gnulib/import/m4/localtime-buffer.m4: Update.
3647         * gnulib/import/m4/longlong.m4: Update.
3648         * gnulib/import/m4/lstat.m4: Update.
3649         * gnulib/import/m4/malloc.m4: Update.
3650         * gnulib/import/m4/malloca.m4: Update.
3651         * gnulib/import/m4/math_h.m4: Update.
3652         * gnulib/import/m4/mbrtowc.m4: Update.
3653         * gnulib/import/m4/mbsinit.m4: Update.
3654         * gnulib/import/m4/mbsrtowcs.m4: Update.
3655         * gnulib/import/m4/mbstate_t.m4: Update.
3656         * gnulib/import/m4/memchr.m4: Update.
3657         * gnulib/import/m4/memmem.m4: Update.
3658         * gnulib/import/m4/mempcpy.m4: Update.
3659         * gnulib/import/m4/memrchr.m4: Update.
3660         * gnulib/import/m4/mkdir.m4: Update.
3661         * gnulib/import/m4/mkstemp.m4: Update.
3662         * gnulib/import/m4/mmap-anon.m4: Update.
3663         * gnulib/import/m4/mode_t.m4: Update.
3664         * gnulib/import/m4/msvc-inval.m4: Update.
3665         * gnulib/import/m4/msvc-nothrow.m4: Update.
3666         * gnulib/import/m4/multiarch.m4: Update.
3667         * gnulib/import/m4/nocrash.m4: Update.
3668         * gnulib/import/m4/off_t.m4: Update.
3669         * gnulib/import/m4/onceonly.m4: Update.
3670         * gnulib/import/m4/open-cloexec.m4: Update.
3671         * gnulib/import/m4/open.m4: Update.
3672         * gnulib/import/m4/openat.m4: Update.
3673         * gnulib/import/m4/opendir.m4: Update.
3674         * gnulib/import/m4/pathmax.m4: Update.
3675         * gnulib/import/m4/rawmemchr.m4: Update.
3676         * gnulib/import/m4/readdir.m4: Update.
3677         * gnulib/import/m4/readlink.m4: Update.
3678         * gnulib/import/m4/realloc.m4: Update.
3679         * gnulib/import/m4/rename.m4: Update.
3680         * gnulib/import/m4/rewinddir.m4: Update.
3681         * gnulib/import/m4/rmdir.m4: Update.
3682         * gnulib/import/m4/save-cwd.m4: Update.
3683         * gnulib/import/m4/secure_getenv.m4: Update.
3684         * gnulib/import/m4/setenv.m4: Update.
3685         * gnulib/import/m4/signal_h.m4: Update.
3686         * gnulib/import/m4/ssize_t.m4: Update.
3687         * gnulib/import/m4/stat-time.m4: Update.
3688         * gnulib/import/m4/stat.m4: Update.
3689         * gnulib/import/m4/std-gnu11.m4: Update.
3690         * gnulib/import/m4/stdbool.m4: Update.
3691         * gnulib/import/m4/stddef_h.m4: Update.
3692         * gnulib/import/m4/stdint.m4: Update.
3693         * gnulib/import/m4/stdio_h.m4: Update.
3694         * gnulib/import/m4/stdlib_h.m4: Update.
3695         * gnulib/import/m4/strchrnul.m4: Update.
3696         * gnulib/import/m4/strdup.m4: Update.
3697         * gnulib/import/m4/strerror.m4: Update.
3698         * gnulib/import/m4/string_h.m4: Update.
3699         * gnulib/import/m4/strstr.m4: Update.
3700         * gnulib/import/m4/strtok_r.m4: Update.
3701         * gnulib/import/m4/sys_socket_h.m4: Update.
3702         * gnulib/import/m4/sys_stat_h.m4: Update.
3703         * gnulib/import/m4/sys_time_h.m4: Update.
3704         * gnulib/import/m4/sys_types_h.m4: Update.
3705         * gnulib/import/m4/tempname.m4: Update.
3706         * gnulib/import/m4/time_h.m4: Update.
3707         * gnulib/import/m4/unistd-safer.m4: Update.
3708         * gnulib/import/m4/unistd_h.m4: Update.
3709         * gnulib/import/m4/warn-on-use.m4: Update.
3710         * gnulib/import/m4/wchar_h.m4: Update.
3711         * gnulib/import/m4/wchar_t.m4: Update.
3712         * gnulib/import/m4/wctype_h.m4: Update.
3713         * gnulib/import/m4/wint_t.m4: Update.
3714         * gnulib/import/malloc.c: Update.
3715         * gnulib/import/malloc/scratch_buffer.h: Update.
3716         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3717         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3718         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3719         * gnulib/import/malloca.c: Update.
3720         * gnulib/import/malloca.h: Update.
3721         * gnulib/import/malloca.valgrind: Update.
3722         * gnulib/import/math.in.h: Update.
3723         * gnulib/import/mbrtowc.c: Update.
3724         * gnulib/import/mbsinit.c: Update.
3725         * gnulib/import/mbsrtowcs-impl.h: Update.
3726         * gnulib/import/mbsrtowcs-state.c: Update.
3727         * gnulib/import/mbsrtowcs.c: Update.
3728         * gnulib/import/memchr.c: Update.
3729         * gnulib/import/memmem.c: Update.
3730         * gnulib/import/mempcpy.c: Update.
3731         * gnulib/import/memrchr.c: Update.
3732         * gnulib/import/mkdir.c: Update.
3733         * gnulib/import/mkstemp.c: Update.
3734         * gnulib/import/msvc-inval.c: Update.
3735         * gnulib/import/msvc-inval.h: Update.
3736         * gnulib/import/msvc-nothrow.c: Update.
3737         * gnulib/import/msvc-nothrow.h: Update.
3738         * gnulib/import/open.c: Update.
3739         * gnulib/import/openat-die.c: Update.
3740         * gnulib/import/openat-priv.h: Update.
3741         * gnulib/import/openat-proc.c: Update.
3742         * gnulib/import/openat.c: Update.
3743         * gnulib/import/openat.h: Update.
3744         * gnulib/import/opendir.c: Update.
3745         * gnulib/import/pathmax.h: Update.
3746         * gnulib/import/pipe-safer.c: Update.
3747         * gnulib/import/rawmemchr.c: Update.
3748         * gnulib/import/readdir.c: Update.
3749         * gnulib/import/readlink.c: Update.
3750         * gnulib/import/realloc.c: Update.
3751         * gnulib/import/ref-add.sin: Update.
3752         * gnulib/import/ref-del.sin: Update.
3753         * gnulib/import/rename.c: Update.
3754         * gnulib/import/rewinddir.c: Update.
3755         * gnulib/import/rmdir.c: Update.
3756         * gnulib/import/same-inode.h: Update.
3757         * gnulib/import/save-cwd.c: Update.
3758         * gnulib/import/save-cwd.h: Update.
3759         * gnulib/import/scratch_buffer.h: Update.
3760         * gnulib/import/secure_getenv.c: Update.
3761         * gnulib/import/setenv.c: Update.
3762         * gnulib/import/signal.in.h: Update.
3763         * gnulib/import/stat-time.c: Update.
3764         * gnulib/import/stat-time.h: Update.
3765         * gnulib/import/stat-w32.c: Update.
3766         * gnulib/import/stat-w32.h: Update.
3767         * gnulib/import/stat.c: Update.
3768         * gnulib/import/stdbool.in.h: Update.
3769         * gnulib/import/stddef.in.h: Update.
3770         * gnulib/import/stdint.in.h: Update.
3771         * gnulib/import/stdio.in.h: Update.
3772         * gnulib/import/stdlib.in.h: Update.
3773         * gnulib/import/str-two-way.h: Update.
3774         * gnulib/import/strchrnul.c: Update.
3775         * gnulib/import/strdup.c: Update.
3776         * gnulib/import/streq.h: Update.
3777         * gnulib/import/strerror-override.c: Update.
3778         * gnulib/import/strerror-override.h: Update.
3779         * gnulib/import/strerror.c: Update.
3780         * gnulib/import/string.in.h: Update.
3781         * gnulib/import/stripslash.c: Update.
3782         * gnulib/import/strnlen1.c: Update.
3783         * gnulib/import/strnlen1.h: Update.
3784         * gnulib/import/strstr.c: Update.
3785         * gnulib/import/strtok_r.c: Update.
3786         * gnulib/import/sys_stat.in.h: Update.
3787         * gnulib/import/sys_time.in.h: Update.
3788         * gnulib/import/sys_types.in.h: Update.
3789         * gnulib/import/tempname.c: Update.
3790         * gnulib/import/tempname.h: Update.
3791         * gnulib/import/time.in.h: Update.
3792         * gnulib/import/unistd--.h: Update.
3793         * gnulib/import/unistd-safer.h: Update.
3794         * gnulib/import/unistd.in.h: Update.
3795         * gnulib/import/unsetenv.c: Update.
3796         * gnulib/import/verify.h: Update.
3797         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3798         * gnulib/import/wchar.in.h: Update.
3799         * gnulib/import/wctype.in.h: Update.
3800         * gnulib/import/xalloc-oversized.h: Update.
3801         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3802         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3803
3804 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3805
3806         * record-btrace.c (get_thread_current_frame): Remove
3807         old_inferior_ptid.
3808
3809 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3810
3811         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3812         with check_tag to 1 if and only if the type is tagged and the
3813         component being searched cannot been found in the current
3814         view. Otherwise, always call ada_to_fixed_type with
3815         check_tag to 0.
3816
3817 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3818
3819         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3820         declaration.
3821         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3822         * ada-varobj.c (ada_varobj_get_number_of_children,
3823         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3824
3825 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3826
3827         * ada-valprint.c (ada_value_print): Use type instead of
3828         enclosing type.
3829
3830 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3831
3832         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3833         an array of access to unconstrained array.
3834
3835 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3836
3837         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3838         (ada_check_typedef): Use it.
3839
3840 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3841
3842         * ada-varobj.c (ada_varobj_describe_struct_child)
3843         (ada_varobj_describe_child): Handle union case like struct one.
3844
3845 2018-09-10  Tom Tromey  <tom@tromey.com>
3846
3847         PR python/18380:
3848         * python/python.c (_initialize_python): Make example in "python"
3849         help work in Python 3.
3850
3851 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3852
3853         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3854         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3855         $(EXEEXT) to the script, as it is not a program.
3856
3857 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3858
3859         * python/py-prettyprint.c (pretty_print_one_value): Return
3860         gdbpy_ref<>.
3861         (print_string_repr): Adjust.
3862         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3863         * python/python-internal.h (apply_varobj_pretty_printer): Return
3864         gdbpy_ref<>.
3865         * varobj.c (varobj_value_get_print_value): Adjust.
3866
3867 2018-09-08  Tom Tromey  <tom@tromey.com>
3868
3869         PR python/16047:
3870         * python/py-prettyprint.c (pretty_print_one_value): Check for
3871         to_string method.
3872
3873 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3874
3875         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3876         replace_operator_with_call.
3877
3878 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3879
3880         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3881
3882 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3883
3884         * ada-typeprint.c (print_range): Print the bounds using TYPE
3885         rather than its TYPE_TARGET_TYPE.
3886
3887 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3888
3889         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3890         call to ada_to_fixed_value_create.
3891
3892 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3893
3894         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3895
3896 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3897
3898         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3899         by calls to error.
3900
3901 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3902
3903         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3904         Move update of loop variable "fi".
3905
3906 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3907
3908         * ada-lang.c (value_assign_to_component): In the case of
3909         big-endian targets, extract the bits of the given VAL
3910         using an src_offset of zero if container is not a scalar.
3911
3912 2018-09-06  Simon Ser  <contact@emersion.fr>
3913
3914         PR gdb/23105
3915         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3916         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3917         * fbsd-tdep.c (fbsd_make_note_desc): New.
3918         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3919         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3920         * target.h (enum target_object) Add FreeBSD-specific
3921         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3922
3923 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3924
3925         * compile/compile-c.h (generate_c_for_variable_locations):
3926         Change reference to pointer.
3927         * compile/compile-c-support.c (compile_program) <compute>:
3928         Likewise.
3929         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3930         (generate_c_for_for_one_variable): Likewise
3931         (generate_c_for_variable_locations): Likewise
3932         * compile/compile-c-types.c (compile_c_instance::convert_type):
3933         Likewise
3934         * compile/compile-cplus-symbols.c (convert_one_symbol):
3935         std::move the scope passed to enter_scope.
3936         * compile/compile-cplus-types.c
3937         (compile_cplus_instance::enter_scope): Make parameter
3938         rvalue-reference.
3939         (compile_cplus_instance::new_scope): Change reference to
3940         pointer.
3941         (compile_cplus_instance::convert_type): Likewise
3942         (compile_cplus_convert_typedef): std::move the scope passed to
3943         enter_scope.
3944         (compile_cplus_convert_struct_or_union): Likewise.
3945         (compile_cplus_convert_enum): Likewise.
3946         (compile_cplus_convert_namespace): Likewise.
3947         * compile/compile-cplus.h (compile_cplus_instance)
3948         <enter_scope>: Make parameter rvalue-reference.
3949         * compile/compile-internal.h (compile_instance)
3950         <get_cached_type>: Likewise
3951         * compile/compile-loc2c.c (push): Likewise
3952         (pushf): Likewise
3953         (unary): Likewise
3954         (binary): Likewise
3955         (print_label): Likewise
3956         (pushf_register_address): Likewise
3957         (pushf_register): Likewise
3958         (do_compile_dwarf_expr_to_c): Likewise
3959         (compile_dwarf_expr_to_c): Likewise
3960         (compile_dwarf_bounds_to_c): Likewise
3961         * compile/compile.c (compile_instance::get_cached_type):
3962         Likewise
3963         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3964         (compile_dwarf_bounds_to_c): Likewise
3965         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3966         (dwarf2_compile_property_to_c): Likewise
3967         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3968         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3969         Likewise
3970
3971 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3972
3973         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3974         * tui/tui-data.c (init_content_element): Don't initialize it.
3975
3976 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3977
3978         * tui/tui-data.h (struct tui_win_info)
3979         <detail::opaque>: Remove.
3980         * tui/tui-data.c (init_win_info): Remove assignment.
3981
3982 2018-09-05  Tom Tromey  <tom@tromey.com>
3983
3984         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3985         -Wformat-nonliteral.
3986         * target-float.c (host_float_ops<T>::to_string)
3987         (host_float_ops<T>::from_string): Use
3988         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3989         * configure: Rebuild.
3990
3991 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3992
3993         * printcmd.c (printf_c_string): Use
3994         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3995         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3996
3997 2018-09-05  Tom Tromey  <tom@tromey.com>
3998
3999         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4000
4001 2018-09-05  Tom de Vries  <tdevries@suse.de>
4002
4003         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4004         with resolve_abstract_p == true.
4005         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4006         defaulting to false. Propagate resolve_abstract_p to
4007         dwarf2_fetch_die_loc_sect_off.
4008         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4009         parameter, defaulting to false.
4010         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4011         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4012         parameter.
4013         * dwarf2read.h (struct die_info): Forward-declare.
4014         (die_info_ptr): New typedef.
4015         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4016
4017 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4018
4019         GDB 8.2 released.
4020
4021 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4022             Pedro Alves  <palves@redhat.com>
4023
4024         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4025         "aclocal-m4-deps.mk".  Include file here.
4026         $(srcdir)/aclocal.m4: Add "configure.ac".
4027         * gnulib/aclocal-m4-deps.mk: New file.
4028         * gnulib/update-gnulib.sh: Automatically update
4029         "aclocal-m4-deps.mk".
4030
4031 2018-09-04  Tom Tromey  <tom@tromey.com>
4032
4033         * configure: Rebuild.
4034         * configure.ac: Remove multi-ice code.
4035
4036 2018-09-04  Tom Tromey  <tom@tromey.com>
4037
4038         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4039         (ada-exp.o): Update.
4040
4041 2018-09-04  Tom Tromey  <tom@tromey.com>
4042
4043         * Makefile.in (printcmd.o, target-float.o): Remove.
4044         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4045
4046 2018-09-04  Tom Tromey  <tom@tromey.com>
4047
4048         * gnulib/Makefile.in: Remove obsolete comment.
4049         * Makefile.in: Remove obsolete comment.
4050
4051 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4052
4053         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4054         line with '+'.
4055
4056 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4057
4058         * riscv-tdep.c: Add 'prologue-value.h' include.
4059         (struct riscv_unwind_cache): New struct.
4060         (riscv_debug_unwinder): New global.
4061         (riscv_scan_prologue): Update arguments, capture register details
4062         from prologue scan.
4063         (riscv_skip_prologue): Reformat arguments line, move end of
4064         prologue calculation into riscv_scan_prologue.
4065         (riscv_frame_cache): Update return type, create
4066         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4067         details.
4068         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4069         (riscv_frame_prev_register): Use the trad_frame within the
4070         riscv_unwind_cache.
4071         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4072         flag.
4073
4074 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4075
4076         * trad-frame.h (trad_frame_set_realreg): Declare.
4077         (trad_frame_set_addr): Declare.
4078         * trad-frame.c (trad_frame_set_realreg): Define new function.
4079         (trad_frame_set_addr): Define new function.
4080         (trad_frame_set_reg_realreg): Use new function.
4081         (trad_frame_set_reg_addr): Use new function.
4082
4083 2018-09-01  Keith Seitz  <keiths@redhat.com>
4084
4085         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4086         pulongest instead of "%lld".
4087         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4088         ATTRIBUTE_UNUSED.
4089
4090 2018-08-31  Tom Tromey  <tom@tromey.com>
4091
4092         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4093         variant part type.
4094
4095 2018-08-31  Pedro Alves  <palves@redhat.com>
4096
4097         * gdbarch.h: Regenerate.
4098
4099 2018-08-31  Pedro Alves  <palves@redhat.com>
4100
4101         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4102         * target.h (Hardware watchpoint interfaces): Describe
4103         continuable/steppable/non-steppable watchpoints.
4104         * gdbarch.h, gdbarch.c: Regenerate.
4105
4106 2018-08-31  Pedro Alves  <palves@redhat.com>
4107
4108         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4109         Delete.
4110         * s390-linux-nat.c
4111         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4112         * target.h (target_ops::have_continuable_watchpoint): Delete.
4113         (target_have_continuable_watchpoint): Delete.
4114         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4115         * target-delegates.c: Regenerate.
4116
4117 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4118
4119         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4120         the files present in "gnulib/import/m4/".
4121
4122 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4123
4124         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4125         c.sw, c.swsp, and c.sdsp.
4126
4127 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4128
4129         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4130         (riscv_read_misa_reg): Don't cache value read into inferior data.
4131         (riscv_new_inferior_data): Delete.
4132         (riscv_inferior_data_cleanup): Delete.
4133         (riscv_inferior_data): Delete.
4134         (riscv_invalidate_inferior_data): Delete.
4135         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4136
4137 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4138
4139         * compile/compile-cplus-types.c
4140         (compile_cplus_instance::leave_scope): Take the address of scope
4141         object.
4142         (compile_cplus_instance::convert_qualified_base): Compare quals
4143         to 0.
4144
4145 2018-08-30  Keith Seitz  <keiths@redhat.com>
4146
4147         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4148         Use "%s" and host_address_to_string instead of "%p" in printf.
4149
4150 2018-08-29  Keith Seitz  <keiths@redhat.com>
4151
4152         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4153         and compile-cplus-types.c.
4154         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4155         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4156         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4157         Declare.
4158         * compile/compile-c-support.c: Include compile-cplus.h.
4159         (load_libcompile): Templatize.
4160         (get_compile_context): "New" function.
4161         (c_get_compile_context): Use get_compile_context.
4162         (cplus_get_compile_context): New function.
4163         (cplus_push_user_expression, cplus_pop_user_expression)
4164         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4165         (cplus_compute_program): Define new structs/functions.
4166         * compile/compile-cplus-symmbols.c: New file.
4167         * compile/compile-cplus-types.c: New file.
4168         * compile/compile-cplus.h: New file.
4169         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4170         Declare.
4171         * compile/compile-object-load.c (get_out_value_type): Use
4172         strncmp_iw when comparing symbol names.
4173         (compile_object_load): Add mst_bss and mst_data.
4174         * compile/compile.c (_initialize_compile): Remove
4175         -Wno-implicit-function-declaration from `compile_args'.
4176         * compile/gcc-cp-plugin.h: New file.
4177         * NEWS: Mention C++ compile support and new debug options.
4178
4179 2018-08-29  Keith Seitz  <keiths@redhat.com>
4180
4181         * linespec.c (collect_info::add_symbol): Make virtual.
4182         (struct symbol_searcher_collect_info): New struct.
4183         (symbol_searcher::find_all_symbols): New method.
4184         * symtab.h (class symbol_searcher): New class.
4185
4186 2018-08-29  Keith Seitz  <keiths@redhat.com>
4187
4188         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4189         Change to vector of block_symbol.  Update all users.
4190         (struct collect_info) <symbols>: Likewise.
4191         (collect_info::add_symbol): Take block_symbol as argument.
4192         Update all callers.
4193         (decode_compound_collector) <m_symbols>: Change type to vector
4194         of block_symbol.  Update all users.
4195         (decode_compound_collector::operator ()): Change parameter type
4196         to block_symbol.
4197         (find_method, find_function_symbols, find_linespec_symbols)
4198         (find_label_symbols_in_block, find_label_symbols): Change symbol
4199         vectors to block_symbol vectors.
4200         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4201         block_symbol.
4202
4203 2018-08-29  Keith Seitz  <keiths@redhat.com>
4204
4205         * linespec.c (symbolp): Remove typedef and VEC definitions.
4206         (bound_minimal_symbol_d): Likewise.
4207
4208 2018-08-29  Keith Seitz  <keiths@redhat.com>
4209
4210         * linespec.c (decode_compound_collector::decode_compound_collector):
4211         Remove initialization for `m_symtabs'.
4212         (decode_compound_collector::release_symbols): Change return type
4213         to std::vector.  Update all callers.
4214         (class decode_compound_collector) <m_symbols>: Change type to
4215         std::vector.
4216         (lookup_prefix_sym): Change return type to std::vector.  Update all
4217         callers.
4218         (compare_symbols): Remove.
4219         (std_compare_symbols): Rename to `compare_symbols'.
4220         (find_method): Change `sym_classes' parameter to std::vector.
4221         Update all callers.  Use std::sort to sort sym_classes.
4222         (find_linespec_symbols): Remove cleanup.
4223
4224 2018-08-29  Keith Seitz  <keiths@redhat.com>
4225
4226         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4227         std::vector.  Update all users.
4228         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4229         (struct collect_info) <minimal_symbols>: Likewise.
4230         (compare_msymbols): Return bool.  Change parameters to const
4231         bound_minimal_symbol references.
4232         (find_method, find_function_symbols, find_linespec_symbols): Change
4233         `minsyms' parameter to std::vector.  Update all callers.
4234
4235 2018-08-29  Keith Seitz  <keiths@redhat.com>
4236
4237         * linespec.c (struct linespec) <label_symbols>: Change type to
4238         std::vector.  Update all users.
4239         (find_label_symbols_in_block): Change `result' parameter to
4240         std::vector.  Update all callers.
4241         (find_label_symbols): Return std::vector.  Update all callers.
4242
4243 2018-08-29  Keith Seitz  <keiths@redhat.com>
4244
4245         * linespec.c (struct linespec) <function_symbols>: Change type to
4246         std::vector.  Update all users.
4247         (struct collect_info) <function_symbols>: Likewise.
4248         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4249         (std_compare_symbols): New function.
4250         (find_method, find_function_symbols, find_linespec_symbols)
4251         (find_label_symbols_in_block): Change `symbols' parameter to
4252         std::vector.  Update all callers.
4253         (find_label_symbols): Likewise for `function_symbols' and
4254         `label_funcs_ret'.
4255
4256 2018-08-29  Keith Seitz  <keiths@redhat.com>
4257
4258         * linespec.c (symtab_vector_up): Define.
4259         (struct linespec) <file_symtabs>: Change type to std::vector *.
4260         Update all uses.
4261         (struct collect_info) <file_symtabs>: Likewise.
4262         (collect_symtabs_from_filename): Return symtab_vector_up.
4263         Update all callers.
4264         (decode_objc): Remove cleanup.
4265         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4266         (symtab_collector::release_symtabs): Return symtab_vector_up.
4267         Update all callers.
4268         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4269         Update all users.
4270         (collect_symtabs_from_filename, symtabs_from_filename): Return
4271         symtab_vector_up.  Update all callers.
4272
4273 2018-08-29  Tom Tromey  <tom@tromey.com>
4274
4275         * csky-tdep.c (csky_analyze_prologue): Use
4276         core_addr_to_string_nz.
4277
4278 2018-08-29  Tom Tromey  <tom@tromey.com>
4279
4280         * windows-nat.c (struct xlate_exception) <them>: Change type to
4281         DWORD.
4282         (xlate): Fix formatting.  Remove last entry.
4283         (struct xlate_exception, xlate): Comment out.
4284         (windows_nat_target::resume): Use ranged for.
4285
4286 2018-08-29  Jim Wilson  <jimw@sifive.com>
4287
4288         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4289         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4290         of NT_PRFPREG.
4291         (riscv_linux_nat_target::store_registers): Likewise.
4292
4293 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4294
4295         PR gdb/23555
4296         PR gdb/23558
4297         * gnulib/aclocal.m4: Regenerate.
4298         * gnulib/config.in: Regenerate.
4299         * gnulib/configure: Regenerate.
4300         * gnulib/import/Makefile.am: Update.
4301         * gnulib/import/Makefile.in: Update.
4302         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4303         * gnulib/import/_Noreturn.h: ... this.
4304         * gnulib/import/alloca.in.h: Update.
4305         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4306         * gnulib/import/arg-nonnull.h: ... this.
4307         * gnulib/import/assure.h: Update.
4308         * gnulib/import/at-func.c: Update.
4309         * gnulib/import/basename-lgpl.c: Update.
4310         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4311         * gnulib/import/c++defs.h: ... this.
4312         * gnulib/import/canonicalize-lgpl.c: Update.
4313         * gnulib/import/cdefs.h: Update.
4314         * gnulib/import/chdir-long.c: Update.
4315         * gnulib/import/chdir-long.h: Update.
4316         * gnulib/import/cloexec.c: Update.
4317         * gnulib/import/cloexec.h: Update.
4318         * gnulib/import/close.c: Update.
4319         * gnulib/import/closedir.c: Update.
4320         * gnulib/import/config.charset: Update.
4321         * gnulib/import/dirent-private.h: Update.
4322         * gnulib/import/dirent.in.h: Update.
4323         * gnulib/import/dirfd.c: Update.
4324         * gnulib/import/dirname-lgpl.c: Update.
4325         * gnulib/import/dirname.h: Update.
4326         * gnulib/import/dosname.h: Update.
4327         * gnulib/import/dup-safer-flag.c: Update.
4328         * gnulib/import/dup-safer.c: Update.
4329         * gnulib/import/dup.c: Update.
4330         * gnulib/import/dup2.c: Update.
4331         * gnulib/import/errno.in.h: Update.
4332         * gnulib/import/error.c: Update.
4333         * gnulib/import/error.h: Update.
4334         * gnulib/import/exitfail.c: Update.
4335         * gnulib/import/exitfail.h: Update.
4336         * gnulib/import/extra/update-copyright: Update.
4337         * gnulib/import/fchdir.c: Update.
4338         * gnulib/import/fcntl.c: Update.
4339         * gnulib/import/fcntl.in.h: Update.
4340         * gnulib/import/fd-hook.c: Update.
4341         * gnulib/import/fd-hook.h: Update.
4342         * gnulib/import/fd-safer-flag.c: Update.
4343         * gnulib/import/fd-safer.c: Update.
4344         * gnulib/import/fdopendir.c: Update.
4345         * gnulib/import/filename.h: Update.
4346         * gnulib/import/filenamecat-lgpl.c: Update.
4347         * gnulib/import/filenamecat.h: Update.
4348         * gnulib/import/flexmember.h: Update.
4349         * gnulib/import/float+.h: Update.
4350         * gnulib/import/float.c: Update.
4351         * gnulib/import/float.in.h: Update.
4352         * gnulib/import/fnmatch.c: Update.
4353         * gnulib/import/fnmatch.in.h: Update.
4354         * gnulib/import/fnmatch_loop.c: Update.
4355         * gnulib/import/fpucw.h: Update.
4356         * gnulib/import/frexp.c: Update.
4357         * gnulib/import/frexpl.c: Update.
4358         * gnulib/import/fstat.c: Update.
4359         * gnulib/import/fstatat.c: Update.
4360         * gnulib/import/getcwd-lgpl.c: Update.
4361         * gnulib/import/getcwd.c: Update.
4362         * gnulib/import/getdtablesize.c: Update.
4363         * gnulib/import/getlogin_r.c: Update.
4364         * gnulib/import/getprogname.c: Update.
4365         * gnulib/import/getprogname.h: Update.
4366         * gnulib/import/gettext.h: Update.
4367         * gnulib/import/gettimeofday.c: Update.
4368         * gnulib/import/glob-libc.h: Update.
4369         * gnulib/import/glob.c: Update.
4370         * gnulib/import/glob.in.h: Update.
4371         * gnulib/import/glob_internal.h: Update.
4372         * gnulib/import/glob_pattern_p.c: Update.
4373         * gnulib/import/globfree.c: Update.
4374         * gnulib/import/hard-locale.c: Update.
4375         * gnulib/import/hard-locale.h: Update.
4376         * gnulib/import/intprops.h: Update.
4377         * gnulib/import/inttypes.in.h: Update.
4378         * gnulib/import/isnan.c: Update.
4379         * gnulib/import/isnand-nolibm.h: Update.
4380         * gnulib/import/isnand.c: Update.
4381         * gnulib/import/isnanl-nolibm.h: Update.
4382         * gnulib/import/isnanl.c: Update.
4383         * gnulib/import/itold.c: Update.
4384         * gnulib/import/libc-config.h: Update.
4385         * gnulib/import/limits.in.h: Update.
4386         * gnulib/import/localcharset.c: Update.
4387         * gnulib/import/localcharset.h: Update.
4388         * gnulib/import/localtime-buffer.c: Update.
4389         * gnulib/import/localtime-buffer.h: Update.
4390         * gnulib/import/lstat.c: Update.
4391         * gnulib/import/m4/00gnulib.m4: Update.
4392         * gnulib/import/m4/__inline.m4: Update.
4393         * gnulib/import/m4/absolute-header.m4: Update.
4394         * gnulib/import/m4/alloca.m4: Update.
4395         * gnulib/import/m4/builtin-expect.m4: Update.
4396         * gnulib/import/m4/canonicalize.m4: Update.
4397         * gnulib/import/m4/chdir-long.m4: Update.
4398         * gnulib/import/m4/close.m4: Update.
4399         * gnulib/import/m4/closedir.m4: Update.
4400         * gnulib/import/m4/configmake.m4: Update.
4401         * gnulib/import/m4/d-ino.m4: Update.
4402         * gnulib/import/m4/d-type.m4: Update.
4403         * gnulib/import/m4/dirent_h.m4: Update.
4404         * gnulib/import/m4/dirfd.m4: Update.
4405         * gnulib/import/m4/dirname.m4: Update.
4406         * gnulib/import/m4/double-slash-root.m4: Update.
4407         * gnulib/import/m4/dup.m4: Update.
4408         * gnulib/import/m4/dup2.m4: Update.
4409         * gnulib/import/m4/eealloc.m4: Update.
4410         * gnulib/import/m4/environ.m4: Update.
4411         * gnulib/import/m4/errno_h.m4: Update.
4412         * gnulib/import/m4/error.m4: Update.
4413         * gnulib/import/m4/exponentd.m4: Update.
4414         * gnulib/import/m4/exponentl.m4: Update.
4415         * gnulib/import/m4/extensions.m4: Update.
4416         * gnulib/import/m4/extern-inline.m4: Update.
4417         * gnulib/import/m4/fchdir.m4: Update.
4418         * gnulib/import/m4/fcntl-o.m4: Update.
4419         * gnulib/import/m4/fcntl.m4: Update.
4420         * gnulib/import/m4/fcntl_h.m4: Update.
4421         * gnulib/import/m4/fdopendir.m4: Update.
4422         * gnulib/import/m4/filenamecat.m4: Update.
4423         * gnulib/import/m4/flexmember.m4: Update.
4424         * gnulib/import/m4/float_h.m4: Update.
4425         * gnulib/import/m4/fnmatch.m4: Update.
4426         * gnulib/import/m4/fnmatch_h.m4: Update.
4427         * gnulib/import/m4/fpieee.m4: Update.
4428         * gnulib/import/m4/frexp.m4: Update.
4429         * gnulib/import/m4/frexpl.m4: Update.
4430         * gnulib/import/m4/fstat.m4: Update.
4431         * gnulib/import/m4/fstatat.m4: Update.
4432         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4433         * gnulib/import/m4/getcwd-path-max.m4: Update.
4434         * gnulib/import/m4/getcwd.m4: Update.
4435         * gnulib/import/m4/getdtablesize.m4: Update.
4436         * gnulib/import/m4/getlogin.m4: Update.
4437         * gnulib/import/m4/getlogin_r.m4: Update.
4438         * gnulib/import/m4/getpagesize.m4: Update.
4439         * gnulib/import/m4/getprogname.m4: Update.
4440         * gnulib/import/m4/gettimeofday.m4: Update.
4441         * gnulib/import/m4/glibc21.m4: Update.
4442         * gnulib/import/m4/glob.m4: Update.
4443         * gnulib/import/m4/glob_h.m4: Update.
4444         * gnulib/import/m4/gnulib-cache.m4: Update.
4445         * gnulib/import/m4/gnulib-common.m4: Update.
4446         * gnulib/import/m4/gnulib-comp.m4: Update.
4447         * gnulib/import/m4/gnulib-tool.m4: Update.
4448         * gnulib/import/m4/hard-locale.m4: Update.
4449         * gnulib/import/m4/include_next.m4: Update.
4450         * gnulib/import/m4/inttypes-pri.m4: Update.
4451         * gnulib/import/m4/inttypes.m4: Update.
4452         * gnulib/import/m4/isnand.m4: Update.
4453         * gnulib/import/m4/isnanl.m4: Update.
4454         * gnulib/import/m4/largefile.m4: Update.
4455         * gnulib/import/m4/limits-h.m4: Update.
4456         * gnulib/import/m4/localcharset.m4: Update.
4457         * gnulib/import/m4/locale-fr.m4: Update.
4458         * gnulib/import/m4/locale-ja.m4: Update.
4459         * gnulib/import/m4/locale-zh.m4: Update.
4460         * gnulib/import/m4/localtime-buffer.m4: Update.
4461         * gnulib/import/m4/longlong.m4: Update.
4462         * gnulib/import/m4/lstat.m4: Update.
4463         * gnulib/import/m4/malloc.m4: Update.
4464         * gnulib/import/m4/malloca.m4: Update.
4465         * gnulib/import/m4/math_h.m4: Update.
4466         * gnulib/import/m4/mbrtowc.m4: Update.
4467         * gnulib/import/m4/mbsinit.m4: Update.
4468         * gnulib/import/m4/mbsrtowcs.m4: Update.
4469         * gnulib/import/m4/mbstate_t.m4: Update.
4470         * gnulib/import/m4/memchr.m4: Update.
4471         * gnulib/import/m4/memmem.m4: Update.
4472         * gnulib/import/m4/mempcpy.m4: Update.
4473         * gnulib/import/m4/memrchr.m4: Update.
4474         * gnulib/import/m4/mkdir.m4: Update.
4475         * gnulib/import/m4/mkstemp.m4: Update.
4476         * gnulib/import/m4/mmap-anon.m4: Update.
4477         * gnulib/import/m4/mode_t.m4: Update.
4478         * gnulib/import/m4/msvc-inval.m4: Update.
4479         * gnulib/import/m4/msvc-nothrow.m4: Update.
4480         * gnulib/import/m4/multiarch.m4: Update.
4481         * gnulib/import/m4/nocrash.m4: Update.
4482         * gnulib/import/m4/off_t.m4: Update.
4483         * gnulib/import/m4/onceonly.m4: Update.
4484         * gnulib/import/m4/open-cloexec.m4: Update.
4485         * gnulib/import/m4/open.m4: Update.
4486         * gnulib/import/m4/openat.m4: Update.
4487         * gnulib/import/m4/opendir.m4: Update.
4488         * gnulib/import/m4/pathmax.m4: Update.
4489         * gnulib/import/m4/rawmemchr.m4: Update.
4490         * gnulib/import/m4/readdir.m4: Update.
4491         * gnulib/import/m4/readlink.m4: Update.
4492         * gnulib/import/m4/realloc.m4: Update.
4493         * gnulib/import/m4/rename.m4: Update.
4494         * gnulib/import/m4/rewinddir.m4: Update.
4495         * gnulib/import/m4/rmdir.m4: Update.
4496         * gnulib/import/m4/save-cwd.m4: Update.
4497         * gnulib/import/m4/secure_getenv.m4: Update.
4498         * gnulib/import/m4/setenv.m4: Update.
4499         * gnulib/import/m4/signal_h.m4: Update.
4500         * gnulib/import/m4/ssize_t.m4: Update.
4501         * gnulib/import/m4/stat-time.m4: Update.
4502         * gnulib/import/m4/stat.m4: Update.
4503         * gnulib/import/m4/std-gnu11.m4: Update.
4504         * gnulib/import/m4/stdbool.m4: Update.
4505         * gnulib/import/m4/stddef_h.m4: Update.
4506         * gnulib/import/m4/stdint.m4: Update.
4507         * gnulib/import/m4/stdio_h.m4: Update.
4508         * gnulib/import/m4/stdlib_h.m4: Update.
4509         * gnulib/import/m4/strchrnul.m4: Update.
4510         * gnulib/import/m4/strdup.m4: Update.
4511         * gnulib/import/m4/strerror.m4: Update.
4512         * gnulib/import/m4/string_h.m4: Update.
4513         * gnulib/import/m4/strstr.m4: Update.
4514         * gnulib/import/m4/strtok_r.m4: Update.
4515         * gnulib/import/m4/sys_socket_h.m4: Update.
4516         * gnulib/import/m4/sys_stat_h.m4: Update.
4517         * gnulib/import/m4/sys_time_h.m4: Update.
4518         * gnulib/import/m4/sys_types_h.m4: Update.
4519         * gnulib/import/m4/tempname.m4: Update.
4520         * gnulib/import/m4/time_h.m4: Update.
4521         * gnulib/import/m4/unistd-safer.m4: Update.
4522         * gnulib/import/m4/unistd_h.m4: Update.
4523         * gnulib/import/m4/warn-on-use.m4: Update.
4524         * gnulib/import/m4/wchar_h.m4: Update.
4525         * gnulib/import/m4/wchar_t.m4: Update.
4526         * gnulib/import/m4/wctype_h.m4: Update.
4527         * gnulib/import/m4/wint_t.m4: Update.
4528         * gnulib/import/malloc.c: Update.
4529         * gnulib/import/malloc/scratch_buffer.h: Update.
4530         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4531         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4532         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4533         * gnulib/import/malloca.c: Update.
4534         * gnulib/import/malloca.h: Update.
4535         * gnulib/import/malloca.valgrind: Update.
4536         * gnulib/import/math.in.h: Update.
4537         * gnulib/import/mbrtowc.c: Update.
4538         * gnulib/import/mbsinit.c: Update.
4539         * gnulib/import/mbsrtowcs-impl.h: Update.
4540         * gnulib/import/mbsrtowcs-state.c: Update.
4541         * gnulib/import/mbsrtowcs.c: Update.
4542         * gnulib/import/memchr.c: Update.
4543         * gnulib/import/memmem.c: Update.
4544         * gnulib/import/mempcpy.c: Update.
4545         * gnulib/import/memrchr.c: Update.
4546         * gnulib/import/mkdir.c: Update.
4547         * gnulib/import/mkstemp.c: Update.
4548         * gnulib/import/msvc-inval.c: Update.
4549         * gnulib/import/msvc-inval.h: Update.
4550         * gnulib/import/msvc-nothrow.c: Update.
4551         * gnulib/import/msvc-nothrow.h: Update.
4552         * gnulib/import/open.c: Update.
4553         * gnulib/import/openat-die.c: Update.
4554         * gnulib/import/openat-priv.h: Update.
4555         * gnulib/import/openat-proc.c: Update.
4556         * gnulib/import/openat.c: Update.
4557         * gnulib/import/openat.h: Update.
4558         * gnulib/import/opendir.c: Update.
4559         * gnulib/import/pathmax.h: Update.
4560         * gnulib/import/pipe-safer.c: Update.
4561         * gnulib/import/rawmemchr.c: Update.
4562         * gnulib/import/readdir.c: Update.
4563         * gnulib/import/readlink.c: Update.
4564         * gnulib/import/realloc.c: Update.
4565         * gnulib/import/ref-add.sin: Update.
4566         * gnulib/import/ref-del.sin: Update.
4567         * gnulib/import/rename.c: Update.
4568         * gnulib/import/rewinddir.c: Update.
4569         * gnulib/import/rmdir.c: Update.
4570         * gnulib/import/same-inode.h: Update.
4571         * gnulib/import/save-cwd.c: Update.
4572         * gnulib/import/save-cwd.h: Update.
4573         * gnulib/import/scratch_buffer.h: Update.
4574         * gnulib/import/secure_getenv.c: Update.
4575         * gnulib/import/setenv.c: Update.
4576         * gnulib/import/signal.in.h: Update.
4577         * gnulib/import/stat-time.c: Update.
4578         * gnulib/import/stat-time.h: Update.
4579         * gnulib/import/stat-w32.c: Update.
4580         * gnulib/import/stat-w32.h: Update.
4581         * gnulib/import/stat.c: Update.
4582         * gnulib/import/stdbool.in.h: Update.
4583         * gnulib/import/stddef.in.h: Update.
4584         * gnulib/import/stdint.in.h: Update.
4585         * gnulib/import/stdio.in.h: Update.
4586         * gnulib/import/stdlib.in.h: Update.
4587         * gnulib/import/str-two-way.h: Update.
4588         * gnulib/import/strchrnul.c: Update.
4589         * gnulib/import/strdup.c: Update.
4590         * gnulib/import/streq.h: Update.
4591         * gnulib/import/strerror-override.c: Update.
4592         * gnulib/import/strerror-override.h: Update.
4593         * gnulib/import/strerror.c: Update.
4594         * gnulib/import/string.in.h: Update.
4595         * gnulib/import/stripslash.c: Update.
4596         * gnulib/import/strnlen1.c: Update.
4597         * gnulib/import/strnlen1.h: Update.
4598         * gnulib/import/strstr.c: Update.
4599         * gnulib/import/strtok_r.c: Update.
4600         * gnulib/import/sys_stat.in.h: Update.
4601         * gnulib/import/sys_time.in.h: Update.
4602         * gnulib/import/sys_types.in.h: Update.
4603         * gnulib/import/tempname.c: Update.
4604         * gnulib/import/tempname.h: Update.
4605         * gnulib/import/time.in.h: Update.
4606         * gnulib/import/unistd--.h: Update.
4607         * gnulib/import/unistd-safer.h: Update.
4608         * gnulib/import/unistd.in.h: Update.
4609         * gnulib/import/unsetenv.c: Update.
4610         * gnulib/import/verify.h: Update.
4611         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4612         * gnulib/import/wchar.in.h: Update.
4613         * gnulib/import/wctype.in.h: Update.
4614         * gnulib/import/xalloc-oversized.h: Update.
4615         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4616         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4617
4618 2018-08-16  Gary Benson <gbenson@redhat.com>
4619
4620         PR gdb/13000:
4621         * gdb/main.c (captured_main_1): Exit with nonzero status
4622         in batch mode if the last command to be executed failed.
4623         * NEWS: Mention the above.
4624
4625 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4626
4627         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4628         end of warning message.
4629
4630 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4631
4632         PR gdb/22943:
4633         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4634         (aarch64_extract_return_value): Use
4635         aapcs_is_vfp_call_or_return_candidate.
4636         (aarch64_return_in_memory): Likewise.
4637         (aarch64_store_return_value): Likewise.
4638
4639 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4640
4641         * aarch64-tdep.c
4642         (aapcs_is_vfp_call_or_return_candidate): Make static
4643         (pass_in_v_or_stack): Remove function.
4644         (pass_in_v_vfp_candidate): New function.
4645         (aarch64_push_dummy_call): Check for float register candidates.
4646
4647 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4648
4649         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4650         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4651         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4652
4653 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4654
4655         PR build/23399
4656         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4657         (struct ipa_sym_addresses): Rename to...
4658         (struct ipa_sym_addresses_common): ... this.
4659         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4660
4661 2018-08-28  Tom Tromey  <tom@tromey.com>
4662
4663         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4664         (token_fifo): Now a std::vector.
4665         (yylex, c_parse): Update.
4666         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4667         (token_fifo): Now a std::vector.
4668         (yylex, d_parse): Update.
4669         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4670         (token_fifo): Now a std::vector.
4671         (yylex, go_parse): Update.
4672
4673 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4674
4675         * parser-defs.h (struct type_stack) <elements>: Change type to
4676         std::vector<union type_stack_elt>.
4677         <depth, size>: Remove.
4678         * parse.c (parse_exp_in_context_1): Adjust.
4679         (type_stack_reserve): Remove.
4680         (check_type_stack_depth): Remove.
4681         (insert_into_type_stack): Adjust to std::vector.
4682         (insert_type): Likewise.
4683         (push_type): Likewise.
4684         (push_type_int): Likewise.
4685         (insert_type_address_space): Likewise.
4686         (pop_type): Likewise.
4687         (pop_type_int): Likewise.
4688         (pop_typelist): Likewise.
4689         (pop_type_stack): Likewise.
4690         (append_type_stack): Likewise.
4691         (push_type_stack): Likewise.
4692         (get_type_stack): Likewise.
4693         (type_stack_cleanup): Likewise.
4694         (push_typelist): Likewise.
4695         (follow_types): Likewise.
4696         (_initialize_parse): Likewise.
4697
4698 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4699
4700         * NEWS: Mention csky target.
4701
4702 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4703             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4704             Don Breazeal  <donb@codesourcery.com>
4705
4706         * csky-linux-tdep.c: New file.
4707         * csky-tdep.c: Likewise.
4708         * csky-tdep.h: Likewise.
4709         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4710         csky-tdep.o.
4711         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4712         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4713         * configure.tgt: Add csky support.
4714
4715 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4716
4717         * python/py-framefilter.c (py_print_frame): Print frame architecture
4718         when printing on an MI output.
4719
4720 2018-08-27  Tom Tromey  <tom@tromey.com>
4721
4722         PR build/23087:
4723         * configure: Rebuild.
4724         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4725
4726 2018-08-27  Tom Tromey  <tom@tromey.com>
4727
4728         * aarch64-linux-tdep.c
4729         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4730         casts to int.
4731
4732 2018-08-27  Tom Tromey  <tom@tromey.com>
4733
4734         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4735         unsigned.
4736         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4737         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4738         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4739         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4740         unsigned.
4741
4742 2018-08-27  Tom Tromey  <tom@tromey.com>
4743
4744         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4745         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4746
4747 2018-08-27  Tom Tromey  <tom@tromey.com>
4748
4749         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4750         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4751         ULONGEST_MAX.
4752         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4753         ULONGEST_MAX.
4754         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4755         ULONGEST_MAX.
4756         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4757         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4758         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4759         ULONGEST_MAX.
4760         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4761         (ppc64_linux_sigaction_tramp_frame)
4762         (ppc32_linux_sighandler_tramp_frame)
4763         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4764         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4765         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4766         * mn10300-linux-tdep.c (am33_linux_sigframe)
4767         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4768         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4769         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4770         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4771         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4772         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4773         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4774         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4775         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4776         * microblaze-linux-tdep.c
4777         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4778         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4779         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4780         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4781         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4782         * common/common-types.h (ULONGEST_MAX): New define.
4783         (CORE_ADDR_MAX): Fix formatting.
4784         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4785         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4786         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4787         (arm_linux_rt_sigreturn_tramp_frame)
4788         (arm_eabi_linux_sigreturn_tramp_frame)
4789         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4790         (thumb2_eabi_linux_sigreturn_tramp_frame)
4791         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4792         (arm_linux_restart_syscall_tramp_frame)
4793         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4794         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4795         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4796         ULONGEST_MAX.
4797         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4798
4799 2018-08-27  Tom Tromey  <tom@tromey.com>
4800
4801         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4802         CORE_ADDR_MAX.
4803         * mips-tdep.c (mips_deal_with_atomic_sequence)
4804         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4805         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4806         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4807         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4808         CORE_ADDR_MAX.
4809         * aarch64-tdep.c (aarch64_software_single_step): Use
4810         CORE_ADDR_MAX.
4811
4812 2018-08-27  Tom Tromey  <tom@tromey.com>
4813
4814         * linespec.c (complete_linespec_component): Add cast to "char".
4815         * completer.c (completion_tracker::build_completion_result): Add
4816         cast to "char".
4817
4818 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4819
4820         * solist.h (struct solist, struct target_so_ops): Fix
4821         indentation.
4822
4823 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4824
4825         * ada-tasks.c (ada_task_info_s): Remove typedef.
4826         (DEF_VEC_O(ada_task_info_s)): Remove.
4827         (struct ada_tasks_inferior_data): Initialize fields.
4828         <task_list>: Make an std::vector.
4829         (get_ada_tasks_inferior_data): Allocate with new.
4830         (ada_get_task_number): Adjust.
4831         (get_task_number_from_id): Likewise.
4832         (valid_task_id): Likewise.
4833         (ada_get_task_info_from_ptid): Likewise.
4834         (iterate_over_live_ada_tasks): Likewise.
4835         (add_ada_task): Likewise.
4836         (read_known_tasks): Likewise.
4837         (ada_build_task_list): Likewise.
4838         (print_ada_task_info): Likewise.
4839         (info_task): Likewise.
4840         (task_command_1): Likewise.
4841
4842 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4843
4844         * ada-lang.c (add_angle_brackets): Return std::string.
4845
4846 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4847
4848         * python/py-threadevent.c (py_get_event_thread): Initialize
4849         pythread.
4850
4851 2018-08-24  Pedro Alves  <palves@redhat.com>
4852
4853         * python/py-bpevent.c (create_breakpoint_event_object): Use
4854         copy-initialization.
4855         * python/py-continueevent.c (emit_continue_event): Use
4856         copy-initialization.
4857         * python/py-exitedevent.c (create_exited_event_object): Return a
4858         gdbpy_ref<>.
4859         (emit_exited_event): Use copy-initialization.
4860         * python/py-inferior.c (python_new_inferior)
4861         (python_inferior_deleted, add_thread_object): Use
4862         copy-initialization.
4863         * python/py-infevents.c (create_inferior_call_event_object)
4864         (create_register_changed_event_object)
4865         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4866         (emit_inferior_call_event, emit_memory_changed_event)
4867         (emit_register_changed_event): Use copy-initialization.
4868         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4869         Return a gdbpy_ref<>.
4870         (emit_new_objfile_event): Use copy-initialization.
4871         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4872         (emit_clear_objfiles_event): Use copy-initialization.
4873         * python/py-signalevent.c (create_signal_event_object): Use
4874         copy-initialization.
4875         * python/py-threadevent.c (create_thread_event_object): Use
4876         copy-initialization.
4877
4878 2018-08-24  Pedro Alves  <palves@redhat.com>
4879             Simon Marchi  <simon.marchi@ericsson.com>
4880
4881         PR gdb/23379
4882         * python/py-continueevent.c: Include "gdbthread.h".
4883         (create_continue_event_object): Add intro comment.  Add 'ptid'
4884         parameter.  Use it to find thread to pass to
4885         create_thread_event_object.
4886         (emit_continue_event): Pass PTID down to
4887         create_continue_event_object.
4888         * python/py-event.h (py_get_event_thread): Declare.
4889         (create_thread_event_object): Remove default from 'thread'
4890         parameter.
4891         * python/py-stopevent.c (create_stop_event_object): Use
4892         py_get_event_thread.
4893         * python/py-threadevent.c (get_event_thread): Rename to ...
4894         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4895         and use it to find the thread.
4896         (create_thread_event_object): Assert that THREAD isn't null.
4897         Don't find the event thread here.
4898
4899 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4900
4901         * block.h (blockrange, blockranges): New struct declarations.
4902         (struct block): Add new field named `ranges'.
4903         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4904         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4905         macros for accessing ranges in struct block.
4906         (make_blockranges): New declaration.
4907         block.c (make_blockranges): New function.
4908         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4909         for block.
4910         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4911         * blockframe.c (cache_pc_function_block): New static global.
4912         (clear_pc_function_cache): Clear cache_pc_function_block.
4913         (find_pc_partial_function): Move comment to symtab.h.  Add
4914         support for non-contiguous blocks.
4915         * cli/cli-cmds.c (block.h): Include.
4916         (print_disassembly): Handle printing of non-contiguous blocks.
4917         (disassemble_current_function): Likewise.
4918         (disassemble_command): Likewise.
4919
4920         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4921         BLOCK_START.
4922         * blockframe.c (get_pc_function_start): Likewise.
4923         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4924         (gcc_symbol_address): Likewise.
4925         * compile/compile-object-run.c (compile_object_run): Likewise.
4926         * compile/compile.c (get_expr_block_and_pc): Likewise.
4927         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4928         (func_addr_to_tail_call_list): Likewise.
4929         * findvar.c (default_read_var_value): Likewise.
4930         * inline-frame.c (inline_frame_this_id): Likewise.
4931         (skip-inline_frames): Likewise.
4932         * infcmd.c (until_next_command): Likewise.
4933         * linespec.c (convert_linespec_to_sals): Likewise.
4934         * parse.c (parse_exp_in_context_1): Likewise.
4935         * printcmd.c (build_address_symbolic): likewise.
4936         (info_address_command): Likewise.
4937         symtab.c (find_function_start_sal): Likewise.
4938         (skip_prologue_sal): Likewise.
4939         (find_function_alias_target): Likewise.
4940         (find_gnu_ifunc): Likewise.
4941         * stack.c (find_frame_funname): Likewise.
4942         * symtab.c (fixup_symbol_section): Likewise.
4943         (find_function_start_sal): Likewise.
4944         (skip_prologue_sal): Likewsie.
4945         (find_function_alias_target): Likewise.
4946         (find_gnu_ifunc): Likewise.
4947         * tracepoint.c (info_scope_command): Likewise.
4948         * value.c (value_fn_field): Likewise.
4949
4950         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4951         in place of find_pc_partial_function.
4952         * blockframe.c (find_function_entry_range_from_pc): New function.
4953         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4954         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4955         for each range in a block.
4956
4957
4958 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4959
4960         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4961         incrementation.
4962
4963 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4964
4965         * solib-svr4.c (read_program_headers_from_bfd): Return
4966         gdb::optional<gdb::byte_vector>.
4967         (svr4_exec_displacement): Adjust.
4968
4969 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4970
4971         * solib-svr4.c (read_program_header): Return
4972         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4973         (find_program_interpreter): Return
4974         gdb::optional<gdb::byte_vector>.
4975         (scan_dyntag_auxv): Adjust.
4976         (enable_break): Adjust.
4977         (svr4_exec_displacement): Adjust.
4978
4979 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4980
4981         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4982         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4983
4984 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4985
4986         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4987         string_vprintf.
4988         * guile/scm-utils.c (gdbscm_printf): Likewise.
4989         * serial.c (serial_printf): Likewise.
4990         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4991
4992 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4993
4994         * stack.c (print_frame): Print frame architecture when printing on
4995         an MI output.
4996         * NEWS: Mention new "arch" attribute in frame output.
4997
4998 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4999
5000         * arch/aarch64.h (aarch64_regnum): Update comment.
5001
5002 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5003
5004         * NEWS: Add SVE to 8.2 section.
5005
5006 2018-08-21  Pedro Alves  <palves@redhat.com>
5007
5008         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5009         out from gdbscm_parse_function_args.
5010         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5011         gdbscm_parse_function_args_1.
5012
5013 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5014
5015         PR gdb/17816
5016         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5017         operator.
5018
5019 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5020
5021         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5022
5023 2018-08-19  Michael Spang  <spang@google.com>
5024
5025         PR gdb/11786
5026         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5027         for PT_TLS segments.
5028
5029 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5030
5031         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5032         dwarf_variable_value.
5033         * dwarf2-frame.c (class dwarf_expr_executor):
5034         Add override for dwarf_variable_value.
5035         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5036         (class symbol_needs_eval_context): Likewise.
5037         (indirect_synthetic_pointer): Add forward declaration.
5038         (sect_variable_value): New function.
5039         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5040         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5041         for DW_OP_GNU_variable_value.
5042
5043 2018-08-16  Tom Tromey  <tom@tromey.com>
5044
5045         * top.c (read_command_file): Update.
5046         (command_line_input): Remove "repeat" argument.
5047         * ada-lang.c (get_selections): Update.
5048         * linespec.c (decode_line_2): Update.
5049         * defs.h (command_line_input): Remove argument.
5050         * cli/cli-script.c (read_next_line): Update.
5051         * python/py-gdb-readline.c: Update.
5052
5053 2018-08-17  Tom Tromey  <tom@tromey.com>
5054
5055         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5056         command_line_input.
5057
5058 2018-08-15  Tom Tromey  <tom@tromey.com>
5059
5060         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5061
5062 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5063
5064         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5065         If used, use find_pc_partial_function to find address range
5066         to disassemble.
5067         * mi/mi-main.c (mi_cmd_list_features): Report
5068         "data-disassemble-a-option" feature.
5069         * NEWS: Mention new -data-disassemble option -a.
5070
5071 2018-08-13  Tom Tromey  <tom@tromey.com>
5072
5073         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5074
5075 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5076
5077         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5078         (aarch64_linux_collect_sve_regset): Likewise.
5079         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5080         * regcache.h (regcache_map_entry_size): New function.
5081
5082 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5083
5084         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5085         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5086         (SVE_HEADER_VL_LENGTH): Likewise.
5087         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5088         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5089         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5090         (SVE_HEADER_SIZE_OFFSET): Likewise.
5091         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5092         (SVE_HEADER_VL_OFFSET): Likewise.
5093         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5094         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5095         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5096         (SVE_HEADER_SIZE): Likewise.
5097         (aarch64_linux_core_read_vq): Add function.
5098         (aarch64_linux_core_read_description): Check for SVE section.
5099
5100 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5101
5102         * aarch64-fbsd-tdep.c
5103         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5104         collect_size.
5105         * aarch64-linux-tdep.c
5106         (aarch64_linux_iterate_over_regset_sections): Likewise.
5107         * alpha-linux-tdep.c
5108         (alpha_linux_iterate_over_regset_sections):
5109         * alpha-nbsd-tdep.c
5110         (alphanbsd_iterate_over_regset_sections): Likewise.
5111         * amd64-fbsd-tdep.c
5112         (amd64fbsd_iterate_over_regset_sections): Likewise.
5113         * amd64-linux-tdep.c
5114         (amd64_linux_iterate_over_regset_sections): Likewise.
5115         * arm-bsd-tdep.c
5116         (armbsd_iterate_over_regset_sections): Likewise.
5117         * arm-fbsd-tdep.c
5118         (arm_fbsd_iterate_over_regset_sections): Likewise.
5119         * arm-linux-tdep.c
5120         (arm_linux_iterate_over_regset_sections): Likewise.
5121         * corelow.c (get_core_registers_cb): Likewise.
5122         (core_target::fetch_registers): Likewise.
5123         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5124         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5125         * gdbarch.h (void): Regenerate.
5126         * gdbarch.sh: Add supply_size and collect_size.
5127         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5128         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5129         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5130         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5131         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5132         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5133         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5134         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5135         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5136         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5137         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5138         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5139         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5140         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5141         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5142         Likewise.
5143         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5144         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5145         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5146         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5147         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5148         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5149         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5150         Likewise.
5151         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5152         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5153         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5154         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5155         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5156         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5157         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5158         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5159
5160 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5161
5162         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5163         with string_printf.
5164
5165 2018-08-10  Keith Seitz  <keiths@redhat.com>
5166
5167         * compile/compile-c-support.c (add_code_header, add_code_footer):
5168         Move into policy class.
5169         (c_push_user_expression, pop_user_expression_nop)
5170         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5171         (compile_program): New host class.
5172         (c_compile_program): New typedef.
5173         (c_compute_porgram): Use c_compile_program.
5174
5175 2018-08-10  Keith Seitz  <keiths@redhat.com>
5176
5177         * compile/compile-internal.h (compile_instance::~compile_instance):
5178         Remove calls to htab_delete.
5179         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5180         * compile.c (compile_instance::compile_instance): Initialize
5181         htab unique pointers.
5182         (compile_instance::get_cached_type, compile_instance::insert_type)
5183         (compile_instance::error_symbol_once): Update for unique_ptr.
5184
5185 2018-08-10  Keith Seitz  <keiths@redhat.com>
5186
5187         * compile/compile-c-symbols.c (struct symbol_error)
5188         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5189         (compile_instance::insert_symbol_error)
5190         (compile_instance::error_symbol_once): Move to ...
5191         * compile/compile.c: ... here.
5192
5193 2018-08-10  Keith Seitz  <keiths@redhat.com>
5194
5195         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5196         instead of `new_compile_instance'.
5197         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5198         Update description.
5199         If the symbol error map is not initialized, create it.
5200         (generate_c_for_for_one_symbol): Do not check/initialize
5201         the symbol error map.
5202         * compile/compile-c-types.c (compile_c_instance): Make a class.
5203         Update all callers.
5204         (compile_instance::compile_instance): Initialize the type cache.
5205         (get_cached_type): New function.
5206         (insert_type): Update description.
5207         (compile_c_instance::m_default_cflags): Define.
5208         (convert_type): Update description.  Use get_cached_type.
5209         (delete_instance): Moved to destructor.
5210         (new_compile_instance): Moved to constructor.
5211         * compile/compile-c.h (compile_c_instance): Make class inheriting
5212         from compile_instance.
5213         <base>: Remove field.
5214         <type_map, symbol_err_map>: Move to base class.
5215         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5216         * compile/compile-internal.h (compile_instance): Make class.
5217         <type_map_t, symbol_err_map_t>: Define.
5218         <fe>: Rename to `m_gcc_fe'.
5219         <scope, block, gcc_target_options>: Add `m_' prefix.
5220         <m_type_map, m_symbol_err_map>: New fields, moved from
5221         compile_c_instance.
5222         <destroy>: Remove.
5223         (convert_type, new_compile_instance): Remove.
5224         * compile/compile.c (cleanup_compile_instance): Remove.
5225         (compile_to_object): Use unique_ptr to eliminate cleanups.
5226         (compile_instance::set_print_callback, compile_instance::version)
5227         (compile_instance::set_verbose)
5228         (compile_instance::set_driver_filename)
5229         (compile_instance::set_triplet_regexp)
5230         (compile_instance::set_arguments)
5231         (compile_instance::set_source_file)
5232         (compile_instance::compile): Define.
5233
5234 2018-08-10  Keith Seitz  <keiths@redhat.com>
5235
5236         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5237         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5238         gcc-c-fe.def to define C plugin.
5239         (delete_instance): Delete `c_plugin'.
5240         (new_compile_instance): Initialize `c_plugin'.
5241         * compile/compile-c.h: Include gcc_c_plugin.h.
5242         (struct compile_c_instance) <c_plugin>: New member.
5243         * gcc-c-plugin.h: New file.
5244         Update all callers with API change.
5245
5246 2018-08-10  Keith Seitz  <keiths@redhat.com>
5247
5248         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5249         (HFILES_NO_SRCDIR): ... to here.
5250         Add compile-internal.h and compile-c.h.
5251         * compile/compile-c-support.c: Include compile-c.h.
5252         * compile/compile-c-symbols.c: Include compile-c.h.
5253         (generate_c_for_variable_locations): Update comment.
5254         * compile/compile-c-types.c: Include compile-c.h.
5255         * compile/compile-c.h: New file -- moved C language declarations
5256         from other files here.
5257         * compile/compile-internal.h: Do not include hashtab.h or
5258         common/enum-flags.h.
5259         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5260         (gcc_convert_symbol, gcc_symbol_address)
5261         (generate_c_for_variable_locations, c_get_mode_for_size)
5262         (c_get_range_decl_name): Definitions moved to compile-c.h.
5263         * compile/compile-loc2c.c: Include compile-c.h.
5264
5265 2018-08-10  Keith Seitz  <keiths@redhat.com>
5266
5267         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5268         (c_symbol_substitution_name): ... this.
5269         Update all callers.
5270
5271 2018-08-10  Keith Seitz  <keiths@redhat.com>
5272
5273         * compile/compile-c-support.c (c_compute_program): Use
5274         unique_xmalloc_ptr to eliminate cleanup.
5275         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5276         Return a unique_xmalloc_ptr and eliminate cleanup.
5277         * compile/compile-internal.h (generate_c_for_variable_locations):
5278         Return unique_xmalloc_ptr and update description.
5279
5280 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5281
5282         * corelow.c (core_target::get_core_register_section): Rename
5283         min_size to section_min_size.
5284
5285 2018-08-09  Jim Wilson  <jimw@sifive.com>
5286
5287         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5288         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5289         * NEWS: Mention new GNU/Linux RISC-V target.
5290         * configure.host: Add riscv*-*-linux*.
5291         * configure.nat: Add riscv*.
5292         * configure.tgt: Add riscv*-*-linux*.
5293         * riscv-linux-nat.c: New file.
5294         * riscv-linux-tdep.c: New file.
5295
5296 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5297
5298         * infrun.c (resume): Make static, add forward declaration.
5299         (proceed): Update header comment.
5300         * infrun.h (resume): Delete declaration.
5301
5302 2018-08-09  Tom Tromey  <tom@tromey.com>
5303
5304         * riscv-tdep.h: Minor formatting fixes.
5305
5306 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5307
5308         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5309         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5310         (test_mkdir_recursive): Likewise.
5311         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5312
5313 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5314
5315         * valarith.c (value_subscripted_rvalue): If an array is not in
5316         memory, and we don't know the upper bound, then we can't know that
5317         the requested element exists or not.
5318
5319 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5320
5321         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5322         (target_options_to_string): Add comment.
5323
5324 2018-08-08  Tom Tromey  <tom@tromey.com>
5325
5326         * unittests/scoped_mmap-selftests.c: Check result of "write".
5327
5328 2018-08-08  Jim Wilson  <jimw@sifive.com>
5329
5330         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5331         (decode_register_index_short): New.
5332         (decode_j_type_insn, decode_cj_type_insn): New.
5333         (decode_b_type_insn, decode_cb_type_insn): New.
5334         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5335         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5336         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5337         is_c_sw_insn instead of is_sw_insn.
5338         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5339         (riscv_software_single_step): New.
5340         * riscv-tdep.h (riscv_software_single_step): Declare.
5341
5342         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5343         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5344
5345 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5346
5347         PR gdb/18050:
5348         * target.c (dispose_inferior): Don't dispose of inferiors that are
5349         already killed.
5350
5351 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5352
5353         * remote.c (remote_target::download_tracepoint): Change char* to
5354         const char*.
5355
5356 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5357
5358         * target.h (target_options_to_string): Return an std::string.
5359         * target.c (str_comma_list_concat_elem): Return void, use
5360         std::string.
5361         (do_option): Likewise.
5362         (target_options_to_string): Return an std::string.
5363         * linux-nat.c (linux_nat_target::wait): Adjust.
5364         * target-debug.h (target_debug_print_options): Adjust.
5365
5366 2018-08-07  Tom Tromey  <tom@tromey.com>
5367
5368         * Makefile.in (CPPFLAGS): New variable.
5369         (INTERNAL_CPPFLAGS): Use it.
5370
5371 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5372
5373         * NEWS: Mention the index cache.
5374
5375 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5376
5377         * common/pathstuff.h (get_standard_cache_dir): New.
5378         * common/pathstuff.c (get_standard_cache_dir): New.
5379         * build-id.h (build_id_to_string): New.
5380         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5381         DEBUG_STR_SUFFIX): Move to here.
5382         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5383         DEBUG_STR_SUFFIX): Move from there.
5384         (write_psymtabs_to_index): Make non-static, add basename
5385         parameter.  Write to temporary files, rename when done.
5386         (save_gdb_index_command): Adjust call to
5387         write_psymtabs_to_index.
5388         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5389         field.
5390         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5391         (get_gdb_index_contents_from_cache): New.
5392         (get_gdb_index_contents_from_cache_dwz): New.
5393         (dwarf2_initialize_objfile): Read index from cache.
5394         (dwarf2_build_psymtabs): Save to index.
5395         * dwarf-index-cache.h: New file.
5396         * dwarf-index-cache.c: New file.
5397         * dwarf-index-write.h: New file.
5398
5399 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5400
5401         * gnulib/aclocal.m4: Re-generate.
5402         * gnulib/config.in: Re-generate.
5403         * gnulib/configure: Re-generate.
5404         * gnulib/import/Makefile.am: Re-generate.
5405         * gnulib/import/Makefile.in: Re-generate.
5406         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5407         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5408         * gnulib/import/m4/mkdir.m4: New file.
5409         * gnulib/import/mkdir.c: New file.
5410         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5411         module.
5412
5413 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5414
5415         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5416         * common/scoped_mmap.c: New file.
5417         * common/scoped_mmap.h (destroy): New method.
5418         (~scoped_mmap, reset): Use destroy.
5419         (scoped_mmap): New move constructor.
5420         (mmap_file): New declaration.
5421         * unittests/scoped_mmap-selftests.c (test_normal,
5422         test_invalid_filename, run_tests): New functions.
5423         (_initialize_scoped_mmap_selftests): Register selftest.
5424
5425 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5426
5427         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5428         (read_gdb_index_from_buffer): ... this.  Remove section
5429         parameter, add buffer parameter.
5430         (get_gdb_index_contents_ftype,
5431         get_gdb_index_contents_dwz_ftype): New typedefs.
5432         (dwarf2_read_gdb_index): Add callback parameters to get the
5433         index contents.
5434         (get_gdb_index_contents_from_section): New.
5435         (dwarf2_initialize_objfile): Update call to
5436         dwarf2_read_gdb_index.
5437
5438 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5439
5440         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5441         (gdb_open_cloexec): Likewise.
5442         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5443         (commandline_from_pid): Likewise.
5444         (linux_xfer_osdata_threads): Likewise.
5445         (linux_xfer_osdata_fds): Likewise.
5446         * ada-lang.c (is_package_name): Likewise.
5447         * auxv.c (procfs_xfer_auxv): Likewise.
5448         * breakpoint.c (print_one_breakpoint_location): Use
5449         uiout::field_fmt.
5450         (print_one_catch_solib): Use string_printf.
5451         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5452         (add_pe_forwarded_sym): Likewise.
5453         * dwarf2read.c (create_type_unit_group): Likewise.
5454         (build_error_marker_type): Likewise.
5455         * infcall.c (get_function_name): Likewise.
5456         * valprint.c (print_converted_chars_to_obstack): Likewise.
5457         * xtensa-tdep.c (xtensa_register_type): Likewise.
5458
5459 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5460
5461         * remote.c (remote_target::download_tracepoint): Fix format
5462         string errors.
5463
5464 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5465
5466         * tracefile.c: Include common/byte-vector.h.
5467         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5468         with trace_regblock_size if needed.  Update uses of buf.
5469
5470 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5471
5472         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5473         std::vector<unsigned char>.
5474         * tracepoint.c (collection_list::collection_list): Remove
5475         m_regs_mask initializer from initializer list.  Resize
5476         m_regs_mask using the largest remote register number.
5477         (collection_list::add_remote_register): Remove size check on
5478         m_regs_mask.  Use at to access element.
5479         (collection_list::stringify): Change type of temp_buf to
5480         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5481         stringify the register mask.  Use pack_hex_byte for the register
5482         mask.
5483
5484 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5485
5486         * tracepoint.h (class collection_list) <add_register>: Remove.
5487         <add_remote_register, add_ax_registers, add_local_register>:
5488         Declare.
5489         <add_memrange>: Add scope parameter.
5490         * tracepoint.c (encode_actions_1): Likewise.
5491         (collection_list::add_register): Rename to ...
5492         (collection_list::add_remote_register): ... this.  Update
5493         comment.
5494         (collection_list::add_ax_registers, add_local_register): New
5495         methods.
5496         (collection_list::add_memrange): Add scope parameter.  Call
5497         add_local_register instead of add_register.
5498         (finalize_tracepoint_aexpr): New function.
5499         (collection_list::collect_symbol): Update calls to add_memrange.
5500         Call add_local_register instead of add_register.  Call
5501         add_ax_registers.  Call finalize_tracepoint_aexpr.
5502         (encode_actions_1): Get remote regnos for $reg action.  Call
5503         add_remote_register, add_ax_registers, and add_local_register.
5504         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5505         (validate_actionline): Call finalize_tracepoint_aexpr.
5506
5507 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5508
5509         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5510         Replace array buf with gdb::char_vector buf, of size
5511         get_remote_packet_size ().  Replace references to buf and
5512         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5513         and xsnprintf with snprintf.  Raise errors if the buffer is too
5514         small.
5515
5516 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5517
5518         * remote.c (remote_target::download_tracepoint): Fix the has_more
5519         predicate in the QTDP action list iteration.
5520
5521 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5522
5523         * remote.c (remote_target::download_tracepoint): Fix indentation
5524         in for block.
5525
5526 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5527
5528         * proc-api.c (_initialize_proc_api): Remove c, unused.
5529         * procfs.c (procfs_init_inferior): Remove signals, unused.
5530         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5531         unused.
5532
5533 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5534             Andrew Burgess  <andrew.burgess@embecosm.com>
5535
5536         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5537         'W_STOPCODE (0)' as this could be ambiguous.
5538
5539 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5540
5541         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5542         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5543         "ai_socktype").
5544
5545 2018-08-02  Tom Tromey  <tom@tromey.com>
5546
5547         PR symtab/16842.
5548         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5549         symbols.
5550         (process_structure_scope): Likewise.
5551
5552 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5553
5554         PR gdb/22629:
5555         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5556         kill inferior.
5557
5558 2018-08-02  Tom Tromey  <tom@tromey.com>
5559
5560         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5561         (darwin_suspend_inferior, darwin_resume_inferior)
5562         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5563         (darwin_check_new_threads): Check result of get_darwin_inferior.
5564
5565 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5566
5567         GDB 8.1.1 released.
5568
5569 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5570
5571         * varobj.c (varobj_get_path_expr_parent): Report an error if
5572         parent is a dynamic varobj.
5573
5574 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5575
5576         * gnulib/aclocal.m4: Re-generate.
5577         * gnulib/config.in: Re-generate.
5578         * gnulib/configure: Re-generate.
5579         * gnulib/import/Makefile.in: Re-generate.
5580         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5581         * gnulib/import/m4/onceonly.m4: Re-generate.
5582
5583 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5584
5585         * target-descriptions.c (struct xml_test_tdesc): New.
5586         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5587         (record_xml_tdesc): Update.
5588         (maintenance_check_xml_descriptions): Update.
5589         * target-descriptions.h (record_xml_tdesc): Update comment.
5590
5591 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5592
5593         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5594         checking array bounds are defined.
5595
5596 2018-07-30  Tom Tromey  <tom@tromey.com>
5597
5598         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5599         irreflexivity violation.
5600
5601 2018-07-30  Tom Tromey  <tom@tromey.com>
5602
5603         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5604         * value.c (unpack_long): Remove lint code.
5605         * valops.c (value_ind): Remove lint code.
5606         * valarith.c (value_x_binop, value_x_unop, value_equal)
5607         (value_pos): Remove lint code.
5608
5609 2018-07-28  Tom de Vries  <tdevries@suse.de>
5610
5611         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5612         with undefined upper bound as <optimized out>.
5613
5614 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5615
5616         * gcore.in: Rename variable "name" to "prefix".  Expand
5617         "usage" text.
5618
5619 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5620
5621         * windows-nat.c (windows_nat_target::create_inferior): Update to
5622         call close() in global namespace.
5623
5624 2018-07-26  Tom Tromey  <tom@tromey.com>
5625
5626         * dwarf-index-write.c (add_address_entry): Don't add objfile
5627         offsets.
5628         * dbxread.c (find_stab_function): Rename from
5629         find_stab_function_addr.  Return a bound_minimal_symbol.
5630         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5631         Don't add objfile offsets.
5632         (end_psymtab): Use raw_text_low, raw_text_high,
5633         MSYMBOL_VALUE_RAW_ADDRESS.
5634         (read_ofile_symtab): Update.
5635         (process_one_symbol): Update.
5636         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5637         offsets.
5638         (dw2_relocate): Remove.
5639         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5640         searching addrmap.
5641         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5642         Update.
5643         (process_psymtab_comp_unit_reader, add_partial_symbol)
5644         (add_partial_subprogram, dwarf2_ranges_read): Update.
5645         (load_partial_dies): Update.
5646         (add_address_entry): Don't add objfile offsets.
5647         (dwarf2_build_include_psymtabs): Update.
5648         (create_addrmap_from_aranges): Don't add objfile offsets.
5649         (dw2_find_pc_sect_compunit_symtab): Update.
5650         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5651         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5652         Update.
5653         (parse_partial_symbols): Don't add objfile offsets.  Use
5654         raw_text_low, raw_text_high.  Update.
5655         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5656         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5657         or call 'relocate' quick function.  Clear psymbol_map.
5658         * psympriv.h (struct partial_symbol) <address>: Add section
5659         offset.
5660         <set_unrelocated_address>: Rename from set_address.
5661         <raw_text_low, raw_text_high>: New methods.
5662         <text_low, text_high>: Add objfile parameter.
5663         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5664         set_unrelocated_address.
5665         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5666         (find_pc_psymbol): Update.
5667         (fixup_psymbol_section, relocate_psymtabs): Remove.
5668         (dump_psymtab, psym_functions): Update.
5669         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5670         parameter.
5671         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5672         (start_psymtab_common): Update.
5673         * symfile-debug.c (debug_qf_relocate): Remove.
5674         (debug_sym_quick_functions): Update.
5675         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5676         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5677         Update.
5678
5679 2018-07-26  Tom Tromey  <tromey@redhat.com>
5680
5681         * dbxread.c (end_psymtab): Use text_high_valid and
5682         text_low_valid.
5683         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5684         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5685         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5686         Update comment.
5687         <text_low_valid, text_high_valid>: New fields.
5688         <set_text_low, set_text_high>: Update.
5689         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5690
5691 2018-07-26  Tom Tromey  <tom@tromey.com>
5692
5693         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5694         Update.
5695         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5696         textlow and texthigh fields.
5697         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5698         Update.
5699         * mdebugread.c (parse_lines, parse_partial_symbols)
5700         (psymtab_to_symtab_1): Update.
5701         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5702         Rename fields.  Update comment.  Now private.
5703         <text_low, text_high, set_text_low, set_text_high>: New methods.
5704         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5705         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5706         (start_psymtab_common, maintenance_info_psymtabs)
5707         (maintenance_check_psymtabs): Update.
5708         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5709         texthigh fields.
5710         (scan_xcoff_symtab): Update.
5711
5712 2018-07-26  Tom Tromey  <tromey@redhat.com>
5713
5714         * psympriv.h (struct partial_symbol) <unrelocated_address,
5715         address, set_address>: New methods.
5716         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5717         (fixup_psymbol_section, relocate_psymtabs): Update.
5718         (print_partial_symbols): Add 'objfile' parameter.  Update.
5719         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5720         Update.
5721
5722 2018-07-26  Tom Tromey  <tom@tromey.com>
5723
5724         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5725         (debug_names::write_psymbols): Update.
5726         * psympriv.h (struct partial_symbol): Derive from
5727         general_symbol_info.
5728         <obj_section>: New method.
5729         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5730         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5731         (find_pc_sect_psymbol, fixup_psymbol_section)
5732         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5733         (print_partial_symbols, recursively_search_psymtabs)
5734         (compare_psymbols, psymbol_hash, psymbol_compare)
5735         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5736         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5737
5738 2018-07-26  Tom Tromey  <tromey@redhat.com>
5739
5740         * dbxread.c (end_psymtab): Remove dead code.
5741
5742 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5743
5744         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5745         DWARF unwinders are disabled.
5746         * dwarf2-frame.c: Add dwarf2read.h include.
5747         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5748         disabled.
5749         (dwarf2_frame_unwinders_enabled_p): Define.
5750         (show_dwarf_unwinders_enabled_p): New function.
5751         (_initialize_dwarf2_frame): Register switch to control DWARF
5752         unwinder use.
5753         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5754         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5755         (show_dwarf_cmdlist): Remove static keyword.
5756         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5757         (show_dwarf_cmdlist): Declare.
5758         * NEWS: Document new feature.
5759
5760 2018-07-26  Tom de Vries  <tdevries@suse.de>
5761
5762         PR breakpoints/23366
5763         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5764
5765 2018-07-26  Tom de Vries  <tdevries@suse.de>
5766
5767         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5768         DW_AT_count can't be translated to a dynamic prop.
5769
5770 2018-07-25  Tom de Vries  <tdevries@suse.de>
5771
5772         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5773         try/catch.
5774
5775 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5776
5777         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5778
5779 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5780
5781         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5782
5783 2018-07-24  Keith Seitz  <keiths@redhat.comt
5784
5785         PR symtab/23010
5786         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5787         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5788         instead of add_symbol_to_list.
5789         (read_file_scope): Call prepare_one_comp_unit before reading
5790         any other DIEs.
5791
5792 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5793
5794         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5795
5796 2018-07-24  Tom Tromey  <tom@tromey.com>
5797
5798         * utils.c (malloc, realloc, free): Don't declare.
5799         * configure, config.in: Rebuild.
5800         * configure.ac: Don't check for declarations of free, malloc, or
5801         realloc.
5802
5803 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5804
5805         * aarch64-linux-nat.c
5806         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5807         variable.
5808         * arm-linux-nat.c (fetch_regs): Likewise.
5809         (store_regs): Likewise.
5810         (fetch_vfp_regs): Likewise.
5811         (store_vfp_regs): Likewise.
5812         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5813         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5814         (arm_linux_nat_target::insert_watchpoint): Likewise.
5815         (arm_linux_nat_target::remove_watchpoint): Likewise.
5816         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5817         Likewise.
5818         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5819         Likewise.
5820         * ppc-linux-nat.c (fetch_register): Likewise.
5821         (fetch_all_gp_regs): Likewise.
5822         (fetch_ppc_registers): Likewise.
5823         (store_all_gp_regs): Likewise.
5824         (store_ppc_registers): Likewise.
5825         (hwdebug_insert_point): Likewise.
5826         (can_use_watchpoint_cond_accel): Likewise.
5827         * remote-sim.c (gdb_os_write_stdout): Likewise.
5828
5829 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5830             Tom Tromey  <tom@tromey.com>
5831
5832         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5833         test for it.
5834         * configure: Rebuild.
5835
5836 2018-07-22  Tom Tromey  <tom@tromey.com>
5837
5838         * regformats/regdat.sh: Define xmltarget_${name} inside
5839         #ifndef IN_PROCESS_AGENT.
5840
5841 2018-07-22  Tom Tromey  <tom@tromey.com>
5842
5843         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5844
5845 2018-07-22  Tom Tromey  <tom@tromey.com>
5846
5847         * symfile.c (reread_symbols): Notify iter, not objfile.
5848
5849 2018-07-22  Tom Tromey  <tom@tromey.com>
5850
5851         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5852         Use arch_ops.
5853         (ravenscar_thread_target::prepare_to_store): Likewise.
5854
5855 2018-07-22  Tom Tromey  <tom@tromey.com>
5856
5857         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5858         unused variable.  Call value_fetch_lazy when needed.
5859         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5860         Remove unused variable.  Call value_fetch_lazy when needed.
5861
5862 2018-07-22  Tom Tromey  <tom@tromey.com>
5863
5864         * m32c-tdep.c (mark_dma): Return void.
5865         (make_regs): Remove unused declarations.
5866
5867 2018-07-22  Tom Tromey  <tom@tromey.com>
5868
5869         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5870         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5871         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5872         bkscm_get_valid_block_smob_arg_unsafe for effect.
5873
5874 2018-07-22  Tom Tromey  <tom@tromey.com>
5875
5876         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5877         value_type.
5878
5879 2018-07-22  Tom Tromey  <tom@tromey.com>
5880
5881         * windows-nat.c (saved_context): Conditionally define.
5882         * remote.c (remote_target::remote_btrace_maybe_reopen):
5883         Conditionally declare "warned".
5884         * inflow.c (sigquit_ours): Conditionally define.
5885         (new_tty): Move "tty" declaration inside #if.
5886         * guile/guile.c (guile_datadir): Conditionally define.
5887         * charset.c (set_be_le_names): Move some declarations inside #if.
5888         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5889         #if.
5890         (parse_xml_btrace_conf): Likewise.
5891
5892 2018-07-22  Tom Tromey  <tom@tromey.com>
5893
5894         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5895
5896 2018-07-22  Tom Tromey  <tom@tromey.com>
5897
5898         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5899         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5900         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5901         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5902         * stack.c (frame_apply_level_command): Remove unused variable.
5903         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5904         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5905         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5906         unused variable.
5907         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5908         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5909         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5910         variable.
5911         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5912         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5913         variable.
5914         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5915         Remove unused variable.
5916         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5917         variable.
5918         * common/tdesc.c (print_xml_feature::visit): Remove unused
5919         variable.
5920         * compile/compile-object-load.c (store_regs): Remove unused
5921         variables.
5922         * complaints.c (clear_complaints): Remove unused variable.
5923         * corelow.c (core_target_open): Remove unused variable.
5924         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5925         variable.
5926         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5927         variable.
5928         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5929         variable.
5930         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5931         variable.
5932         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5933         variable.
5934         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5935         variable.
5936         * ia64-tdep.c (examine_prologue): Remove unused variable.
5937         * infcall.c (run_inferior_call): Remove unused variable.
5938         * inferior.c (exit_inferior): Remove unused variable.
5939         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5940         * linespec.c (decode_line_2): Remove unused variable.
5941         * linux-nat.c (super_close): Remove.
5942         * linux-tdep.c (linux_info_proc): Remove unused variable.
5943         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5944         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5945         Remove unused variable.
5946         * parse.c (find_minsym_type_and_address): Remove unused variable.
5947         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5948         variable.
5949         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5950         variable.
5951         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5952         variables.
5953         * record-btrace.c (record_btrace_target::store_registers): Remove
5954         unused variable.
5955         (cmd_show_record_btrace_cpu): Remove unused variable.
5956         * riscv-tdep.c (riscv_register_reggroup_p)
5957         (riscv_push_dummy_call, riscv_return_value): Remove unused
5958         variable.
5959         * rust-exp.y (literal): Remove unused variable.
5960         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5961         unused variable.
5962         <STRUCTOP_ANONYMOUS>: Likewise.
5963         * s390-linux-tdep.c (s390_linux_init_abi_31)
5964         (s390_linux_init_abi_64): Remove unused variable.
5965         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5966         (file_select_thread, net_windows_open, _initialize_ser_windows):
5967         Remove unused variables.
5968         * symtab.c (find_pc_sect_line): Remove unused variable.
5969         * target-memory.c (compute_garbled_blocks): Remove unused
5970         variable.
5971         (target_write_memory_blocks): Remove unused variable.
5972         * target.c (target_stack::unpush): Remove unused variables.
5973         * tracepoint.c (start_tracing, all_tracepoint_actions)
5974         (merge_uploaded_trace_state_variables)
5975         (print_one_static_tracepoint_marker): Remove unused variable.
5976         * unittests/basic_string_view/element_access/char/1.cc (test01):
5977         Remove unused variable.
5978         * windows-nat.c (windows_continue, windows_add_all_dlls)
5979         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5980         Remove unused variables.
5981
5982 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5983
5984         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5985         attr_profile in HAVE_ELF.
5986         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5987         HAVE_ELF.
5988
5989 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5990
5991         * frame.c (frame_register_unwind): Change parameter name.
5992         (frame_unwind_register): Likewise.
5993         (frame_unwind_register_value): Likewise.
5994         (frame_unwind_register_signed): Likewise.
5995         (frame_unwind_register_unsigned): Likewise.
5996         * frame.h (frame_register_unwind): Likewise.
5997         (frame_unwind_register): Likewise.
5998         (frame_unwind_register_value): Likewise.
5999         (frame_unwind_register_signed): Likewise.
6000         (frame_unwind_register_unsigned): Likewise.
6001         (frame_unwind_arch): Likewise.
6002
6003 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6004
6005         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6006         ISA maintenance.
6007
6008 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6009
6010         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6011         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6012         hand.
6013
6014 2018-07-20  Keith Seitz  <keiths@redhat.com>
6015
6016         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6017         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6018         m_compunit_symtab, m_language>: Add "m_" prefix.
6019         Update all uses.
6020         * buildsym.c: Update all uses.
6021
6022 2018-07-20  Tom Tromey  <tom@tromey.com>
6023
6024         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6025         * buildsym.h (record_line_ftype): Remove typedef.
6026
6027 2018-07-20  Tom Tromey  <tom@tromey.com>
6028
6029         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6030         (end_expandable_symtab): Likewise.
6031         (end_symtab_get_static_block): Likewise.
6032         (end_symtab_from_static_block): Likewise.
6033         * buildsym-legacy.c (augment_type_symtab): Remove.
6034         (end_expandable_symtab): Remove.
6035         (end_symtab_get_static_block): Remove.
6036         (end_symtab_from_static_block): Remove.
6037
6038 2018-07-20  Tom Tromey  <tom@tromey.com>
6039
6040         * dwarf2read.c: Include buildsym.h.
6041         (struct dwarf2_cu) <builder>: New method.
6042         (fixup_go_packaging): Update.
6043         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6044         use scoped_free_pendings.
6045         (using_directives): Add "cu" parameter, remove "language".
6046         (read_import_statement, setup_type_unit_groups, )
6047         (read_func_scope, read_lexical_block_scope)
6048         (dwarf2_record_block_ranges, read_namespace): Update.
6049         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6050         (lnp_state_machine::handle_end_sequence): Update.
6051         (class lnp_state_machine) <m_cu>: New member.
6052         <m_record_line_callback>: Remove.
6053         <m_currently_recording_lines>: New member.
6054         (lnp_state_machine::handle_set_file): Update.
6055         (noop_record_line): Remove.
6056         (dwarf_record_line_p): Add cu parameter.
6057         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6058         (lnp_state_machine::record_line)
6059         (lnp_state_machine::lnp_state_machine)
6060         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6061         (dwarf_decode_lines): Update.
6062         (dwarf2_start_subfile): Add cu parameter.
6063         (dwarf2_start_symtab, new_symbol): Update.
6064         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6065         Remove dwarf2_per_objfile parameter.
6066         (dwarf_decode_macros): Update.
6067
6068 2018-07-20  Tom Tromey  <tom@tromey.com>
6069
6070         * stabsread.c (define_symbol): Update.
6071         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6072         * dwarf2read.c (new_symbol): Update.
6073         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6074         * cp-namespace.c: Include buildsym.h.
6075         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6076         * buildsym-legacy.c (get_buildsym_compunit): New function.
6077
6078 2018-07-20  Tom Tromey  <tom@tromey.com>
6079
6080         * xcoffread.c: Include buildsym-legacy.h.
6081         * windows-nat.c: Include buildsym-legacy.h.
6082         * stabsread.c: Include buildsym-legacy.h.
6083         * mdebugread.c: Include buildsym-legacy.h.
6084         * buildsym-legacy.h: New file.
6085         * buildsym-legacy.c: New file, from buildsym.c.
6086         * go32-nat.c: Include buildsym-legacy.h.
6087         * dwarf2read.c: Include buildsym-legacy.h.
6088         * dbxread.c: Include buildsym-legacy.h.
6089         * cp-namespace.c: Include buildsym-legacy.h.
6090         * coffread.c: Include buildsym-legacy.h.
6091         * buildsym.h: Move some contents to buildsym-legacy.h.
6092         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6093         buildsym-legacy.c.
6094         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6095
6096 2018-07-20  Tom Tromey  <tom@tromey.com>
6097
6098         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6099         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6100         (buildsym_compunit::buildsym_compunit)
6101         (buildsym_compunit::~buildsym_compunit)
6102         (buildsym_compunit::get_macro_table): Define.
6103
6104 2018-07-20  Tom Tromey  <tom@tromey.com>
6105
6106         * buildsym.c (reset_symtab_globals): Remove.
6107         (buildsym_compunit::end_symtab_from_static_block): Update.
6108         (buildsym_compunit::augment_type_symtab): Update.
6109         (end_symtab_from_static_block): Call free_buildsym_compunit.
6110         (augment_type_symtab, end_symtab, end_expandable_symtab):
6111         Likewise.
6112
6113 2018-07-20  Tom Tromey  <tom@tromey.com>
6114
6115         * arch-utils.c: Do not include buildsym.h.
6116         * mipsread.c: Do not include buildsym.h.
6117         * machoread.c: Do not include buildsym.h.
6118         * elfread.c: Do not include buildsym.h.
6119
6120 2018-07-20  Tom Tromey  <tom@tromey.com>
6121
6122         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6123         initialization.
6124         (buildsym_compunit): Add new constructor.
6125         (struct buildsym_compunit) <get_last_source_file, finish_block,
6126         record_block_range, start_subfile, patch_subfile_names,
6127         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6128         set_last_source_start_addr, get_last_source_start_addr,
6129         get_local_using_directives, set_local_using_directives,
6130         get_global_using_directives, outermost_context_p,
6131         get_current_context_stack, get_context_stack_depth,
6132         get_current_subfile, get_local_symbols, get_file_symbols,
6133         get_global_symbols, record_debugformat, record_producer,
6134         push_context, pop_context, end_symtab_get_static_block,
6135         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6136         New public methods.
6137         <record_pending_block, finish_block_internal, make_blockvector,
6138         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6139         private methods.
6140         Update all users.
6141
6142 2018-05-22  Tom Tromey  <tom@tromey.com>
6143
6144         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6145         parameter.
6146         (finish_block_internal): Update.
6147
6148 2018-07-20  Tom Tromey  <tom@tromey.com>
6149
6150         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6151         parameter.
6152         (finish_block_internal): Update.
6153
6154 2018-07-20  Tom Tromey  <tom@tromey.com>
6155
6156         * buildsym.h (EXTERN): Don't define or undef.
6157         * buildsym.c (EXTERN): Don't define.
6158
6159 2018-07-20  Tom Tromey  <tom@tromey.com>
6160
6161         * buildsym.c: Remove TODO comment.
6162
6163 2018-07-20  Tom Tromey  <tom@tromey.com>
6164
6165         * coffread.c (coff_symtab_read): Update.
6166         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6167         (xcoff_new_init): Update.
6168         * mipsread.c (mipscoff_new_init): Update.
6169         * mdebugread.c (mdebug_build_psymtabs): Update.
6170         * elfread.c (elf_new_init): Update.
6171         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6172         Update.
6173         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6174         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6175         (stabsect_build_psymtabs): Update.
6176         * buildsym.h (buildsym_init): Don't declare.
6177         * buildsym.c: Update comment.
6178         (prepare_for_building): Remove.
6179         (start_symtab, restart_symtab): Update.
6180         (reset_symtab_globals): Update comment.
6181         (buildsym_init): Remove.
6182
6183 2018-07-20  Tom Tromey  <tom@tromey.com>
6184
6185         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6186         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6187         (read_enum_type, common_block_start, common_block_end)
6188         (cleanup_undefined_types_1, finish_global_stabs): Update.
6189         * mdebugread.c (psymtab_to_symtab_1): Update.
6190         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6191         (read_lexical_block_scope, new_symbol): Update.
6192         * dbxread.c (process_one_symbol): Update.
6193         * coffread.c (coff_symtab_read, process_coff_symbol)
6194         (coff_read_enum_type): Update.
6195         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6196         declare.
6197         (get_local_symbols, get_file_symbols, get_global_symbols): New
6198         functions.
6199         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6200         m_global_symbols.
6201         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6202         (~scoped_free_pendings): Update.
6203         (finish_block, prepare_for_building, reset_symtab_globals)
6204         (end_symtab_get_static_block, end_symtab_with_blockvector)
6205         (augment_type_symtab, push_context): Update.
6206         (get_local_symbols, get_file_symbols, get_global_symbols): New
6207         functions.
6208         (buildsym_init): Update.
6209
6210 2018-07-20  Tom Tromey  <tom@tromey.com>
6211
6212         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6213         (process_full_type_unit): Likewise.
6214         (dwarf2_start_symtab): Set list_in_scope.
6215
6216 2018-07-20  Tom Tromey  <tom@tromey.com>
6217
6218         * dwarf2read.c (process_psymtab_comp_unit_reader)
6219         (build_type_psymtabs_reader): Do not set list_in_scope.
6220
6221 2018-07-20  Tom Tromey  <tom@tromey.com>
6222
6223         * buildsym.c (free_pendings): Remove.
6224         (add_symbol_to_list, scoped_free_pendings)
6225         (finish_block_internal, buildsym_init): Update.
6226
6227 2018-07-20  Tom Tromey  <tom@tromey.com>
6228
6229         * xcoffread.c (read_xcoff_symtab): Update.
6230         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6231         Update.
6232         * dbxread.c (process_one_symbol): Update.
6233         * coffread.c (coff_symtab_read): Update.
6234         * buildsym.h (finish_block): Update.
6235         * buildsym.c (finish_block): Remove "listhead" argument.
6236         (end_symtab_get_static_block): Update.
6237
6238 2018-07-20  Tom Tromey  <tom@tromey.com>
6239
6240         * buildsym.h (class scoped_free_pendings): Remove constructor.
6241         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6242         method.
6243         <m_pending_block_obstack, m_pending_blocks>: New members.
6244         (pending_block_obstack, pending_blocks): Remove.
6245         (scoped_free_pendings::scoped_free_pendings): Default.
6246         (~scoped_free_pendings): Update.
6247         (free_pending_blocks): Remove.
6248         (finish_block_internal, record_pending_block, make_blockvector)
6249         (end_symtab_get_static_block, augment_type_symtab, push_context)
6250         (buildsym_init): Update.
6251
6252 2018-07-20  Tom Tromey  <tom@tromey.com>
6253
6254         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6255         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6256         members.
6257         (pending_addrmap, pending_addrmap_obstack)
6258         (pending_addrmap_interesting): Remove.
6259         (scoped_free_pendings, record_block_range, make_blockvector)
6260         (prepare_for_building, reset_symtab_globals, buildsym_init):
6261         Update.
6262
6263 2018-07-20  Tom Tromey  <tom@tromey.com>
6264
6265         * xcoffread.c (process_linenos): Update.
6266         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6267         * mdebugread.c (psymtab_to_symtab_1): Update.
6268         * dwarf2read.c (setup_type_unit_groups)
6269         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6270         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6271         * dbxread.c (process_one_symbol): Update.
6272         * coffread.c (coff_symtab_read, enter_linenos)
6273         (process_coff_symbol): Update.
6274         * buildsym.h (current_subfile): Don't declare.
6275         (get_current_subfile): Declare.
6276         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6277         member.
6278         (start_subfile, free_buildsym_compunit, push_subfile)
6279         (prepare_for_building, start_symtab): Update.
6280         (get_current_subfile): New function.
6281
6282 2018-07-20  Tom Tromey  <tom@tromey.com>
6283
6284         * coffread.c (coff_symtab_read): Update.
6285         * xcoffread.c (read_xcoff_symtab): Update.
6286         * dwarf2read.c (new_symbol): Update.
6287         (read_func_scope, read_lexical_block_scope): Update.
6288         * dbxread.c (process_one_symbol): Update.
6289         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6290         (outermost_context_p): Remove macro.
6291         (outermost_context_p, get_current_context_stack)
6292         (get_context_stack_depth): Declare.
6293         (pop_context): Return struct context_stack.
6294         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6295         member.
6296         (context_stack_size): Remove.
6297         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6298         (prepare_for_building, end_symtab_get_static_block)
6299         (augment_type_symtab, push_context): Update.
6300         (pop_context): Return struct context_stack.
6301         (outermost_context_p, get_current_context_stack)
6302         (get_context_stack_depth): New functions.
6303         (buildsym_init): Update.
6304
6305 2018-07-20  Tom Tromey  <tom@tromey.com>
6306
6307         * rust-exp.y: Now a pure parser.  Update all rules.
6308         (%union): Move earlier.
6309         (current_parser, work_obstack): Remove globals.
6310         (rust_parser, ~rust_parser): Update.
6311         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6312         lex_character, lex_number, lex_string, lex_identifier,
6313         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6314         convert_name, convert_params_to_expression,
6315         convert_ast_to_expression, ast_basic_type, ast_operation,
6316         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6317         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6318         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6319         ast_array_type, ast_slice_type, ast_reference_type,
6320         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6321         (rust_parse): Update.
6322         (rustyyerror, rustyylex): Add parser parameter.
6323         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6324         (rust_lex_stringish_test, rust_lex_test_sequence)
6325         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6326         (rust_lex_test_push_back, rust_lex_tests): Update.
6327
6328 2018-07-19  Pedro Alves  <palves@redhat.com>
6329
6330         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6331         gdb::unique_xmalloc_ptr.
6332         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6333         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6334         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6335         copy-initialization.
6336         * guile/scm-pretty-print.c (ppscm_print_children): Use
6337         gdb::unique_xmalloc_ptr instead of cleanups.
6338         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6339         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6340         gdb::unique_xmalloc_ptr.
6341         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6342         Adjust to use gdb::unique_xmalloc_ptr.
6343         * guile/scm-utils.c (extract_arg): Adjust.
6344         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6345         gdb::unique_xmalloc_ptr instead of a cleanup.
6346
6347 2018-07-19  Tom Tromey  <tom@tromey.com>
6348
6349         * utils.c (do_value_free_to_mark)
6350         (make_cleanup_value_free_to_mark): Remove.
6351         * utils.h (make_cleanup_value_free_to_mark): Remove.
6352
6353 2018-07-19  Pedro Alves  <palves@redhat.com>
6354
6355         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6356         forwarding reference.
6357
6358 2018-07-18  Pedro Alves  <palves@redhat.com>
6359
6360         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6361         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6362         cleanup.
6363
6364 2018-07-18  Pedro Alves  <palves@redhat.com>
6365
6366         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6367         exceptions.
6368         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6369         (gdbscm_wrap): New.
6370         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6371         directly instead of a cleanup.
6372         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6373         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6374         (vlscm_binop_gdbthrow): New, factored out from ...
6375         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6376         (vlscm_rich_compare): Use gdbscm_wrap.
6377         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6378         instead of a cleanup.
6379         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6380         cleanup.
6381         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6382         Use xfree directly instead of a cleanup.
6383         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6384         Adjust to use gdbscm_wrap and scoped_value_mark.
6385         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6386         (gdbscm_value_address, gdbscm_value_dereference)
6387         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6388         scoped_value_mark.
6389         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6390         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6391         scoped_value_mark.
6392         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6393         gdbscm_wrap and scoped_value_mark.
6394         (gdbscm_value_to_string): Use xfree directly instead of a
6395         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6396         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6397         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6398         scoped_value_mark.
6399         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6400         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6401         scoped_value_mark.
6402         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6403         gdbscm_wrap.
6404
6405 2018-07-18  Tom de Vries  <tdevries@suse.de>
6406
6407         * findvar.c (default_read_var_value): Also resolve dynamic type for
6408         LOC_OPTIMIZED_OUT vars.
6409
6410 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6411
6412         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6413         decoding.
6414
6415 2018-07-17  Tom Tromey  <tom@tromey.com>
6416
6417         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6418         (compute_enum_list, pascm_set_param_value_x)
6419         (gdbscm_parameter_value): Update.
6420         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6421         (gdbscm_scm_to_host_string): Update.
6422         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6423         Update.
6424         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6425         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6426         * guile/scm-string.c (gdbscm_scm_to_string): Return
6427         unique_xmalloc_ptr.
6428         (gdbscm_scm_to_host_string): Likewise.
6429
6430 2018-07-17  Tom Tromey  <tom@tromey.com>
6431
6432         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6433         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6434         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6435         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6436         unique_xmalloc_ptr.
6437
6438 2018-07-17  Tom Tromey  <tom@tromey.com>
6439
6440         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6441         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6442         Update.
6443         * guile/scm-cmd.c (cmdscm_function): Update.
6444         * guile/scm-pretty-print.c
6445         (ppscm_print_exception_unless_memory_error): Update.
6446         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6447         Return unique_xmalloc_ptr.
6448
6449 2018-07-17  Tom Tromey  <tom@tromey.com>
6450
6451         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6452         Use string_printf.
6453
6454 2018-07-17  Jim Wilson  <jimw@sifive.com>
6455
6456         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6457         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6458         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6459         unecessary braces after EF_RISCV_RVC test.  Delete call to
6460         set_gdbarch_decr_pc_after_break.
6461
6462         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6463         RISCV_LAST_FP_REGNUM + 1.
6464         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6465
6466 2018-07-17  Tom Tromey  <tom@tromey.com>
6467
6468         * configure.ac: Remove --disable-gdbcli.
6469         * configure: Rebuild.
6470         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6471         (SUBDIR_CLI_CFLAGS): Remove.
6472         (SFILES): Use SUBDIR_CLI_SRCS.
6473         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6474
6475 2018-07-17  Tom Tromey  <tom@tromey.com>
6476
6477         PR gdb/18624:
6478         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6479
6480 2018-07-16  Jim Wilson  <jimw@sifive.com>
6481
6482         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6483
6484 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6485
6486         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6487         variable.
6488         (libunwind_frame_sniffer): Likewise.
6489         (libunwind_frame_prev_register): Likewise.
6490         (libunwind_sigtramp_frame_sniffer): Likewise.
6491         * ia64-tdep.c (ia64_access_reg): Likewise.
6492         (ia64_access_rse_reg): Likewise.
6493         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6494         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6495
6496 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6497
6498         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6499
6500 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6501
6502         * remote-sim.c (gdbsim_target::close,
6503         gdbsim_target::mourn_inferior): Remove unused variables.
6504
6505 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6506
6507         * ia64-tdep.c (ktab_buf): New global.
6508         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6509         (get_kernel_table): Adjust.
6510
6511 2018-07-16  Tom Tromey  <tom@tromey.com>
6512
6513         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6514         * dwarf2read.c (using_directives, new_symbol): Use
6515         outermost_context_p.
6516         * dbxread.c (process_one_symbol): Use outermost_context_p.
6517         * coffread.c (coff_symtab_read): Use outermost_context_p.
6518
6519 2018-07-16  Tom Tromey  <tom@tromey.com>
6520
6521         * dwarf2read.c (using_directives, read_func_scope)
6522         (read_lexical_block_scope): Update.
6523         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6524         * buildsym.h (local_using_directives, global_using_directives):
6525         Don't declare.
6526         (get_local_using_directives, set_local_using_directives)
6527         (get_global_using_directives): Declare.
6528         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6529         m_global_using_directives>: New members.
6530         (finish_block_internal, prepare_for_building)
6531         (reset_symtab_globals, end_symtab_get_static_block)
6532         (push_context): Update.
6533         (get_local_using_directives, set_local_using_directives)
6534         (get_global_using_directives): New functions.
6535         (buildsym_init): Update.
6536
6537 2018-07-16  Tom Tromey  <tom@tromey.com>
6538
6539         * xcoffread.c (xcoff_initial_scan): Don't call
6540         free_pending_blocks.
6541         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6542         * buildsym.h (class scoped_free_pendings): Add constructor.
6543         (free_pending_blocks): Don't declare.
6544         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6545         (free_pending_blocks): Now static.
6546
6547 2018-07-16  Tom Tromey  <tom@tromey.com>
6548
6549         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6550         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6551         member.
6552         (struct subfile_stack): Remove.
6553         (subfile_stack): Remove.
6554         (push_subfile, pop_subfile, buildsym_init): Update.
6555
6556 2018-07-16  Tom Tromey  <tom@tromey.com>
6557
6558         * buildsym.c (push_subfile): Use gdb_assert.
6559         (pop_subfile): Use gdb_assert.
6560
6561 2018-07-16  Tom Tromey  <tom@tromey.com>
6562
6563         * buildsym.h (merge_symbol_lists): Remove.
6564         * buildsym.c (merge_symbol_lists): Remove.
6565
6566 2018-07-16  Tom Tromey  <tom@tromey.com>
6567
6568         * stabsread.c (scan_file_globals): Update comment.
6569         * stabsread.h (scan_file_globals): Move from buildsym.h.
6570         * buildsym.h (scan_file_globals): Move to stabsread.h.
6571
6572 2018-07-16  Tom Tromey  <tom@tromey.com>
6573
6574         * xcoffread.c (xcoff_new_init): Update.
6575         * mipsread.c (mipscoff_new_init): Update.
6576         * mdebugread.c (mdebug_build_psymtabs): Update.
6577         * elfread.c (elf_new_init): Update.
6578         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6579         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6580         * buildsym.h (buildsym_new_init): Don't declare.
6581         * buildsym.c (buildsym_new_init): Remove.
6582
6583 2018-07-16  Tom Tromey  <tom@tromey.com>
6584
6585         * stabsread.h (within_function): Move from buildsym.h.
6586         * stabsread.c (start_stabs): Clear within_function.
6587         * coffread.c (coff_start_symtab): Clear within_function.
6588         * buildsym.h (within_function): Move to stabsread.h.
6589         * buildsym.c (prepare_for_building): Update.
6590
6591 2018-07-16  Tom Tromey  <tom@tromey.com>
6592
6593         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6594         * dwarf2read.c (dwarf2_start_symtab): Don't set
6595         processing_gcc_compilation.
6596         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6597
6598 2018-07-16  Tom Tromey  <tom@tromey.com>
6599
6600         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6601         (next_symbol_text_func): Move from buildsym.h.
6602         * stabsread.c (hashname): Move from buildsym.c.
6603         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6604         (next_symbol_text_func, hashname): Move to stabsread.h.
6605         * buildsym.c: Don't include bcache.h
6606         (hashname): Move to stasbread.c.
6607
6608 2018-07-16  Tom Tromey  <tom@tromey.com>
6609
6610         * buildsym.h (context_stack_size): Don't declare.
6611         * buildsym.c (context_stack_size): New global.
6612
6613 2018-07-16  Tom Tromey  <tom@tromey.com>
6614
6615         * dbxread.c (processing_acc_compilation): New global.
6616         * buildsym.h (processing_acc_compilation): Don't declare.
6617
6618 2018-07-16  Tom Tromey  <tom@tromey.com>
6619
6620         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6621         * dbxread.c (read_ofile_symtab): Update.
6622         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6623         * buildsym.h (last_source_start_addr): Remove.
6624         (set_last_source_start_addr, get_last_source_start_addr):
6625         Declare.
6626         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6627         parameter.
6628         (struct buildsym_compunit) <m_last_source_start_addr>: New
6629         member.
6630         (prepare_for_building): Remove start_addr parameter.
6631         (start_symtab, restart_symtab, end_symtab_get_static_block)
6632         (end_symtab_with_blockvector): Update.
6633         (set_last_source_start_addr, get_last_source_start_addr): New
6634         functions.
6635
6636 2018-07-16  Tom Tromey  <tom@tromey.com>
6637
6638         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6639         member.
6640         (have_line_numbers): Remove.
6641         (record_line, prepare_for_building, end_symtab_get_static_block)
6642         (augment_type_symtab): Update.
6643
6644 2018-07-16  Tom Tromey  <tom@tromey.com>
6645
6646         * buildsym.c (~buildsym_compunit): Free the macro table.
6647         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6648         methods.
6649         <m_pending_macros>: New member.
6650         (pending_macros): Remove.
6651         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6652         (reset_symtab_globals, end_symtab_get_static_block)
6653         (end_symtab_with_blockvector, augment_type_symtab)
6654         (buildsym_init): Update.
6655
6656 2018-07-16  Tom Tromey  <tom@tromey.com>
6657
6658         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6659         parameter.
6660         (buildsym_compunit::set_last_source_file): New method.
6661         <m_last_source_file>: New member.
6662         (prepare_for_building): Remove "name" parameter.
6663         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6664         (last_source_file): Remove.
6665         (set_last_source_file, get_last_source_file): Update.
6666
6667 2018-07-16  Tom Tromey  <tom@tromey.com>
6668
6669         * buildsym.c (prepare_for_building): Add assert.
6670
6671 2018-07-16  Tom Tromey  <tom@tromey.com>
6672
6673         * buildsym.c (~buildsym_compunit): Update.
6674         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6675         (start_subfile, patch_subfile_names)
6676         (end_symtab_with_blockvector): Update.
6677
6678 2018-07-16  Tom Tromey  <tom@tromey.com>
6679
6680         * buildsym.c (struct buildsym_compunit): Add constructor,
6681         destructor, initializers.
6682         (start_buildsym_compunit): Remove.
6683         (free_buildsym_compunit): Use "delete".
6684         (start_symtab, restart_symtab): Use "new".
6685
6686 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6687
6688         * symfile.c (set_objfile_default_section_offset): Remove struct
6689         keyword.
6690
6691 2018-07-14  Stafford Horne  <shorne@gmail.com>
6692
6693         * (Responsible Maintainers): Add myself as or1k maintainer.
6694
6695 2018-07-13  Tom Tromey  <tom@tromey.com>
6696
6697         * symfile.c (set_objfile_default_section_offset): Use extra braces
6698         around initializer.
6699
6700 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6701
6702         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6703         non-branching basr.
6704
6705 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6706
6707         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6708         unittests/cli-utils-selftests.c
6709         * unittests/cli-utils-selftests.c: New file.
6710
6711 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6712
6713         * NEWS: Mention new commands. Mention change to 'thread apply'.
6714
6715 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6716
6717         * thread.c (thr_try_catch_cmd): New function.
6718         (thread_apply_all_command): Handle qcs flags.
6719         (thread_apply_command): Handle qcs flags.
6720         (taas_command): New function.
6721         (tfaas_command): New function.
6722         (_initialize_thread): Update to setup the new commands 'taas
6723         and 'tfaas'. Change doc string for 'thread apply'.
6724
6725 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6726
6727         * stack.c: (trailing_outermost_frame): New function, mostly
6728         extracted from backtrace_command_1.
6729         (leading_innermost_frame): New function.
6730         (backtrace_command_1): Update to call trailing_outermost_frame.
6731         (frame_apply_command_count): New function.
6732         (frame_apply_level_command): New function.
6733         (frame_apply_all_command): New function.
6734         (frame_apply_command): New function.
6735         (faas_command): New function.
6736         (frame_cmd_list): New variable.
6737         (_initialize_stack): Update to setup the new commands 'frame apply'
6738         and 'faas'.
6739
6740 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6741
6742         * cli-utils.c (number_or_range_parser::get_number): Only handle
6743         numbers or convenience var as numbers.
6744         (parse_flags): New function.
6745         (parse_flags_qcs): New function.
6746         (number_or_range_parser::finished): Ensure parsing end is detected
6747         before end of string.
6748         * cli-utils.h (parse_flags): New function.
6749         (parse_flags_qcs): New function.
6750         (number_or_range_parser): Remove m_finished bool.
6751         (number_or_range_parser::skip_range): Set m_in_range to false.
6752
6753 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6754
6755         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6756         on Windows.
6757
6758 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6759             Jan Kratochvil  <jan.kratochvil@redhat.com>
6760             Paul Fertser  <fercerpav@gmail.com>
6761             Tsutomu Seki  <sekiriki@gmail.com>
6762             Pedro Alves  <palves@redhat.com>
6763
6764         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6765         'unittests/parse-connection-spec-selftests.c'.
6766         (COMMON_SFILES): Add 'common/netstuff.c'.
6767         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6768         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6769         * common/netstuff.c: New file.
6770         * common/netstuff.h: New file.
6771         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6772         (wait_for_connect): Update comment.  New parameter
6773         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6774         Use 'sock' directly instead of 'scb->fd'.
6775         (try_connect): New function, with code from 'net_open'.
6776         (net_open): Rewrite main loop to deal with multiple
6777         sockets/addresses.  Handle IPv6-style hostnames; implement
6778         support for IPv6 connections.
6779         * unittests/parse-connection-spec-selftests.c: New file.
6780
6781 2018-07-11  Pedro Alves  <palves@redhat.com>
6782
6783         PR gdb/23377
6784         * remote.c (remote_target::remote_detach_pid): Call
6785         set_current_process.
6786
6787 2018-07-11  Pedro Alves  <palves@redhat.com>
6788
6789         * h8300-tdep.c (h8300_gdbarch_init): Remove
6790         set_gdbarch_ecoff_reg_to_regnum calls.
6791
6792 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6793
6794         PR c++/23373
6795         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6796         offsets/sizes for static members of a class/struct.
6797
6798 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6799
6800         * target-descriptions.c (tdesc_register_bitsize): Rename.
6801         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6802         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6803         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6804
6805 2018-07-10  Tom Tromey  <tom@tromey.com>
6806
6807         * breakpoint.c (moribund_locations): Now static and a
6808         std::vector.
6809         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6810         (build_bpstat_chain, update_global_location_list)
6811         (breakpoint_retire_moribund): Update.
6812         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6813         VEC.
6814
6815 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6816
6817         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6818         (riscv_register_reggroup_p): Use new function, remove unneeded
6819         parenthesis.
6820         (riscv_push_dummy_call): Extend assert to compare against xlen or
6821         flen based on register type.
6822
6823 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6824
6825         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6826
6827 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6828
6829         * remote.c (show_hardware_watchpoint_limit): New function.
6830         (show_hardware_watchpoint_length_limit): New function.
6831         (show_hardware_breakpoint_limit): New function.
6832         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6833         where appropriate, update help text.
6834
6835 2018-07-09  Tom Tromey  <tom@tromey.com>
6836
6837         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6838         (CLIBS): Don't mention NAT_CLIBS.
6839
6840 2018-07-09  Tom Tromey  <tom@tromey.com>
6841
6842         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6843         (LIBGDB_OBS, clean mostlyclean): Update.
6844         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6845
6846 2018-07-09  Tom Tromey  <tom@tromey.com>
6847
6848         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6849         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6850         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6851
6852 2018-07-09  Tom Tromey  <tom@tromey.com>
6853
6854         * Makefile.in (ALLDEPFILES): Remove exec.c.
6855         (COMMON_OBS): Remove exec.o.
6856         (COMMON_SFILES): Add exec.c.
6857
6858 2018-07-09  Tom Tromey  <tom@tromey.com>
6859
6860         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6861
6862 2018-07-09  Tom Tromey  <tom@tromey.com>
6863
6864         * Makefile.in (clean mostlyclean): Remove stamp-version.
6865         (version.c): Depend on stamp-version.
6866         (stamp-version): New rule, from version.c rule.
6867
6868 2018-07-09  Tom Tromey  <tom@tromey.com>
6869
6870         * Makefile.in (init.c): Depend on stamp-init.
6871         (stamp-init): New rule, from init.c rule.
6872         (clean mostlyclean): Remove stamp-init.
6873
6874 2018-07-09  Tom Tromey  <tom@tromey.com>
6875
6876         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6877         SUBDIR_GCC_COMPILE_SRCS.
6878
6879 2018-07-09  Tom Tromey  <tom@tromey.com>
6880
6881         * Makefile.in (init.c): Remove some unused sed rules.
6882
6883 2018-07-09  Tom Tromey  <tom@tromey.com>
6884
6885         * Makefile.in (TSOBS): Remove.
6886         (INIT_FILES): Update.
6887         (LIBGDB_OBS): Update.
6888         (COMMON_SFILES): Add inflow.c.
6889         (SFILES): Remove inflow.c.
6890
6891 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6892
6893         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6894
6895 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6896
6897         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6898         get_saveloc_name, is_signal_frame_name, step_name,
6899         init_remote_name, create_addr_space_name,
6900         destroy_addr_space_name, search_unwind_table_name,
6901         find_dyn_list_name): Constify.
6902
6903 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6904
6905         * darwin-nat.c (darwin_pthread_kill): New function.
6906         (darwin_resume_thread): Use darwin_pthread_kill.
6907
6908 2018-07-05  Tom de Vries  <tdevries@suse.de>
6909
6910         * macroexp.c (macro_buffer) <operator=>: New member function.
6911
6912 2018-07-04  Tom Tromey  <tom@tromey.com>
6913
6914         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6915
6916 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6917
6918         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6919         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6920         * maint.c: Likewise.
6921         * top.c: Likewise.
6922
6923 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6924
6925         * NEWS: Create a new section for the next release branch.
6926         Rename the section of the current branch, now that it has
6927         been cut.
6928
6929 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6930
6931         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6932         * version.in: Bump version to 8.2.50.DATE-git.
6933
6934 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6935             Pedro Alves  <palves@redhat.com>
6936
6937         * linux-nat.c (linux_init_ptrace): Rename to ...
6938         (linux_init_ptrace_procfs): ... this.  Call
6939         linux_proc_init_warnings.
6940         (linux_nat_target::post_attach)
6941         (linux_nat_target::post_startup_inferior): Adjust.
6942         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6943         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6944
6945 2018-07-04  Tom de Vries  <tdevries@suse.de>
6946
6947         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6948         check ...
6949         (read_comp_unit_head): ... here.
6950
6951 2018-07-03  Tom Tromey  <tom@tromey.com>
6952
6953         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6954         (stop_tracing, tstatus_command)
6955         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6956         (print_one_static_tracepoint_marker): Update.
6957         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6958         std::vector.
6959         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6960         VEC.
6961         (all_tracepoints, static_tracepoints_here): Return std::vector.
6962
6963 2018-07-03  Tom Tromey  <tom@tromey.com>
6964
6965         * common/ptid.c (ptid_equal): Remove.
6966         * common/ptid.h (ptid_equal): Don't declare.
6967         * ada-tasks.c: Update.
6968         * breakpoint.c: Update.
6969         * common/agent.c: Update.
6970         * corelow.c: Update.
6971         * darwin-nat-info.c: Update.
6972         * darwin-nat.c: Update.
6973         * dcache.c: Update.
6974         * dtrace-probe.c: Update.
6975         * dummy-frame.c: Update.
6976         * fbsd-nat.c: Update.
6977         * frame.c: Update.
6978         * gdbthread.h: Update.
6979         * gnu-nat.c: Update.
6980         * go32-nat.c: Update.
6981         * inf-loop.c: Update.
6982         * inf-ptrace.c: Update.
6983         * infcall.c: Update.
6984         * infcmd.c: Update.
6985         * inflow.c: Update.
6986         * infrun.c: Update.
6987         * linux-fork.c: Update.
6988         * linux-nat.c: Update.
6989         * linux-thread-db.c: Update.
6990         * mi/mi-cmd-var.c: Update.
6991         * mi/mi-interp.c: Update.
6992         * mi/mi-main.c: Update.
6993         * nto-procfs.c: Update.
6994         * ppc-linux-tdep.c: Update.
6995         * procfs.c: Update.
6996         * python/py-inferior.c: Update.
6997         * python/py-record-btrace.c: Update.
6998         * python/py-record.c: Update.
6999         * ravenscar-thread.c: Update.
7000         * regcache.c: Update.
7001         * remote-sim.c: Update.
7002         * remote.c: Update.
7003         * sol-thread.c: Update.
7004         * solib.c: Update.
7005         * target.c: Update.
7006         * tui/tui-stack.c: Update.
7007         * varobj.c: Update.
7008         * windows-nat.c: Update.
7009         * windows-tdep.c: Update.
7010
7011 2018-07-03  Tom Tromey  <tom@tromey.com>
7012
7013         * common/ptid.c (ptid_match): Remove.
7014         * common/ptid.h (ptid_match): Don't declare.
7015         * fbsd-nat.c: Update.
7016         * infcmd.c: Update.
7017         * infrun.c: Update.
7018         * linux-nat.c: Update.
7019         * record-btrace.c: Update.
7020         * regcache.c: Update.
7021         * remote.c: Update.
7022
7023 2018-07-03  Tom Tromey  <tom@tromey.com>
7024
7025         * common/ptid.c (ptid_tid_p): Remove.
7026         * common/ptid.h (ptid_tid_p): Don't declare.
7027         * sol-thread.c: Update.
7028
7029 2018-07-03  Tom Tromey  <tom@tromey.com>
7030
7031         * common/ptid.c (ptid_lwp_p): Remove.
7032         * common/ptid.h (ptid_lwp_p): Don't declare.
7033         * fbsd-nat.c: Update.
7034         * linux-nat.c: Update.
7035         * nat/linux-procfs.c: Update.
7036         * nat/x86-linux-dregs.c: Update.
7037         * sol-thread.c: Update.
7038
7039 2018-07-03  Tom Tromey  <tom@tromey.com>
7040
7041         * common/ptid.c (ptid_is_pid): Remove.
7042         * common/ptid.h (ptid_is_pid): Don't declare.
7043         * infrun.c: Update.
7044         * linux-nat.c: Update.
7045         * mi/mi-interp.c: Update.
7046         * remote.c: Update.
7047         * thread.c: Update.
7048
7049 2018-07-03  Tom Tromey  <tom@tromey.com>
7050
7051         * common/ptid.c (ptid_get_tid): Remove.
7052         * common/ptid.h (ptid_get_tid): Don't declare.
7053         * ada-tasks.c: Update.
7054         * aix-thread.c: Update.
7055         * bsd-uthread.c: Update.
7056         * darwin-nat.c: Update.
7057         * fbsd-nat.c: Update.
7058         * i386-darwin-nat.c: Update.
7059         * infrun.c: Update.
7060         * linux-tdep.c: Update.
7061         * nto-procfs.c: Update.
7062         * ppc-ravenscar-thread.c: Update.
7063         * python/py-infthread.c: Update.
7064         * ravenscar-thread.c: Update.
7065         * sol-thread.c: Update.
7066         * sparc-ravenscar-thread.c: Update.
7067         * windows-nat.c: Update.
7068
7069 2018-07-03  Tom Tromey  <tom@tromey.com>
7070
7071         * common/ptid.c (ptid_get_lwp): Remove.
7072         * common/ptid.h (ptid_get_lwp): Don't declare.
7073         * aarch64-linux-nat.c: Update.
7074         * ada-tasks.c: Update.
7075         * aix-thread.c: Update.
7076         * amd64-linux-nat.c: Update.
7077         * arm-linux-nat.c: Update.
7078         * corelow.c: Update.
7079         * fbsd-nat.c: Update.
7080         * fbsd-tdep.c: Update.
7081         * gnu-nat.c: Update.
7082         * i386-cygwin-tdep.c: Update.
7083         * i386-gnu-nat.c: Update.
7084         * i386-linux-nat.c: Update.
7085         * ia64-linux-nat.c: Update.
7086         * inf-ptrace.c: Update.
7087         * infrun.c: Update.
7088         * linux-fork.c: Update.
7089         * linux-nat.c: Update.
7090         * linux-tdep.c: Update.
7091         * linux-thread-db.c: Update.
7092         * mips-linux-nat.c: Update.
7093         * nat/aarch64-linux-hw-point.c: Update.
7094         * nat/aarch64-linux.c: Update.
7095         * nat/linux-btrace.c: Update.
7096         * nat/linux-osdata.c: Update.
7097         * nat/linux-procfs.c: Update.
7098         * nat/x86-linux-dregs.c: Update.
7099         * obsd-nat.c: Update.
7100         * ppc-fbsd-nat.c: Update.
7101         * ppc-linux-nat.c: Update.
7102         * procfs.c: Update.
7103         * python/py-infthread.c: Update.
7104         * ravenscar-thread.c: Update.
7105         * remote.c: Update.
7106         * s390-linux-nat.c: Update.
7107         * sol-thread.c: Update.
7108         * sol2-tdep.c: Update.
7109         * spu-linux-nat.c: Update.
7110         * x86-linux-nat.c: Update.
7111         * xtensa-linux-nat.c: Update.
7112
7113 2018-07-03  Tom Tromey  <tom@tromey.com>
7114
7115         * common/ptid.c (ptid_get_pid): Remove.
7116         * common/ptid.h (ptid_get_pid): Don't declare.
7117         * aarch64-linux-nat.c: Update.
7118         * ada-lang.c: Update.
7119         * aix-thread.c: Update.
7120         * alpha-bsd-nat.c: Update.
7121         * amd64-fbsd-nat.c: Update.
7122         * amd64-linux-nat.c: Update.
7123         * arm-linux-nat.c: Update.
7124         * arm-nbsd-nat.c: Update.
7125         * auxv.c: Update.
7126         * break-catch-syscall.c: Update.
7127         * breakpoint.c: Update.
7128         * bsd-uthread.c: Update.
7129         * corelow.c: Update.
7130         * ctf.c: Update.
7131         * darwin-nat.c: Update.
7132         * fbsd-nat.c: Update.
7133         * fbsd-tdep.c: Update.
7134         * gcore.c: Update.
7135         * gnu-nat.c: Update.
7136         * hppa-nbsd-nat.c: Update.
7137         * hppa-obsd-nat.c: Update.
7138         * i386-fbsd-nat.c: Update.
7139         * ia64-linux-nat.c: Update.
7140         * inf-ptrace.c: Update.
7141         * infcmd.c: Update.
7142         * inferior.c: Update.
7143         * inferior.h: Update.
7144         * inflow.c: Update.
7145         * infrun.c: Update.
7146         * linux-fork.c: Update.
7147         * linux-nat.c: Update.
7148         * linux-tdep.c: Update.
7149         * linux-thread-db.c: Update.
7150         * m68k-bsd-nat.c: Update.
7151         * mi/mi-interp.c: Update.
7152         * mi/mi-main.c: Update.
7153         * mips-linux-nat.c: Update.
7154         * mips-nbsd-nat.c: Update.
7155         * mips64-obsd-nat.c: Update.
7156         * nat/aarch64-linux-hw-point.c: Update.
7157         * nat/aarch64-linux.c: Update.
7158         * nat/linux-btrace.c: Update.
7159         * nat/linux-osdata.c: Update.
7160         * nat/linux-procfs.c: Update.
7161         * nat/x86-linux-dregs.c: Update.
7162         * nto-procfs.c: Update.
7163         * obsd-nat.c: Update.
7164         * ppc-linux-nat.c: Update.
7165         * ppc-nbsd-nat.c: Update.
7166         * ppc-obsd-nat.c: Update.
7167         * proc-service.c: Update.
7168         * procfs.c: Update.
7169         * python/py-inferior.c: Update.
7170         * python/py-infthread.c: Update.
7171         * ravenscar-thread.c: Update.
7172         * record.c: Update.
7173         * remote-sim.c: Update.
7174         * remote.c: Update.
7175         * rs6000-nat.c: Update.
7176         * s390-linux-nat.c: Update.
7177         * sh-nbsd-nat.c: Update.
7178         * sol-thread.c: Update.
7179         * sparc-nat.c: Update.
7180         * sparc64-tdep.c: Update.
7181         * spu-linux-nat.c: Update.
7182         * spu-tdep.c: Update.
7183         * target-debug.h: Update.
7184         * target.c: Update.
7185         * thread.c: Update.
7186         * tid-parse.c: Update.
7187         * tracefile-tfile.c: Update.
7188         * vax-bsd-nat.c: Update.
7189         * windows-nat.c: Update.
7190         * x86-linux-nat.c: Update.
7191         * x86-nat.c: Update.
7192
7193 2018-07-03  Tom Tromey  <tom@tromey.com>
7194
7195         * common/ptid.c (pid_to_ptid): Remove.
7196         * common/ptid.h (pid_to_ptid): Don't declare.
7197         * aix-thread.c: Update.
7198         * arm-linux-nat.c: Update.
7199         * common/ptid.c: Update.
7200         * common/ptid.h: Update.
7201         * corelow.c: Update.
7202         * ctf.c: Update.
7203         * darwin-nat.c: Update.
7204         * fbsd-nat.c: Update.
7205         * fork-child.c: Update.
7206         * gnu-nat.c: Update.
7207         * go32-nat.c: Update.
7208         * inf-ptrace.c: Update.
7209         * infcmd.c: Update.
7210         * inferior.c: Update.
7211         * infrun.c: Update.
7212         * linux-fork.c: Update.
7213         * linux-nat.c: Update.
7214         * nat/aarch64-linux-hw-point.c: Update.
7215         * nat/fork-inferior.c: Update.
7216         * nat/x86-linux-dregs.c: Update.
7217         * nto-procfs.c: Update.
7218         * obsd-nat.c: Update.
7219         * procfs.c: Update.
7220         * progspace.c: Update.
7221         * remote.c: Update.
7222         * rs6000-nat.c: Update.
7223         * s390-linux-nat.c: Update.
7224         * sol-thread.c: Update.
7225         * spu-linux-nat.c: Update.
7226         * target.c: Update.
7227         * top.c: Update.
7228         * tracefile-tfile.c: Update.
7229         * windows-nat.c: Update.
7230
7231 2018-07-03  Tom Tromey  <tom@tromey.com>
7232
7233         * common/ptid.h (ptid_build): Don't declare.
7234         * common/ptid.c (ptid_build): Remove.
7235         * aix-thread.c: Update.
7236         * bsd-kvm.c: Update.
7237         * bsd-uthread.c: Update.
7238         * common/agent.c: Update.
7239         * common/ptid.c: Update.
7240         * common/ptid.h: Update.
7241         * corelow.c: Update.
7242         * darwin-nat.c: Update.
7243         * fbsd-nat.c: Update.
7244         * gnu-nat.c: Update.
7245         * linux-fork.c: Update.
7246         * linux-nat.c: Update.
7247         * linux-thread-db.c: Update.
7248         * nat/linux-osdata.c: Update.
7249         * nat/linux-procfs.c: Update.
7250         * nto-procfs.c: Update.
7251         * obsd-nat.c: Update.
7252         * proc-service.c: Update.
7253         * procfs.c: Update.
7254         * ravenscar-thread.c: Update.
7255         * remote-sim.c: Update.
7256         * remote.c: Update.
7257         * sol-thread.c: Update.
7258         * target.c: Update.
7259         * windows-nat.c: Update.
7260
7261 2018-07-03  Tom Tromey  <tom@tromey.com>
7262
7263         * infrun.c (follow_exec): Use exit_inferior_silent.
7264         * inferior.c (exit_inferior_num_silent): Remove.
7265         * inferior.h (exit_inferior_num_silent): Don't declare.
7266
7267 2018-07-03  Tom Tromey  <tom@tromey.com>
7268
7269         PR cli/23340:
7270         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7271         inferior_ptid on error.
7272
7273 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7274             Simon Marchi  <simon.marchi@polymtl.ca>
7275
7276         PR tdep/8282
7277         * disasm.h (gdb_disassembler): Add
7278         `m_disassembler_options_holder'. member
7279         * disasm.c (get_all_disassembler_options): New function.
7280         (gdb_disassembler::gdb_disassembler): Use it.
7281         (gdb_buffered_insn_length_init_dis): Likewise.
7282         (gdb_buffered_insn_length): Adjust accordingly.
7283         (set_disassembler_options): Handle options with arguments.
7284         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7285         line if showing options with descriptions.
7286         (disassembler_options_completer): Adapt to using the
7287         `disasm_options_and_args_t' structure.
7288         * mips-tdep.c (mips_disassembler_options): New variable.
7289         (mips_disassembler_options_o32): Likewise.
7290         (mips_disassembler_options_n32): Likewise.
7291         (mips_disassembler_options_n64): Likewise.
7292         (gdb_print_insn_mips): Don't set `disassembler_options'.
7293         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7294         functions.
7295         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7296         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7297         `gdbarch_disassembler_options_implicit' and
7298         `gdbarch_valid_disassembler_options'.
7299         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7300         `disasm_options_and_args_t' structure.
7301         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7302         method.
7303         (valid_disassembler_options): Switch from `disasm_options_t' to
7304         the `disasm_options_and_args_t' structure.
7305         * NEWS: Document `set disassembler-options' support for the MIPS
7306         target.
7307         * gdbarch.h: Regenerate.
7308         * gdbarch.c: Regenerate.
7309
7310 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7311
7312         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7313
7314 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7315
7316         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7317         parameter in call to amd64_target_description.
7318         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7319         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7320         (amd64fbsd_init_abi): Likewise.
7321         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7322         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7323         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7324         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7325
7326 2018-06-29  Pedro Alves  <palves@redhat.com>
7327
7328         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7329         "segments" parameter.
7330         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7331         (_initialize_amd64_tdep): Update call to
7332         amd64_create_target_description.
7333         (amd64_target_description): Add "segments" parameter.  Adjust
7334         the implementation to use it.
7335         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7336         call to amd64_create_target_description.
7337         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7338         * gdb/arch/amd64.h (amd64_create_target_description): Add
7339         "segments" register.
7340         * gdb/arch/amd64.c (amd64_create_target_description): Add
7341         "segments" parameter.  Call create_feature_i386_64bit_segments
7342         only if SEGMENTS is true.
7343         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7344         call to amd64_create_target_description.
7345
7346 2018-06-29  Pedro Alves  <palves@redhat.com>
7347
7348         * thread.c (thread_target_id_str): New, factored out from ...
7349         (print_thread_info_1): ... here.  Use it to compute the max
7350         "Target Id" column width.
7351
7352 2018-06-29  Pedro Alves  <palves@redhat.com>
7353
7354         * remote.c (remote_target::extra_thread_info): Delete
7355         'display_buf' and 'n' locals.  from the cache, regardless of
7356         packet mechanims is in use.  Use cache for qThreadExtra and qP
7357         methods too.
7358
7359 2018-06-29  Pedro Alves  <palves@redhat.com>
7360
7361         * blockframe.c (find_pc_sect_containing_function): New function.
7362         * breakpoint.c (print_breakpoint_location): Don't call
7363         find_pc_sect_function.
7364         * linespec.c (create_sals_line_offset): Record the location's
7365         symbol in the sal.
7366         * linespec.c (convert_address_location_to_sals): Fill in sal's
7367         symbol with find_pc_sect_containing_function.
7368         * symtab.c (find_function_start_sal): Rename to ...
7369         (find_function_start_sal_1): ... this.
7370         (find_function_start_sal): Reimplement as wrapper around
7371         find_function_start_sal_1, and use
7372         find_pc_sect_containing_function to fill in the sal's symbol.
7373         (find_function_start_sal(symbol*, bool)): Adjust.
7374         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7375         comments.
7376         (find_pc_sect_containing_function): Declare.
7377
7378 2018-06-29  Pedro Alves  <palves@redhat.com>
7379
7380         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7381         true if the the location has no symbol.
7382
7383 2018-06-28  Tom Tromey  <tom@tromey.com>
7384
7385         * NEWS: Mention --enable-codesign.
7386         * silent-rules.mk (ECHO_SIGN): New variable.
7387         * configure.ac: Add --enable-codesign.
7388         * configure: Rebuild.
7389         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7390         (gdb$(EXEEXT)): Optionally invoke codesign.
7391
7392 2018-06-28  Pedro Alves  <palves@redhat.com>
7393
7394         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7395         comments.
7396         (switch_to_thread_no_regs): Adjust comment.
7397         * infcmd.c (stop_pc): Delete.
7398         (post_create_inferior, info_program_command): Replace references
7399         to stop_pc with references to thread_info->suspend.stop_pc.
7400         * inferior.h (stop_pc): Delete declaration.
7401         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7402         (handle_inferior_event_1, handle_signal_stop)
7403         (process_event_stop_test, keep_going_stepped_thread)
7404         (handle_step_into_function, handle_step_into_function_backward)
7405         (print_stop_location): Replace references to stop_pc with
7406         references to thread_info->suspend.stop_pc.
7407         (struct infcall_suspend_state) <stop_pc>: Delete field.
7408         (save_infcall_suspend_state, restore_infcall_suspend_state):
7409         Remove references to inf_stat->stop_pc.
7410         * linux-fork.c (fork_load_infrun_state): Likewise.
7411         * record-btrace.c (record_btrace_set_replay): Likewise.
7412         * record-full.c (record_full_goto_entry): Likewise.
7413         * remote.c (print_one_stopped_thread): Likewise.
7414         * target.c (target_resume): Extend comment.
7415         * thread.c (set_executing_thread): New.
7416         (set_executing): Use it.
7417         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7418         Remove references to stop_pc.
7419
7420 2018-06-28  Pedro Alves  <palves@redhat.com>
7421
7422         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7423         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7424
7425 2018-06-28  Tom Tromey  <tom@tromey.com>
7426
7427         * coffread.c (coff_symfile_finish): Update.
7428         * xcoffread.c (xcoff_symfile_finish): Update.
7429         * elfread.c (elf_symfile_finish): Update.
7430         * symfile.h (dwarf2_free_objfile): Don't declare.
7431         * dwarf2read.c (_initialize_dwarf2_read): Use
7432         register_objfile_data_with_cleanup.
7433         (dwarf2_free_objfile): Now static.  Change signature.
7434
7435 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7436
7437         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7438         option "-o" to add-symbol-file-load to add an offset to each
7439         section's load address.
7440         * symfile.c (set_objfile_default_section_offset): New function.
7441
7442 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7443
7444         * symfile.c (add_symbol_file_command): Make sure that sections
7445         with the same name are sorted in the same order.
7446
7447 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7448
7449         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7450         require the second argument.  If omitted, load sections at the
7451         addresses specified in the file.
7452
7453 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7454
7455         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7456         (_initialize_symfile): Add option "-o" to symbol-file to add an
7457         offset to each section of the symbol file.
7458
7459 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7460
7461         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7462
7463 2018-06-27  Tom Tromey  <tom@tromey.com>
7464
7465         * stack.c (_initialize_stack): Update "func" help text.
7466
7467 2018-06-27  Tom Tromey  <tom@tromey.com>
7468
7469         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7470         std::vector.
7471         (unwind_infopy_str, pyuw_create_unwind_info)
7472         (unwind_infopy_add_saved_register, pyuw_sniffer)
7473         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7474         Update.
7475         (struct saved_reg): Add constructor.
7476         <value>: Now a gdbpy_ref<>.
7477
7478 2018-06-27  Tom Tromey  <tom@tromey.com>
7479
7480         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7481
7482 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7483
7484         * gdb-gdb.py.in: Format using autopep8.
7485
7486 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7487
7488         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7489         (type_lookup_function): Recognize CORE_ADDR values.
7490
7491 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7492
7493         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7494         print tag_name.
7495
7496 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7497
7498         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7499         <__lt__>: Add.
7500
7501 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7502
7503         * gdb-gdb.py: Move to...
7504         * gdb-gdb.py.in: ... here.
7505         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7506         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7507         dependencies.
7508         (distclean): Remove gdb-gdb.py when cleaning.
7509         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7510         * configure: Re-generate.
7511
7512 2018-06-27  Pedro Alves  <palves@redhat.com>
7513
7514         * proc-service.c (get_ps_regcache): New.
7515         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7516         (ps_lsetfpregs): Use it.
7517
7518 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7519
7520         PR gdb/21695
7521         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7522         declaration.
7523         (dwarf_decode_lines_1): Adjust.
7524
7525 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7526
7527         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7528         override.
7529         <info_proc>: Likewise.
7530
7531 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7532
7533         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7534         to windows_fetch_one_register, and only handle the case of
7535         fetching one register.  Move the code that reloads the context
7536         and iterates over all registers if R is negative to...
7537         (windows_nat_target::fetch_registers): ... here.
7538         (do_windows_store_inferior_registers): Rename to
7539         windows_store_one_register, and only handle the case of storing
7540         one register.  Move the code that handles the case where r is
7541         negative to...
7542         (windows_nat_target::store_registers) ... here.
7543
7544 2018-06-26  Tom Tromey  <tom@tromey.com>
7545
7546         PR rust/22574:
7547         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7548         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7549         Update.
7550         (rust_internal_print_type): Add podata parameter.
7551         (rust_print_type): Update.
7552
7553 2018-06-26  Tom Tromey  <tom@tromey.com>
7554
7555         * typeprint.h (struct print_offset_data) <update, finish,
7556         maybe_print_hole>: New methods.
7557         <indentation>: New constant.
7558         * typeprint.c (print_offset_data::indentation): Define.
7559         (print_offset_data::maybe_print_hole, print_offset_data::update)
7560         (print_offset_data::finish): Move from c-typeprint.c and rename.
7561         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7562         (print_spaces_filtered_with_print_options): Update.
7563         (c_print_type_union_field_offset, maybe_print_hole)
7564         (c_print_type_struct_field_offset): Move to typeprint.c and
7565         rename.
7566         (c_type_print_base_struct_union): Update.
7567
7568 2018-06-25  Pedro Alves  <palves@redhat.com>
7569
7570         * gdbthread.h (thread_info_ref, delete_thread)
7571         (delete_thread_silent, first_thread_of_inferior)
7572         (any_thread_of_inferior, switch_to_thread)
7573         (enable_thread_stack_temporaries)
7574         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7575         (get_last_thread_stack_temporary)
7576         (value_in_thread_stack_temporaries, can_access_registers_thread):
7577         Spell out "struct thread_info" instead of just "thread_info".
7578         * inferior.h (notice_new_inferior): Likewise.
7579
7580 2018-06-25  Pedro Alves  <palves@redhat.com>
7581
7582         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7583         pass thread_info pointer to delete_thread.
7584         (windows_nat_target::detach): Pass inferior pointer to
7585         detach_inferior.
7586         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7587         delete_thread.
7588         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7589         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7590         and pass a thread_info pointer to delete_thread.
7591         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7592         pass thread_info pointer to delete_thread.
7593         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7594         delete_thread_silent call.
7595         * procfs.c (procfs_target::detach): Pass inferior pointer to
7596         detach_inferior.
7597         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7598         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7599         delete_thread_silent call.
7600         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7601         pass thread_info pointer to delete_thread.
7602         (windows_nat_target::detach): Pass inferior pointer to
7603         delete_inferior.
7604
7605 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7606
7607         * regcache.c (readable_regcache::read_part): Fix asserts.
7608         (reg_buffer::raw_collect_part): New function.
7609         (regcache::write_part): Fix asserts.
7610         (reg_buffer::raw_supply_part): New function.
7611         (regcache::transfer_regset_register): New helper function.
7612         (regcache::transfer_regset): Call new functions.
7613         (regcache_supply_regset): Use gdb_byte*.
7614         (regcache::supply_regset): Likewise.
7615         (regcache_collect_regset): Likewise.
7616         (regcache::collect_regset): Likewise.
7617         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7618         (reg_buffer::raw_supply_part): Likewise.
7619         (regcache::transfer_regset_register): Likewise.
7620         (regcache::transfer_regset): Use gdb_byte*.
7621
7622 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7623
7624         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7625
7626 2018-06-21  Pedro Alves  <palves@redhat.com>
7627
7628         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7629         instead of a ptid_t.  All callers adjusted.
7630         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7631         adjusted.
7632         (print_ada_task_info, display_current_task_id, task_command_1):
7633         Adjust.
7634         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7635         inferior_thread.
7636         (breakpoint_kind): Adjust.
7637         (remove_breakpoints_pid): Rename to ...
7638         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7639         pointer.  All callers adjusted.
7640         (bpstat_clear_actions): Use inferior_thread.
7641         (get_bpstat_thread): New.
7642         (bpstat_do_actions): Use it.
7643         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7644         to take a thread_info pointer.  All callers adjusted.
7645         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7646         (breakpoint_re_set_thread): Use inferior_thread.
7647         * breakpoint.h (struct inferior): Forward declare.
7648         (bpstat_stop_status): Update.
7649         (remove_breakpoints_pid): Delete.
7650         (remove_breakpoints_inf): New.
7651         * bsd-uthread.c (bsd_uthread_target::wait)
7652         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7653         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7654         (maint_btrace_packet_history_cmd)
7655         (maint_btrace_clear_packet_history_cmd): Adjust.
7656         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7657         inferior_thread.
7658         * cli/cli-interp.c: Include "inferior.h".
7659         * common/refcounted-object.h (struct
7660         refcounted_object_ref_policy): New.
7661         * compile/compile-object-load.c: Include gdbthread.h.
7662         (store_regs): Use inferior_thread.
7663         * corelow.c (core_target::close): Use current_inferior.
7664         (core_target_open): Adjust to use first_thread_of_inferior and use
7665         the current inferior.
7666         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7667         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7668         <thread>: ... this new field.  All references adjusted.
7669         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7670         Take a thread_info pointer instead of a ptid_t.
7671         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7672         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7673         thread_info pointer instead of a ptid_t.
7674         * elfread.c: Include "inferior.h".
7675         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7676         Use inferior_thread.
7677         * eval.c (evaluate_subexp): Likewise.
7678         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7679         inferior_thread.
7680         * gdb_proc_service.h (struct thread_info): Forward declare.
7681         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7682         <thread>: ... this new field.  All references adjusted.
7683         * gdbarch.h, gdbarch.c: Regenerate.
7684         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7685         'thread' parameter.  All implementations and callers adjusted.
7686         * gdbthread.h (thread_info) <set_running>: New method.
7687         (delete_thread, delete_thread_silent): Take a thread_info pointer
7688         instead of a ptid.
7689         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7690         (first_thread_of_process): Delete, replaced by ...
7691         (first_thread_of_inferior): ... this new function.  All callers
7692         adjusted.
7693         (any_live_thread_of_process): Delete, replaced by ...
7694         (any_live_thread_of_inferior): ... this new function.  All callers
7695         adjusted.
7696         (switch_to_thread, switch_to_no_thread): Declare.
7697         (is_executing): Delete.
7698         (enable_thread_stack_temporaries): Update comment.
7699         <enable_thread_stack_temporaries>: Take a thread_info pointer
7700         instead of a ptid_t.  Incref the thread.
7701         <~enable_thread_stack_temporaries>: Decref the thread.
7702         <m_ptid>: Delete
7703         <m_thr>: New.
7704         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7705         (get_last_thread_stack_temporary)
7706         (value_in_thread_stack_temporaries, can_access_registers_thread):
7707         Take a thread_info pointer instead of a ptid_t.  All callers
7708         adjusted.
7709         * infcall.c (get_call_return_value): Use inferior_thread.
7710         (run_inferior_call): Work with thread pointers instead of ptid_t.
7711         (call_function_by_hand_dummy): Work with thread pointers instead
7712         of ptid_t.  Use thread_info_ref.
7713         * infcmd.c (proceed_thread_callback): Access thread's state
7714         directly.
7715         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7716         access thread's state directly.
7717         (continue_command): Use inferior_thread.
7718         (info_program_command): Use find_thread_ptid and access thread
7719         state directly.
7720         (proceed_after_attach_callback): Use thread state directly.
7721         (notice_new_inferior): Take a thread_info pointer instead of a
7722         ptid_t.  All callers adjusted.
7723         (exit_inferior): Take an inferior pointer instead of a pid.  All
7724         callers adjusted.
7725         (exit_inferior_silent): New.
7726         (detach_inferior): Delete.
7727         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7728         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7729         (detach_inferior_command, kill_inferior_command): Use
7730         find_inferior_id instead of valid_gdb_inferior_id and
7731         gdb_inferior_id_to_pid.
7732         (inferior_command): Use inferior and thread pointers.
7733         * inferior.h (struct thread_info): Forward declare.
7734         (notice_new_inferior): Take a thread_info pointer instead of a
7735         ptid_t.  All callers adjusted.
7736         (detach_inferior): Delete declaration.
7737         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7738         instead of a pid.  All callers adjusted.
7739         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7740         (valid_gdb_inferior_id): Delete.
7741         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7742         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7743         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7744         ...
7745         <inf>: ... this new field.
7746         <step_ptid>: Delete, replaced by ...
7747         <step_thread>: ... this new field.
7748         (get_displaced_stepping_state): Take an inferior pointer instead
7749         of a pid.  All callers adjusted.
7750         (displaced_step_in_progress_any_inferior): Adjust.
7751         (displaced_step_in_progress_thread): Take a thread pointer instead
7752         of a ptid_t.  All callers adjusted.
7753         (displaced_step_in_progress, add_displaced_stepping_state): Take
7754         an inferior pointer instead of a pid.  All callers adjusted.
7755         (get_displaced_step_closure_by_addr): Adjust.
7756         (remove_displaced_stepping_state): Take an inferior pointer
7757         instead of a pid.  All callers adjusted.
7758         (displaced_step_prepare_throw, displaced_step_prepare)
7759         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7760         All callers adjusted.
7761         (start_step_over): Adjust.
7762         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7763         displaced step queue.
7764         (do_target_resume): Adjust.
7765         (fetch_inferior_event): Use inferior_thread.
7766         (context_switch, get_inferior_stop_soon): Take an
7767         execution_control_state pointer instead of a ptid_t.  All callers
7768         adjusted.
7769         (switch_to_thread_cleanup): Delete.
7770         (stop_all_threads): Use scoped_restore_current_thread.
7771         * inline-frame.c: Include "gdbthread.h".
7772         (inline_state) <inline_state>: Take a thread pointer instead of a
7773         ptid_t.  All callers adjusted.
7774         <ptid>: Delete, replaced by ...
7775         <thread>: ... this new field.
7776         (find_inline_frame_state): Take a thread pointer instead of a
7777         ptid_t.  All callers adjusted.
7778         (skip_inline_frames, step_into_inline_frame)
7779         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7780         pointer instead of a ptid_t.  All callers adjusted.
7781         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7782         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7783         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7784         pointers directly.
7785         * linux-nat.c (get_detach_signal): Likewise.
7786         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7787         (thread_db_notice_clone): Adjust.
7788         (thread_db_find_new_threads_silently)
7789         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7790         a thread pointer instead of a ptid_t.  All callers adjusted.
7791         * mi/mi-cmd-var.c: Include "inferior.h".
7792         (mi_cmd_var_update_iter): Update to use thread pointers.
7793         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7794         inferior directly.
7795         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7796         out to ...
7797         (mi_output_running): ... this new function.
7798         (mi_on_resume_1): Adjust to use it.
7799         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7800         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7801         directly.
7802         (interrupt_thread_callback): : Adjust to use thread and inferior
7803         pointers.
7804         * proc-service.c: Include "gdbthread.h".
7805         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7806         * progspace-and-thread.c: Include "inferior.h".
7807         * progspace.c: Include "inferior.h".
7808         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7809         hold a reference to an inferior_object.
7810         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7811         inferior_thread.
7812         * python/py-inferior.c (struct inferior_object): Give the type a
7813         tag name instead of a typedef.
7814         (python_on_normal_stop): No need to check if the current thread is
7815         listed.
7816         (inferior_to_inferior_object): Change return type to
7817         inferior_object.  All callers adjusted.
7818         (find_thread_object): Delete, bits factored out to ...
7819         (thread_to_thread_object): ... this new function.
7820         * python/py-infthread.c (create_thread_object): Use
7821         inferior_to_inferior_object.
7822         (thpy_is_stopped): Use thread pointer directly.
7823         (gdbpy_selected_thread): Use inferior_thread.
7824         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7825         field, replaced with ...
7826         <thread>: ... this new field.  All users adjusted.
7827         (btpy_insn_or_gap_new): Drop const.
7828         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7829         callers adjusted.
7830         * python/py-record.c: Include "gdbthread.h".
7831         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7832         a ptid_t.  All callers adjusted.
7833         (gdbpy_current_recording): Use inferior_thread.
7834         * python/py-record.h (recpy_record_object) <ptid>: Delete
7835         field, replaced with ...
7836         <thread>: ... this new field.  All users adjusted.
7837         (recpy_element_object) <ptid>: Delete
7838         field, replaced with ...
7839         <thread>: ... this new field.  All users adjusted.
7840         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7841         a ptid_t.  All callers adjusted.
7842         * python/py-threadevent.c: Include "gdbthread.h".
7843         (get_event_thread): Use thread_to_thread_object.
7844         * python/python-internal.h (struct inferior_object): Forward
7845         declare.
7846         (find_thread_object, find_inferior_object): Delete declarations.
7847         (thread_to_thread_object, inferior_to_inferior_object): New
7848         declarations.
7849         * record-btrace.c: Include "inferior.h".
7850         (require_btrace_thread): Use inferior_thread.
7851         (record_btrace_frame_sniffer)
7852         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7853         (get_thread_current_frame): Use scoped_restore_current_thread and
7854         switch_to_thread.
7855         (get_thread_current_frame): Use thread pointer directly.
7856         (record_btrace_replay_at_breakpoint): Use thread's inferior
7857         pointer directly.
7858         * record-full.c: Include "inferior.h".
7859         * regcache.c: Include "gdbthread.h".
7860         (get_thread_arch_regcache): Use the inferior's address space
7861         directly.
7862         (get_thread_regcache, registers_changed_thread): New.
7863         * regcache.h (get_thread_regcache(thread_info *thread)): New
7864         overload.
7865         (registers_changed_thread): New.
7866         (remote_target) <remote_detach_1>: Swap order of parameters.
7867         (remote_add_thread): <remote_add_thread>: Return the new thread.
7868         (get_remote_thread_info(ptid_t)): New overload.
7869         (remote_target::remote_notice_new_inferior): Use thread pointers
7870         directly.
7871         (remote_target::process_initial_stop_replies): Use
7872         thread_info::set_running.
7873         (remote_target::remote_detach_1, remote_target::detach)
7874         (extended_remote_target::detach): Adjust.
7875         * stack.c (frame_show_address): Use inferior_thread.
7876         * target-debug.h (target_debug_print_thread_info_pp): New.
7877         * target-delegates.c: Regenerate.
7878         * target.c (default_thread_address_space): Delete.
7879         (memory_xfer_partial_1): Use current_inferior.
7880         (target_detach): Use current_inferior.
7881         (target_thread_address_space): Delete.
7882         (generic_mourn_inferior): Use current_inferior.
7883         * target.h (struct target_ops) <thread_address_space>: Delete.
7884         (target_thread_address_space): Delete.
7885         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7886         pointers directly.
7887         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7888         thread pointer instead of a ptid_t.  Adjust all callers.
7889         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7890         (first_thread_of_process): Delete, replaced by ...
7891         (first_thread_of_inferior): ... this new function.  All callers
7892         adjusted.
7893         (any_thread_of_process): Rename to ...
7894         (any_thread_of_inferior): ... this, and take an inferior pointer.
7895         (any_live_thread_of_process): Rename to ...
7896         (any_live_thread_of_inferior): ... this, and take an inferior
7897         pointer.
7898         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7899         (value_in_thread_stack_temporaries)
7900         (get_last_thread_stack_temporary): Take a thread pointer instead
7901         of a ptid_t.  Adjust all callers.
7902         (thread_info::set_running): New.
7903         (validate_registers_access): Use inferior_thread.
7904         (can_access_registers_ptid): Rename to ...
7905         (can_access_registers_thread): ... this, and take a thread
7906         pointer.
7907         (print_thread_info_1): Adjust to compare thread pointers instead
7908         of ptids.
7909         (switch_to_no_thread, switch_to_thread): Make extern.
7910         (scoped_restore_current_thread::~scoped_restore_current_thread):
7911         Use m_thread pointer directly.
7912         (scoped_restore_current_thread::scoped_restore_current_thread):
7913         Use inferior_thread.
7914         (thread_command): Use thread pointer directly.
7915         (thread_num_make_value_helper): Use inferior_thread.
7916         * top.c (execute_command): Use inferior_thread.
7917         * tui/tui-interp.c: Include "inferior.h".
7918         * varobj.c (varobj_create): Use inferior_thread.
7919         (value_of_root_1): Use find_thread_global_id instead of
7920         global_thread_id_to_ptid.
7921
7922 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7923
7924         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7925         possible.
7926         (regcache::write_part): Likewise.
7927         (readable_regcache::cooked_read_part): Update comment.
7928         (readable_regcache::cooked_write_part): Likewise.
7929         * regcache.h: (readable_regcache::read_part): Likewise.
7930         (regcache::write_part): Likewise.
7931
7932 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7933             Dirk Schubert  <dirk.schubert@arm.com>
7934
7935         * aarch64-linux-nat.c (post_attach): New.
7936         (aarch64_linux_nat_target::post_attach): Override post_attach to
7937         record the number of hardware debug registers.
7938
7939 2018-06-20  Tom Tromey  <tom@tromey.com>
7940
7941         * python/py-param.c (add_setshow_generic): Make parameters const.
7942         (parmpy_init): Update.
7943
7944 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7945
7946         * regcache.h (regcache_cooked_read_ftype): Rename to...
7947         (register_read_ftype): ...this, change type to function_view.
7948         (class reg_buffer) <save>: Remove src parameter.
7949         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7950         parameter non-const in first overload.  Remove src parameter in
7951         second overload.
7952         * regcache.c (do_cooked_read): Remove.
7953         (readonly_detached_regcache::readonly_detached_regcache): Make
7954         parameter non-const, adjust call to other constructor.
7955         (reg_buffer::save): Remove src parameter.
7956         * frame.c (do_frame_register_read): Remove.
7957         (frame_save_as_regcache): Use lambda function.
7958         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7959         parameter to ppu2spu_data *.
7960         (ppu2spu_sniffer): Use lambda function.
7961
7962 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7963
7964         * record-full.c (record_full_target::insert_breakpoint): Remove
7965         "struct" keyword, add const.
7966
7967 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7968
7969         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7970         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7971         * configure.ac: Remove AC_PREREQ, add missing quoting.
7972         * gnulib/configure.ac: Modernize usage of
7973         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7974         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7975         (AUTOMAKE_VERSION): Bump to 1.15.1.
7976         * configure: Re-generate.
7977         * config.in: Re-generate.
7978         * aclocal.m4: Re-generate.
7979         * gnulib/aclocal.m4: Re-generate.
7980         * gnulib/config.in: Re-generate.
7981         * gnulib/configure: Re-generate.
7982         * gnulib/import/Makefile.in: Re-generate.
7983
7984 2018-06-19  Pedro Alves  <palves@redhat.com>
7985
7986         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7987         (lookup_minimal_symbol_by_pc_section): ... here with
7988         gdb_assert_not_reached added.
7989
7990 2018-06-19  Pedro Alves  <palves@redhat.com>
7991
7992         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7993         parameter with a block parameter.  Compare location's block symbol
7994         with the frame's block instead of addresses.
7995         (skip_inline_frames): Pass the current block instead of the
7996         frame's address.  Break out as soon as we determine the frame
7997         should not be skipped.
7998
7999 2018-06-18  Tom Tromey  <tom@tromey.com>
8000
8001         * solib-aix.c (solib_aix_get_section_offsets): Return
8002         unique_xmalloc_ptr.
8003         (solib_aix_solib_create_inferior_hook): Update.
8004
8005 2018-06-18  Tom Tromey  <tom@tromey.com>
8006
8007         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8008
8009 2018-06-18  Tom Tromey  <tom@tromey.com>
8010
8011         * solib-frv.c (frv_relocate_main_executable): Use
8012         unique_xmalloc_ptr.
8013         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8014         unique_xmalloc_ptr.
8015
8016 2018-06-18  Tom Tromey  <tom@tromey.com>
8017
8018         * objfiles.h (inhibit_section_map_updates): Update.
8019         (resume_section_map_updates, resume_section_map_updates_cleanup):
8020         Remove.
8021         * solib-svr4.c (svr4_handle_solib_event): Update.
8022         * objfiles.c (inhibit_section_map_updates): Return
8023         scoped_restore_tmpl<int>.
8024         (resume_section_map_updates, resume_section_map_updates_cleanup):
8025         Remove.
8026
8027 2018-06-18  Tom Tromey  <tom@tromey.com>
8028
8029         * valprint.h (read_string): Update.
8030         * valprint.c (read_string): Change type of "buffer".
8031         (val_print_string): Update.
8032         * python/py-value.c (valpy_string): Update.
8033         * language.h (struct language_defn) <la_get_string>: Change
8034         type of "buffer".
8035         (default_get_string, c_get_string): Update.
8036         * language.c (default_get_string): Change type of "buffer".
8037         * guile/scm-value.c (gdbscm_value_to_string): Update.
8038         * c-lang.c (c_get_string): Change type of "buffer".
8039
8040 2018-06-18  Tom Tromey  <tom@tromey.com>
8041
8042         * ser-mingw.c (struct pipe_state_destroyer): New.
8043         (pipe_state_up): New typedef.
8044         (cleanup_pipe_state): Remove.
8045         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8046
8047 2018-06-18  Tom Tromey  <tom@tromey.com>
8048
8049         * rust-lang.h (rust_yyerror): Don't declare.
8050         * rust-lang.c (rust_language_defn): Update.
8051         * rust-exp.y (yyerror): Now static.
8052         * parse.c (parse_exp_in_context_1): Update.
8053         * p-lang.h (p_yyerror): Don't declare.
8054         * p-lang.c (p_language_defn): Update.
8055         * p-exp.y (yyerror): Now static.
8056         * opencl-lang.c (opencl_language_defn): Update.
8057         * objc-lang.c (objc_language_defn): Update.
8058         * m2-lang.h (m2_yyerror): Don't declare.
8059         * m2-lang.c (m2_language_defn): Update.
8060         * m2-exp.y (yyerror): Now static.
8061         * language.h (struct language_defn) <la_error>: Remove.
8062         * language.c (unk_lang_error): Remove.
8063         (unknown_language_defn, auto_language_defn): Remove.
8064         * go-lang.h (go_yyerror): Don't declare.
8065         * go-lang.c (go_language_defn): Update.
8066         * go-exp.y (yyerror): Now static.
8067         * f-lang.h (f_yyerror): Don't declare.
8068         * f-lang.c (f_language_defn): Update.
8069         * f-exp.y (yyerror): Now static.
8070         * d-lang.h (d_yyerror): Don't declare.
8071         * d-lang.c (d_language_defn): Update.
8072         * d-exp.y (yyerror): Now static.
8073         * c-lang.h (c_yyerror): Don't declare.
8074         * c-lang.c (c_language_defn, cplus_language_defn)
8075         (asm_language_defn, minimal_language_defn): Update.
8076         * c-exp.y (yyerror): Now static.
8077         * ada-lang.h (ada_yyerror): Don't declare.
8078         * ada-lang.c (ada_language_defn): Update.
8079         * ada-exp.y (yyerror): Now static.
8080
8081 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8082
8083         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8084         (store_sveregs_to_thread): Likewise.
8085         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8086         (aarch64_linux_store_inferior_registers): Likewise.
8087         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8088         function.
8089         (aarch64_sve_regs_copy_to_regcache): Likewise.
8090         (aarch64_sve_regs_copy_from_regcache): Likewise.
8091         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8092         declaration.
8093         (aarch64_sve_regs_copy_to_regcache): Likewise.
8094         (aarch64_sve_regs_copy_from_regcache): Likewise.
8095         (sve_context): Structure from Linux headers.
8096         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8097         (SVE_SIG_ZREG_SIZE): Likewise.
8098         (SVE_SIG_PREG_SIZE): Likewise.
8099         (SVE_SIG_FFR_SIZE): Likewise.
8100         (SVE_SIG_REGS_OFFSET): Likewise.
8101         (SVE_SIG_ZREGS_OFFSET): Likewise.
8102         (SVE_SIG_ZREG_OFFSET): Likewise.
8103         (SVE_SIG_ZREGS_SIZE): Likewise.
8104         (SVE_SIG_PREGS_OFFSET): Likewise.
8105         (SVE_SIG_PREG_OFFSET): Likewise.
8106         (SVE_SIG_PREGS_SIZE): Likewise.
8107         (SVE_SIG_FFR_OFFSET): Likewise.
8108         (SVE_SIG_REGS_SIZE): Likewise.
8109         (SVE_SIG_CONTEXT_SIZE): Likewise.
8110         (SVE_PT_REGS_MASK): Likewise.
8111         (SVE_PT_REGS_FPSIMD): Likewise.
8112         (SVE_PT_REGS_SVE): Likewise.
8113         (SVE_PT_VL_INHERIT): Likewise.
8114         (SVE_PT_VL_ONEXEC): Likewise.
8115         (SVE_PT_REGS_OFFSET): Likewise.
8116         (SVE_PT_FPSIMD_OFFSET): Likewise.
8117         (SVE_PT_FPSIMD_SIZE): Likewise.
8118         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8119         (SVE_PT_SVE_PREG_SIZE): Likewise.
8120         (SVE_PT_SVE_FFR_SIZE): Likewise.
8121         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8122         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8123         (__SVE_SIG_TO_PT): Likewise.
8124         (SVE_PT_SVE_OFFSET): Likewise.
8125         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8126         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8127         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8128         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8129         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8130         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8131         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8132         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8133         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8134         (SVE_PT_SVE_SIZE): Likewise.
8135         (SVE_PT_SIZE): Likewise.
8136         (HAS_SVE_STATE): New define.
8137
8138 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8139
8140         * nat/aarch64-sve-linux-sigcontext.h: New file.
8141         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8142         new files.
8143         (SVE_VQ_MIN): Likewise.
8144         (SVE_VQ_MAX): Likewise.
8145         (SVE_VL_MIN): Likewise.
8146         (SVE_VL_MAX): Likewise.
8147         (SVE_NUM_ZREGS): Likewise.
8148         (SVE_NUM_PREGS): Likewise.
8149         (sve_vl_valid): Likewise.
8150         (struct user_sve_header): Likewise.
8151
8152 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8153             Richard Bunt <Richard.Bunt@arm.com>
8154
8155         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8156         was requested by GDB.
8157
8158 2018-06-15  Tom de Vries  <tdevries@suse.de>
8159
8160         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8161
8162 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8163
8164         * gnulib/update-gnulib.sh: Print expected versions of
8165         autoconf/aclocal.
8166
8167 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8168
8169         * arch-utils.c (default_type_align): Use type_length_units.
8170         * gdbtypes.c (type_align): Use type_length_units.
8171
8172 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8173
8174         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8175         of 'define' command.
8176
8177 2018-06-14  Tom de Vries  <tdevries@suse.de>
8178
8179         PR cli/22573
8180         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8181         get_no_prettyformat_print_options.
8182
8183 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8184
8185         * sparc-nat.h: Include target.h.
8186         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8187         <fetch_registers>: Remove this argument in function call.
8188         <store_registers>: Remove this argument in function call, remove
8189         extra semicolon.
8190         <low_forget_process>: Call sparc64_forget_process instead of
8191         sparc_forget_process.
8192
8193 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8194
8195         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8196         (procfs_target::make_corefile_notes): Adjust to new
8197         target_read_alloc return type.
8198
8199 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8200             Stephen Roberts  <stephen.roberts@arm.com>
8201
8202         PR gdb/22882
8203         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8204         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8205         Move should_notify_stop local into more inner scope.
8206
8207 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8208             Stephen Roberts  <stephen.roberts@arm.com>
8209
8210         PR gdb/22882
8211         * infrun.c (resume_1): Add call to mark_async_event_handler.
8212
8213 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8214
8215         * infrun.c (do_target_wait): Change old version of $pc printed.
8216
8217 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8218
8219         * dwarf2read.c (read_index_from_section): Rename to...
8220         (read_gdb_index_from_section): ... this, update all callers.
8221         (dwarf2_read_index): Rename to...
8222         (dwarf2_read_gdb_index): ... this, update all callers.
8223
8224 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8225
8226         * hppa-linux-nat.c
8227         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8228         hppa_linux_nat_target::fetch_registers.
8229
8230 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8231
8232         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8233         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8234         (AARCH64_DWARF_SVE_FFR): Likewise.
8235         (AARCH64_DWARF_SVE_P0): Likewise.
8236         (AARCH64_DWARF_SVE_Z0): Likewise.
8237
8238 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8239
8240         * common/common-regcache.h (raw_compare): New function.
8241         * regcache.c (regcache::raw_compare): Likewise.
8242         * regcache.h (regcache::raw_compare): New declaration.
8243
8244 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8245
8246         * common/common-regcache.h (reg_buffer_common): New structure.
8247         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8248         (reg_buffer::raw_supply): Likewise.
8249         (reg_buffer::raw_supply_integer): Likewise.
8250         (reg_buffer::raw_supply_zeroed): Likewise.
8251         (reg_buffer::raw_collect): Likewise.
8252         (reg_buffer::raw_collect_integer): Likewise.
8253         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8254         (reg_buffer::raw_supply): Likewise.
8255         (reg_buffer::raw_supply_integer): Likewise.
8256         (reg_buffer::raw_supply_zeroed): Likewise.
8257         (reg_buffer::raw_collect): Likewise.
8258         (reg_buffer::raw_collect_integer): Likewise.
8259
8260 2018-06-10  Tom Tromey  <tom@tromey.com>
8261
8262         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8263         (class remote_state) <stop_reply_queue>: Now std::vector.
8264         (remote_state::~remote_state)
8265         (remote_target::stop_reply_queue_length): Update.
8266         (struct queue_iter_param, remove_child_of_pending_fork)
8267         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8268         (check_pending_event_prevents_wildcard_vcont_callback)
8269         (remove_stop_reply_for_inferior)
8270         (remove_stop_reply_of_remote_state)
8271         (remote_notif_remove_once_on_match)
8272         (stop_reply_match_ptid_and_ws)
8273         (remote_kill_child_of_pending_fork): Remove.
8274         (remote_target::remove_new_fork_children)
8275         (remote_target::check_pending_events_prevent_wildcard_vcont)
8276         (remote_target::discard_pending_stop_replies)
8277         (remote_target::discard_pending_stop_replies_in_queue)
8278         (remote_target::remote_notif_remove_queued_reply)
8279         (remote_target::queued_stop_reply)
8280         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8281         (remote_target::wait, remote_target::kill_new_fork_children)
8282         (remote_target::async): Update.
8283
8284 2018-06-10  Tom Tromey  <tom@tromey.com>
8285
8286         * record-full.c (record_full_arch_list_cleanups): Remove.
8287         (record_full_message): Use try/catch.
8288         (record_full_wait_cleanups): Remove.
8289         (record_full_wait_1): Use try/catch.
8290         (record_full_restore): Likewise.
8291
8292 2018-06-10  Tom Tromey  <tom@tromey.com>
8293
8294         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8295         declare VEC.  Add constructor.
8296         <in_target_beneath>: Now bool.
8297         (record_full_breakpoints): Now a std::vector, static.
8298         (record_full_sync_record_breakpoints)
8299         (record_full_init_record_breakpoints)
8300         (record_full_target::insert_breakpoint)
8301         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8302
8303 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8304
8305         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8306         * serial.c (serial_interface_lookup): Remove struct keyword.
8307
8308 2018-06-10  Tom Tromey  <tom@tromey.com>
8309
8310         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8311         method.
8312         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8313         a method.
8314         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8315         method.
8316         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8317         "beneath" as a method.
8318         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8319         Use "beneath" as a method.
8320
8321 2018-06-10  Tom Tromey  <tom@tromey.com>
8322
8323         * tracefile.c (struct trace_file_writer_deleter): New.
8324         <operator()>: Rename from trace_file_writer_xfree.
8325         (trace_file_writer_up): New typedef.
8326         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8327
8328 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8329
8330         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8331         <m_registers, m_register_status>: Change type to
8332         std::unique_ptr.
8333         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8334         XCNEWVEC.
8335
8336 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8337
8338         * common/common-regcache.h (enum register_status): Add
8339         underlying type "signed char".
8340         * regcache.h (reg_buffer) <m_register_status>: Change type to
8341         register_status *.
8342         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8343         register_status instead of signed char.
8344         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8345         (reg_buffer::get_register_status): Remove cast.
8346         (readable_regcache::raw_read): Remove cast.
8347         (readable_regcache::cooked_read): Remove cast.
8348
8349 2018-06-09  Tom Tromey  <tom@tromey.com>
8350
8351         * source.c (reverse_search_command, forward_search_command): Use
8352         scoped_fd.
8353
8354 2018-06-09  Tom Tromey  <tom@tromey.com>
8355
8356         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8357         (serial_ops_list): Now static, std::vector.
8358         (serial_interface_lookup, serial_add_interface): Update.
8359
8360 2018-06-09  Tom Tromey  <tom@tromey.com>
8361
8362         * dwarf2read.c (process_cu_includes): Update.
8363         (process_full_comp_unit): Update.
8364         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8365         std::vector.
8366
8367 2018-06-08  Paul Koning  <paul_koning@dell.com>
8368
8369         PR gdb/23252
8370
8371         * python/python.c (do_start_initialization):
8372         Avoid call to internal Python API.
8373         (init__gdb_module): New function.
8374
8375 2018-06-08  Gary Benson <gbenson@redhat.com>
8376
8377         * linux-thread-db.c (valprint.h): New include.
8378         (struct check_thread_db_info): New structure.
8379         (check_thread_db_on_load, tdb_testinfo): New static globals.
8380         (check_thread_db, check_thread_db_callback): New functions.
8381         (try_thread_db_load_1): Run integrity checks if requested.
8382         (maintenance_check_libthread_db): New function.
8383         (_initialize_thread_db): Register "maint check libthread-db"
8384         and "maint set/show check-libthread-db".
8385         * NEWS: Mention the above new commands.
8386
8387 2018-06-08  Tom Tromey  <tom@tromey.com>
8388
8389         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8390         now a method.
8391
8392 2018-06-08  Tom Tromey  <tom@tromey.com>
8393
8394         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8395
8396 2018-06-08  Tom Tromey  <tom@tromey.com>
8397
8398         * common/btrace-common.h (struct btrace_data): Add constructor,
8399         destructor, move assignment operator.
8400         <empty, clear, fini>: New methods.
8401         <format>: Initialize.
8402         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8403         (btrace_data_empty): Don't declare.
8404         * common/btrace-common.c (btrace_data_init): Remove.
8405         (btrace_data::fini): Rename from btrace_data_fini.
8406         (btrace_data::empty): Rename from btrace_data_empty.
8407         (btrace_data::clear): Rename from btrace_data_clear.  Return
8408         bool.
8409         * btrace.h (make_cleanup_btrace_data): Don't declare.
8410         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8411         (parse_xml_btrace): Update.
8412         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8413         (maint_btrace_clear_packet_history_cmd): Update.
8414
8415 2018-06-07  Pedro Alves  <palves@redhat.com>
8416
8417         * target.h (target_ops) <beneath>: Now a method.  All references
8418         updated.
8419         (class target_stack): New.
8420         * target.c (g_target_stack): New.
8421         (g_current_top_target): Delete.
8422         (current_top_target): Get the top target out of g_target_stack.
8423         (target_stack::push, target_stack::unpush): New.
8424         (push_target, unpush_target): Reimplement.
8425         (target_is_pushed): Reimplement in terms of g_target_stack.
8426         (target_ops::beneath, target_stack::find_beneath): New.
8427
8428 2018-06-07  Pedro Alves  <palves@redhat.com>
8429
8430         * target.h (find_target_beneath): Delete declaration.
8431         * target.c (find_target_beneath): Delete definition.
8432         * aix-thread.c: All callers of find_target_beneath adjusted to
8433         call target_ops::beneath instead.
8434         * bsd-uthread.c: Likewise.
8435         * linux-thread-db.c: Likewise.
8436         * ravenscar-thread.c: Likewise.
8437         * sol-thread.c: Likewise.
8438         * spu-multiarch.c: Likewise.
8439
8440 2018-06-07  Pedro Alves  <palves@redhat.com>
8441
8442         * target.h (target_ops) <beneath>: Now a method.  All references
8443         updated.
8444         (target_ops) <m_beneath>: New.
8445         * target.c (target_ops::beneath): New.
8446         * corelow.c: Adjust all references to target_ops::beneath.
8447         * linux-thread-db.c: Likewise.
8448         * make-target-delegates: Likewise.
8449         * record-btrace.c: Likewise.
8450         * record-full.c: Likewise.
8451         * remote.c: Likewise.
8452         * target.c: Likewise.
8453         * target-delegates.c: Regenerate.
8454
8455 2018-06-07  Pedro Alves  <palves@redhat.com>
8456
8457         * target.h (target_stack): Delete.
8458         (current_top_target): Declare function.
8459         * target.c (target_stack): Delete.
8460         (g_current_top_target): New.
8461         (current_top_target): New function.
8462         * auxv.c: Use current_top_target instead of target_stack
8463         throughout.
8464         * avr-tdep.c: Likewise.
8465         * breakpoint.c: Likewise.
8466         * corefile.c: Likewise.
8467         * elfread.c: Likewise.
8468         * eval.c: Likewise.
8469         * exceptions.c: Likewise.
8470         * frame.c: Likewise.
8471         * gdbarch-selftests.c: Likewise.
8472         * gnu-v3-abi.c: Likewise.
8473         * ia64-tdep.c: Likewise.
8474         * ia64-vms-tdep.c: Likewise.
8475         * infcall.c: Likewise.
8476         * infcmd.c: Likewise.
8477         * infrun.c: Likewise.
8478         * linespec.c: Likewise.
8479         * linux-tdep.c: Likewise.
8480         * minsyms.c: Likewise.
8481         * ppc-linux-nat.c: Likewise.
8482         * ppc-linux-tdep.c: Likewise.
8483         * procfs.c: Likewise.
8484         * regcache.c: Likewise.
8485         * remote.c: Likewise.
8486         * rs6000-tdep.c: Likewise.
8487         * s390-linux-nat.c: Likewise.
8488         * s390-tdep.c: Likewise.
8489         * solib-aix.c: Likewise.
8490         * solib-darwin.c: Likewise.
8491         * solib-dsbt.c: Likewise.
8492         * solib-spu.c: Likewise.
8493         * solib-svr4.c: Likewise.
8494         * solib-target.c: Likewise.
8495         * sparc-tdep.c: Likewise.
8496         * sparc64-tdep.c: Likewise.
8497         * spu-tdep.c: Likewise.
8498         * symfile.c: Likewise.
8499         * symtab.c: Likewise.
8500         * target-descriptions.c: Likewise.
8501         * target-memory.c: Likewise.
8502         * target.c: Likewise.
8503         * target.h: Likewise.
8504         * tracefile-tfile.c: Likewise.
8505         * tracepoint.c: Likewise.
8506         * valops.c: Likewise.
8507         * valprint.c: Likewise.
8508         * value.c: Likewise.
8509         * windows-tdep.c: Likewise.
8510         * mi/mi-main.c: Likewise.
8511
8512 2018-06-07  Tom Tromey  <tom@tromey.com>
8513
8514         * valprint.h (build_address_symbolic): Declare.
8515         * printcmd.c (print_address_symbolic): Update.
8516         (build_address_symbolic): Change "name" and "filename" to
8517         std::string.
8518         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8519         Update.
8520         * defs.h (build_address_symbolic): Remove declaration.
8521
8522 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8523
8524         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8525         (aarch64_vnv_type): Add function.
8526         (aarch64_pseudo_register_name): Add V regs for SVE.
8527         (aarch64_pseudo_register_type): Likewise.
8528         (aarch64_pseudo_register_reggroup_p): Likewise.
8529         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8530         (aarch64_pseudo_read_value): Add V regs for SVE.
8531         (aarch64_pseudo_write_2): Use V0 offset for SVE
8532         (aarch64_pseudo_write): Add V regs for SVE.
8533         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8534
8535 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8536
8537         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8538         (sve_vl_from_vq): Likewise.
8539
8540 2018-06-05  Tom Tromey  <tom@tromey.com>
8541
8542         * cli/cli-cmds.c (show_version): Update.
8543         * top.c (print_gdb_version): Add "interactive" parameter.
8544         Update.
8545         * main.c (captured_main_1): Update.
8546         * top.h (print_gdb_version): Add "interactive" parameter and a
8547         comment.
8548
8549 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8550
8551         * common/enum-flags.h: Add trailing semicolon to example in
8552         comment.
8553
8554 2018-06-05  Tom Tromey  <tom@tromey.com>
8555
8556         PR cli/12326:
8557         * NEWS: Add entry about pager.
8558         * utils.c (pagination_disabled_for_command): New global.
8559         (prompt_for_continue): Allow "c" response to prompt.
8560         (reinitialize_more_filter): Clear
8561         pagination_disabled_for_command.
8562         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8563
8564 2018-06-04  Tom Tromey  <tom@tromey.com>
8565
8566         * ada-lang.h (ada_lookup_symbol_list): Update.
8567         * ada-lang.c (resolve_subexp): Update.
8568         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8569         parameter.
8570         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8571         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8572         results parameter to std::vector.
8573         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8574         Update.
8575         * ada-exp.y (block_lookup): Update.
8576         (select_possible_type_sym): Change type of syms.  Remove nsyms
8577         parameter.
8578         (write_var_or_type, write_name_assoc): Update.
8579
8580 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8581
8582         * windows-nat.c (windows_nat_target::xfer_partial): Return
8583         TARGET_XFER_E_IO if we need to delegate to the target beneath
8584         but BENEATH is NULL.
8585
8586 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8587
8588         * Makefile.in (config.status): Add configure.nat as a
8589         dependency.
8590
8591 2018-06-04  Tom Tromey  <tom@tromey.com>
8592
8593         * cp-name-parser.y (cpname_state): Add method declarations.
8594         (HANDLE_QUAL): Update.
8595         (cpname_state::d_grab, cpname_state::fill_comp)
8596         (cpname_state::make_operator, cpname_state::make_dtor)
8597         (cpname_state::make_builtin_type, cpname_state::make_name)
8598         (cpname_state::d_qualify, cpname_state::d_int_type)
8599         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8600         (%union): Move earlier.
8601
8602 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8603
8604         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8605
8606 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8607
8608         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8609         (aarch64_pseudo_write_1): Likewise.
8610         (aarch64_pseudo_read_value): Use helper.
8611         (aarch64_pseudo_write): Likewise.
8612
8613 2018-06-04  Pedro Alves  <palves@redhat.com>
8614
8615         * darwin-nat.c (darwin_ops): Delete.
8616         (darwin_attach_pid): Use get_native_target.
8617
8618 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8619
8620         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8621         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8622
8623 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8624
8625         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8626         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8627         (aarch64_gdbarch_init): Check for SVE.
8628         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8629
8630 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8631
8632         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8633         * aarch64-tdep.h (aarch64_read_description): Likewise.
8634         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8635         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8636         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8637         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8638         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8639
8640 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8641
8642         * value.c (value_fetch_lazy_bitfield): New.
8643         (value_fetch_lazy_memory): New.
8644         (value_fetch_lazy_register): New.
8645         (value_fetch_lazy): Factor out to smaller functions.
8646
8647 2018-06-01  Tom Tromey  <tom@tromey.com>
8648
8649         * cp-name-parser.y (backslashable, represented): Now const.
8650
8651 2018-06-01  Tom Tromey  <tom@tromey.com>
8652
8653         * cp-name-parser.y: Include parser-defs.h.
8654         (parser_fprintf): Remove declaration.
8655
8656 2018-06-01  Tom Tromey  <tom@tromey.com>
8657
8658         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8659         %parse-param.
8660         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8661         (global_result): Remove globals.
8662         (struct cpname_state): New.
8663         (yyparse): Don't declare.
8664         (yylex, yyerror): Move declarations after %union.
8665         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8666         (make_name): Add state parameter.
8667         Update all callers.
8668         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8669         parameter.
8670         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8671         Update.
8672         (yylex): Add lvalp, state parameters.
8673         (yyerror): Add state parameter.
8674         (cp_demangled_name_to_comp): Update.
8675
8676 2018-06-01  Tom Tromey  <tom@tromey.com>
8677
8678         * cp-name-parser.y (parser_fprintf): Declare.
8679         (GDB_YY_REMAP_PREFIX): Define.
8680         Include yy-remap.h.  Don't redefine yy* identifiers.
8681
8682 2018-06-01  Tom Tromey  <tom@tromey.com>
8683
8684         * python/py-type.c (typy_legacy_template_argument): Update.
8685         * cp-support.h (cp_demangled_name_to_comp): Update.
8686         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8687         parameter to be a "std::string *".
8688         (main): Update.
8689
8690 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8691
8692         * ada-lex.l: Include "diagnostics.h" instead of
8693         "common/diagnostics.h".
8694         * unittests/environ-selftests.c: Likewise.
8695         * common/diagnostics.h: Moved to ../include.
8696
8697 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8698
8699         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8700         to language_mode_manual while calling breakpoint_re_set_one.
8701
8702 2018-06-01  Tom Tromey  <tom@tromey.com>
8703
8704         * valops.c (value_cast_structs, destructor_name_p): Update.
8705         * symtab.c (gdb_mangle_name): Update.
8706         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8707         Update.
8708         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8709         (pascal_object_print_value_fields, pascal_object_print_value):
8710         Update.
8711         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8712         * linespec.c (find_methods): Update.
8713         * gdbtypes.h (type_name_no_tag): Remove.
8714         (type_name_or_error): Rename from type_name_no_tag_or_error.
8715         * gdbtypes.c (type_name_no_tag): Remove.
8716         (type_name_or_error): Rename from type_name_no_tag_or_error.
8717         (lookup_struct_elt_type, check_typedef): Update.
8718         * expprint.c (print_subexp_standard): Update.
8719         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8720         * d-namespace.c (d_lookup_nested_symbol): Update.
8721         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8722         (cp_print_class_member): Update.
8723         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8724         * completer.c (add_struct_fields): Update.
8725         * c-typeprint.c (cp_type_print_derivation_info)
8726         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8727         Update.
8728         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8729         (ada_prefer_type, ada_is_exception_sym): Update.
8730
8731 2018-06-01  Tom Tromey  <tom@tromey.com>
8732
8733         * valops.c (enum_constant_from_type, value_namespace_elt)
8734         (value_maybe_namespace_elt): Update.
8735         * valarith.c (find_size_for_pointer_math): Update.
8736         * target-descriptions.c (make_gdb_type): Update.
8737         * symmisc.c (print_symbol): Update.
8738         * stabsread.c (define_symbol, read_type)
8739         (complain_about_struct_wipeout, add_undefined_type)
8740         (cleanup_undefined_types_1): Update.
8741         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8742         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8743         (rust_internal_print_type, rust_composite_type)
8744         (rust_evaluate_funcall, rust_evaluate_subexp)
8745         (rust_inclusive_range_type_p): Update.
8746         * python/py-type.c (typy_get_tag): Update.
8747         * p-typeprint.c (pascal_type_print_base): Update.
8748         * mdebugread.c (parse_symbol, parse_type): Update.
8749         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8750         Update.
8751         * guile/scm-type.c (gdbscm_type_tag): Update.
8752         * go-lang.c (sixg_string_p): Update.
8753         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8754         Update.
8755         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8756         (TYPE_TAG_NAME): Remove.
8757         * gdbtypes.c (type_name_no_tag): Simplify.
8758         (check_typedef, check_types_equal, recursive_dump_type)
8759         (copy_type_recursive, arch_composite_type): Update.
8760         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8761         in summary mode when needed.
8762         * eval.c (evaluate_funcall): Update.
8763         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8764         (process_structure_scope, read_enumeration_type)
8765         (read_namespace_type, read_module_type, determine_prefix): Update.
8766         * cp-support.c (inspect_type): Update.
8767         * coffread.c (process_coff_symbol, decode_base_type): Update.
8768         * c-varobj.c (c_is_path_expr_parent): Update.
8769         * c-typeprint.c (c_type_print_base_struct_union): Update.
8770         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8771         summary when using C language.
8772         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8773         (gen_maybe_namespace_elt): Update.
8774         * ada-lang.c (ada_type_name): Simplify.
8775         (empty_record, ada_template_to_fixed_record_type_1)
8776         (template_to_static_fixed_type)
8777         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8778
8779 2018-06-01  Tom Tromey  <tom@tromey.com>
8780
8781         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8782         c_print_type.
8783         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8784         (c_print_type): Update.
8785         (c_print_type): New overload.
8786         (c_type_print_varspec_prefix, c_type_print_args)
8787         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8788         (c_type_print_base_struct_union, c_type_print_base_1)
8789         (cp_type_print_method_args): Add "language" parameter.
8790         (c_type_print_base): Update.
8791         * c-lang.h (c_print_type): Add new overload.
8792
8793 2018-06-01  Tom Tromey  <tom@tromey.com>
8794
8795         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8796         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8797
8798 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8799
8800         * aarch64-tdep.c (aarch64_sve_register_names): New const
8801         var.
8802         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8803         (AARCH64_SVE_Z_REGS_NUM): New define.
8804         (AARCH64_SVE_P_REGS_NUM): Likewise.
8805         (AARCH64_SVE_NUM_REGS): Likewise.
8806
8807 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8808
8809         * nat/linux-ptrace.h [__alpha__]
8810         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8811         definitions.
8812
8813 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8814
8815         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8816         the endianness selected.
8817         * NEWS: Document `set endian auto' mode operation update.
8818
8819 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8820
8821         * Makefile.in: Add new header.
8822         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8823         (sve_vl_from_vg): Likewise.
8824         (sve_vq_from_vl): Likewise.
8825         (sve_vl_from_vq): Likewise.
8826         (sve_vq_from_vg): Likewise.
8827         (sve_vg_from_vq): Likewise.
8828         * configure.nat: Add new c file.
8829         * nat/aarch64-sve-linux-ptrace.c: New file.
8830         * nat/aarch64-sve-linux-ptrace.h: New file.
8831
8832 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8833
8834         * aarch64-linux-nat.c (aarch64_linux_read_description):
8835         Add parmeter zero.
8836         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8837         Likewise.
8838         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8839         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8840         (aarch64_gdbarch_init): Add parmeter zero.
8841         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8842         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8843         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8844         parmeter.
8845         * doc/gdb.texinfo: Describe SVE feature
8846         * features/aarch64-sve.c: New file.
8847
8848 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8849
8850         PR gdb/23210
8851         * gdbarch.sh (significant_addr_bit): Default to zero when
8852         not set by target architecture.
8853         * gdbarch.c: Re-generated.
8854         * utils.c (address_significant): Update.
8855
8856 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8857
8858         * stack.c (func_command): Remove trailing newline in call to error.
8859
8860 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8861
8862         * regcache.h (regcache_raw_collect): Remove, update callers to
8863         use regcache::raw_collect.
8864         * regcache.c (regcache_raw_collect): Remove.
8865
8866 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8867
8868         * regcache.h (regcache_raw_supply): Remove, update callers to
8869         use detached_regcache::raw_supply.
8870         * regcache.c (regcache_raw_supply): Remove.
8871
8872 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8873
8874         * regcache.h (regcache_cooked_write_part): Remove, update
8875         callers to use regcache::cooked_write_part.
8876         * regcache.c (regcache_cooked_write_part): Remove.
8877
8878 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8879
8880         * regcache.h (regcache_cooked_read_part): Remove, update callers
8881         to use readable_regcache::cooked_read_part.
8882         * regcache.c (regcache_cooked_read_part): Remove.
8883
8884 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8885
8886         * regcache.h (regcache_cooked_read_value): Remove, update
8887         callers to use readable_regcache::cooked_read_value.
8888         * regcache.c (regcache_cooked_read_value): Remove.
8889
8890 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8891
8892         * regcache.h (regcache_cooked_write): Remove, update callers to
8893         use regcache::cooked_write.
8894         * regcache.c (regcache_cooked_write): Remove.
8895
8896 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8897
8898         * regcache.h (regcache_invalidate): Remove, update callers to
8899         use detached_regcache::invalidate instead.
8900         * regcache.c (regcache_invalidate): Remove.
8901
8902 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8903
8904         * regcache.h (regcache_raw_write_part): Remove, update callers
8905         to use regcache::raw_write_part instead.
8906         * regcache.c (regcache_raw_write_part): Remove.
8907
8908 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8909
8910         * regcache.h (regcache_raw_read_part): Remove, update callers to
8911         use readable_regcache::raw_read_part instead.
8912         * regcache.c (regcache_raw_read_part): Remove.
8913
8914 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8915
8916         * regcache.h (regcache_cooked_read): Remove, update callers to
8917         use readable_regcache::cooked_read instead.
8918         * regcache.c (regcache_cooked_read): Remove.
8919
8920 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8921
8922         * regcache.h (regcache_raw_write): Remove, update callers to use
8923         regcache::raw_write instead.
8924         * regcache.c (regcache_raw_write): Remove.
8925
8926 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8927
8928         * regcache.h (regcache_raw_read): Remove, update callers to use
8929         readable_regcache::raw_read instead.
8930         * regcache.c (regcache_raw_read): Remove.
8931
8932 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8933
8934         * regcache.h (regcache_raw_update): Remove, update callers to
8935         use readable_regcache::raw_update instead.
8936         * regcache.c (regcache_raw_update): Remove.
8937
8938 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8939
8940         * regcache.h (regcache_register_status): Remove, update callers
8941         to use reg_buffer::get_register_status directly instead.
8942         * regcache.c (regcache_register_status): Remove.
8943
8944 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8945
8946         * regcache.h (regcache_get_ptid): Remove, update all callers to
8947         call regcache::ptid instead.
8948         * regcache.c (regcache_get_ptid): Remove.
8949
8950 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8951
8952         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8953
8954 2018-05-30  Pedro Alves  <palves@redhat.com>
8955
8956         * common/common-exceptions.h (exception_rethrow): Use
8957         ATTRIBUTE_NORETURN.
8958
8959 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8960
8961         * breakpoint.c (print_solib_event, check_status_catch_solib):
8962         Remove struct keyword in range-based for loops.
8963         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8964         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8965         Likewise.
8966         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8967         Likewise.
8968         * symfile.c (addr_info_make_relative): Likewise.
8969         * thread.c (value_in_thread_stack_temporaries): Likewise.
8970
8971 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8972
8973         PR gdb/16841
8974         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8975         aggregate type to get its real type before accessing it.
8976
8977 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8978
8979         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8980         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8981         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8982         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8983         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8984         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8985         * printcmd.c (info_address_command): Likewise.
8986
8987 2018-05-29  Tom Tromey  <tom@tromey.com>
8988
8989         * windows-nat.c (handle_exception): Update fall-through comment.
8990
8991 2018-05-29  Tom Tromey  <tom@tromey.com>
8992
8993         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8994         (struct program_space) <added_solibs>: Now a std::vector.
8995         * breakpoint.c (print_solib_event): Update.
8996         (check_status_catch_solib): Update.
8997         * progspace.c (clear_program_space_solib_cache): Update.
8998         * solib.c (update_solib_list): Update.
8999
9000 2018-05-29  Tom Tromey  <tom@tromey.com>
9001
9002         * python/py-type.c (typy_richcompare): Update.
9003         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9004         * gdbtypes.h (types_deeply_equal): Return bool.
9005         (types_equal): Likewise.
9006         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9007         declare VEC.
9008         (check_types_equal): Change worklist to std::vector.  Return
9009         bool.
9010         (struct type_equality_entry): Add constructor.
9011         (compare_maybe_null_strings): Return bool.
9012         (check_types_worklist): Return bool.  Change worklist to
9013         std::vector.
9014         (types_deeply_equal): Use std::vector.
9015         (types_equal): Return bool.
9016         (compare_maybe_null_strings): Simplify.
9017
9018 2018-05-29  Tom Tromey  <tom@tromey.com>
9019
9020         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9021
9022 2018-05-29  Tom Tromey  <tom@tromey.com>
9023
9024         * objc-lang.h: Don't include cp-support.h.
9025         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9026         declare VEC.
9027
9028 2018-05-27  Tom Tromey  <tom@tromey.com>
9029
9030         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9031
9032 2018-05-25  Tom Tromey  <tom@tromey.com>
9033
9034         * value.c (value::location): Initialize.
9035
9036 2018-05-25  Tom Tromey  <tom@tromey.com>
9037
9038         * dbxread.c (init_bincl_list): Remove.
9039         (bincl_list): Now a std::vector.
9040         (bincls_allocated, next_bincl): Remove.
9041         (free_bincl_list, do_free_bincl_list_cleanup)
9042         (make_cleanup_free_bincl_list): Remove.
9043         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9044         unique_xmalloc_ptr.
9045         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9046         (struct header_file_location): Add constructor.
9047         (add_bincl_to_list): Remove.
9048
9049 2018-05-25  Tom Tromey  <tom@tromey.com>
9050
9051         * tui/tui.c (tui_enable): Update.
9052         * mi/mi-interp.c (mi_interp::init): Update.
9053         * interps.h (class interp) <name>: New method.
9054         <m_name>: Rename from name.
9055         (~scoped_restore_interp): Update.
9056         * interps.c (interp::interp): Update.
9057         (interp_add, interp_set, interp_lookup_existing)
9058         (current_interp_named_p): Update.
9059
9060 2018-05-25  Tom Tromey  <tom@tromey.com>
9061
9062         * interps.c (interp_name): Remove.
9063         * mi/mi-interp.c (mi_interp::init): Update.
9064         * interps.h (interp_name): Remove.
9065         (~scoped_restore_interp): Update.
9066         * tui/tui.c (tui_enable): Update.
9067
9068 2018-05-25  Tom Tromey  <tom@tromey.com>
9069
9070         * utils.c (fputs_maybe_filtered): Update.
9071         * linespec.c (decode_line_full): Update.
9072         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9073         (mi_print_breakpoint_for_event, mi_solib_loaded)
9074         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9075         (mi_user_selected_context_changed): Update.
9076         * mi/mi-main.c (mi_execute_command): Update.
9077         * cli/cli-script.c (execute_control_command): Update.
9078         * python/python.c (execute_gdb_command): Update.
9079         * solib.c (info_sharedlibrary_command): Update.
9080         * interps.c (interp_ui_out): Remove.
9081         * interps.h (interp_ui_out): Remove.
9082
9083 2018-05-25  Tom Tromey  <tom@tromey.com>
9084
9085         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9086         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9087         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9088
9089 2018-05-25  Tom Tromey  <tom@tromey.com>
9090
9091         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9092         * interps.c (interp_exec): Use scoped_restore.
9093
9094 2018-05-25  Tom Tromey  <tom@tromey.com>
9095
9096         * remote.c (remote_target::remote_file_get): Use
9097         gdb::byte_vector.
9098         (remote_target::remote_file_put): Likewise.
9099
9100 2018-05-25  Tom Tromey  <tom@tromey.com>
9101
9102         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9103         a std::string.
9104         (get_pe_section_index, add_pe_exported_sym): Update.
9105         (read_pe_exported_syms): Use gdb::def_vector.
9106
9107 2018-05-25  Tom Tromey  <tom@tromey.com>
9108
9109         * frame.c (remove_prev_frame): Remove.
9110         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9111
9112 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9113
9114         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9115         Remove prototypes.
9116         * mips-linux-nat.c (supply_fpregset): Always call
9117         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9118         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9119         `mips_fill_fpregset'.
9120         * mips-linux-tdep.c (mips_supply_fpregset)
9121         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9122         (mips_fill_fpregset_wrapper): Remove functions.
9123         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9124         (mips_linux_fpregset): Remove variable.
9125         (mips_linux_iterate_over_regset_sections): Use
9126         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9127         (mips_linux_o32_sigframe_init): Remove comment.
9128
9129 2018-05-25  Pedro Alves  <palves@redhat.com>
9130
9131         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9132         (struct readahead_cache, struct packet_reg, struct
9133         remote_arch_state, class remote_state): Move higher up in the
9134         file.
9135         (remote_target::m_remote_state): Now an object instead of a pointer.
9136         (remote_target::get_remote_state): Adjust.
9137
9138 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9139
9140         * stack.c (select_and_print_frame): Delete.
9141         (struct function_bounds): Move struct within function.
9142         (func_command): Most content moved into new function
9143         find_frame_for_function, use new function, print result, add
9144         function comment.
9145         (find_frame_for_function): New function, now returns a result.
9146
9147 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9148
9149         * stack.c (iterate_over_block_arg_vars): Fix comment.
9150         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9151
9152 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9153
9154         PR gdb/23203
9155         * frame.c
9156         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9157         Define.
9158         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9159         Define.
9160         * frame.h (class scoped_restore_selected_frame): New class.
9161         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9162         of any exception, use scoped_restore_selected_frame to restore the
9163         frame instead.
9164
9165 2018-05-24  Pedro Alves  <palves@redhat.com>
9166
9167         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9168         override.
9169
9170 2018-05-23  Tom Tromey  <tom@tromey.com>
9171
9172         * complaints.c (struct complaints): Remove.
9173         (symfile_complaint_book): Remove.
9174         (series): New global.
9175         (complaint_internal): Update.
9176         (clear_complaints): Update.
9177
9178 2018-05-23  Tom Tromey  <tom@tromey.com>
9179
9180         * complaints.c (counters): New global.
9181         (struct complain): Remove.
9182         (struct complaints) <root>: Remove.
9183         (complaint_sentinel): Remove.
9184         (symfile_complaint_book): Update.
9185         (find_complaint) Remove.
9186         (complaint_internal, clear_complaints): Update.
9187
9188 2018-05-23  Tom Tromey  <tom@tromey.com>
9189
9190         * complaints.c (struct complain) <file, line>: Remove.
9191         (find_complaint): Remove file, line parameters.
9192         (complaint_internal): Update.
9193
9194 2018-05-23  Tom Tromey  <tom@tromey.com>
9195
9196         * complaints.c (vcomplaint): Remove.
9197         (complaint_internal) Merge in contents of vcomplaint.
9198
9199 2018-05-23  Tom Tromey  <tom@tromey.com>
9200
9201         * complaints.c (struct complaints) <explanation>: Remove.
9202         (symfile_explanations): Remove.
9203         (symfile_complaint_book): Update.
9204         (vcomplaint): Update.
9205         (struct explanation): Remove.
9206
9207 2018-05-23  Tom Tromey  <tom@tromey.com>
9208
9209         * complaints.c (symfile_complaints): Remove.
9210         (complaint_internal): Remove "complaints" parameter.
9211         (clear_complaints, vcomplaint): Remove "c" parameter.
9212         (get_complaints): Remove.
9213         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9214         (dwarf2_debug_line_missing_file_complaint)
9215         (dwarf2_debug_line_missing_end_sequence_complaint)
9216         (dwarf2_complex_location_expr_complaint)
9217         (dwarf2_const_value_length_mismatch_complaint)
9218         (dwarf2_section_buffer_overflow_complaint)
9219         (dwarf2_macro_malformed_definition_complaint)
9220         (dwarf2_invalid_attrib_class_complaint)
9221         (create_addrmap_from_index, dw2_symtab_iter_next)
9222         (dw2_expand_marked_cus)
9223         (dw2_debug_names_iterator::find_vec_in_debug_names)
9224         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9225         (create_debug_type_hash_table, init_cutu_and_read_dies)
9226         (partial_die_parent_scope, add_partial_enumeration)
9227         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9228         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9229         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9230         (create_cus_hash_table, create_dwp_hash_table)
9231         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9232         (dwarf2_rnglists_process, dwarf2_ranges_process)
9233         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9234         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9235         (handle_struct_member_die, process_structure_scope)
9236         (read_array_type, read_common_block, read_module_type)
9237         (read_tag_pointer_type, read_typedef, read_base_type)
9238         (read_subrange_type, load_partial_dies, partial_die_info::read)
9239         (partial_die_info::read, partial_die_info::read)
9240         (partial_die_info::read, read_checked_initial_length_and_offset)
9241         (dwarf2_string_attr, read_formatted_entries)
9242         (dwarf_decode_line_header)
9243         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9244         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9245         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9246         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9247         (get_signatured_type, get_DW_AT_signature_type)
9248         (decode_locdesc, file_file_name, consume_improper_spaces)
9249         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9250         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9251         (dwarf2_symbol_mark_computed, set_die_type)
9252         (read_attribute_value): Update.
9253         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9254         Update.
9255         * dbxread.c (unknown_symtype_complaint)
9256         (lbrac_mismatch_complaint, repeated_header_complaint)
9257         (set_namestring, function_outside_compilation_unit_complaint)
9258         (read_dbx_symtab, process_one_symbol): Update.
9259         * gdbtypes.c (stub_noname_complaint): Update.
9260         * windows-nat.c (handle_unload_dll): Update.
9261         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9262         (decode_base_type): Update.
9263         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9264         (eb_complaint, record_include_begin, record_include_end)
9265         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9266         (process_xcoff_symbol, read_symbol)
9267         (function_outside_compilation_unit_complaint)
9268         (scan_xcoff_symtab): Update.
9269         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9270         * buildsym.c (finish_block_internal, make_blockvector)
9271         (end_symtab_get_static_block, augment_type_symtab): Update.
9272         * dtrace-probe.c (dtrace_process_dof)
9273         (dtrace_static_probe_ops::get_probes): Update.
9274         * complaints.h (struct complaint): Don't declare.
9275         (symfile_complaints): Remove.
9276         (complaint_internal): Remove "complaints" parameter.
9277         (complaint): Likewise.
9278         (clear_complaints): Likewise.
9279         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9280         (reread_symbols): Update.
9281         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9282         (dwarf2_frame_cache, decode_frame_entry): Update.
9283         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9284         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9285         (info_selectors_command): Update.
9286         * macrotab.c (macro_include, check_for_redefinition)
9287         (macro_undef): Update.
9288         * objfiles.c (filter_overlapping_sections): Update.
9289         * stabsread.c (invalid_cpp_abbrev_complaint)
9290         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9291         (define_symbol, error_type, read_type, rs6000_builtin_type)
9292         (stabs_method_name_from_physname, read_member_functions)
9293         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9294         (attach_fields_to_type, complain_about_struct_wipeout)
9295         (read_range_type, read_args, common_block_start)
9296         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9297         Update.
9298         * mdebugread.c (index_complaint, unknown_ext_complaint)
9299         (basic_type_complaint, bad_tag_guess_complaint)
9300         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9301         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9302         (parse_procedure, parse_lines)
9303         (function_outside_compilation_unit_complaint)
9304         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9305         (bad_tag_guess_complaint, reg_value_complaint): Update.
9306         * cp-support.c (demangled_name_complaint): Update.
9307         * macroscope.c (sal_macro_scope): Update.
9308         * dwarf-index-write.c (class debug_names): Update.
9309
9310 2018-05-23  Tom Tromey  <tom@tromey.com>
9311
9312         * complaints.c (clear_complaints): Remove "noisy" parameter.
9313         * complaints.h (clear_complaints): Update.
9314         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9315         (reread_symbols): Update.
9316
9317 2018-05-23  Tom Tromey  <tom@tromey.com>
9318
9319         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9320         SUBSEQUENT_MESSAGE.
9321         (vcomplaint, clear_complaints): Update.
9322         (symfile_explanations): Remove some messages.
9323
9324 2018-05-23  Tom Tromey  <tom@tromey.com>
9325
9326         * complaints.c (internal_complaint): Remove.
9327         * complaints.h (internal_complaint): Remove.
9328
9329 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9330
9331         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9332
9333 2018-05-22  Pedro Alves  <palves@redhat.com>
9334
9335         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9336         (remote_fileio_badfd, remote_fileio_return_errno)
9337         (remote_fileio_return_success, remote_fileio_func_open)
9338         (remote_fileio_func_open, remote_fileio_func_close)
9339         (remote_fileio_func_read, remote_fileio_func_write)
9340         (remote_fileio_func_lseek, remote_fileio_func_rename)
9341         (remote_fileio_func_unlink, remote_fileio_func_stat)
9342         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9343         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9344         remote_target parameter.
9345         (remote_fio_func_map) <func>: Add remote_target parameter.
9346         (do_remote_fileio_request, remote_fileio_request):
9347         * remote-fileio.h (remote_fileio_request):
9348         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9349         remote_target parameter.
9350         (remote_notif_process, handle_notification): Adjust to pass down
9351         the remote.
9352         (remote_notif_state_allocate): Add remote_target parameter.  Save
9353         it.
9354         * remote-notif.h (struct remote_target): Forward declare.
9355         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9356         remote_target parameter.
9357         (struct remote_notif_state) <remote>: New field.
9358         (remote_notif_ack, remote_notif_parse): Add remote_target
9359         parameter.
9360         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9361         remote_target parameter.
9362         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9363         (threads_listing_context, rmt_thread_action, protocol_feature)
9364         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9365         (packet_result, struct threads_listing_context, remote_state):
9366         Move definitions and declarations higher up.
9367         (remote_target) <~remote_target>: Declare.
9368         (remote_download_command_source, remote_file_put, remote_file_get)
9369         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9370         (remote_hostio_pread_vFile, remote_hostio_send_command)
9371         (remote_hostio_set_filesystem, remote_hostio_open)
9372         (remote_hostio_close, remote_hostio_unlink, remote_state)
9373         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9374         (get_memory_write_packet_size, get_memory_read_packet_size)
9375         (append_pending_thread_resumptions, remote_detach_1)
9376         (append_resumption, remote_resume_with_vcont)
9377         (add_current_inferior_and_thread, wait_ns, wait_as)
9378         (process_stop_reply, remote_notice_new_inferior)
9379         (process_initial_stop_replies, remote_add_thread)
9380         (btrace_sync_conf, remote_btrace_maybe_reopen)
9381         (remove_new_fork_children, kill_new_fork_children)
9382         (discard_pending_stop_replies, stop_reply_queue_length)
9383         (check_pending_events_prevent_wildcard_vcont)
9384         (discard_pending_stop_replies_in_queue, stop_reply)
9385         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9386         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9387         (remote_interrupt_as, remote_interrupt_ns)
9388         (remote_get_noisy_reply, remote_query_attached)
9389         (remote_add_inferior, remote_current_thread, get_current_thread)
9390         (set_thread, set_general_thread, set_continue_thread)
9391         (set_general_process, write_ptid)
9392         (remote_unpack_thread_info_response, remote_get_threadinfo)
9393         (parse_threadlist_response, remote_get_threadlist)
9394         (remote_threadlist_iterator, remote_get_threads_with_ql)
9395         (remote_get_threads_with_qxfer)
9396         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9397         (get_offsets, remote_check_symbols, remote_supported_packet)
9398         (remote_query_supported, remote_packet_size)
9399         (remote_serial_quit_handler, remote_detach_pid)
9400         (remote_vcont_probe, remote_resume_with_hc)
9401         (send_interrupt_sequence, interrupt_query)
9402         (remote_notif_get_pending_events, fetch_register_using_p)
9403         (send_g_packet, process_g_packet, fetch_registers_using_g)
9404         (store_register_using_P, store_registers_using_G)
9405         (set_remote_traceframe, check_binary_download)
9406         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9407         (remote_xfer_live_readonly_partial, remote_read_bytes)
9408         (remote_send_printf, remote_flash_write, readchar)
9409         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9410         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9411         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9412         (extended_remote_disable_randomization, extended_remote_run)
9413         (send_environment_packet, extended_remote_environment_support)
9414         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9415         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9416         (packet_command): Now methods of ...
9417         (remote_target): ... this class.
9418         (m_remote_state) <remote_target>: New field.
9419         (struct remote_state) <stop_reply_queue,
9420         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9421         fields.
9422         (remote_state::remote_state): Allocate stop_reply_queue.
9423         (remote_state): Delete global.
9424         (get_remote_state_raw): Delete.
9425         (remote_target::get_remote_state): Allocate m_remote_state on
9426         demand.
9427         (get_current_remote_target): New.
9428         (remote_ops, extended_remote_ops): Delete.
9429         (wait_forever_enabled_p, remote_async_inferior_event_token):
9430         Delete, moved to struct remote_state.
9431         (remote_target::close): Delete self.  Destruction bits split to
9432         ...
9433         (remote_target::~remote_target): ... this.
9434         (show_memory_packet_size): Adjust to use
9435         get_current_remote_target.
9436         (struct protocol_feature) <func>: Add remote_target parameter.
9437         All callers adjusted.
9438         (curr_quit_handler_target): New.
9439         (remote_serial_quit_handler): Reimplement.
9440         (remote_target::open_1): Adjust to use get_current_remote_target.
9441         Heap-allocate remote_target/extended_remote_target instances.
9442         (vcont_builder::vcont_builder): Add remote_target parameter, and
9443         save it in m_remote.  All callers adjusted.
9444         (vcont_builder::m_remote): New field.
9445         (vcont_builder::restart, vcont_builder::flush)
9446         (vcont_builder::push_action): Use it.
9447         (remote_target::commit_resume): Use it.
9448         (struct queue_iter_param) <remote>: New field.
9449         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9450         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9451         (check_pending_event_prevents_wildcard_vcont_callback)
9452         (remote_target::check_pending_events_prevent_wildcard_vcont)
9453         (remote_target::discard_pending_stop_replies)
9454         (remote_target::discard_pending_stop_replies_in_queue)
9455         (remote_target::remote_notif_remove_queued_reply): Fill in
9456         'remote' field.
9457         (remote_notif_get_pending_events): New.
9458         (remote_target::readchar, remote_target::remote_serial_write):
9459         Save/restore curr_quit_handler_target.
9460         (putpkt): New.
9461         (kill_new_fork_children): Fill in 'remote' field.
9462         (packet_command): Use get_current_remote_target, defer to
9463         remote_target method of same name.
9464         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9465         parameter, and save it in m_remote.  All callers adjusted.
9466         (scoped_remote_fd::release): Use m_remote.
9467         (scoped_remote_fd::m_remote): New field.
9468         (remote_file_put, remote_file_get, remote_file_delete): Use
9469         get_current_remote_target, defer to remote_target method of same
9470         name.
9471         (remote_btrace_reset): Add remote_state paremeter.  Update all
9472         callers.
9473         (remote_async_inferior_event_handler). Pass down 'data'.
9474         (remote_new_objfile): Use get_current_remote_target.
9475         (remote_target::vcont_r_supported): New.
9476         (set_range_stepping): Use get_current_remote_target and
9477         remote_target::vcont_r_supported.
9478         (_initialize_remote): Don't allocate 'remote_state' and
9479         'stop_reply_queue' globals.
9480         * remote.h (struct remote_target): Forward declare.
9481         (getpkt, putpkt, remote_notif_get_pending_events): Add
9482         'remote_target' parameter.
9483
9484 2018-05-22  Pedro Alves  <palves@redhat.com>
9485
9486         * remote.c (vcont_builder): Now a class.  Make all data members
9487         private.
9488         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9489         Declare methods.
9490         (vcont_builder_restart): Rename to ...
9491         (vcont_builder::restart): ... this.
9492         (vcont_builder_flush): Rename to ...
9493         (vcont_builder::flush): ... this.
9494         (vcont_builder_push_action): Rename to ...
9495         (vcont_builder::push_action): ... this.
9496         (remote_target::commit_resume): Adjust.
9497
9498 2018-05-22  Pedro Alves  <palves@redhat.com>
9499
9500         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9501         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9502         (get_fixed_memory_packet_size): New.
9503         (get_memory_packet_size): Use it.
9504         (set_memory_packet_size): Don't override the config size with
9505         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9506         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9507         Don't refer to get_memory_packet_size if not connected to a remote
9508         target.  Show "(default)" if configured size is 0.
9509
9510 2018-05-22  Pedro Alves  <palves@redhat.com>
9511
9512         * remote.c (remote_target::mourn_inferior): Move
9513         discard_pending_stop_replies call here from ...
9514         (_initialize_remote): ... here.
9515
9516 2018-05-22  Pedro Alves  <palves@redhat.com>
9517
9518         * remote.c (compare_section_command): Remove set_general_process
9519         call.
9520
9521 2018-05-22  Pedro Alves  <palves@redhat.com>
9522
9523         * remote.c (struct packet_reg, struct remote_arch_state):
9524         Move higher up in the file.
9525         (remote_state) <m_arch_states>: Store remote_arch_state values
9526         instead of remote_arch_state pointers.
9527         (remote_state::get_remote_arch_state): Adjust.
9528
9529 2018-05-22  Pedro Alves  <palves@redhat.com>
9530
9531         * remote.c: Include <unordered_map>.
9532         (remote_state): Now a class.
9533         (remote_state) <get_remote_arch_state>: Declare method.
9534         <get_remote_arch_state>: New field.
9535         (remote_arch_state) <remote_arch_state>: Declare ctor.
9536         <regs>: Now a unique_ptr.
9537         (remote_gdbarch_data_handle): Delete.
9538         (get_remote_arch_state): Delete.
9539         (remote_state::get_remote_arch_state): New.
9540         (get_remote_state): Adjust to call remote_state's
9541         get_remote_arch_state method.
9542         (init_remote_state): Delete, bits factored out to ...
9543         (remote_arch_state::remote_arch_state): ... this new method.
9544         (get_remote_packet_size, get_memory_packet_size)
9545         (process_g_packet, remote_target::fetch_registers)
9546         (remote_target::prepare_to_store, store_registers_using_G)
9547         (remote_target::store_registers, remote_target::get_trace_status):
9548         Adjust to call remote_state's method.
9549         (_initialize_remote): Remove reference to
9550         remote_gdbarch_data_handle.
9551
9552 2018-05-22  Pedro Alves  <palves@redhat.com>
9553
9554         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9555         pread>: New method declarations.
9556         (remote_target::open_1): Adjust.
9557         (readahead_cache_invalidate): Rename to ...
9558         (readahead_cache::invalidate): ... this, and adjust to be a class
9559         method.
9560         (readahead_cache_invalidate_fd): Rename to ...
9561         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9562         class method.
9563         (remote_hostio_pwrite): Adjust.
9564         (remote_hostio_pread_from_cache): Rename to ...
9565         (readahead_cache::pread): ... this, and adjust to be a class
9566         method.
9567         (remote_hostio_close): Adjust.
9568
9569 2018-05-22  Pedro Alves  <palves@redhat.com>
9570
9571         * remote.c (remote_hostio_close_cleanup): Delete.
9572         (class scoped_remote_fd): New.
9573         (remote_file_put, remote_file_get): Use it.
9574
9575 2018-05-22  Pedro Alves  <palves@redhat.com>
9576
9577         (struct vCont_action_support): Use bool and initialize all fields.
9578         (struct readahead_cache): Initialize all fields.
9579         (remote_state): Use bool and initialize all fields.
9580         (remote_state::remote_state, remote_state::~remote_state): New.
9581         (new_remote_state): Delete.
9582         (_initialize_remote): Use new to allocate remote_state.
9583
9584 2018-05-22  Pedro Alves  <palves@redhat.com>
9585             張俊芝  <zjz@zjz.name>
9586
9587         PR gdb/22973
9588         * c-exp.y: Include "c-support.h".
9589         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9590         of tolower.  Use c_ident_is_alpha to scan names.
9591         * c-lang.c: Include "c-support.h".
9592         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9593         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9594         * c-support.h: New file, with bits factored out from ...
9595         * cp-name-parser.y: ... this file.
9596         Include "c-support.h".
9597         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9598         c-support.h and renamed.
9599         (symbol_end, yylex): Adjust.
9600
9601 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9602
9603         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9604         parameter type to CORE_ADDR.
9605         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9606         parameter type in declaration to CORE_ADDR.
9607         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9608         target_auxv_search to get AT_HWCAP and use the result to get the
9609         target description.
9610         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9611         to CORE_ADDR. Remove the cast of the return value to unsigned
9612         long. Fix error predicate of target_auxv_search.
9613         (ppc_linux_nat_target::read_description): Change the type of the
9614         hwcap variable to CORE_ADDR.
9615
9616 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9617
9618         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9619         if the size of fpscr is larger than 32 bits.
9620
9621 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9622
9623         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9624         (ppc32_linux_vsxregmap): New global.
9625         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9626         regcache_supply_regset, and regcache_collect_regset.
9627         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9628         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9629         (fetch_vsx_register, store_vsx_register): Remove.
9630         (fetch_vsx_registers): Add regno parameter. Get regset using
9631         ppc_linux_vsxregset. Use regset to supply registers.
9632         (store_vsx_registers): Add regno parameter. Get regset using
9633         ppc_linux_vsxregset. Use regset to collect registers.
9634         (fetch_register): Call fetch_vsx_registers instead of
9635         fetch_vsx_register.
9636         (store_register): Call store_vsx_registers instead of
9637         store_vsx_register.
9638         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9639         new regno parameter.
9640         (store_ppc_registers): Call store_vsx_registers with -1 for the
9641         new regno parameter.
9642         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9643         (ppc_collect_vsxregset): Remove.
9644
9645 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9646
9647         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9648         offset fields.
9649         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9650         for vector register offset fields.
9651         (ppc64_fbsd_reg_offsets): Likewise.
9652         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9653         to vector register offset fields.
9654         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9655         to vector register offset fields.
9656         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9657         vector register offset fields.
9658         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9659         initializers for vector register offset fields.
9660         (rs6000_aix64_reg_offsets): Likewise.
9661         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9662         (ppc_supply_vrregset): Remove.
9663         (ppc_collect_vrregset): Remove.
9664         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9665         (ppc_linux_vrregset) : New function.
9666         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9667         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9668         (ppc32_linux_vrregset): Remove.
9669         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9670         and use result instead of ppc32_linux_vrregset.
9671         (ppc32_linux_reg_offsets): Remove initializers for vector register
9672         offset fields.
9673         (ppc64_linux_reg_offsets): Likewise.
9674         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9675         * ppc-linux-nat.c: Include regset.h.
9676         (gdb_vrregset_t): Adjust comment to account for little-endian
9677         mode.
9678         (supply_vrregset, fill_vrregset): Remove.
9679         (fetch_altivec_register, store_altivec_register): Remove.
9680         (fetch_altivec_registers): Add regno parameter. Get regset using
9681         ppc_linux_vrregset. Use regset to supply registers.
9682         (store_altivec_registers): Add regno parameter. Get regset using
9683         ppc_linux_vrregset. Use regset to collect registers.
9684         (fetch_register): Call fetch_altivec_registers instead of
9685         fetch_altivec_register.
9686         (store_register): Call store_altivec_registers instead of
9687         store_altivec_register.
9688         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9689         the new regno parameter.
9690         (store_ppc_registers): Call store_altivec_registers with -1 for
9691         the new regno parameter.
9692
9693 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9694
9695         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9696         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9697         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9698         (gdb_vrregset_t): Change array type size to
9699         PPC_LINUX_SIZEOF_VRREGSET.
9700         (gdb_vsxregset_t): Change array type size to
9701         PPC_LINUX_SIZEOF_VSXREGSET.
9702         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9703         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9704         PPC_LINUX_SIZEOF_VSXREGSET.
9705
9706 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9707
9708         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9709         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9710         nat/ppc-linux.c.
9711         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9712         ppc_linux_target_wordsize with tid.
9713         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9714         wordsize with tid.
9715         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9716         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9717         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9718         tid parameter. Remove static specifier.
9719         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9720         (ppc_linux_target_wordsize): New declaration.
9721
9722 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9723
9724         * arch/ppc-linux-common.c: New file.
9725         * arch/ppc-linux-common.h: New file.
9726         * arch/ppc-linux-tdesc.h: New file.
9727         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9728         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9729         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9730         arch/ppc-linux-tdesc.h.
9731         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9732         arch/ppc-linux-tdesc.h.
9733         (ppc_linux_nat_target::read_description): Remove target
9734         description matching code. Fill a ppc_linux_features struct and
9735         call ppc_linux_match_description with it. Move comment about ISA
9736         2.05 to ppc-linux-common.c.
9737         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9738         arch/ppc-linux-tdesc.h.
9739         (ppc_linux_core_read_description): Remove target description
9740         matching code. Fill a ppc_linux_features struct and call
9741         ppc_linux_match_description with it.
9742         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9743         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9744         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9745         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9746         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9747         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9748         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9749         (tdesc_powerpc_e500l): Remove.
9750
9751 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9752
9753         * ada-lang.c (catch_assert_command): Pass empty string instead
9754         of NULL for excep_string argument.
9755
9756 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9757
9758         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9759         the width of the requested register exceeds the width of the
9760         `ptrace' data type.
9761
9762 2018-05-21  Tom Tromey  <tom@tromey.com>
9763
9764         * printcmd.c (output_command): Remove.
9765         (output_command_const): Rename to output_command.
9766         * valprint.h (output_command): Rename from output_command_const.
9767         * tracepoint.c (trace_dump_actions): Call output_command.
9768
9769 2018-05-21  Tom Tromey  <tom@tromey.com>
9770
9771         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9772         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9773         * ada-lang.h (create_ada_exception_catchpoint): Update.
9774         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9775         std::string.
9776         (create_excep_cond_exprs, ~ada_catchpoint)
9777         (should_stop_exception, print_one_exception)
9778         (print_mention_exception, print_recreate_exception): Update.
9779         (ada_get_next_arg): Remove.
9780         (catch_ada_exception_command_split): Use std::string.  Change type
9781         of "excep_string", "cond_string".
9782         (catch_ada_exception_command): Update.
9783         (create_ada_exception_catchpoint): Change type of excep_string.
9784         (ada_exception_sal): Remove excep_string parameter.
9785         (~ada_catchpoint): Remove.
9786
9787 2018-05-21  Tom Tromey  <tom@tromey.com>
9788
9789         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9790         cleanup.
9791
9792 2018-05-21  Tom Tromey  <tom@tromey.com>
9793
9794         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9795         Return unique_xmalloc_ptr.
9796         (print_it_exception): Update.
9797
9798 2018-05-21  Tom Tromey  <tom@tromey.com>
9799
9800         * tracepoint.c (trace_dump_actions): Use std::string.
9801
9802 2018-05-21  Tom Tromey  <tom@tromey.com>
9803
9804         * symfile.c (reread_symbols): Use std::string for original_name.
9805
9806 2018-05-21  Tom Tromey  <tom@tromey.com>
9807
9808         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9809         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9810         constructor.
9811
9812 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9813
9814         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9815         instance to...
9816         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9817         * objfiles.c (get_objfile_bfd_data): Allocate
9818         objfile_per_bfd_storage with obstack_new when allocating on
9819         obstack.
9820
9821 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9822
9823         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9824         OBSTACK_ZALLOC.
9825         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9826         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9827         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9828         (add_pending): Likewise.
9829         (parse_symbol): Likewise.
9830         (parse_partial_symbols): Likewise.
9831         (psymtab_to_symtab_1): Likewise.
9832         (new_psymtab): Likewise.
9833         (elfmdebug_build_psymtabs): Likewise.
9834         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9835         * objfiles.c (get_objfile_bfd_data): Likewise.
9836         (objfile_register_static_link): Likewise.
9837         * psymtab.c (allocate_psymtab): Likewise.
9838         * stabsread.c (read_member_functions): Likewise.
9839         * xcoffread.c (xcoff_end_psymtab): Likewise.
9840
9841 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9842
9843         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9844         compiler supports std::is_trivially_constructible.
9845         * common/poison.h: Include obstack.h.
9846         (IsMallocable): Define to is_trivially_constructible if the
9847         compiler supports it, define to true_type otherwise.
9848         (xobnew): New.
9849         (XOBNEW): Redefine.
9850         (xobnewvec): New.
9851         (XOBNEWVEC): Redefine.
9852         * gdb_obstack.h (obstack_zalloc): New.
9853         (OBSTACK_ZALLOC): Redefine.
9854         (obstack_calloc): New.
9855         (OBSTACK_CALLOC): Redefine.
9856         (obstack_new): New.
9857         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9858         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9859         gdbarch.c.
9860         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9861         obstack_calloc/obstack_zalloc.
9862         (gdbarch_obstack_zalloc): Remove.
9863         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9864
9865 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9866
9867         * stack.c (backtrace_command_1): Remove useless variable int i.
9868
9869 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9870
9871         * stack.c (print_frame_info): Fix comment.
9872
9873 2018-05-18  Tom Tromey  <tom@tromey.com>
9874
9875         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9876         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9877         (~dwarf2_per_objfile): Update
9878         (dwarf2_get_dwz_file): Use new.
9879         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9880         unique_ptr.
9881
9882 2018-05-18  Tom Tromey  <tom@tromey.com>
9883
9884         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9885         unique_ptr.
9886         * dwarf2read.c (struct dwp_file): Add constructor and
9887         initializers.
9888         (open_and_init_dwp_file): Return a unique_ptr.
9889         (dwarf2_per_objfile, create_dwp_hash_table)
9890         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9891         (lookup_dwo_unit_in_dwp): Update.
9892         (open_and_init_dwp_file, get_dwp_file): Update.
9893
9894 2018-05-18  Tom Tromey  <tom@tromey.com>
9895
9896         * dwarf2read.c (dwarf2_per_objfile): Update.
9897         (struct mapped_index): Add initializers.
9898         (dwarf2_read_index): Use new.
9899         (dw2_symtab_iter_init): Update.
9900         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9901         unique_ptr.
9902
9903 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9904
9905         * dwarf2read.c (mapped_index) <total_size>: Remove.
9906
9907 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9908
9909         * unittests/format_pieces-selftests.c (test_format_specifier):
9910         Add ARI comments.
9911
9912 2018-05-18  Tom Tromey  <tom@tromey.com>
9913
9914         * c-typeprint.c (maybe_print_hole): New function.
9915         (c_print_type_struct_field_offset): Update.
9916         (c_type_print_base_struct_union): Call maybe_print_hole.
9917
9918 2018-05-17  Keith Seitz  <keiths@redhat.com>
9919
9920         * breakpoint.c (build_bpstat_chain): New function, moved from
9921         bpstat_stop_status.
9922         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9923         If no stop chain is passed, call build_bpstat_chain to build it.
9924         * breakpoint.h (build_bpstat_chain): Declare.
9925         (bpstat_stop_status): Move documentation here from breakpoint.c.
9926         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9927         build the stop chain and pass it to skip_inline_frames.
9928         Pass this stop chain to bpstat_stop_status.
9929         * inline-frame.c: Include breakpoint.h.
9930         (stopped_by_user_bp_inline_frame): New function.
9931         (skip_inline_frames): Add parameter `stop_chain'.
9932         Move documention to inline-frame.h.
9933         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9934         whether the frame should be elided.
9935         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9936         Add moved documentation and update for new parameter.
9937
9938 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9939
9940         PR cli/14975
9941         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9942         unittests/format_pieces-selftests.c.
9943         * common/format.h (format_piece) <operator==>: New.
9944         (format_pieces) <operator[]>: Remove.
9945         * common/format.c (format_pieces::format_pieces): Handle \e.
9946         * unittests/format_pieces-selftests.c: New.
9947
9948 2018-05-17  Tom Tromey  <tom@tromey.com>
9949
9950         PR symtab/23010:
9951         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9952         (dw2_instantiate_symtab): Add skip_partial parameter.
9953         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9954         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9955         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9956         (dw2_expand_symtabs_matching_one)
9957         (dw2_find_pc_sect_compunit_symtab)
9958         (dw2_debug_names_lookup_symbol)
9959         (dw2_debug_names_expand_symtabs_for_function): Update.
9960         (init_cutu_and_read_dies): Add skip_partial parameter.
9961         (process_psymtab_comp_unit, build_type_psymtabs_1)
9962         (process_skeletonless_type_unit, load_partial_comp_unit)
9963         (psymtab_to_symtab_1): Update.
9964         (load_full_comp_unit): Add skip_partial parameter.
9965         (process_imported_unit_die, dwarf2_read_addr_index)
9966         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9967         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9968         (read_signatured_type): Update.
9969
9970 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9971
9972         * value.c (release_value): Remove unused variable.
9973         (record_latest_value): Likewise.
9974         (access_value_history): Likewise.
9975         (preserve_values): Likewise.
9976
9977 2018-05-17  Tom Tromey  <tom@tromey.com>
9978
9979         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9980         Initialize.
9981
9982 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9983
9984         PR gdb/22286
9985         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9986         Also handle registers whose width is not a multiple of
9987         PTRACE_TYPE_RET.
9988         (linux_nat_trad_target::store_register): Likewise.
9989
9990 2018-05-16  Tom Tromey  <tom@tromey.com>
9991
9992         * gdbcore.h (core_bfd): Redefine.
9993         * corelow.c (core_target::close): Update.
9994         (core_target_open): Update.
9995         * progspace.h (struct program_space) <cbfd>: Now a
9996         gdb_bfd_ref_ptr.
9997
9998 2018-05-16  Tom Tromey  <tom@tromey.com>
9999
10000         PR cli/19551:
10001         * symfile-add-flags.h (enum symfile_add_flags)
10002         <SYMFILE_NOT_FILENAME>: New constant.
10003         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10004         objfile name from BFD.
10005         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10006         * minidebug.c (find_separate_debug_file_in_section): Put
10007         ".gnu_debugdata" into BFD's file name.
10008
10009 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10010
10011         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10012         Remove.
10013
10014 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10015
10016         PR binutils/21446
10017         * aarch64-tdep.c (aarch64_analyze_prologue,
10018         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10019         Indicate not interested in errors.
10020
10021 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10022
10023         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10024         Supply the MIPS_ZERO_REGNUM register.
10025
10026 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10027
10028         * mips-tdep.c (mask_address_var): Make variable static.
10029
10030 2018-05-14  Tom Tromey  <tom@tromey.com>
10031
10032         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10033
10034 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10035
10036         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10037         FXSAVE_ADDR for the mxcsr register.
10038
10039 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10040
10041         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10042
10043 2018-05-11  Pedro Alves  <palves@redhat.com>
10044
10045         * corelow.c (core_target) <core_target>: No longer inline.
10046         Initialize m_core_gdbarch, m_core_vec and build the section table
10047         here.
10048         <~core_target>: New.
10049         <core_gdbarch, get_core_register_section>: New methods.
10050         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10051         factored out from ...
10052         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10053         (core_ops): Delete.
10054         (sniff_core_bfd): Add gdbarch parameter.
10055         (core_close): Delete, merged into ...
10056         (core_target::close): ... here.  Delete self.
10057         (core_close_cleanup): Delete.
10058         (core_target_open): Allocate a core_target on the heap.  Use a
10059         unique_ptr instead of a cleanup.  Bits moved into the core_target
10060         ctor.  Adjust to use core_target methods instead of globals.
10061         (get_core_register_section): Rename to ...
10062         (core_target::get_core_register_section): ... this and adjust.
10063         (struct get_core_registers_cb_data): New.
10064         (get_core_registers_cb): Use it.  Use bool.
10065         (core_target::fetch_registers, core_target::files_info)
10066         (core_target::xfer_partial, core_target::read_description)
10067         (core_target::pid_to, core_target::thread_name): Adjust to
10068         reference class fields instead of globals.
10069         * target.h (struct target_ops_deleter, target_ops_up): New.
10070
10071 2018-05-11  Pedro Alves  <palves@redhat.com>
10072
10073         * corefile.c (core_file_command): Move to corelow.c.
10074         * corelow.c (the_core_target): Delete.
10075         (core_file_command): Moved from corefile.c.  Check exec_bfd
10076         instead of the_core_target.  Use target_detach instead of calling
10077         into the_core_target directly.
10078         (maybe_say_no_core_file_now): New.
10079         (core_target::detach): Use it.
10080         (_initialize_corelow): Remove references to the_core_target.
10081         * gdbcore.h (the_core_target): Delete.
10082
10083 2018-05-11  Tom Tromey  <tromey@redhat.com>
10084             Pedro Alves  <palves@redhat.com>
10085
10086         * corefile.c (core_bfd): Remove.
10087         * gdbcore.h (core_bfd): Now a macro.
10088         * progspace.h (struct program_space) <cbfd>: New field.
10089
10090 2018-05-11  Tom Tromey  <tom@tromey.com>
10091
10092         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10093         gdb::def_vector.
10094
10095 2018-05-10  Tom Tromey  <tom@tromey.com>
10096
10097         * configure: Rebuild.
10098         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10099
10100 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10101
10102         PR server/23158:
10103         * regformats/regdat.sh: Adjust script, following the addition
10104         of the new expedite_regs parameter to init_target_desc.
10105
10106 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10107     
10108         PR gdb/23127
10109         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10110         set_gdbarch_significant_addr_bit.
10111         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10112         set_gdbarch_significant_addr_bit.
10113         * utils.c (address_significant): Update to sign extend addr.
10114
10115 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10116
10117         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10118         (xtensa_linux_init_abi): Limit tdep->num_regs by
10119         tdep->num_nopriv_regs.
10120         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10121         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10122         not initialized.
10123
10124 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10125
10126         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10127
10128 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10129
10130         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10131         (I387_MXCSR_INIT_VAL): New constant.
10132         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10133         buffer if it was supplied by the inferior.
10134         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10135         (i387_xsave_get_clear_bv): New function.
10136         (i387_supply_xsave): Only read x87 control registers from the
10137         xsave buffer if the feature is enabled, and the state will have
10138         been written, otherwise, provide a suitable default.
10139         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10140         including x87 control registers.  Update control registers if they
10141         have changed from the default value, and mark features as enabled
10142         as required.
10143         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10144
10145 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10146
10147         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10148
10149 2018-05-07  Tom Tromey  <tom@tromey.com>
10150
10151         * configure: Rebuild.
10152         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10153
10154 2018-05-07  Tom Tromey  <tom@tromey.com>
10155
10156         PR tdep/20362:
10157         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10158         bit.  Use correct value for VDIV.
10159
10160 2018-05-04  Tom Tromey  <tom@tromey.com>
10161
10162         * configure: Rebuild.
10163         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10164
10165 2018-05-04  Tom Tromey  <tom@tromey.com>
10166
10167         * linux-record.c (record_linux_system_call) <case
10168         RECORD_SYS_RECVFROM>: Add "break".
10169
10170 2018-05-04  Tom Tromey  <tom@tromey.com>
10171
10172         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10173         Add missing "break".
10174         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10175         Add missing "break".
10176
10177 2018-05-04  Tom Tromey  <tom@tromey.com>
10178
10179         * rs6000-tdep.c (ppc_process_record_op4)
10180         (ppc_process_record_op63): Add fall-through comment.
10181
10182 2018-05-04  Tom Tromey  <tom@tromey.com>
10183
10184         * i386-tdep.c (i386_process_record): Add fall-through comment.
10185
10186 2018-05-04  Tom Tromey  <tom@tromey.com>
10187
10188         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10189         comment.
10190
10191 2018-05-04  Tom Tromey  <tom@tromey.com>
10192
10193         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10194         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10195         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10196         comment.
10197         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10198         comment.
10199         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10200         comment.
10201
10202 2018-05-04  Tom Tromey  <tom@tromey.com>
10203
10204         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10205
10206 2018-05-04  Tom Tromey  <tom@tromey.com>
10207
10208         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10209         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10210         * symfile.c (section_is_mapped): Fix fall-through comment.
10211         * stabsread.c (define_symbol, read_member_functions): Fix
10212         fall-through comment.
10213         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10214         comment.
10215         * remote.c (remote_wait_as): Fix fall-through comment.
10216         * p-exp.y (yylex): Fix fall-through comment.
10217         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10218         comment.
10219         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10220         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10221         * jv-exp.y (yylex): Fix fall-through comment.
10222         * go-exp.y (lex_one_token): Fix fall-through comment.
10223         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10224         fall-through comment.
10225         * f-exp.y (yylex): Fix fall-through comment.
10226         * dwarf2read.c (process_die): Fix fall-through comments.
10227         * dbxread.c (process_one_symbol): Fix fall-through comment.
10228         * d-exp.y (lex_one_token): Fix fall-through comment.
10229         * cp-name-parser.y (yylex): Fix fall-through comment.
10230         * coffread.c (coff_symtab_read): Fix fall-through comment.
10231         * c-exp.y (lex_one_token): Fix fall-through comment.
10232         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10233         comment.
10234         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10235         comment.
10236
10237 2018-05-04  Tom Tromey  <tom@tromey.com>
10238
10239         PR python/22730:
10240         * NEWS: Mention gdb.execute change.
10241         * gdbcmd.h (execute_control_command): Don't declare.
10242         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10243         execute_control_commands, execute_control_commands_to_string.
10244         * cli/cli-script.h (execute_control_commands)
10245         (execute_control_commands_to_string): Declare.
10246         (execute_control_command): Add from_tty parameter.
10247         * cli/cli-script.c (execute_control_commands)
10248         (execute_control_commands_to_string): New functions.
10249         (execute_user_command): Use execute_control_commands.
10250         (execute_control_command_1): Add "from_tty" parameter.  Update.
10251         (execute_control_command): Likewise.
10252
10253 2018-05-04  Tom Tromey  <tom@tromey.com>
10254
10255         PR python/22731:
10256         * NEWS: Mention that breakpoint commands are writable.
10257         * python/py-breakpoint.c (bppy_set_commands): New function.
10258         (breakpoint_object_getset) <"commands">: Use it.
10259
10260 2018-05-04  Tom Tromey  <tom@tromey.com>
10261
10262         * tracepoint.c (actions_command): Update.
10263         * mi/mi-cmd-break.c (mi_command_line_array)
10264         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10265         (mi_read_next_line): Remove.
10266         (mi_cmd_break_commands): Update.
10267         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10268         function_view.
10269         * cli/cli-script.c (get_command_line): Update.
10270         (process_next_line): Use function_view.  Constify.
10271         (recurse_read_control_structure, read_command_lines)
10272         (read_command_lines_1): Change argument types to function_view.
10273         (do_define_command, document_command): Update.
10274         * breakpoint.h (check_tracepoint_command): Don't declare.
10275         * breakpoint.c (check_tracepoint_command): Remove.
10276         (commands_command_1, create_tracepoint_from_upload): Update.
10277
10278 2018-05-04  Tom Tromey  <tom@tromey.com>
10279
10280         PR gdb/11750:
10281         * cli/cli-script.h (enum command_control_type) <define_control>:
10282         New constant.
10283         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10284         (build_command_line, execute_control_command_1)
10285         (process_next_line): Likewise.
10286         (do_define_command): New function, extracted from define_command.
10287         (define_command): Use it.
10288
10289 2018-05-04  Tom Tromey  <tom@tromey.com>
10290
10291         * tracepoint.c (actions_command): Update.
10292         * cli/cli-script.h (read_command_lines): Update.
10293         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10294         (MAX_TMPBUF): Remove define.
10295         (define_command): Use string_printf.
10296         (document_command): Likewise.
10297         * breakpoint.c (commands_command_1): Update.
10298
10299 2018-05-04  Tom Tromey  <tom@tromey.com>
10300
10301         * top.c (execute_command): Update.
10302         * cli/cli-script.h (print_command_lines): Now varargs.
10303         * cli/cli-script.c (print_command_lines): Now varargs.
10304         (execute_control_command_1) <case while_control, case if_control>:
10305         Update.
10306
10307 2018-05-04  Tom Tromey  <tom@tromey.com>
10308
10309         * tracepoint.c (all_tracepoint_actions): Rename from
10310         all_tracepoint_actions_and_cleanup.  Change return type.
10311         (actions_command, encode_actions_1, encode_actions)
10312         (trace_dump_actions, tdump_command): Update.
10313         * remote.c (remote_download_command_source): Update.
10314         * python/python.c (gdbpy_eval_from_control_command)
10315         (python_command, python_interactive_command): Update.
10316         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10317         * guile/guile.c (guile_command)
10318         (gdbscm_eval_from_control_command, guile_command): Update.
10319         * compile/compile.c (compile_code_command)
10320         (compile_print_command, compile_to_object): Update.
10321         * cli/cli-script.h (struct command_lines_deleter): New.
10322         (counted_command_line): New typedef.
10323         (struct command_line): Add constructor, destructor.
10324         <body_list>: Remove.
10325         <body_list_0, body_list_1>: New members.
10326         (command_line_up): Remove typedef.
10327         (read_command_lines, read_command_lines_1, get_command_line):
10328         Update.
10329         (copy_command_lines): Don't declare.
10330         * cli/cli-script.c (build_command_line): Use "new".
10331         (get_command_line): Return counted_command_line.
10332         (print_command_lines, execute_user_command)
10333         (execute_control_command_1, while_command, if_command): Update.
10334         (realloc_body_list): Remove.
10335         (process_next_line, recurse_read_control_structure): Update.
10336         (read_command_lines, read_command_lines_1): Return counted_command_line.
10337         (free_command_lines): Use "delete".
10338         (copy_command_lines): Remove.
10339         (define_command, document_command, show_user_1): Update.
10340         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10341         a counted_command_line.
10342         * breakpoint.h (counted_command_line): Remove typedef.
10343         (breakpoint_set_commands): Update.
10344         * breakpoint.c (check_no_tracepoint_commands)
10345         (validate_commands_for_breakpoint): Update.
10346         (breakpoint_set_commands): Change commands to be a
10347         counted_command_line.
10348         (commands_command_1, update_dprintf_command_list)
10349         (create_tracepoint_from_upload): Update.
10350
10351 2018-05-04  Tom Tromey  <tom@tromey.com>
10352
10353         * cli/cli-decode.h (cmd_list_element): New constructor.
10354         (~cmd_list_element): New destructor.
10355         (struct cmd_list_element): Add initializers.
10356         * cli/cli-decode.c (do_add_cmd): Use "new".
10357         (delete_cmd): Use "delete".
10358
10359 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10360             Pedro Alves <palves@redhat.com>
10361
10362         PR breakpoints/19806 and support for PR external/20207.
10363         * NEWS: Mention Aarch64 watchpoint improvements.
10364         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10365         watchpoints and PR external/20207 watchpoints.
10366         * nat/aarch64-linux-hw-point.c
10367         (kernel_supports_any_contiguous_range): New.
10368         (aarch64_watchpoint_offset): New.
10369         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10370         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10371         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10372         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10373         next_addr_orig_p.  Support PR external/20207 watchpoints.
10374         (aarch64_downgrade_regs): New.
10375         (aarch64_dr_state_insert_one_point): New parameters offset and
10376         addr_orig.
10377         (aarch64_dr_state_remove_one_point): Likewise.
10378         (aarch64_handle_breakpoint): Update caller.
10379         (aarch64_handle_aligned_watchpoint): Likewise.
10380         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10381         aligned_offset.
10382         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10383         aarch64_downgrade_regs.
10384         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10385         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10386         (DR_CONTROL_MASK): ... this.
10387         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10388         (unsigned int aarch64_watchpoint_offset): New prototype.
10389         (aarch64_linux_set_debug_regs): Remove const from state.
10390         * utils.c (align_up, align_down): Move to ...
10391         * common/common-utils.c (align_up, align_down): ... here.
10392         * utils.h (align_up, align_down): Move to ...
10393         * common/common-utils.h (align_up, align_down): ... here.
10394
10395 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10396
10397         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10398         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10399         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10400         Re-implement to match the ABI as summarized in GCC's
10401         gcc/config/sparc/sparc.c.  All callers updated.
10402         (sparc32_store_arguments): Remove assertion.
10403
10404 2018-05-04  Tom Tromey  <tom@tromey.com>
10405
10406         * printcmd.c: Don't include tui.h.
10407         (decode_format): Use skip_spaces.
10408
10409 2018-05-04  Tom Tromey  <tom@tromey.com>
10410
10411         PR gdb/22619:
10412         * printcmd.c (last_count): New global.
10413         (x_command): Use saved count when repeating.
10414
10415 2018-05-04  Tom Tromey  <tom@tromey.com>
10416
10417         * nto-procfs.c (do_closedir_cleanup): Remove.
10418         (procfs_pidlist): Use gdb_dir_up.
10419         * procfs.c (do_closedir_cleanup): Remove.
10420         (proc_update_threads): Use gdb_dir_up.
10421         * common/filestuff.h (struct gdb_dir_deleter): New.
10422         (gdb_dir_up): New typedef.
10423
10424 2018-05-04  Tom Tromey  <tom@tromey.com>
10425
10426         * ada-lang.c (print_mention_exception): Use std::string.
10427
10428 2018-05-04  Tom Tromey  <tom@tromey.com>
10429
10430         * ada-lang.c (create_excep_cond_exprs): Update.
10431         (ada_exception_catchpoint_cond_string): Use std::string.
10432
10433 2018-05-04  Tom Tromey  <tom@tromey.com>
10434
10435         * ada-lang.c (xget_renaming_scope): Return std::string.
10436         (old_renaming_is_invisible): Update.
10437
10438 2018-05-04  Tom Tromey  <tom@tromey.com>
10439
10440         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10441         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10442
10443 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10444
10445         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10446
10447 2018-05-04  Tom Tromey  <tom@tromey.com>
10448
10449         * remote.c (remote_query_supported_append): Change type.
10450         (remote_check_symbols): Update.
10451
10452 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10453
10454         PR gdb/11420
10455         * configure.ac: Prepend libpython.
10456         * python/python-config.py: Likewise.
10457         * configure: Regenerate.
10458
10459 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10460
10461         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10462
10463 2018-05-03  Pedro Alves  <palves@redhat.com>
10464
10465         * s390-linux-nat.c
10466         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10467         override.  Write 'true' instead of '1'.
10468         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10469         declaration.
10470
10471 2018-05-02  Pedro Alves  <palves@redhat.com>
10472
10473         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10474         add_inf_child_target.
10475         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10476         add_inf_child_target.
10477         * aix-thread.c (aix_thread_target_info): New.
10478         (aix_thread_target) <shortname, longname, doc>: Delete.
10479         <info>: New.
10480         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10481         add_inf_child_target.
10482         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10483         add_inf_child_target.
10484         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10485         add_inf_child_target.
10486         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10487         add_inf_child_target.
10488         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10489         add_inf_child_target.
10490         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10491         add_inf_child_target.
10492         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10493         add_inf_child_target.
10494         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10495         add_inf_child_target.
10496         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10497         add_inf_child_target.
10498         * bfd-target.c (target_bfd_target_info): New.
10499         (target_bfd) <shortname, longname, doc>: Delete.
10500         <info>: New.
10501         * bsd-kvm.c (bsd_kvm_target_info): New.
10502         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10503         <info>: New.
10504         (bsd_kvm_target::open): Rename to ...
10505         (bsd_kvm_target_open): ... this.  Adjust.
10506         * bsd-uthread.c (bsd_uthread_target_info): New.
10507         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10508         <info>: New.
10509         * corefile.c (core_file_command): Adjust.
10510         * corelow.c (core_target_info): New.
10511         (core_target) <shortname, longname, doc>: Delete.
10512         <info>: New.
10513         (core_target::open): Rename to ...
10514         (core_target_open): ... this.  Adjust.
10515         * ctf.c (ctf_target_info): New.
10516         (ctf_target) <shortname, longname, doc>: Delete.
10517         <info>: New.
10518         (ctf_target::open): Rename to ...
10519         (ctf_target_open): ... this.
10520         (_initialize_ctf): Adjust.
10521         * exec.c (exec_target_info): New.
10522         (exec_target) <shortname, longname, doc>: Delete.
10523         <info>: New.
10524         (exec_target::open): Rename to ...
10525         (exec_target_open): ... this.
10526         * gdbcore.h (core_target_open): Declare.
10527         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10528         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10529         add_inf_child_target.
10530         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10531         add_inf_child_target.
10532         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10533         add_inf_child_target.
10534         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10535         add_inf_child_target.
10536         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10537         add_inf_child_target.
10538         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10539         add_inf_child_target.
10540         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10541         add_inf_child_target.
10542         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10543         add_inf_child_target.
10544         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10545         add_inf_child_target.
10546         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10547         add_inf_child_target.
10548         * inf-child.c (inf_child_target_info): New.
10549         (inf_child_target::info): New.
10550         (inf_child_open_target): Remove 'target' parameter.  Use
10551         get_native_target instead.
10552         (inf_child_target::open): Delete.
10553         (add_inf_child_target): New.
10554         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10555         Delete.
10556         <info>: New.
10557         (add_inf_child_target): Declare.
10558         (inf_child_open_target): Declare.
10559         * linux-thread-db.c (thread_db_target_info): New.
10560         (thread_db_target) <shortname, longname, doc>: Delete.
10561         <info>: New.
10562         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10563         add_inf_child_target.
10564         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10565         add_inf_child_target.
10566         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10567         add_inf_child_target.
10568         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10569         add_inf_child_target.
10570         * make-target-delegates (print_class): Adjust.
10571         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10572         add_inf_child_target.
10573         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10574         add_inf_child_target.
10575         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10576         add_inf_child_target.
10577         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10578         add_inf_child_target.
10579         * nto-procfs.c (nto_native_target_info): New.
10580         (nto_procfs_target_native) <shortname, longname, doc>:
10581         Delete.
10582         <info>: New.
10583         (nto_procfs_target_info): New.
10584         (nto_procfs_target_procfs) <shortname, longname, doc>:
10585         Delete.
10586         <info>: New.
10587         (init_procfs_targets): Adjust.
10588         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10589         add_inf_child_target.
10590         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10591         add_inf_child_target.
10592         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10593         add_inf_child_target.
10594         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10595         add_inf_child_target.
10596         * ravenscar-thread.c (ravenscar_target_info): New.
10597         (ravenscar_thread_target) <shortname, longname, doc>:
10598         Delete.
10599         <info>: New.
10600         * record-btrace.c (record_btrace_target_info):
10601         (record_btrace_target) <shortname, longname, doc>: Delete.
10602         <info>: New.
10603         (record_btrace_target::open): Rename to ...
10604         (record_btrace_target_open): ... this.  Adjust.
10605         * record-full.c (record_longname, record_doc): New.
10606         (record_full_base_target) <shortname, longname, doc>: Delete.
10607         <info>: New.
10608         (record_full_target_info): New.
10609         (record_full_target): <shortname>: Delete.
10610         <info>: New.
10611         (record_full_core_open_1, record_full_open_1): Update comments.
10612         (record_full_base_target::open): Rename to ...
10613         (record_full_open): ... this.
10614         (cmd_record_full_restore): Update.
10615         (_initialize_record_full): Update.
10616         * remote-sim.c (remote_sim_target_info): New.
10617         (gdbsim_target) <shortname, longname, doc>: Delete.
10618         <info>: New.
10619         (gdbsim_target::open): Rename to ...
10620         (gdbsim_target_open): ... this.
10621         (_initialize_remote_sim): Adjust.
10622         * remote.c (remote_doc): New.
10623         (remote_target_info): New.
10624         (remote_target) <shortname, longname, doc>: Delete.
10625         <info>: New.
10626         (extended_remote_target_info): New.
10627         (extended_remote_target) <shortname, longname, doc>: Delete.
10628         <info>: New.
10629         (remote_target::open_1): Make static.  Adjust.
10630         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10631         * s390-linux-nat.c (_initialize_s390_nat): Use
10632         add_inf_child_target.
10633         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10634         add_inf_child_target.
10635         * sol-thread.c (thread_db_target_info): New.
10636         (sol_thread_target) <shortname, longname, doc>: Delete.
10637         <info>: New.
10638         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10639         add_inf_child_target.
10640         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10641         add_inf_child_target.
10642         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10643         add_inf_child_target.
10644         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10645         add_inf_child_target.
10646         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10647         add_inf_child_target.
10648         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10649         add_inf_child_target.
10650         * spu-linux-nat.c (_initialize_spu_nat): Use
10651         add_inf_child_target.
10652         * spu-multiarch.c (spu_multiarch_target_info): New.
10653         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10654         <info>: New.
10655         * target-delegates.c: Regenerate.
10656         * target.c: Include <unordered_map>.
10657         (target_ops_p): Delete.
10658         (DEF_VEC_P(target_ops_p)): Delete.
10659         (target_factories): New.
10660         (test_target_info): New.
10661         (test_target_ops::info): New.
10662         (open_target): Adjust to use target_factories.
10663         (add_target_with_completer): Rename to ...
10664         (add_target): ... this.  Change prototype.  Register target_info
10665         and open callback in target_factories.  Register target_info in
10666         command context instead of target_ops.
10667         (add_target): Delete old implementation.
10668         (add_deprecated_target_alias): Change prototype.  Adjust.
10669         (the_native_target): New.
10670         (set_native_target, get_native_target): New.
10671         (find_default_run_target): Use the_native_target.
10672         (find_attach_target, find_run_target): Simplify.
10673         (target_ops::open): Delete.
10674         (dummy_target_info): New.
10675         (dummy_target::shortname, dummy_target::longname)
10676         (dummy_target::doc): Delete.
10677         (dummy_target::info): New.
10678         (debug_target::shortname, debug_target::longname)
10679         (debug_target::doc): Delete.
10680         (debug_target::info): New.
10681         * target.h (struct target_info): New.
10682         (target_ops::~target_ops): Add comment.
10683         (target_ops::info): New.
10684         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10685         longer virtual.  Implement in terms of target_info.
10686         (set_native_target, get_native_target): Declare.
10687         (target_open_ftype): New.
10688         (add_target, add_target_with_completer)
10689         (add_deprecated_target_alias): Change prototype.
10690         (test_target) <shortname, longname, doc>: Delete.
10691         <info>: New.
10692         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10693         add_inf_child_target.
10694         * tracefile-tfile.c (tfile_target_info): New.
10695         (tfile_target) <shortname, longname, doc>: Delete.
10696         <info>: New.
10697         (tfile_target::open): Rename to ...
10698         (tfile_target_open): ... this.
10699         (_initialize_tracefile_tfile): Adjust.
10700         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10701         add_inf_child_target.
10702         * windows-nat.c (_initialize_windows_nat): Use
10703         add_inf_child_target.
10704         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10705         add_inf_child_target.
10706
10707 2018-05-02  Pedro Alves  <palves@redhat.com>
10708
10709         * linux-nat.h (linux_nat_target) <low_new_thread,
10710         low_delete_thread, low_new_fork, low_forget_process,
10711         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10712         New virtual methods.
10713         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10714         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10715         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10716         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10717         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10718         Delete.
10719         * linux-fork.c (delete_fork): Adjust to call low method.
10720         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10721         (linux_nat_new_fork, linux_nat_forget_process_hook)
10722         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10723         (linux_nat_status_is_event):
10724         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10725         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10726         to call low method.
10727         (sigtrap_is_event): Rename to ...
10728         (linux_nat_target::low_status_is_event): ... this.
10729         (linux_nat_set_status_is_event): Delete.
10730         (save_stop_reason, linux_nat_wait_1)
10731         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10732         low methods.
10733         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10734         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10735         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10736         (linux_nat_set_prepare_to_resume): Delete.
10737         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10738         low virtual methods.
10739         * amd64-linux-nat.c: Likewise.
10740         * arm-linux-nat.c: Likewise.
10741         * i386-linux-nat.c: Likewise.
10742         * ia64-linux-nat.c: Likewise.
10743         * mips-linux-nat.c: Likewise.
10744         * ppc-linux-nat.c: Likewise.
10745         * s390-linux-nat.c: Likewise.
10746         * sparc64-linux-nat.c: Likewise.
10747         * x86-linux-nat.c: Likewise.
10748         * x86-linux-nat.h: Include "nat/x86-linux.h".
10749         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10750         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10751         Override methods.
10752
10753 2018-05-02  Pedro Alves  <palves@redhat.com>
10754
10755         * target.h (target_ops)
10756         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10757         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10758         stopped_by_watchpoint, have_continuable_watchpoint,
10759         stopped_data_address, watchpoint_addr_within_range,
10760         can_accel_watchpoint_condition, can_run, thread_alive,
10761         has_all_memory, has_memory, has_stack, has_registers,
10762         has_execution, can_async_p, is_async_p, supports_non_stop,
10763         always_non_stop_p, can_execute_reverse, supports_multi_process,
10764         supports_enable_disable_tracepoint,
10765         supports_disable_randomization, supports_string_tracing,
10766         supports_evaluation_of_breakpoint_conditions,
10767         can_run_breakpoint_commands, filesystem_is_local,
10768         can_download_tracepoint, get_trace_state_variable_value,
10769         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10770         record_is_replaying, record_will_replay,
10771         augmented_libraries_svr4_read>: Adjust to return bool.
10772         * aarch64-linux-nat.c: All implementations adjusted.
10773         * aix-thread.c: All implementations adjusted.
10774         * arm-linux-nat.c: All implementations adjusted.
10775         * breakpoint.c: All implementations adjusted.
10776         * bsd-kvm.c: All implementations adjusted.
10777         * bsd-uthread.c: All implementations adjusted.
10778         * corelow.c: All implementations adjusted.
10779         * ctf.c: All implementations adjusted.
10780         * darwin-nat.c: All implementations adjusted.
10781         * darwin-nat.h: All implementations adjusted.
10782         * exec.c: All implementations adjusted.
10783         * fbsd-nat.c: All implementations adjusted.
10784         * fbsd-nat.h: All implementations adjusted.
10785         * gnu-nat.c: All implementations adjusted.
10786         * gnu-nat.h: All implementations adjusted.
10787         * go32-nat.c: All implementations adjusted.
10788         * ia64-linux-nat.c: All implementations adjusted.
10789         * inf-child.c: All implementations adjusted.
10790         * inf-child.h: All implementations adjusted.
10791         * inf-ptrace.c: All implementations adjusted.
10792         * inf-ptrace.h: All implementations adjusted.
10793         * linux-nat.c: All implementations adjusted.
10794         * linux-nat.h: All implementations adjusted.
10795         * mips-linux-nat.c: All implementations adjusted.
10796         * nto-procfs.c: All implementations adjusted.
10797         * ppc-linux-nat.c: All implementations adjusted.
10798         * procfs.c: All implementations adjusted.
10799         * ravenscar-thread.c: All implementations adjusted.
10800         * record-btrace.c: All implementations adjusted.
10801         * record-full.c: All implementations adjusted.
10802         * remote-sim.c: All implementations adjusted.
10803         * remote.c: All implementations adjusted.
10804         * s390-linux-nat.c: All implementations adjusted.
10805         * sol-thread.c: All implementations adjusted.
10806         * spu-multiarch.c: All implementations adjusted.
10807         * target-delegates.c: All implementations adjusted.
10808         * target.c: All implementations adjusted.
10809         * target.h: All implementations adjusted.
10810         * tracefile-tfile.c: All implementations adjusted.
10811         * tracefile.c: All implementations adjusted.
10812         * tracefile.h: All implementations adjusted.
10813         * windows-nat.c: All implementations adjusted.
10814         * x86-linux-nat.h: All implementations adjusted.
10815         * x86-nat.h: All implementations adjusted.
10816
10817 2018-05-02  Pedro Alves  <palves@redhat.com>
10818
10819         * make-target-delegates (scan_target_h): Don't trim lines here.
10820         Replace sequences of tabs and/or whitespace with a single
10821         whitespace.
10822         (top level, parsing methods): Trim each line before processing it
10823         here.
10824
10825 2018-05-02  Pedro Alves  <palves@redhat.com>
10826             John Baldwin  <jhb@freebsd.org>
10827
10828         * target.h (enum strata) <debug_stratum>: New.
10829         (struct target_ops) <all delegation methods>: Replace by C++
10830         virtual methods, and drop "to_" prefix.  All references updated
10831         throughout.
10832         <to_shortname, to_longname, to_doc, to_data,
10833         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10834         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10835         virtual methods.  All references updated throughout.
10836         <can_attach, supports_terminal_ours, can_create_inferior,
10837         get_thread_control_capabilities, attach_no_wait>: New
10838         virtual methods.
10839         <insert_breakpoint, remove_breakpoint>: Now
10840         TARGET_DEFAULT_NORETURN methods.
10841         <info_proc>: Now returns bool.
10842         <to_magic>: Delete.
10843         (OPS_MAGIC): Delete.
10844         (current_target): Delete.  All references replaced by references
10845         to ...
10846         (target_stack): ... this.  New.
10847         (target_shortname, target_longname): Adjust.
10848         (target_can_run): Now a function declaration.
10849         (default_child_has_all_memory, default_child_has_memory)
10850         (default_child_has_stack, default_child_has_registers)
10851         (default_child_has_execution): Remove target_ops parameter.
10852         (complete_target_initialization): Delete.
10853         (memory_breakpoint_target): New template class.
10854         (test_target_ops): Refactor as a C++ class with virtual methods.
10855         * make-target-delegates (NAME_PART): Tighten.
10856         (POINTER_PART, CP_SYMBOL): New.
10857         (SIMPLE_RETURN_PART): Reimplement.
10858         (VEC_RETURN_PART): Expect less.
10859         (RETURN_PART, VIRTUAL_PART): New.
10860         (METHOD): Adjust to C++ virtual methods.
10861         (scan_target_h): Remove reference to C99.
10862         (dname): Output "target_ops::" prefix.
10863         (write_function_header): Adjust to output a C++ class method.
10864         (write_declaration): New.
10865         (write_delegator): Adjust to output a C++ class method.
10866         (tdname): Output "dummy_target::" prefix.
10867         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10868         method.
10869         (tdefault_names, debug_names): Delete.
10870         (return_types, tdefaults, styles, argtypes_array): New.
10871         (top level): All methods are delegators.
10872         (print_class): New.
10873         (top level): Print dummy_target and debug_target classes.
10874         * target-delegates.c: Regenerate.
10875         * target-debug.h (target_debug_print_enum_info_proc_what)
10876         (target_debug_print_thread_control_capabilities)
10877         (target_debug_print_thread_info_p): New.
10878         * target.c (dummy_target): Delete.
10879         (the_dummy_target, the_debug_target): New.
10880         (target_stack): Now extern.
10881         (set_targetdebug): Push/unpush debug target.
10882         (default_child_has_all_memory, default_child_has_memory)
10883         (default_child_has_stack, default_child_has_registers)
10884         (default_child_has_execution): Remove target_ops parameter.
10885         (complete_target_initialization): Delete.
10886         (add_target_with_completer): No longer call
10887         complete_target_initialization.
10888         (target_supports_terminal_ours): Use regular delegation.
10889         (update_current_target): Delete.
10890         (push_target): No longer check magic number.  Don't call
10891         update_current_target.
10892         (unpush_target): Don't call update_current_target.
10893         (target_is_pushed): No longer check magic number.
10894         (target_require_runnable): Skip for all stratums over
10895         process_stratum.
10896         (target_ops::info_proc): New.
10897         (target_info_proc): Use find_target_at and
10898         find_default_run_target.
10899         (target_supports_disable_randomization): Use regular delegation.
10900         (target_get_osdata): Use find_target_at.
10901         (target_ops::open, target_ops::close, target_ops::can_attach)
10902         (target_ops::attach, target_ops::can_create_inferior)
10903         (target_ops::create_inferior, target_ops::can_run)
10904         (target_can_run): New.
10905         (default_fileio_target): Use regular delegation.
10906         (target_ops::fileio_open, target_ops::fileio_pwrite)
10907         (target_ops::fileio_pread, target_ops::fileio_fstat)
10908         (target_ops::fileio_close, target_ops::fileio_unlink)
10909         (target_ops::fileio_readlink): New.
10910         (target_fileio_open_1, target_fileio_unlink)
10911         (target_fileio_readlink): Always call the target method.  Handle
10912         FILEIO_ENOSYS.
10913         (return_zero, return_zero_has_execution): Delete.
10914         (init_dummy_target): Delete.
10915         (dummy_target::dummy_target, dummy_target::shortname)
10916         (dummy_target::longname, dummy_target::doc)
10917         (debug_target::debug_target, debug_target::shortname)
10918         (debug_target::longname, debug_target::doc): New.
10919         (target_supports_delete_record): Use regular delegation.
10920         (setup_target_debug): Delete.
10921         (maintenance_print_target_stack): Skip debug_stratum.
10922         (initialize_targets): Instantiate the_dummy_target and
10923         the_debug_target.
10924         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10925         use target_stack.
10926         (target_auxv_search, fprint_target_auxv): Adjust.
10927         (info_auxv_command): Adjust to use target_stack.
10928         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10929         * exceptions.c (print_flush): Handle a NULL target_stack.
10930         * regcache.c (target_ops_no_register): Refactor as class with
10931         virtual methods.
10932
10933         * exec.c (exec_target): New class.
10934         (exec_ops): Now an exec_target.
10935         (exec_open, exec_close_1, exec_get_section_table)
10936         (exec_xfer_partial, exec_files_info, exec_has_memory)
10937         (exec_make_note_section): Refactor as exec_target methods.
10938         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10939         Delete.
10940         (exec_target::find_memory_regions): New.
10941         (_initialize_exec): Don't call init_exec_ops.
10942         * gdbcore.h (exec_file_clear): Delete.
10943
10944         * corefile.c (core_target): Delete.
10945         (core_file_command): Adjust.
10946         * corelow.c (core_target): New class.
10947         (the_core_target): New.
10948         (core_close): Remove target_ops parameter.
10949         (core_close_cleanup): Adjust.
10950         (core_target::close): New.
10951         (core_open, core_detach, get_core_registers, core_files_info)
10952         (core_xfer_partial, core_thread_alive, core_read_description)
10953         (core_pid_to_str, core_thread_name, core_has_memory)
10954         (core_has_stack, core_has_registers, core_info_proc): Rework as
10955         core_target methods.
10956         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10957         (_initialize_corelow): Initialize the_core_target.
10958         * gdbcore.h (core_target): Delete.
10959         (the_core_target): New.
10960
10961         * ctf.c: (ctf_target): New class.
10962         (ctf_ops): Now a ctf_target.
10963         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10964         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10965         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10966         methods.
10967         (init_ctf_ops): Delete.
10968         (_initialize_ctf): Don't call it.
10969         * tracefile-tfile.c (tfile_target): New class.
10970         (tfile_ops): Now a tfile_target.
10971         (tfile_open, tfile_close, tfile_files_info)
10972         (tfile_get_tracepoint_status, tfile_trace_find)
10973         (tfile_fetch_registers, tfile_xfer_partial)
10974         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10975         Refactor as tfile_target methods.
10976         (tfile_xfer_partial_features): Remove target_ops parameter.
10977         (init_tfile_ops): Delete.
10978         (_initialize_tracefile_tfile): Don't call it.
10979         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10980         (tracefile_has_stack, tracefile_has_registers)
10981         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10982         tracefile_target methods.
10983         (init_tracefile_ops): Delete.
10984         (tracefile_target::tracefile_target): New.
10985         * tracefile.h: Include "target.h".
10986         (tracefile_target): New class.
10987         (init_tracefile_ops): Delete.
10988
10989         * spu-multiarch.c (spu_multiarch_target): New class.
10990         (spu_ops): Now a spu_multiarch_target.
10991         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10992         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10993         (spu_search_memory, spu_mourn_inferior): Refactor as
10994         spu_multiarch_target methods.
10995         (init_spu_ops): Delete.
10996         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10997         complete_target_initialization.
10998
10999         * ravenscar-thread.c (ravenscar_thread_target): New class.
11000         (ravenscar_ops): Now a ravenscar_thread_target.
11001         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11002         (ravenscar_thread_alive, ravenscar_pid_to_str)
11003         (ravenscar_fetch_registers, ravenscar_store_registers)
11004         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11005         (ravenscar_stopped_by_hw_breakpoint)
11006         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11007         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11008         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11009         methods.
11010         (init_ravenscar_thread_ops): Delete.
11011         (_initialize_ravenscar): Remove references to
11012         init_ravenscar_thread_ops and complete_target_initialization.
11013
11014         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11015         (bsd_uthread_target): New class.
11016         (bsd_uthread_ops): Now a bsd_uthread_target.
11017         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11018         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11019         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11020         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11021         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11022         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11023         (bsd_uthread_target): Delete function.
11024         (_initialize_bsd_uthread): Remove reference to
11025         complete_target_initialization.
11026
11027         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11028         (target_bfd): ... this new class.
11029         (target_bfd_xfer_partial, target_bfd_get_section_table)
11030         (target_bfd_close): Refactor as target_bfd methods.
11031         (target_bfd::~target_bfd): New.
11032         (target_bfd_reopen): Adjust.
11033         (target_bfd::close): New.
11034
11035         * record-btrace.c (record_btrace_target): New class.
11036         (record_btrace_ops): Now a record_btrace_target.
11037         (record_btrace_open, record_btrace_stop_recording)
11038         (record_btrace_disconnect, record_btrace_close)
11039         (record_btrace_async, record_btrace_info)
11040         (record_btrace_insn_history, record_btrace_insn_history_range)
11041         (record_btrace_insn_history_from, record_btrace_call_history)
11042         (record_btrace_call_history_range)
11043         (record_btrace_call_history_from, record_btrace_record_method)
11044         (record_btrace_is_replaying, record_btrace_will_replay)
11045         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11046         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11047         (record_btrace_store_registers, record_btrace_prepare_to_store)
11048         (record_btrace_to_get_unwinder)
11049         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11050         (record_btrace_commit_resume, record_btrace_wait)
11051         (record_btrace_stop, record_btrace_can_execute_reverse)
11052         (record_btrace_stopped_by_sw_breakpoint)
11053         (record_btrace_supports_stopped_by_sw_breakpoint)
11054         (record_btrace_stopped_by_hw_breakpoint)
11055         (record_btrace_supports_stopped_by_hw_breakpoint)
11056         (record_btrace_update_thread_list, record_btrace_thread_alive)
11057         (record_btrace_goto_begin, record_btrace_goto_end)
11058         (record_btrace_goto, record_btrace_stop_replaying_all)
11059         (record_btrace_execution_direction)
11060         (record_btrace_prepare_to_generate_core)
11061         (record_btrace_done_generating_core): Refactor as
11062         record_btrace_target methods.
11063         (init_record_btrace_ops): Delete.
11064         (_initialize_record_btrace): Remove reference to
11065         init_record_btrace_ops.
11066         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11067         the execution_direction global.
11068         (record_full_base_target, record_full_target)
11069         (record_full_core_target): New classes.
11070         (record_full_ops): Now a record_full_target.
11071         (record_full_core_ops): Now a record_full_core_target.
11072         (record_full_target::detach, record_full_target::disconnect)
11073         (record_full_core_target::disconnect)
11074         (record_full_target::mourn_inferior, record_full_target::kill):
11075         New.
11076         (record_full_open, record_full_close, record_full_async): Refactor
11077         as methods of the record_full_base_target class.
11078         (record_full_resume, record_full_commit_resume): Refactor
11079         as methods of the record_full_target class.
11080         (record_full_wait, record_full_stopped_by_watchpoint)
11081         (record_full_stopped_data_address)
11082         (record_full_stopped_by_sw_breakpoint)
11083         (record_full_supports_stopped_by_sw_breakpoint)
11084         (record_full_stopped_by_hw_breakpoint)
11085         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11086         methods of the record_full_base_target class.
11087         (record_full_store_registers, record_full_xfer_partial)
11088         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11089         Refactor as methods of the record_full_target class.
11090         (record_full_can_execute_reverse, record_full_get_bookmark)
11091         (record_full_goto_bookmark, record_full_execution_direction)
11092         (record_full_record_method, record_full_info, record_full_delete)
11093         (record_full_is_replaying, record_full_will_replay)
11094         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11095         (record_full_stop_replaying): Refactor as methods of the
11096         record_full_base_target class.
11097         (record_full_core_resume, record_full_core_kill)
11098         (record_full_core_fetch_registers)
11099         (record_full_core_prepare_to_store)
11100         (record_full_core_store_registers, record_full_core_xfer_partial)
11101         (record_full_core_insert_breakpoint)
11102         (record_full_core_remove_breakpoint)
11103         (record_full_core_has_execution): Refactor
11104         as methods of the record_full_core_target class.
11105         (record_full_base_target::supports_delete_record): New.
11106         (init_record_full_ops): Delete.
11107         (init_record_full_core_ops): Delete.
11108         (record_full_save): Refactor as method of the
11109         record_full_base_target class.
11110         (_initialize_record_full): Remove references to
11111         init_record_full_ops and init_record_full_core_ops.
11112
11113         * remote.c (remote_target, extended_remote_target): New classes.
11114         (remote_ops): Now a remote_target.
11115         (extended_remote_ops): Now an extended_remote_target.
11116         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11117         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11118         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11119         (remote_pass_signals, remote_set_syscall_catchpoint)
11120         (remote_program_signals, )
11121         (remote_thread_always_alive): Remove target_ops parameter.
11122         (remote_thread_alive, remote_thread_name)
11123         (remote_update_thread_list, remote_threads_extra_info)
11124         (remote_static_tracepoint_marker_at)
11125         (remote_static_tracepoint_markers_by_strid)
11126         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11127         (remote_open): Refactor as methods of remote_target.
11128         (extended_remote_open, extended_remote_detach)
11129         (extended_remote_attach, extended_remote_post_attach):
11130         (extended_remote_supports_disable_randomization)
11131         (extended_remote_create_inferior): : Refactor as method of
11132         extended_remote_target.
11133         (remote_set_permissions, remote_open_1, remote_detach)
11134         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11135         (remote_resume, remote_commit_resume, remote_stop)
11136         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11137         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11138         (remote_prepare_to_store, remote_store_registers)
11139         (remote_flash_erase, remote_flash_done, remote_files_info)
11140         (remote_kill, remote_mourn, remote_insert_breakpoint)
11141         (remote_remove_breakpoint, remote_insert_watchpoint)
11142         (remote_watchpoint_addr_within_range)
11143         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11144         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11145         (remote_supports_stopped_by_sw_breakpoint)
11146         (remote_stopped_by_hw_breakpoint)
11147         (remote_supports_stopped_by_hw_breakpoint)
11148         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11149         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11150         (remote_verify_memory): Refactor as methods of remote_target.
11151         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11152         parameter.
11153         (remote_xfer_partial, remote_get_memory_xfer_limit)
11154         (remote_search_memory, remote_rcmd, remote_memory_map)
11155         (remote_pid_to_str, remote_get_thread_local_address)
11156         (remote_get_tib_address, remote_read_description): Refactor as
11157         methods of remote_target.
11158         (remote_target::fileio_open, remote_target::fileio_pwrite)
11159         (remote_target::fileio_pread, remote_target::fileio_close): New.
11160         (remote_hostio_readlink, remote_hostio_fstat)
11161         (remote_filesystem_is_local, remote_can_execute_reverse)
11162         (remote_supports_non_stop, remote_supports_disable_randomization)
11163         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11164         (remote_supports_enable_disable_tracepoint)
11165         (remote_supports_string_tracing)
11166         (remote_can_run_breakpoint_commands, remote_trace_init)
11167         (remote_download_tracepoint, remote_can_download_tracepoint)
11168         (remote_download_trace_state_variable, remote_enable_tracepoint)
11169         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11170         (remote_trace_start, remote_get_trace_status)
11171         (remote_get_tracepoint_status, remote_trace_stop)
11172         (remote_trace_find, remote_get_trace_state_variable_value)
11173         (remote_save_trace_data, remote_get_raw_trace_data)
11174         (remote_set_disconnected_tracing, remote_core_of_thread)
11175         (remote_set_circular_trace_buffer, remote_traceframe_info)
11176         (remote_get_min_fast_tracepoint_insn_len)
11177         (remote_set_trace_buffer_size, remote_set_trace_notes)
11178         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11179         (remote_disable_btrace, remote_teardown_btrace)
11180         (remote_read_btrace, remote_btrace_conf)
11181         (remote_augmented_libraries_svr4_read, remote_load)
11182         (remote_pid_to_exec_file, remote_can_do_single_step)
11183         (remote_execution_direction, remote_thread_handle_to_thread_info):
11184         Refactor as methods of remote_target.
11185         (init_remote_ops, init_extended_remote_ops): Delete.
11186         (remote_can_async_p, remote_is_async_p, remote_async)
11187         (remote_thread_events, remote_upload_tracepoints)
11188         (remote_upload_trace_state_variables): Refactor as methods of
11189         remote_target.
11190         (_initialize_remote): Remove references to init_remote_ops and
11191         init_extended_remote_ops.
11192
11193         * remote-sim.c (gdbsim_target): New class.
11194         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11195         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11196         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11197         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11198         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11199         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11200         Refactor as methods of gdbsim_target.
11201         (gdbsim_ops): Now a gdbsim_target.
11202         (init_gdbsim_ops): Delete.
11203         (gdbsim_cntrl_c): Adjust.
11204         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11205
11206         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11207         (the_amd64_linux_nat_target): New.
11208         (amd64_linux_fetch_inferior_registers)
11209         (amd64_linux_store_inferior_registers): Refactor as methods of
11210         amd64_linux_nat_target.
11211         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11212         * i386-linux-nat.c: Don't include "linux-nat.h".
11213         (i386_linux_nat_target): New class.
11214         (the_i386_linux_nat_target): New.
11215         (i386_linux_fetch_inferior_registers)
11216         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11217         as methods of i386_linux_nat_target.
11218         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11219         * inf-child.c (inf_child_ops): Delete.
11220         (inf_child_fetch_inferior_registers)
11221         (inf_child_store_inferior_registers): Delete.
11222         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11223         methods of inf_child_target.
11224         (inf_child_target::supports_terminal_ours)
11225         (inf_child_target::terminal_init)
11226         (inf_child_target::terminal_inferior)
11227         (inf_child_target::terminal_ours_for_output)
11228         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11229         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11230         New.
11231         (inf_child_open, inf_child_disconnect, inf_child_close)
11232         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11233         (inf_child_post_startup_inferior, inf_child_can_run)
11234         (inf_child_pid_to_exec_file): Refactor as methods of
11235         inf_child_target.
11236         (inf_child_follow_fork): Delete.
11237         (inf_child_target::can_create_inferior)
11238         (inf_child_target::can_attach): New.
11239         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11240         (inf_child_target::has_stack, inf_child_target::has_registers)
11241         (inf_child_target::has_execution): New.
11242         (inf_child_fileio_open, inf_child_fileio_pwrite)
11243         (inf_child_fileio_pread, inf_child_fileio_fstat)
11244         (inf_child_fileio_close, inf_child_fileio_unlink)
11245         (inf_child_fileio_readlink, inf_child_use_agent)
11246         (inf_child_can_use_agent): Refactor as methods of
11247         inf_child_target.
11248         (return_zero, inf_child_target): Delete.
11249         (inf_child_target::inf_child_target): New.
11250         * inf-child.h: Include "target.h".
11251         (inf_child_target): Delete function prototype.
11252         (inf_child_target): New class.
11253         (inf_child_open_target, inf_child_mourn_inferior)
11254         (inf_child_maybe_unpush_target): Delete.
11255         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11256         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11257         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11258         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11259         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11260         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11261         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11262         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11263         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11264         methods of inf_ptrace_target.
11265         (inf_ptrace_target): Delete function.
11266         * inf-ptrace.h: Include "inf-child.h".
11267         (inf_ptrace_target): Delete function declaration.
11268         (inf_ptrace_target): New class.
11269         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11270         * linux-nat.c (linux_target): New.
11271         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11272         (linux_nat_target::~linux_nat_target): New.
11273         (linux_child_post_attach, linux_child_post_startup_inferior)
11274         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11275         (linux_child_remove_fork_catchpoint)
11276         (linux_child_insert_vfork_catchpoint)
11277         (linux_child_remove_vfork_catchpoint)
11278         (linux_child_insert_exec_catchpoint)
11279         (linux_child_remove_exec_catchpoint)
11280         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11281         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11282         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11283         (linux_nat_stopped_data_address)
11284         (linux_nat_stopped_by_sw_breakpoint)
11285         (linux_nat_supports_stopped_by_sw_breakpoint)
11286         (linux_nat_stopped_by_hw_breakpoint)
11287         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11288         (linux_nat_kill, linux_nat_mourn_inferior)
11289         (linux_nat_xfer_partial, linux_nat_thread_alive)
11290         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11291         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11292         (linux_child_static_tracepoint_markers_by_strid)
11293         (linux_nat_is_async_p, linux_nat_can_async_p)
11294         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11295         (linux_nat_supports_multi_process)
11296         (linux_nat_supports_disable_randomization, linux_nat_async)
11297         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11298         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11299         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11300         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11301         methods of linux_nat_target.
11302         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11303         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11304         parameter.
11305         (check_stopped_by_watchpoint): Adjust.
11306         (linux_xfer_partial): Delete.
11307         (linux_target_install_ops, linux_target, linux_nat_add_target):
11308         Delete.
11309         (linux_nat_target::linux_nat_target): New.
11310         * linux-nat.h: Include "inf-ptrace.h".
11311         (linux_nat_target): New.
11312         (linux_target, linux_target_install_ops, linux_nat_add_target):
11313         Delete function declarations.
11314         (linux_target): Declare global.
11315         * linux-thread-db.c (thread_db_target): New.
11316         (thread_db_target::thread_db_target): New.
11317         (thread_db_ops): Delete.
11318         (the_thread_db_target): New.
11319         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11320         (thread_db_update_thread_list, thread_db_pid_to_str)
11321         (thread_db_extra_thread_info)
11322         (thread_db_thread_handle_to_thread_info)
11323         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11324         (thread_db_resume): Refactor as methods of thread_db_target.
11325         (init_thread_db_ops): Delete.
11326         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11327         * x86-linux-nat.c: Don't include "linux-nat.h".
11328         (super_post_startup_inferior): Delete.
11329         (x86_linux_nat_target::~x86_linux_nat_target): New.
11330         (x86_linux_child_post_startup_inferior)
11331         (x86_linux_read_description, x86_linux_enable_btrace)
11332         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11333         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11334         methods of x86_linux_nat_target.
11335         (x86_linux_create_target): Delete.  Bits folded ...
11336         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11337         pointer.
11338         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11339         (x86_linux_nat_target): New class.
11340         (x86_linux_create_target): Delete.
11341         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11342         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11343         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11344         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11345         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11346         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11347         make extern.
11348         (x86_use_watchpoints): Delete.
11349         * x86-nat.h: Include "breakpoint.h" and "target.h".
11350         (x86_use_watchpoints): Delete.
11351         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11352         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11353         (x86_insert_watchpoint, x86_remove_watchpoint)
11354         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11355         (x86_stopped_by_hw_breakpoint): New declarations.
11356         (x86_nat_target): New template class.
11357
11358         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11359         (the_ppc_linux_nat_target): New.
11360         (ppc_linux_fetch_inferior_registers)
11361         (ppc_linux_can_use_hw_breakpoint)
11362         (ppc_linux_region_ok_for_hw_watchpoint)
11363         (ppc_linux_ranged_break_num_registers)
11364         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11365         (ppc_linux_insert_mask_watchpoint)
11366         (ppc_linux_remove_mask_watchpoint)
11367         (ppc_linux_can_accel_watchpoint_condition)
11368         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11369         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11370         (ppc_linux_watchpoint_addr_within_range)
11371         (ppc_linux_masked_watch_num_registers)
11372         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11373         (ppc_linux_read_description): Refactor as methods of
11374         ppc_linux_nat_target.
11375         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11376
11377         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11378         (procfs_target): New class.
11379         (the_procfs_target): New.
11380         (procfs_target): Delete function.
11381         (procfs_auxv_parse, procfs_attach, procfs_detach)
11382         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11383         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11384         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11385         (procfs_create_inferior, procfs_update_thread_list)
11386         (procfs_thread_alive, procfs_pid_to_str)
11387         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11388         (procfs_stopped_data_address, procfs_insert_watchpoint)
11389         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11390         (proc_find_memory_regions, procfs_info_proc)
11391         (procfs_make_note_section): Refactor as methods of procfs_target.
11392         (_initialize_procfs): Adjust.
11393         * sol-thread.c (sol_thread_target): New class.
11394         (sol_thread_ops): Now a sol_thread_target.
11395         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11396         (sol_thread_fetch_registers, sol_thread_store_registers)
11397         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11398         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11399         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11400         (init_sol_thread_ops): Delete.
11401         (_initialize_sol_thread): Adjust.  Remove references to
11402         init_sol_thread_ops and complete_target_initialization.
11403
11404         * windows-nat.c (windows_nat_target): New class.
11405         (windows_fetch_inferior_registers)
11406         (windows_store_inferior_registers, windows_resume, windows_wait)
11407         (windows_attach, windows_detach, windows_pid_to_exec_file)
11408         (windows_files_info, windows_create_inferior)
11409         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11410         (windows_close, windows_pid_to_str, windows_xfer_partial)
11411         (windows_get_tib_address, windows_get_ada_task_ptid)
11412         (windows_thread_name, windows_thread_alive): Refactor as
11413         windows_nat_target methods.
11414         (do_initial_windows_stuff): Adjust.
11415         (windows_target): Delete function.
11416         (_initialize_windows_nat): Adjust.
11417
11418         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11419         (darwin_mourn_inferior, darwin_kill_inferior)
11420         (darwin_create_inferior, darwin_attach, darwin_detach)
11421         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11422         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11423         (darwin_supports_multi_process): Refactor as darwin_nat_target
11424         methods.
11425         (darwin_resume_to, darwin_files_info): Delete.
11426         (_initialize_darwin_inferior): Rename to ...
11427         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11428         * darwin-nat.h: Include "inf-child.h".
11429         (darwin_nat_target): New class.
11430         (darwin_complete_target): Delete.
11431         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11432         (darwin_target): New.
11433         (i386_darwin_fetch_inferior_registers)
11434         (i386_darwin_store_inferior_registers): Refactor as methods of
11435         darwin_nat_target.
11436         (darwin_complete_target): Delete, with ...
11437         (_initialize_i386_darwin_nat): ... bits factored out here.
11438
11439         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11440         (the_alpha_linux_nat_target): New.
11441         (alpha_linux_register_u_offset): Refactor as
11442         alpha_linux_nat_target method.
11443         (_initialize_alpha_linux_nat): Adjust.
11444         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11445         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11446         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11447         methods of linux_nat_trad_target.
11448         (linux_trad_target): Delete.
11449         * linux-nat-trad.h (linux_trad_target): Delete function.
11450         (linux_nat_trad_target): New class.
11451         * mips-linux-nat.c (mips_linux_nat_target): New class.
11452         (super_fetch_registers, super_store_registers, super_close):
11453         Delete.
11454         (the_mips_linux_nat_target): New.
11455         (mips64_linux_regsets_fetch_registers)
11456         (mips64_linux_regsets_store_registers)
11457         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11458         (mips_linux_register_u_offset, mips_linux_read_description)
11459         (mips_linux_can_use_hw_breakpoint)
11460         (mips_linux_stopped_by_watchpoint)
11461         (mips_linux_stopped_data_address)
11462         (mips_linux_region_ok_for_hw_watchpoint)
11463         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11464         (mips_linux_close): Refactor as methods of mips_linux_nat.
11465         (_initialize_mips_linux_nat): Adjust to C++ification.
11466
11467         * aix-thread.c (aix_thread_target): New class.
11468         (aix_thread_ops): Now an aix_thread_target.
11469         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11470         (aix_thread_fetch_registers, aix_thread_store_registers)
11471         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11472         (aix_thread_thread_alive, aix_thread_pid_to_str)
11473         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11474         Refactor as methods of aix_thread_target.
11475         (init_aix_thread_ops): Delete.
11476         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11477         and complete_target_initialization.
11478         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11479         (rs6000_nat_target): New class.
11480         (the_rs6000_nat_target): New.
11481         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11482         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11483         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11484         (super_create_inferior): Delete.
11485         (_initialize_rs6000_nat): Adjust to C++ification.
11486
11487         * arm-linux-nat.c (arm_linux_nat_target): New class.
11488         (the_arm_linux_nat_target): New.
11489         (arm_linux_fetch_inferior_registers)
11490         (arm_linux_store_inferior_registers, arm_linux_read_description)
11491         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11492         (arm_linux_remove_hw_breakpoint)
11493         (arm_linux_region_ok_for_hw_watchpoint)
11494         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11495         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11496         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11497         arm_linux_nat_target.
11498         (_initialize_arm_linux_nat): Adjust to C++ification.
11499
11500         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11501         (the_aarch64_linux_nat_target): New.
11502         (aarch64_linux_fetch_inferior_registers)
11503         (aarch64_linux_store_inferior_registers)
11504         (aarch64_linux_child_post_startup_inferior)
11505         (aarch64_linux_read_description)
11506         (aarch64_linux_can_use_hw_breakpoint)
11507         (aarch64_linux_insert_hw_breakpoint)
11508         (aarch64_linux_remove_hw_breakpoint)
11509         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11510         (aarch64_linux_region_ok_for_hw_watchpoint)
11511         (aarch64_linux_stopped_data_address)
11512         (aarch64_linux_stopped_by_watchpoint)
11513         (aarch64_linux_watchpoint_addr_within_range)
11514         (aarch64_linux_can_do_single_step): Refactor as methods of
11515         aarch64_linux_nat_target.
11516         (super_post_startup_inferior): Delete.
11517         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11518
11519         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11520         (the_hppa_linux_nat_target): New.
11521         (hppa_linux_fetch_inferior_registers)
11522         (hppa_linux_store_inferior_registers): Refactor as methods of
11523         hppa_linux_nat_target.
11524         (_initialize_hppa_linux_nat): Adjust to C++ification.
11525
11526         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11527         (the_ia64_linux_nat_target): New.
11528         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11529         (ia64_linux_stopped_data_address)
11530         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11531         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11532         ia64_linux_nat_target methods.
11533         (super_xfer_partial): Delete.
11534         (_initialize_ia64_linux_nat): Adjust to C++ification.
11535
11536         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11537         (the_m32r_linux_nat_target): New.
11538         (m32r_linux_fetch_inferior_registers)
11539         (m32r_linux_store_inferior_registers): Refactor as
11540         m32r_linux_nat_target methods.
11541         (_initialize_m32r_linux_nat): Adjust to C++ification.
11542
11543         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11544         (the_m68k_linux_nat_target): New.
11545         (m68k_linux_fetch_inferior_registers)
11546         (m68k_linux_store_inferior_registers): Refactor as
11547         m68k_linux_nat_target methods.
11548         (_initialize_m68k_linux_nat): Adjust to C++ification.
11549
11550         * s390-linux-nat.c (s390_linux_nat_target): New class.
11551         (the_s390_linux_nat_target): New.
11552         (s390_linux_fetch_inferior_registers)
11553         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11554         (s390_insert_watchpoint, s390_remove_watchpoint)
11555         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11556         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11557         (s390_auxv_parse, s390_read_description): Refactor as methods of
11558         s390_linux_nat_target.
11559         (_initialize_s390_nat): Adjust to C++ification.
11560
11561         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11562         (the_sparc_linux_nat_target): New.
11563         (_initialize_sparc_linux_nat): Adjust to C++ification.
11564         * sparc-nat.c (sparc_fetch_inferior_registers)
11565         (sparc_store_inferior_registers): Remove target_ops parameter.
11566         * sparc-nat.h (sparc_fetch_inferior_registers)
11567         (sparc_store_inferior_registers): Remove target_ops parameter.
11568         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11569         (the_sparc64_linux_nat_target): New.
11570         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11571
11572         * spu-linux-nat.c (spu_linux_nat_target): New class.
11573         (the_spu_linux_nat_target): New.
11574         (spu_child_post_startup_inferior, spu_child_post_attach)
11575         (spu_child_wait, spu_fetch_inferior_registers)
11576         (spu_store_inferior_registers, spu_xfer_partial)
11577         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11578         methods.
11579         (_initialize_spu_nat): Adjust to C++ification.
11580
11581         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11582         (the_tilegx_linux_nat_target): New.
11583         (fetch_inferior_registers, store_inferior_registers):
11584         Refactor as methods.
11585         (_initialize_tile_linux_nat): Adjust to C++ification.
11586
11587         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11588         (the_xtensa_linux_nat_target): New.
11589         (xtensa_linux_fetch_inferior_registers)
11590         (xtensa_linux_store_inferior_registers): Refactor as
11591         xtensa_linux_nat_target methods.
11592         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11593
11594         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11595         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11596         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11597         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11598         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11599         (fbsd_stopped_by_sw_breakpoint)
11600         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11601         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11602         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11603         (fbsd_post_startup_inferior, fbsd_post_attach)
11604         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11605         (fbsd_set_syscall_catchpoint)
11606         (super_xfer_partial, super_resume, super_wait)
11607         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11608         (fbsd_handle_debug_trap): Remove target_ops parameter.
11609         (fbsd_nat_add_target): Delete.
11610         * fbsd-nat.h: Include "inf-ptrace.h".
11611         (fbsd_nat_add_target): Delete.
11612         (USE_SIGTRAP_SIGINFO): Define.
11613         (fbsd_nat_target): New class.
11614
11615         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11616         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11617         (amd64bsd_target): Delete.
11618         * amd64-bsd-nat.h: New file.
11619         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11620         "x86-bsd-nat.h".
11621         (amd64_fbsd_nat_target): New class.
11622         (the_amd64_fbsd_nat_target): New.
11623         (amd64fbsd_read_description): Refactor as method of
11624         amd64_fbsd_nat_target.
11625         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11626         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11627         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11628         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11629         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11630         (i386bsd_target): Delete.
11631         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11632         (i386bsd_fetch_inferior_registers)
11633         (i386bsd_store_inferior_registers): Declare.
11634         (i386_bsd_nat_target): New class.
11635         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11636         (the_i386_fbsd_nat_target): New.
11637         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11638         i386_fbsd_nat_target methods.
11639         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11640         (_initialize_i386fbsd_nat): Adjust to C++ification.
11641         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11642         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11643         (_initialize_x86_bsd_nat): Adjust to C++ification.
11644         * x86-bsd-nat.h: Include "x86-nat.h".
11645         (x86bsd_target): Delete declaration.
11646         (x86bsd_nat_target): New class.
11647
11648         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11649         (the_aarch64_fbsd_nat_target): New.
11650         (aarch64_fbsd_fetch_inferior_registers)
11651         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11652         aarch64_fbsd_nat_target.
11653         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11654         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11655         (the_alpha_bsd_nat_target): New.
11656         (alphabsd_fetch_inferior_registers)
11657         (alphabsd_store_inferior_registers): Refactor as
11658         alpha_bsd_nat_target methods.
11659         (_initialize_alphabsd_nat): Refactor as methods of
11660         alpha_bsd_nat_target.
11661         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11662         (the_amd64_nbsd_nat_target): New.
11663         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11664         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11665         (the_amd64_obsd_nat_target): New.
11666         (_initialize_amd64obsd_nat): Adjust to C++ification.
11667         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11668         (the_arm_fbsd_nat_target): New.
11669         (arm_fbsd_fetch_inferior_registers)
11670         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11671         (_initialize_arm_fbsd_nat): Refactor as methods of
11672         arm_fbsd_nat_target.
11673         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11674         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11675         (the_arm_netbsd_nat_target): New.
11676         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11677         arm_netbsd_nat_target.
11678         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11679         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11680         (the_hppa_nbsd_nat_target): New.
11681         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11682         hppa_nbsd_nat_target methods.
11683         (_initialize_hppanbsd_nat): Adjust to C++ification.
11684         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11685         (the_hppa_obsd_nat_target): New.
11686         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11687         methods of hppa_obsd_nat_target.
11688         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11689         add_target.
11690         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11691         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11692         add_target.
11693         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11694         (_initialize_i386obsd_nat): Use add_target.
11695         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11696         (the_m68k_bsd_nat_target): New.
11697         (m68kbsd_fetch_inferior_registers)
11698         (m68kbsd_store_inferior_registers): Refactor as methods of
11699         m68k_bsd_nat_target.
11700         (_initialize_m68kbsd_nat): Adjust to C++ification.
11701         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11702         (the_mips_fbsd_nat_target): New.
11703         (mips_fbsd_fetch_inferior_registers)
11704         (mips_fbsd_store_inferior_registers): Refactor as methods of
11705         mips_fbsd_nat_target.
11706         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11707         add_target.
11708         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11709         (the_mips_nbsd_nat_target): New.
11710         (mipsnbsd_fetch_inferior_registers)
11711         (mipsnbsd_store_inferior_registers): Refactor as methods of
11712         mips_nbsd_nat_target.
11713         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11714         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11715         (the_mips64_obsd_nat_target): New.
11716         (mips64obsd_fetch_inferior_registers)
11717         (mips64obsd_store_inferior_registers): Refactor as methods of
11718         mips64_obsd_nat_target.
11719         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11720         add_target.
11721         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11722         nbsd_nat_target.
11723         * nbsd-nat.h: Include "inf-ptrace.h".
11724         (nbsd_nat_target): New class.
11725         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11726         (obsd_wait): Refactor as methods of obsd_nat_target.
11727         (obsd_add_target): Delete.
11728         * obsd-nat.h: Include "inf-ptrace.h".
11729         (obsd_nat_target): New class.
11730         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11731         (the_ppc_fbsd_nat_target): New.
11732         (ppcfbsd_fetch_inferior_registers)
11733         (ppcfbsd_store_inferior_registers): Refactor as methods of
11734         ppc_fbsd_nat_target.
11735         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11736         add_target.
11737         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11738         (the_ppc_nbsd_nat_target): New.
11739         (ppcnbsd_fetch_inferior_registers)
11740         (ppcnbsd_store_inferior_registers): Refactor as methods of
11741         ppc_nbsd_nat_target.
11742         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11743         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11744         (the_ppc_obsd_nat_target): New.
11745         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11746         methods of ppc_obsd_nat_target.
11747         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11748         add_target.
11749         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11750         (the_sh_nbsd_nat_target): New.
11751         (shnbsd_fetch_inferior_registers)
11752         (shnbsd_store_inferior_registers): Refactor as methods of
11753         sh_nbsd_nat_target.
11754         (_initialize_shnbsd_nat): Adjust to C++ification.
11755         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11756         (inf_ptrace_xfer_partial): Delete.
11757         (sparc_xfer_partial, sparc_target): Delete.
11758         * sparc-nat.h (sparc_fetch_inferior_registers)
11759         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11760         (sparc_target): Delete function declaration.
11761         (sparc_target): New template class.
11762         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11763         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11764         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11765         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11766         add_target.
11767         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11768         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11769         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11770         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11771         add_target.
11772         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11773         (the_vax_bsd_nat_target): New.
11774         (vaxbsd_fetch_inferior_registers)
11775         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11776         methods.
11777         (_initialize_vaxbsd_nat): Adjust to C++ification.
11778
11779         * bsd-kvm.c (bsd_kvm_target): New class.
11780         (bsd_kvm_ops): Now a bsd_kvm_target.
11781         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11782         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11783         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11784         bsd_kvm_target.
11785         (bsd_kvm_return_one): Delete.
11786         (bsd_kvm_add_target): Adjust to C++ification.
11787
11788         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11789         (nto_procfs_target_procfs): New classes.
11790         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11791         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11792         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11793         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11794         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11795         (procfs_remove_hw_breakpoint, procfs_resume)
11796         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11797         (procfs_kill_inferior, procfs_store_registers)
11798         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11799         as methods of nto_procfs_target.
11800         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11801         (nto_native_ops): Delete.
11802         (procfs_open, procfs_native_open): Delete.
11803         (nto_native_ops): Now an nto_procfs_target_native.
11804         (init_procfs_targets): Adjust to C++ification.
11805         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11806         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11807         Refactor as methods of nto_procfs_target.
11808
11809         * go32-nat.c (go32_nat_target): New class.
11810         (the_go32_nat_target): New.
11811         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11812         (go32_store_registers, go32_xfer_partial, go32_files_info)
11813         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11814         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11815         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11816         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11817         (go32_target): Delete.
11818         (_initialize_go32_nat): Adjust to C++ification.
11819
11820         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11821         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11822         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11823         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11824         gnu_nat_target.
11825         (gnu_target): Delete.
11826         * gnu-nat.h (gnu_target): Delete.
11827         (gnu_nat_target): New class.
11828         * i386-gnu-nat.c (gnu_base_target): New.
11829         (i386_gnu_nat_target): New class.
11830         (the_i386_gnu_nat_target): New.
11831         (_initialize_i386gnu_nat): Adjust to C++ification.
11832
11833 2018-05-02  Pedro Alves  <palves@redhat.com>
11834
11835         * bfd-target.c (target_bfd_xclose): Rename to ...
11836         (target_bfd_close): ... this.
11837         (target_bfd_reopen): Adjust.
11838         * target.c (target_close): Remove references to to_xclose.
11839         * target.h (target_ops::to_xclose): Delete.
11840         (target_ops::to_close): Update comments.
11841
11842 2018-05-02  Pedro Alves  <palves@redhat.com>
11843
11844         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11845         "linux-nat.h".
11846         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11847         * inf-ptrace.c (inf_ptrace_register_u_offset)
11848         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11849         (inf_ptrace_store_register, inf_ptrace_store_registers)
11850         (inf_ptrace_trad_target): Move to ...
11851         * linux-nat-trad.c: ... this new file.
11852         * linux-nat-trad.h: New file.
11853         * linux-nat.c (linux_target_install_ops): Make extern.
11854         (linux_trad_target): Delete.
11855         * linux-nat.h (linux_trad_target): Delete declaration.
11856         (linux_target_install_ops): Declare.
11857         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11858         "linux-nat.h".
11859
11860 2018-05-02  Pedro Alves  <palves@redhat.com>
11861
11862         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11863         procfs_target/add_target here.
11864         * procfs.c (procfs_target): Make static.
11865         (_initialize_procfs): Call add_target here.
11866         * procfs.h (struct target_ops): Remove forward declaration.
11867         (procfs_target): Remove declaration.
11868         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11869
11870 2018-05-02  Pedro Alves  <palves@redhat.com>
11871
11872         * procfs.c (procfs_stopped_by_watchpoint)
11873         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11874         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11875         Forward declare.
11876         (procfs_use_watchpoints): Delete, move contents...
11877         (procfs_target): ... here.
11878         * procfs.h (procfs_use_watchpoints): Delete declaration.
11879         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11880         procfs_use_watchpoints.
11881         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11882         procfs_use_watchpoints.
11883
11884 2018-05-02  Tom Tromey  <tom@tromey.com>
11885
11886         PR python/20084:
11887         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11888         and var_zuinteger_unlimited.
11889         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11890         and PARAM_ZUINTEGER_UNLIMITED.
11891         (set_parameter_value): Handle var_zuinteger and
11892         var_zuinteger_unlimited.
11893         (add_setshow_generic): Likewise.
11894         (parmpy_init): Likewise.
11895
11896 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11897
11898         PR rust/23124
11899         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11900         pointer is not null before dereferencing it.
11901
11902 2018-04-30  Tom Tromey  <tom@tromey.com>
11903
11904         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11905         is_mi_like_p.
11906
11907 2018-04-30  Tom Tromey  <tom@tromey.com>
11908
11909         * breakpoint.c (mention): Remove use of is_mi_like_p.
11910         (print_mention_ranged_breakpoint): Likewise.
11911         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11912         of is_mi_like_p.
11913
11914 2018-04-30  Tom Tromey  <tom@tromey.com>
11915
11916         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11917
11918 2018-04-30  Tom Tromey  <tom@tromey.com>
11919
11920         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11921         (info_spu_event_command): Remove some uses of is_mi_like_p.
11922
11923 2018-04-30  Tom Tromey  <tom@tromey.com>
11924
11925         * python/py-framefilter.c (py_print_single_arg)
11926         (enumerate_locals, py_print_args, py_print_frame): Remove some
11927         uses of is_mi_like_p.
11928
11929 2018-04-30  Tom Tromey  <tom@tromey.com>
11930
11931         * ui-out.c: Update.
11932         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11933         * ui-out.h (ui_out::is_mi_like_p): Now const.
11934         (ui_out::do_is_mi_like_p): Now const.
11935         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11936
11937 2018-04-30  Tom Tromey  <tom@tromey.com>
11938
11939         * varobj.c (varobj_set_visualizer): Use new_reference.
11940         * python/python.c (gdbpy_decode_line): Use new_reference.
11941         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11942         new_reference.
11943
11944 2018-04-30  Tom Tromey  <tom@tromey.com>
11945
11946         * varobj.c (install_new_value): Use new_reference.
11947         * value.h (value_incref): Return void.  Swap intro comment with
11948         value_decref.
11949         * value.c (set_value_parent): Use new_reference.
11950         (value_incref): Return void.  Update intro comment.
11951         (release_value): Use new_reference.
11952         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11953
11954 2018-04-30  Tom Tromey  <tom@tromey.com>
11955
11956         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11957         * gdb_bfd.h (new_bfd_ref): Remove.
11958         (gdb_bfd_open): Update comment.
11959         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11960         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11961         (gdb_bfd_fdopenr): Use new_reference.
11962         * exec.c (exec_file_attach): Use new_reference.
11963
11964 2018-04-30  Tom Tromey  <tom@tromey.com>
11965
11966         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11967         method.
11968
11969 2018-04-30  Tom Tromey  <tom@tromey.com>
11970
11971         * jit.c (jit_read_code_entry): Use type_align.
11972         * i386-tdep.c (i386_gdbarch_init): Don't call
11973         set_gdbarch_long_long_align_bit.
11974         * gdbarch.sh: Remove long_long_align_bit.
11975         * gdbarch.c, gdbarch.h: Rebuild.
11976         * arc-tdep.c (arc_type_align): New function.
11977         (arc_gdbarch_init): Use arc_type_align.  Don't call
11978         set_gdbarch_long_long_align_bit.
11979
11980 2018-04-30  Tom Tromey  <tom@tromey.com>
11981
11982         * rust-lang.c (rust_type_alignment): Remove.
11983         (rust_composite_type): Use type_align.
11984
11985 2018-04-30  Tom Tromey  <tom@tromey.com>
11986
11987         * NEWS: Mention Type.align.
11988         * python/py-type.c (typy_get_alignof): New function.
11989         (type_object_getset): Add "alignof".
11990
11991 2018-04-30  Tom Tromey  <tom@tromey.com>
11992
11993         PR exp/17095:
11994         * NEWS: Update.
11995         * std-operator.def (UNOP_ALIGNOF): New operator.
11996         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11997         New.
11998         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11999         * c-lang.c (c_op_print_tab): Add alignof.
12000         * c-exp.y (ALIGNOF): New token.
12001         (exp): Add "ALIGNOF" production.
12002         (ident_tokens): Add _Alignof and alignof.
12003
12004 2018-04-30  Tom Tromey  <tom@tromey.com>
12005
12006         * i386-tdep.c (i386_type_align): New function.
12007         (i386_gdbarch_init): Update.
12008         * gdbarch.sh (type_align): New method.
12009         * gdbarch.c, gdbarch.h: Rebuild.
12010         * arch-utils.h (default_type_align): Declare.
12011         * arch-utils.c (default_type_align): New function.
12012         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12013         (struct type) <align_log2>: New field.
12014         <instance_flags>: Now a bitfield.
12015         (TYPE_RAW_ALIGN): New macro.
12016         (type_align, type_raw_align, set_type_align): Declare.
12017         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12018         functions.
12019         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12020         (get_alignment, maybe_set_alignment): New functions.
12021         (read_structure_type, read_enumeration_type, read_array_type)
12022         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12023         (read_subrange_type, read_base_type): Set type alignment.
12024
12025 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12026
12027         * dwarf2read.c (read_index_from_section): Use bool.
12028
12029 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12030
12031         PR gdb/22950
12032         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12033         with #ifdef.
12034
12035 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12036
12037         PR build/22873
12038         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12039         last step, and do it atomically.
12040
12041 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12042
12043         * compile/compile-c-types.c (convert_int, convert_float):
12044         Update for C FE v1.
12045
12046 2018-04-27  Tom Tromey  <tom@tromey.com>
12047
12048         PR rust/22545:
12049         * rust-lang.c (rust_inclusive_range_type_p): New function.
12050         (rust_range): Handle inclusive ranges.
12051         (rust_compute_range): Likewise.
12052         * rust-exp.y (struct rust_op) <inclusive>: New field.
12053         (DOTDOTEQ): New constant.
12054         (range_expr): Add "..=" productions.
12055         (operator_tokens): Add "..=" token.
12056         (ast_range): Add "inclusive" parameter.
12057         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12058         ranges.
12059         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12060         bounds values.
12061         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12062         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12063         Update comments.
12064         * expprint.c (print_subexp_standard): Handle new bounds values.
12065         (dump_subexp_body_standard): Likewise.
12066
12067 2018-04-27  Tom Tromey  <tom@tromey.com>
12068
12069         * configure: Rebuild.
12070         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12071         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12072         "OVERRIDE".
12073         (class symbol_needs_eval_context): Likewise.
12074         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12075         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12076         "virtual".
12077         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12078         "override".
12079         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12080         * aarch64-tdep.c (instruction_reader::read): Use "override".
12081         (instruction_reader_test::read): Likewise.
12082         * arm-tdep.c (instruction_reader::read): Use "override".
12083         (instruction_reader_thumb::read): Likewise.
12084
12085 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12086
12087         PR remote/9665
12088         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12089         instead of remote_send.
12090         (remote_send): Remove.
12091
12092 2018-04-26  Pedro Alves  <palves@redhat.com>
12093
12094         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12095         find_function_start_sal instead of find_pc_line.
12096
12097 2018-04-26  Pedro Alves  <palves@redhat.com>
12098
12099         * breakpoint.c (set_breakpoint_location_function): Handle
12100         mst_data_gnu_ifunc.
12101         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12102         * elfread.c (elf_symtab_read): Give data symbols with
12103         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12104         (elf_rel_plt_read): Update comment.
12105         * linespec.c (convert_linespec_to_sals): Handle
12106         mst_data_gnu_ifunc.
12107         (minsym_found): Handle mst_data_gnu_ifunc.
12108         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12109         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12110         * parse.c (find_minsym_type_and_address): Handle
12111         mst_data_gnu_ifunc.
12112         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12113         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12114         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12115         comment.
12116         <mst_data_gnu_ifunc>: New enumerator.
12117
12118 2018-04-26  Pedro Alves  <palves@redhat.com>
12119
12120         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12121         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12122         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12123         Handle it.
12124         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12125         (lookup_minimal_symbol_by_pc): Adjust.
12126         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12127         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12128         * minsyms.h (lookup_msym_prefer): New enum.
12129         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12130         parameter by a lookup_msym_prefer parameter.
12131
12132 2018-04-26  Pedro Alves  <palves@redhat.com>
12133
12134         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12135         ends in "@plt" instead of looking at the symbol's section.
12136
12137 2018-04-26  Pedro Alves  <palves@redhat.com>
12138
12139         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12140         all references.
12141         (find_pc_partial_function_gnu_ifunc): Rename to ...
12142         (find_pc_partial_function): ... this, and remove references to
12143         'is_gnu_ifunc_p'.
12144         (find_pc_partial_function): Delete old implementation.
12145         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12146
12147 2018-04-26  Pedro Alves  <palves@redhat.com>
12148
12149         * linespec.c (struct bound_minimal_symbol_search_key): New.
12150         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12151         skip first line if we found a GNU ifunc minimal symbol by name.
12152         (compare_msymbols): Change parameters to work with a destructured
12153         lhs minsym.
12154         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12155         functions.
12156
12157 2018-04-26  Pedro Alves  <palves@redhat.com>
12158
12159         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12160         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12161         address/name.
12162         (add_location_to_breakpoint): Store the minsym and the objfile in
12163         the breakpoint location.
12164         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12165         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12166         Record the minsym in the sal.
12167         * symtab.h (symtab_and_line) <msymbol>: New field.
12168
12169 2018-04-26  Pedro Alves  <palves@redhat.com>
12170
12171         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12172         unless we actually resolved the ifunc.
12173
12174 2018-04-26  Pedro Alves  <palves@redhat.com>
12175
12176         * c-exp.y (variable production): Prefer ifunc minsyms over
12177         regular function symbols.
12178         * symtab.c (find_gnu_ifunc): New function.
12179         * minsyms.h (lookup_msym_prefer): New enum.
12180         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12181         parameter by a lookup_msym_prefer parameter.
12182         * symtab.h (find_gnu_ifunc): New declaration.
12183
12184 2018-04-26  Pedro Alves  <palves@redhat.com>
12185
12186         * blockframe.c (find_gnu_ifunc_target_type): New function.
12187         (find_function_type): New.
12188         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12189         return a value with a memory address.
12190         (eval_call): For calls to GNU ifunc functions, try to find the
12191         type of the target function from the type that the resolver
12192         returns.
12193         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12194         symbols.
12195         * infcall.c (find_function_return_type): Delete.
12196         (find_function_addr): Add 'function_type' parameter.  For calls to
12197         GNU ifunc functions, try to find the type of the target function
12198         from the type that the resolver returns, and return it via
12199         FUNCTION_TYPE.
12200         (call_function_by_hand_dummy): Adjust to use the function type
12201         returned by find_function_addr.
12202         (find_function_addr): Add 'function_type' parameter and move
12203         description here.
12204         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12205         declarations.
12206
12207 2018-04-26  Pedro Alves  <palves@redhat.com>
12208
12209         * c-exp.y (variable production): Skip finding an alias for ifunc
12210         symbols.
12211
12212 2018-04-26  Pedro Alves  <palves@redhat.com>
12213
12214         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12215
12216 2018-04-25  Pedro Alves  <palves@redhat.com>
12217
12218         * infcmd.c (kill_command): Print the pid as string, not the whole
12219         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12220         message.
12221         * remote.c (remote_detach_1): Print the pid as string, not the
12222         whole thread's ptid.
12223
12224 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12225             Sergio Durigan Junior  <sergiodj@redhat.com>
12226             Pedro Alves  <palves@redhat.com>
12227
12228         * infcmd.c (kill_command): Print message when inferior has
12229         been killed.
12230         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12231         '1'.
12232         (add_inferior): Improve message printed when
12233         'print_inferior_events' is on.
12234         (exit_inferior): Remove message printed when
12235         'print_inferior_events' is on.
12236         (detach_inferior): Improve message printed when
12237         'print_inferior_events' is on.
12238         (initialize_inferiors): Use 'add_inferior_silent' to set
12239         'current_inferior_'.
12240         * inferior.h (print_inferior_events): Declare here as
12241         'extern'.
12242         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12243         '[Detaching...]' messages when 'print_inferior_events' is on.
12244         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12245         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12246         'Detaching after fork from child...', replace it by '... from
12247         parent...'.
12248         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12249         prefix/suffix when printing 'Detaching...' messages.  Print
12250         them when 'print_inferior_events' is on.
12251         * remote.c (remote_detach_1): Print message when detaching
12252         from inferior and '!is_fork_parent'.
12253
12254 2018-04-24  Tom Tromey  <tom@tromey.com>
12255
12256         * cli-out.h: Reindent.
12257
12258 2018-04-24  Tom Tromey  <tom@tromey.com>
12259
12260         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12261         (cli_ui_out::do_field_string): Use fputs_filtered.
12262         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12263
12264 2018-04-23  Tom Tromey  <tom@tromey.com>
12265
12266         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12267         gdb::unique_xmalloc_ptr.
12268
12269 2018-04-23  Tom Tromey  <tom@tromey.com>
12270
12271         * configure: Rebuild.
12272
12273 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12274
12275         PR gdb/23095
12276         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12277         prepare_for_testing.  Set normal_bp to r_debug_state if target
12278         is bsd.
12279
12280 2018-04-21  Pedro Alves  <palves@redhat.com>
12281             Rajendra SY  <rajendra.sy@gmail.com>
12282
12283         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12284         * remote.c (extended_remote_attach): In all-stop mode, mark the
12285         thread as executing.
12286
12287 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12288
12289         * thread.c (thread_apply_all_command): Fix comment.
12290         (thread_command): Fix comment.
12291
12292 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12293
12294         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12295         parameter.
12296         * features/aarch64-core.c (create_feature_aarch64_core):
12297         Regenerate.
12298         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12299         Likewise.
12300         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12301         Likewise.
12302         * features/i386/32bit-avx512.c
12303         (create_feature_i386_32bit_avx512): Likewise.
12304         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12305         Likewise.
12306         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12307         Likewise.
12308         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12309         Likewise.
12310         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12311         Likewise.
12312         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12313         Likewise.
12314         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12315         Likewise.
12316         * features/i386/64bit-avx512.c
12317         (create_feature_i386_64bit_avx512): Likewise.
12318         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12319         Likewise.
12320         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12321         Likewise.
12322         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12323         Likewise.
12324         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12325         Likewise.
12326         * features/i386/64bit-segments.c
12327         (create_feature_i386_64bit_segments): Likewise.
12328         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12329         Likewise.
12330         * features/i386/x32-core.c
12331         (create_feature_i386_x32_core): Likewise.
12332         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12333         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12334         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12335         * target-descriptions.c: In generated code, don't pass xml
12336         filename.
12337
12338 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12339
12340         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12341         (print_xml_feature::visit_post): Likewise.
12342         (print_xml_feature::visit): Likewise.
12343         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12344         (print_xml_feature): Add new class.
12345         * regformats/regdat.sh: Null xmltarget on feature targets.
12346         * target-descriptions.c (struct target_desc): Add xmltarget.
12347         (maintenance_check_tdesc_xml_convert): Add unittest function.
12348         (tdesc_get_features_xml): Add function to get xml.
12349         (maintenance_check_xml_descriptions): Test xml generation.
12350         * xml-tdesc.c (string_read_description_xml): Add function.
12351         * xml-tdesc.h (string_read_description_xml): Add declaration.
12352
12353 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12354
12355         * features/Makefile: Add feature marker to targets with new style
12356         target descriptions.
12357         * regformats/aarch64.dat: Regenerate.
12358         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12359         * regformats/i386/amd64-avx-linux.dat: Likewise.
12360         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12361         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12362         * regformats/i386/amd64-linux.dat: Likewise.
12363         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12364         * regformats/i386/amd64.dat: Likewise.
12365         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12366         * regformats/i386/i386-avx-linux.dat: Likewise.
12367         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12368         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12369         * regformats/i386/i386-linux.dat: Likewise.
12370         * regformats/i386/i386-mmx-linux.dat: Likewise.
12371         * regformats/i386/i386-mpx-linux.dat: Likewise.
12372         * regformats/i386/i386.dat: Likewise.
12373         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12374         * regformats/i386/x32-avx-linux.dat: Likewise.
12375         * regformats/i386/x32-linux.dat: Likewise.
12376         * regformats/tic6x-c62x-linux.dat: Likewise.
12377         * regformats/tic6x-c64x-linux.dat: Likewise.
12378         * regformats/tic6x-c64xp-linux.dat: Likewise.
12379         * regformats/regdat.sh: Parse feature marker.
12380
12381 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12382
12383         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12384         (tdesc_osabi_name): Likewise.
12385         * target-descriptions.c (tdesc_architecture_name): Add new
12386         function.
12387         (tdesc_osabi_name): Likewise.
12388
12389 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12390
12391         * common/tdesc.c (tdesc_predefined_type): Move to here.
12392         (tdesc_named_type): Likewise.
12393         (tdesc_create_vector): Likewise.
12394         (tdesc_create_struct): Likewise.
12395         (tdesc_set_struct_size): Likewise.
12396         (tdesc_create_union): Likewise.
12397         (tdesc_create_flags): Likewise.
12398         (tdesc_create_enum): Likewise.
12399         (tdesc_add_field): Likewise.
12400         (tdesc_add_typed_bitfield): Likewise.
12401         (tdesc_add_bitfield): Likewise.
12402         (tdesc_add_flag): Likewise.
12403         (tdesc_add_enum_value): Likewise.
12404         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12405         (struct tdesc_type_vector): Likewise.
12406         (struct tdesc_type_field): Likewise.
12407         (struct tdesc_type_with_fields): Likewise.
12408         (tdesc_create_enum): Add declaration.
12409         (tdesc_add_typed_bitfield): Likewise.
12410         (tdesc_add_enum_value): Likewise.
12411         * target-descriptions.c (tdesc_type_field): Move from here.
12412         (tdesc_type_builtin): Likewise.
12413         (tdesc_type_vector): Likewise.
12414         (tdesc_type_with_fields): Likewise.
12415         (tdesc_predefined_types): Likewise.
12416         (tdesc_named_type): Likewise.
12417         (tdesc_create_vector): Likewise.
12418         (tdesc_create_struct): Likewise.
12419         (tdesc_set_struct_size): Likewise.
12420         (tdesc_create_union): Likewise.
12421         (tdesc_create_flags): Likewise.
12422         (tdesc_create_enum): Likewise.
12423         (tdesc_add_field): Likewise.
12424         (tdesc_add_typed_bitfield): Likewise.
12425         (tdesc_add_bitfield): Likewise.
12426         (tdesc_add_flag): Likewise.
12427         (tdesc_add_enum_value): Likewise.
12428         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12429         (tdesc_add_typed_bitfield): Likewise.
12430         (tdesc_add_enum_value): Likewise.
12431
12432 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12433
12434         * common/tdesc.c (tdesc_feature::accept): Move to here.
12435         (tdesc_feature::operator==): Likewise.
12436         (tdesc_create_reg): Likewise.
12437         * common/tdesc.h (tdesc_type_kind): Likewise.
12438         (struct tdesc_type): Likewise.
12439         (struct tdesc_feature): Likewise.
12440         * regformats/regdat.sh: Create a feature.
12441         * target-descriptions.c (tdesc_type_kind): Move from here.
12442         (tdesc_type): Likewise.
12443         (tdesc_type_up): Likewise.
12444         (tdesc_feature): Likewise.
12445         (tdesc_create_reg): Likewise.
12446
12447 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12448
12449         * Makefile.in: Add arch/tdesc.c
12450         * common/tdesc.c: New file.
12451         * common/tdesc.h (tdesc_element_visitor): Move to here.
12452         (tdesc_element): Likewise.
12453         (tdesc_reg): Likewise.
12454         (tdesc_reg_up): Likewise.
12455         * regformats/regdef.h (reg): Add offset to constructors.
12456         * target-descriptions.c (tdesc_element_visitor): Move from here.
12457         (tdesc_element): Likewise.
12458         (tdesc_reg): Likewise.
12459         (tdesc_reg_up): Likewise.
12460
12461 2018-04-17  Tom Tromey  <tom@tromey.com>
12462
12463         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12464         discriminant field.
12465
12466 2018-04-17  Tom Tromey  <tom@tromey.com>
12467
12468         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12469
12470 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12471
12472         * symtab.c (print_symbol_info): Skip printing filename and line
12473         number when `last' is NULL.
12474         (symtab_symbol_info): Use empty string instead of NULL for first
12475         invocation of print_symbol_info.
12476         (rbreak_command): Pass NULL to `last' parameter of
12477         print_symbol_info.
12478
12479 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12480
12481         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12482         instead of nullptr.
12483
12484 2018-04-16  Pedro Alves  <palves@redhat.com>
12485
12486         * MAINTAINERS (sh): Remove.
12487         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12488         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12489         (ALLDEPFILES): Remove sh64-tdep.c.
12490         * NEWS: Mentions that support for SH-5/SH64 is removed.
12491         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12492         (sh*-*-openbsd*): Ditto.
12493         (sh64-*-elf*): Remove.
12494         (sh*): Remove.
12495         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12496         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12497         * sh-tdep.c: No longer include "sh64-tdep.h".
12498         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12499         * sh64-tdep.c, sh64-tdep.h: Remove files.
12500
12501 2018-04-16  Pedro Alves  <palves@redhat.com>
12502
12503         * MAINTAINERS: Remove m88k.
12504         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12505         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12506         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12507         * NEWS: Mention that support for m88k was removed.
12508         * configure.host (m88*-*-*): Remove support.
12509         * configure.nat (m88k-*-*): Remove support.
12510         * configure.tgt (m88*-*-openbsd*): Remove.
12511         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12512
12513 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12514
12515         * configure.tgt (x86_tobjs): New variable.
12516         (amd64_tobjs, i386_tobjs): Use it.
12517
12518 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12519
12520         * symtab.c (print_symbol_info): Precede the symbol definition by
12521         the line number when available.
12522         * NEWS: Advertise this enhancement.
12523
12524 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12525
12526         * NEWS (New options): announce set/show record btrace cpu.
12527         * btrace.c: Include record-btrace.h.
12528         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12529         the vendor is unknown.
12530         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12531         Maybe overwrite the btrace configuration's cpu.
12532         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12533         (btrace_fetch): Add cpu parameter.  Update callers.
12534         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12535         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12536         errata workarounds if the vendor is unknown.
12537         * python/py-record-btrace.c: Include record-btrace.h.
12538         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12539         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12540         * record-btrace.c (record_btrace_cpu_state_kind): New.
12541         (record_btrace_cpu): New.
12542         (set_record_btrace_cpu_cmdlist): New.
12543         (record_btrace_get_cpu): New.
12544         (require_btrace_thread, record_btrace_info)
12545         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12546         (cmd_set_record_btrace_cpu_none): New.
12547         (cmd_set_record_btrace_cpu_auto): New.
12548         (cmd_set_record_btrace_cpu): New.
12549         (cmd_show_record_btrace_cpu): New.
12550         (_initialize_record_btrace): Initialize set/show record btrace cpu
12551         commands.
12552         * record-btrace.h (record_btrace_get_cpu): New.
12553
12554 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12555
12556         * record.c (set_record_command): Fix typo in message.
12557
12558 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12559
12560         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12561
12562 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12563
12564         * infrun.c (process_event_stop_test): Call
12565         gdbarch_in_indirect_branch_thunk.
12566         * gdbarch.sh (in_indirect_branch_thunk): New.
12567         * gdbarch.c: Regenerated.
12568         * gdbarch.h: Regenerated.
12569         * x86-tdep.h: New.
12570         * x86-tdep.c: New.
12571         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12572         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12573         (ALLDEPFILES): Add x86-tdep.c.
12574         * arch-utils.h (default_in_indirect_branch_thunk): New.
12575         * arch-utils.c (default_in_indirect_branch_thunk): New.
12576         * i386-tdep: Include x86-tdep.h.
12577         (i386_in_indirect_branch_thunk): New.
12578         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12579         function.
12580         * amd64-tdep: Include x86-tdep.h.
12581         (amd64_in_indirect_branch_thunk): New.
12582         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12583
12584 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12585
12586         PR gdb/23053
12587         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12588         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12589         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12590         regression.
12591
12592 2018-04-12  Tom Tromey  <tom@tromey.com>
12593
12594         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12595         (rust_evaluate_subexp): Likewise.
12596
12597 2018-04-12  Pedro Alves  <palves@redhat.com>
12598
12599         * procfs.c (procfs_detach): Make forward declaration's prototype
12600         match definition's protototype.
12601         (proc_get_LDT_entry): Remove stale do_cleanups call.
12602
12603 2018-04-12  Pedro Alves  <palves@redhat.com>
12604
12605         * target.h (target_ops::to_has_exited): Delete.
12606         (target_has_exited): Delete.
12607         * target-delegates.c: Regenerate.
12608
12609 2018-04-11  Pedro Alves  <palves@redhat.com>
12610
12611         * target.c (fileio_fh_t::t): Add comment.
12612         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12613         (target_fileio_close): Handle a NULL target.
12614         (invalidate_fileio_fh): New.
12615         (target_close): Call it.
12616         * remote.c (remote_hostio_send_command): No longer check whether
12617         remote_desc is open.
12618
12619 2018-04-11  Pedro Alves  <palves@redhat.com>
12620
12621         * target.c (fileio_fh_t): Make it a named struct instead of a
12622         typedef.
12623         (fileio_fh_t::is_closed): New method.
12624         (DEF_VEC_O (fileio_fh_t)): Remove.
12625         (fileio_fhandles): Now a std::vector.
12626         (is_closed_fileio_fh): Delete.
12627         (acquire_fileio_fd): Adjust.  Rename parameters.
12628         (release_fileio_fd): Adjust.
12629         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12630         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12631         (target_fileio_close): Adjust.
12632
12633 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12634
12635         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12636         index.
12637
12638 2018-04-10  Pedro Alves  <palves@redhat.com>
12639
12640         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12641         (scoped_finish_thread_state): New class.
12642         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12643         cleanup.
12644         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12645         (fetch_inferior_event, normal_stop): Likewise.
12646         * thread.c (finish_thread_state_cleanup): Delete.
12647
12648 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12649             Pedro Alves  <palves@redhat.com>
12650
12651         * value.c: Include "selftest.h" and "common/array-view.h".
12652         (struct range) <operator ==>: New.
12653         (test_ranges_contain): New.
12654         (check_ranges_vector): New.
12655         (test_insert_into_bit_range_vector): New.
12656         (_initialize_values): Register selftests.
12657         * common/array-view.h (operator==, operator!=): New.
12658
12659 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12660
12661         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12662         an iterator.
12663         * inline-frame.c: Include <algorithm>.
12664         (struct inline_state): Add constructor.
12665         (inline_state_s): Remove.
12666         (DEF_VEC_O(inline_state_s)): Remove.
12667         (inline_states): Change type to std::vector.
12668         (find_inline_frame_state): Adjust to std::vector.
12669         (allocate_inline_frame_state): Remove.
12670         (clear_inline_frame_state): Adjust to std::vector.
12671         (skip_inline_frames): Adjust to std::vector.
12672
12673 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12674
12675         * tracepoint.h (struct trace_state_variable): Add constructor.
12676         <name>: Change type to std::string.
12677         * tracepoint.c (tsv_s): Remove.
12678         (DEF_VEC_O(tsv_s)): Remove.
12679         (tvariables): Change to std::vector.
12680         (create_trace_state_variable): Adjust to std::vector.
12681         (find_trace_state_variable): Likewise.
12682         (find_trace_state_variable_by_number): Likewise.
12683         (delete_trace_state_variable): Likewise.
12684         (trace_variable_command): Adjust to std::string.
12685         (delete_trace_variable_command): Likewise.
12686         (tvariables_info_1): Adjust to std::vector.
12687         (save_trace_state_variables): Likewise.
12688         (start_tracing): Likewise.
12689         (merge_uploaded_trace_state_variables): Adjust to std::vector
12690         and std::string.
12691         * target.h (struct target_ops)
12692         <to_download_trace_state_variable>: Pass reference to
12693         trace_state_variable.
12694         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12695         * target-delegates.c: Re-generate.
12696         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12697         (mi_tsv_deleted): Likewise.
12698         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12699         * remote.c (remote_download_trace_state_variable): Change
12700         pointer to reference and adjust.
12701         * make-target-delegates (parse_argtypes): Handle references.
12702         (write_function_header): Likewise.
12703         (munge_type): Likewise.
12704
12705 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12706
12707         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12708         string_view-selftests.c.
12709         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12710         testsuite.
12711         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12712         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12713         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12714         * unittests/basic_string_view/element_access/char/1.cc:
12715         Likewise.
12716         * unittests/basic_string_view/element_access/char/empty.cc:
12717         Likewise.
12718         * unittests/basic_string_view/element_access/char/front_back.cc:
12719         Likewise.
12720         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12721         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12722         Likewise.
12723         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12724         Likewise.
12725         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12726         Likewise.
12727         * unittests/basic_string_view/operations/compare/char/1.cc:
12728         Likewise.
12729         * unittests/basic_string_view/operations/compare/char/13650.cc:
12730         Likewise.
12731         * unittests/basic_string_view/operations/copy/char/1.cc:
12732         Likewise.
12733         * unittests/basic_string_view/operations/data/char/1.cc:
12734         Likewise.
12735         * unittests/basic_string_view/operations/find/char/1.cc:
12736         Likewise.
12737         * unittests/basic_string_view/operations/find/char/2.cc:
12738         Likewise.
12739         * unittests/basic_string_view/operations/find/char/3.cc:
12740         Likewise.
12741         * unittests/basic_string_view/operations/find/char/4.cc:
12742         Likewise.
12743         * unittests/basic_string_view/operations/rfind/char/1.cc:
12744         Likewise.
12745         * unittests/basic_string_view/operations/rfind/char/2.cc:
12746         Likewise.
12747         * unittests/basic_string_view/operations/rfind/char/3.cc:
12748         Likewise.
12749         * unittests/basic_string_view/operations/substr/char/1.cc:
12750         Likewise.
12751         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12752         * unittests/string_view-selftests.c: New file.
12753
12754 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12755
12756         * unittests/basic_string_view/capacity/1.cc: New file.
12757         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12758         * unittests/basic_string_view/cons/char/1.cc: New file.
12759         * unittests/basic_string_view/cons/char/2.cc: New file.
12760         * unittests/basic_string_view/cons/char/3.cc: New file.
12761         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12762         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12763         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12764         * unittests/basic_string_view/element_access/char/1.cc: New file.
12765         * unittests/basic_string_view/element_access/char/2.cc: New file.
12766         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12767         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12768         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12769         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12770         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12771         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12772         * unittests/basic_string_view/include.cc: New file.
12773         * unittests/basic_string_view/inserters/char/1.cc: New file.
12774         * unittests/basic_string_view/inserters/char/2.cc: New file.
12775         * unittests/basic_string_view/inserters/char/3.cc: New file.
12776         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12777         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12778         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12779         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12780         * unittests/basic_string_view/literals/types.cc: New file.
12781         * unittests/basic_string_view/literals/values.cc: New file.
12782         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12783         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12784         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12785         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12786         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12787         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12788         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12789         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12790         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12791         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12792         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12793         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12794         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12795         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12796         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12797         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12798         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12799         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12800         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12801         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12802         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12803         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12804         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12805         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12806         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12807         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12808         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12809         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12810         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12811         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12812         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12813         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12814         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12815         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12816         * unittests/basic_string_view/operators/char/2.cc: New file.
12817         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12818         * unittests/basic_string_view/range_access/char/1.cc: New file.
12819         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12820         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12821         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12822         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12823         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12824         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12825         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12826         * unittests/basic_string_view/typedefs.cc: New file.
12827         * unittests/basic_string_view/types/1.cc: New file.
12828
12829 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12830
12831         * common/gdb_string_view.h: Remove libstdc++ implementation
12832         details, adjust to gdb reality.
12833         * common/gdb_string_view.tcc: Likewise.
12834         * cli/cli-script.c (struct string_view): Remove.
12835         (user_args) <m_args>: Change element type to gdb::string_view.
12836         (user_args::insert_args): Adjust.
12837
12838 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12839
12840         * common/gdb_string_view.h: New file.
12841         * common/gdb_string_view.tcc: New file.
12842
12843 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12844
12845         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12846         * configure: Re-generate.
12847
12848 2018-04-09  Pedro Alves  <palves@redhat.com>
12849
12850         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12851         (set_target_gdbarch): Call
12852         gdb::observers::architecture_changed.notify instead of
12853         observer_notify_architecture_changed.
12854
12855 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12856
12857         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12858         (do_restore_current_traceframe_cleanup): Remove.
12859         (restore_current_traceframe_cleanup_dtor): Remove.
12860         (make_cleanup_restore_current_traceframe): Remove.
12861         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12862         New.
12863         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12864         * infrun.c (fetch_inferior_event): Use
12865         scoped_restore_current_traceframe.
12866
12867 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12868
12869         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12870         Remove.
12871         <n_allocated_type_units>: Remove.
12872         <all_type_units>: Change to std::vector.
12873         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12874         to std::vector change.
12875         (dwarf2_per_objfile::get_cutu): Likewise.
12876         (dwarf2_per_objfile::get_tu): Likewise.
12877         (create_signatured_type_table_from_index): Likewise.
12878         (create_signatured_type_table_from_debug_names): Likewise.
12879         (dw2_symtab_iter_next): Likewise.
12880         (dw2_print_stats): Likewise.
12881         (dw2_expand_all_symtabs): Likewise.
12882         (dw2_expand_marked_cus): Likewise.
12883         (dw2_debug_names_iterator::next): Likewise.
12884         (dwarf2_initialize_objfile): Likewise.
12885         (add_signatured_type_cu_to_table): Likewise.
12886         (create_all_type_units): Likewise.
12887         (add_type_unit): Likewise.
12888         (struct tu_abbrev_offset): Add constructor.
12889         (build_type_psymtabs_1): Adjust to std::vector change.
12890         (print_tu_stats): Likewise.
12891         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12892         (write_debug_names): Likewise.
12893
12894 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12895
12896         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12897         Make an std::vector.
12898         <n_comp_units>: Remove.
12899         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12900         to std::vector change.
12901         (dwarf2_per_objfile::get_cutu): Likewise.
12902         (dwarf2_per_objfile::get_cu): Likewise.
12903         (create_cus_from_index): Likewise.
12904         (create_addrmap_from_index): Likewise.
12905         (create_addrmap_from_aranges): Likewise.
12906         (dwarf2_read_index): Likewise.
12907         (dw2_find_last_source_symtab): Likewise.
12908         (dw2_map_symtabs_matching_filename): Likewise.
12909         (dw2_symtab_iter_next): Likewise.
12910         (dw2_print_stats): Likewise.
12911         (dw2_expand_all_symtabs): Likewise.
12912         (dw2_expand_symtabs_with_fullname): Likewise.
12913         (dw2_expand_marked_cus): Likewise.
12914         (dw2_map_symbol_filenames): Likewise.
12915         (create_cus_from_debug_names): Likewise.
12916         (dwarf2_read_debug_names): Likewise.
12917         (dw2_debug_names_iterator::next): Likewise.
12918         (dwarf2_initialize_objfile): Likewise.
12919         (set_partial_user): Likewise.
12920         (dwarf2_build_psymtabs_hard): Likewise.
12921         (read_comp_units_from_section): Remove arguments, adjust to
12922         std::vector change.
12923         (create_all_comp_units): Adjust to std::vector and
12924         read_comp_units_from_section changes.
12925         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12926         change.
12927         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12928         (psyms_seen_size): Likewise.
12929         (write_gdbindex): Likewise.
12930         (write_debug_names): Likewise.
12931
12932 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12933
12934         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12935         with dwarf2_per_objfile.
12936         (create_cus_from_index): Likewise.
12937         (create_signatured_type_table_from_index): Likewise.
12938         (dwarf2_read_index): Likewise.
12939         (dwarf2_initialize_objfile): Likewise.
12940         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12941         per_cu rather than get_dwarf2_per_objfile.
12942
12943 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12944
12945         * dwarf2read.h (struct signatured_type): Forward declare.
12946         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12947         New methods.
12948         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12949         (dw2_get_cutu): ...this.
12950         (dwarf2_per_objfile::get_cu): Rename from...
12951         (dw2_get_cu): ...this.
12952         (dwarf2_per_objfile::get_tu): New.
12953         (create_addrmap_from_index): Adjust.
12954         (create_addrmap_from_aranges): Adjust.
12955         (dw2_find_last_source_symtab): Adjust.
12956         (dw2_map_symtabs_matching_filename): Adjust.
12957         (dw2_symtab_iter_next): Adjust.
12958         (dw2_print_stats): Adjust.
12959         (dw2_expand_all_symtabs): Adjust.
12960         (dw2_expand_symtabs_with_fullname): Adjust.
12961         (dw2_expand_marked_cus): Adjust.
12962         (dw_expand_symtabs_matching_file_matcher): Adjust.
12963         (dw2_map_symbol_filenames): Adjust.
12964         (dw2_debug_names_iterator::next): Adjust.
12965         (dwarf2_initialize_objfile): Adjust.
12966         (set_partial_user): Adjust.
12967         (dwarf2_build_psymtabs_hard): Adjust.
12968
12969 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12970
12971         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12972         Remove unused variables.
12973         (dw2_map_symtabs_matching_filename): Likewise.
12974         (dwarf2_record_block_ranges): Likewise.
12975         (dwarf2_read_addr_index): Likewise.
12976         (follow_die_offset): Likewise.
12977
12978 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12979
12980         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12981         to symbol_file_add_main.
12982
12983 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12984
12985         PR mi/22299
12986         * mi/mi-console.c (do_fputc_async_safe): New.
12987         (mi_console_file::write_async_safe): New.
12988         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12989         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12990         New.
12991         * ui-file.c (ui_file::putstrn): Adjust call to
12992         fputstrn_unfiltered.
12993         * utils.c (printchar): Replace do_fputs and do_fprintf
12994         parameters by do_fputc.
12995         (fputstr_filtered): Adjust call to printchar.
12996         (fputstr_unfiltered): Likewise.
12997         (fputstrn_filtered): Likewise.
12998         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12999         printchar.
13000         * utils.h (do_fputc_ftype): New typedef.
13001         (fputstrn_unfiltered): Add do_fputc parameter.
13002
13003 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13004
13005         * regformats/i386/i386-avx.dat: Remove.
13006
13007 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13008
13009         PR gdb/22979
13010         * amd64-tdep.c (amd64_none_init_abi): New function.
13011         (amd64_x32_none_init_abi): New function.
13012         (_initialize_amd64_tdep): Register handlers for x86-64 and
13013         x64_32 with GDB_OSABI_NONE.
13014         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13015         GDB_OSABI_NONE osabi.
13016
13017 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13018
13019         PR gdb/22980
13020         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13021         GDB_OSABI_NONE.
13022         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13023         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13024
13025 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13026
13027         * common/byte-vector.h (char_vector): New type.
13028         * target.h (target_read_alloc): Return
13029         gdb::optional<byte_vector>.
13030         (target_read_stralloc): Return gdb::optional<char_vector>.
13031         (target_get_osdata): Return gdb::optional<char_vector>.
13032         * target.c (target_read_alloc_1): Templatize.  Replacement
13033         manual memory management with vector.
13034         (target_read_alloc): Change return type, adjust.
13035         (target_read_stralloc): Change return type, adjust.
13036         (target_get_osdata): Change return type, adjust.
13037         * auxv.c (struct auxv_info) <length>: Remove.
13038         <data>: Change type to gdb::optional<byte_vector>.
13039         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13040         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13041         (target_auxv_search): Adjust.
13042         (fprint_target_auxv): Adjust.
13043         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13044         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13045         (linux_make_corefile_notes): Adjust.
13046         * osdata.c (get_osdata): Adjust.
13047         * remote.c (remote_get_threads_with_qxfer): Adjust.
13048         (remote_memory_map): Adjust.
13049         (remote_traceframe_info): Adjust.
13050         (btrace_read_config): Adjust.
13051         (remote_read_btrace): Adjust.
13052         (remote_pid_to_exec_file): Adjust.
13053         * solib-aix.c (solib_aix_get_library_list): Adjust.
13054         * solib-dsbt.c (decode_loadmap): Don't free buf.
13055         (dsbt_get_initial_loadmaps): Adjust.
13056         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13057         * solib-target.c (solib_target_current_sos): Adjust.
13058         * tracepoint.c (sdata_make_value): Adjust.
13059         * xml-support.c (xinclude_start_include): Adjust.
13060         (xml_fetch_content_from_file): Adjust.
13061         * xml-support.h (xml_fetch_another): Change return type.
13062         (xml_fetch_content_from_file): Change return type.
13063         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13064         * xml-tdesc.c (file_read_description_xml): Adjust.
13065         (fetch_available_features_from_target): Change return type.
13066         (target_fetch_description_xml): Adjust.
13067         (target_read_description_xml): Adjust.
13068
13069 2018-04-06  Tom Tromey  <tom@tromey.com>
13070
13071         * value.c (~value): Update.
13072         (struct value) <contents>: Now unique_xmalloc_ptr.
13073         (value_contents_bits_eq, allocate_value_contents)
13074         (value_contents_raw, value_contents_all_raw)
13075         (value_contents_for_printing, value_contents_for_printing_const)
13076         (set_value_enclosing_type): Update.
13077
13078 2018-04-06  Tom Tromey  <tom@tromey.com>
13079
13080         * value.c (range_s): Remove typedef, VEC.
13081         (struct range): Add operator<.
13082         (range_lessthan): Remove.
13083         (ranges_contain): Change type.
13084         (~value): Update.
13085         (struct value) <unavailable, optimized_out>: Now std::vector.
13086         (value_entirely_available)
13087         (value_entirely_covered_by_range_vector)
13088         (value_entirely_unavailable, value_entirely_optimized_out):
13089         Update.
13090         (insert_into_bit_range_vector): Change argument type.
13091         (find_first_range_overlap): Likewise.
13092         (struct ranges_and_idx, value_contents_bits_eq)
13093         (require_not_optimized_out, require_available): Update.
13094         (ranges_copy_adjusted): Change argument types.
13095         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13096
13097 2018-04-06  Tom Tromey  <tom@tromey.com>
13098
13099         * value.c (~value): Update.
13100         (struct value) <parent>: Now a value_ref_ptr.
13101         (value_parent, set_value_parent, value_address, value_copy):
13102         Update.
13103
13104 2018-04-06  Tom Tromey  <tom@tromey.com>
13105
13106         * value.c (struct value): Add constructor, destructor, and member
13107         initializers.
13108         (allocate_value_lazy, value_decref): Update.
13109
13110 2018-04-06  Tom Tromey  <tom@tromey.com>
13111
13112         * value.c (struct value) <released, next>: Remove.
13113         (all_values): Now a std::vector.
13114         (allocate_value_lazy): Update.
13115         (value_next): Remove.
13116         (value_mark, value_free_to_mark, release_value)
13117         (value_release_to_mark): Update.
13118
13119 2018-04-06  Tom Tromey  <tom@tromey.com>
13120
13121         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13122         (free_value_chain): Remove.
13123         * value.c (free_value_chain): Remove.
13124         (value_release_to_mark): Return a std::vector.
13125         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13126         std::vector.
13127         (check_condition): Update.
13128         * eval.c (fetch_subexp_value): Change "val_chain" to a
13129         std::vector.
13130         * breakpoint.c (update_watchpoint): Update.
13131         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13132
13133 2018-04-06  Tom Tromey  <tom@tromey.com>
13134
13135         * value.h (free_all_values): Remove.
13136         * value.c (free_all_values): Remove.
13137
13138 2018-04-06  Tom Tromey  <tom@tromey.com>
13139
13140         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13141         (value_history_chain, value_history_count): Remove.
13142         (value_history): New global.
13143         (record_latest_value, access_value_history, show_values)
13144         (preserve_values): Update.
13145
13146 2018-04-06  Tom Tromey  <tom@tromey.com>
13147
13148         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13149         * varobj.c (varobj_set_display_format, varobj_set_value)
13150         (install_default_visualizer, construct_visualizer)
13151         (install_new_value, ~varobj, varobj_get_value_type)
13152         (my_value_of_variable, varobj_editable_p): Update.
13153         * c-varobj.c (c_describe_child, c_value_of_variable)
13154         (cplus_number_of_children, cplus_describe_child): Update.
13155         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13156         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13157         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13158
13159 2018-04-06  Tom Tromey  <tom@tromey.com>
13160
13161         * printcmd.c (last_examine_address): Change type to
13162         value_ref_ptr.
13163         (do_examine, x_command): Update.
13164
13165 2018-04-06  Tom Tromey  <tom@tromey.com>
13166
13167         * value.c (release_value): Update.
13168         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13169         (struct bpstats) <val>: Now a value_ref_ptr.
13170         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13171         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13172         (~watchpoint, print_it_watchpoint, watch_command_1)
13173         (invalidate_bp_value_on_memory_change): Update.
13174
13175 2018-04-06  Tom Tromey  <tom@tromey.com>
13176
13177         * varobj.c (varobj_clear_saved_item)
13178         (update_dynamic_varobj_children, install_new_value, ~varobj):
13179         Update.
13180         * value.h (value_incref): Move declaration earlier.
13181         (value_decref): Rename from value_free.
13182         (struct value_ref_policy): New.
13183         (value_ref_ptr): New typedef.
13184         (struct value_deleter): Remove.
13185         (gdb_value_up): Remove typedef.
13186         (release_value): Change return type.
13187         (release_value_or_incref): Remove.
13188         * value.c (set_value_parent): Update.
13189         (value_incref): Change return type.
13190         (value_decref): Rename from value_free.
13191         (value_free_to_mark, free_all_values, free_value_chain): Update.
13192         (release_value): Return value_ref_ptr.
13193         (release_value_or_incref): Remove.
13194         (record_latest_value, set_internalvar, clear_internalvar):
13195         Update.
13196         * stack.c (info_frame_command): Don't call value_free.
13197         * python/py-value.c (valpy_dealloc, valpy_new)
13198         (value_to_value_object): Update.
13199         * printcmd.c (do_examine): Update.
13200         * opencl-lang.c (lval_func_free_closure): Update.
13201         * mi/mi-main.c (register_changed_p): Don't call value_free.
13202         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13203         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13204         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13205         value_free.
13206         * guile/scm-value.c (vlscm_free_value_smob)
13207         (vlscm_scm_from_value): Update.
13208         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13209         (frame_unwind_register_unsigned, get_frame_register_bytes)
13210         (put_frame_register_bytes): Don't call value_free.
13211         * findvar.c (address_from_register): Don't call value_free.
13212         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13213         * dwarf2loc.c (entry_data_value_free_closure)
13214         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13215         (dwarf2_evaluate_loc_desc_full): Update.
13216         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13217         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13218         (~watchpoint, watch_command_1)
13219         (invalidate_bp_value_on_memory_change): Update.
13220         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13221
13222 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13223
13224         PR gdb/23022
13225         * warning.m4: Add -Wno-error=deprecated-register.
13226         * configure: Re-generate.
13227
13228 2018-04-05  Tom Tromey  <tom@tromey.com>
13229
13230         * linespec.h: Remove include of "vec.h".
13231
13232 2018-04-05  Tom Tromey  <tom@tromey.com>
13233
13234         * linespec.c (typep): Remove typedef.
13235         (find_methods, find_superclass_methods): Take a std::vector.
13236         (find_method): Use std::vector.
13237
13238 2018-04-05  Tom Tromey  <tom@tromey.com>
13239
13240         * utils.c (compare_strings): Remove.
13241         * utils.h (compare_strings): Remove.
13242         * objc-lang.h (find_imps): Update.
13243         * objc-lang.c (find_methods): Take a std::vector.
13244         (uniquify_strings, find_imps): Likewise.
13245         * linespec.c (find_methods): Take a std::vector.
13246         (decode_objc): Use std::vector.
13247         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13248         a std::vector.
13249         (find_method, find_function_symbols): Use std::vector.
13250
13251 2018-04-05  Tom Tromey  <tom@tromey.com>
13252
13253         * completer.c (completion_tracker::completion_tracker): Remove
13254         cast.
13255         (completion_tracker::discard_completions): Likewise.
13256         * breakpoint.c (ambiguous_names_p): Remove cast.
13257         * ada-lang.c (_initialize_ada_language): Remove cast.
13258         * utils.h (streq): Update.
13259         (streq_hash): Add new declaration.
13260         * utils.c (streq): Return bool.
13261         (streq_hash): New function.
13262
13263 2018-04-05  Tom Tromey  <tom@tromey.com>
13264
13265         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13266         Remove a string copy.
13267
13268 2018-04-05  Tom Tromey  <tom@tromey.com>
13269
13270         * linespec.c (filter_results): Use std::vector.
13271         (decode_line_2, decode_line_full): Update.
13272
13273 2018-04-05  Tom Tromey  <tom@tromey.com>
13274
13275         * linespec.c (canonical_to_fullform): Return std::string.
13276         (filter_results): Update.
13277         (struct decode_line_2_item): Add constructor.
13278         <fullform, displayform>: Now std::string.
13279         (decode_line_2_compare_items): Now a std::sort comparator.
13280         (decode_line_2): Update.
13281
13282 2018-04-05  Tom Tromey  <tom@tromey.com>
13283
13284         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13285         (unexpected_linespec_error): Update.
13286         (linespec_parse_basic, parse_linespec): Update.
13287
13288 2018-04-05  Tom Tromey  <tom@tromey.com>
13289
13290         * linespec.c (linespec_parse_basic): Reindent.
13291
13292 2018-04-05  Tom Tromey  <tom@tromey.com>
13293
13294         * minsyms.h (iterate_over_minimal_symbols): Update.
13295         * minsyms.c (iterate_over_minimal_symbols): Take a
13296         gdb::function_view.
13297         * linespec.c (struct collect_minsyms): Remove.
13298         (compare_msyms): Now a std::sort comparator.
13299         (add_minsym): Add parameters.
13300         (search_minsyms_for_name): Update.  Use std::vector.
13301
13302 2018-04-03  Tom Tromey  <tom@tromey.com>
13303
13304         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13305         gdb::byte_vector.
13306
13307 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13308
13309         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13310
13311 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13312
13313         PR gdb/16959
13314         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13315         printing static type.
13316
13317 2018-04-01  Tom Tromey  <tom@tromey.com>
13318
13319         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13320         (rs6000_xfer_shared_libraries): Update.
13321
13322 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13323
13324         * common/gdb_vecs.h (char_ptr): Remove.
13325         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13326
13327 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13328
13329         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13330         with std::vector.
13331         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13332
13333 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13334
13335         * tracepoint.h (struct uploaded_tp): Initialize fields.
13336         <actions, step_actions, cmd_strings>: Change type to
13337         std::vector<char *>.
13338         * tracepoint.c (get_uploaded_tp): Allocate with new.
13339         (free_uploaded_tps): Free with delete.
13340         (parse_tracepoint_definition): Adjust to std::vector change.
13341         * breakpoint.c (read_uploaded_action): Likewise.
13342         (create_tracepoint_from_upload): Likewise.
13343         * ctf.c (ctf_write_uploaded_tp): Likewise.
13344         (SET_ARRAY_FIELD): Likewise.
13345         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13346
13347 2018-03-30  Tom Tromey  <tom@tromey.com>
13348
13349         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13350         std::unique_ptr.
13351         (svr4_keep_data_in_core): Update.
13352         (svr4_read_so_list): Update.
13353
13354 2018-03-30  Tom Tromey  <tom@tromey.com>
13355
13356         * windows-nat.c (handle_output_debug_string, handle_exception):
13357         Update.
13358         * target.h (target_read_string): Update.
13359         * target.c (target_read_string): Change "string" to
13360         unique_xmalloc_ptr.
13361         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13362         Update.
13363         * solib-frv.c (frv_current_sos): Update.
13364         * solib-dsbt.c (dsbt_current_sos): Update.
13365         * solib-darwin.c (darwin_current_sos): Update.
13366         * linux-thread-db.c (inferior_has_bug): Update.
13367         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13368         Update.  Remove alloca.
13369         * ada-lang.c (ada_main_name): Update.
13370
13371 2018-03-30  Tom Tromey  <tom@tromey.com>
13372
13373         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13374         (struct dwo_file_deleter): New.
13375         (dwo_file_up): New typedef.
13376         (open_and_init_dwo_file): Use dwo_file_up.
13377         (free_dwo_file_cleanup): Remove.
13378
13379 2018-03-30  Tom Tromey  <tom@tromey.com>
13380
13381         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13382         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13383
13384 2018-03-30  Tom Tromey  <tom@tromey.com>
13385
13386         * dwarf2read.c (class free_cached_comp_units): New class.
13387         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13388         (free_cached_comp_units): Remove function.
13389
13390 2018-03-30  Tom Tromey  <tom@tromey.com>
13391
13392         * utils.h (make_cleanup_unpush_target): Remove.
13393         * inf-ptrace.c (struct target_unpusher): New.
13394         (target_unpush_up) New typedef.
13395         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13396         target_unpush_up.
13397         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13398
13399 2018-03-27  Tom Tromey  <tom@tromey.com>
13400
13401         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13402
13403 2018-03-27  Pedro Alves  <palves@redhat.com>
13404             Tom Tromey  <tom@tromey.com>
13405
13406         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13407         destructor.  Now a class.
13408         (gdb_readline_wrapper_cleanup): Remove function.
13409         (gdb_readline_wrapper): Remove cleanups.
13410
13411 2018-03-27  Tom Tromey  <tom@tromey.com>
13412
13413         * typeprint.h (struct type_print_options) <local_typedefs,
13414         global_typedefs>: Remove "struct" keyword.
13415         (class typedef_hash_table): New class.
13416         (recursively_update_typedef_hash, add_template_parameters)
13417         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13418         (find_typedef_in_hash): Don't declare.
13419         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13420         (typedef_hash_table::recursively_update): Rename from
13421         recursively_update_typedef_hash.  Now a member.
13422         (typedef_hash_table::add_template_parameters): Rename from
13423         add_template_parameters.  Now a member.
13424         (typedef_hash_table::typedef_hash_table): Now a constructor;
13425         rename from create_typedef_hash.
13426         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13427         rename from free_typedef_hash.
13428         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13429         (do_free_global_table): Remove.
13430         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13431         from copy_type_recursive.
13432         (create_global_typedef_table): Remove.
13433         (typedef_hash_table::find_global_typedef): Now a member of
13434         typedef_hash_table.
13435         (typedef_hash_table::find_typedef): Rename from
13436         find_typedef_in_hash; now a member.
13437         (whatis_exp): Update.
13438         * extension.h (struct ext_lang_type_printers): Add constructor and
13439         destructor.
13440         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13441         declare.
13442         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13443         Now a constructor; rename from start_ext_lang_type_printers.
13444         (ext_lang_type_printers): Now a destructor; rename from
13445         free_ext_lang_type_printers.
13446         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13447         Update.
13448         (c_type_print_base_struct_union): Update.  Remove cleanups.
13449
13450 2018-03-27  Tom Tromey  <tom@tromey.com>
13451
13452         * dwarf-index-write.c: Include <cmath>.
13453
13454 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13455
13456         * NEWS: Add entry describing new "set|show varsize-limit" command.
13457         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13458         command.
13459         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13460         "set variable".
13461
13462 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13463
13464         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13465         dwarf-index-write.c
13466         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13467         * dwarf-index-common.c: New file.
13468         * dwarf-index-common.h: New file.
13469         * dwarf-index-write.c: New file.
13470         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13471         (struct dwarf2_section_info): Move from here.
13472         (dwarf2_section_info_def): Likewise.
13473         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13474         (offset_type): Likewise.
13475         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13476         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13477         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13478         (byte_swap): Likewise.
13479         (MAYBE_SWAP): Likewise.
13480         (dwarf2_per_cu_ptr): Likewise.
13481         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13482         (struct tu_stats): Likewise.
13483         (struct dwarf2_per_objfile): Likewise.
13484         (struct dwarf2_per_cu_data): Likewise.
13485         (struct signatured_type): Likewise.
13486         (sig_type_ptr): Likewise.
13487         (DEF_VEC_P (sig_type_ptr)): Likewise.
13488         (INDEX4_SUFFIX): Likewise.
13489         (INDEX5_SUFFIX): Likewise.
13490         (DEBUG_STR_SUFFIX): Likewise.
13491         (dwarf2_read_section): Make non-static.
13492         (mapped_index_string_hash): Move from here.
13493         (dwarf5_djb_hash): Likewise.
13494         (file_write): Likewise.
13495         (class data_buf): Likewise.
13496         (struct symtab_index_entry): Likewise.
13497         (struct mapped_symtab): Likewise.
13498         (find_slot): Likewise.
13499         (hash_expand): Likewise.
13500         (add_index_entry): Likewise.
13501         (uniquify_cu_indices): Likewise.
13502         (class c_str_view): Likewise.
13503         (class c_str_view_hasher): Likewise.
13504         (class vector_hasher): Likewise.
13505         (write_hash_table): Likewise.
13506         (psym_index_map): Likewise.
13507         (struct addrmap_index_data): Likewise.
13508         (add_address_entry): Likewise.
13509         (add_address_entry_worker): Likewise.
13510         (write_address_map): Likewise.
13511         (symbol_kind): Likewise.
13512         (write_psymbols): Likewise.
13513         (struct signatured_type_index_data): Likewise.
13514         (write_one_signatured_type): Likewise.
13515         (recursively_count_psymbols): Likewise.
13516         (recursively_write_psymbols): Likewise.
13517         (class debug_names): Likewise.
13518         (check_dwarf64_offsets): Likewise.
13519         (psyms_seen_size): Likewise.
13520         (write_gdbindex): Likewise.
13521         (write_debug_names): Likewise.
13522         (assert_file_size): Likewise.
13523         (write_psymtabs_to_index): Likewise.
13524         (save_gdb_index_command): Likewise.
13525         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13526         command.
13527         * dwarf2read.h: New file.
13528
13529 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13530
13531         PR gdb/22670
13532         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13533         symbol name if the CU's language stores symbol names in linkage
13534         format.
13535         * language.h (struct language_defn)
13536         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13537         all instances of this struct.
13538
13539 2018-03-26  Tom Tromey  <tom@tromey.com>
13540
13541         * stack.c (backtrace_command_1): Remove verbose code.
13542
13543 2018-03-26  Tom Tromey  <tom@tromey.com>
13544
13545         * python/py-framefilter.c (py_print_type): Don't catch
13546         exceptions.  Return void.
13547         (py_print_value): Likewise.
13548         (py_print_single_arg): Likewise.
13549         (enumerate_args): Don't catch exceptions.
13550         (py_print_args): Likewise.
13551         (py_print_frame): Likewise.
13552         (gdbpy_apply_frame_filter): Catch exceptions here.
13553
13554 2018-03-26  Tom Tromey  <tom@tromey.com>
13555
13556         * stack.c (_initialize_stack): Remove trailing newlines from help
13557         text.  Add "Usage" line to "backtrace" help.
13558
13559 2018-03-26  Tom Tromey  <tom@tromey.com>
13560
13561         PR python/16486:
13562         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13563
13564 2018-03-26  Tom Tromey  <tom@tromey.com>
13565
13566         * python/py-framefilter.c (py_print_single_arg): Return
13567         EXT_LANG_BT_ERROR from catch.
13568
13569 2018-03-26  Tom Tromey  <tom@tromey.com>
13570
13571         PR backtrace/15584:
13572         * stack.c (backtrace_command_1): Move some code into no-filters
13573         "if".
13574
13575 2018-03-26  Tom Tromey  <tom@tromey.com>
13576
13577         * python/py-framefilter.c (throw_quit_or_print_exception): New
13578         function.
13579         (gdbpy_apply_frame_filter): Use it.
13580
13581 2018-03-26  Tom Tromey  <tom@tromey.com>
13582
13583         PR cli/17716:
13584         * python/py-framefilter.c (py_print_type, py_print_value)
13585         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13586         RETURN_MASK_ERROR.
13587
13588 2018-03-26  Tom Tromey  <tom@tromey.com>
13589
13590         * python/py-framefilter.c (enumerate_args): Use
13591         gdb::unique_xmalloc_ptr.
13592
13593 2018-03-26  Tom Tromey  <tom@tromey.com>
13594
13595         * python/py-framefilter.c (py_print_frame): Return
13596         EXT_LANG_BT_OK.
13597         (gdbpy_apply_frame_filter): Update comment.
13598         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13599         Remove.
13600         <EXT_LANG_BT_NO_FILTERS>: Change value.
13601
13602 2018-03-26  Tom Tromey  <tom@tromey.com>
13603
13604         PR backtrace/15582:
13605         * stack.c (backtrace_command): Parse "hide" argument.
13606         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13607         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13608         constant.
13609
13610 2018-03-26  Tom Tromey  <tom@tromey.com>
13611
13612         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13613         add "flags".
13614         (backtrace_command): Remove "fulltrace", add "flags".
13615
13616 2018-03-26  Tom Tromey  <tom@tromey.com>
13617
13618         * stack.c (backtrace_command): Rewrite command line parsing.
13619
13620 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13621
13622         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13623
13624 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13625
13626         * filename-seen-cache.h: Add include guard.
13627
13628 2018-03-26  Keith Seitz  <keiths@redhat.com>
13629
13630         * symfile.c (place_section): Remove "struct" from section_addr_info
13631         in comment.
13632         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13633         "struct" keyword from section_addr_info.
13634
13635 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13636
13637         * regformats/regdef.h (reg): Add constructors.
13638
13639 2018-03-25  Pedro Alves  <palves@redhat.com>
13640
13641         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13642         if then/else bodies in var_func_name extraction.
13643
13644 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13645
13646         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13647         lookup_minimal_symbol() to find symbol entry.
13648         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13649
13650 2018-03-23  Keith Seitz  <keiths@redhat.com>
13651
13652         PR c++/22968
13653         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13654         nested type definitions for C++, too.
13655
13656 2018-03-23  Tom Tromey  <tom@tromey.com>
13657
13658         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13659         a typedef.
13660         (macho_register_oso): Remove.
13661         (macho_symtab_read): Take a std::vector.
13662         (oso_el_compare_name): Now a std::sort comparator.
13663         (macho_symfile_read_all_oso): Take a std::vector.
13664         (macho_symfile_read): Use std::vector.  Remove cleanups.
13665
13666 2018-03-22  Tom Tromey  <tom@tromey.com>
13667
13668         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13669         (record_full_goto_bookmark): Use std::string.
13670
13671 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13672
13673         PR tdep/18295
13674         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13675         a single mask.
13676
13677 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13678
13679         * rs6000-tdep.c (store_insn_p): New function.
13680         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13681         and cr_reg to their unshifted values. Use store_insn_p to
13682         match LR saves using either R1 or fdata->alloca_reg. Use
13683         store_insn_p to match CR saves. Set alloca_reg_offset
13684         when alloca_reg and framep are set. Remove lr_reg shift
13685         when assigning to fdata->lr_register.
13686
13687 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13688
13689         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13690         command line args instead of emitting a warning.
13691
13692 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13693
13694         * tracepoint.h (struct static_tracepoint_marker): Initialize
13695         fields, define default constructor, move constructor and move
13696         assignment, disable the rest.
13697         <str_id, extra>: Make std::string.
13698         (release_static_tracepoint_marker): Remove.
13699         (free_current_marker): Remove.
13700         * tracepoint.c (free_current_marker): Remove.
13701         (parse_static_tracepoint_marker_definition): Adjust to
13702         std::string, use new hex2str overload.
13703         (release_static_tracepoint_marker): Remove.
13704         (print_one_static_tracepoint_marker): Get marker by reference
13705         and adjust to std::string.
13706         (info_static_tracepoint_markers_command): Adjust to std::vector
13707         changes
13708         * target.h (static_tracepoint_marker_p): Remove typedef.
13709         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13710         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13711         bool.
13712         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13713         * target-debug.h
13714         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13715         (target_debug_print_std_vector_static_tracepoint_marker): New.
13716         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13717         to...
13718         (target_debug_print_static_tracepoint_marker_p): ... this.
13719         * target-delegates.c: Re-generate.
13720         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13721         Make std::string.
13722         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13723         (decode_static_tracepoint_spec): Adjust to std::vector.
13724         (tracepoint_print_one_detail): Adjust to std::string.
13725         (strace_marker_decode_location): Adjust to std::string.
13726         (update_static_tracepoint): Adjust to std::string, remove call
13727         to release_static_tracepoint_marker.
13728         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13729         Adjust to std::vector.
13730         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13731         (remote_static_tracepoint_markers_by_strid): Adjust to
13732         std::vector.
13733         * common/rsp-low.h (hex2str): New overload with explicit count
13734         of bytes.
13735         * common/rsp-low.c (hex2str): New overload with explicit count
13736         of bytes.
13737         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13738         (_initialize_rsp_low_selftests): Add test_hex2str test.
13739         * unittests/tracepoint-selftests.c
13740         (test_parse_static_tracepoint_marker_definition): Adjust to
13741         std::string.
13742
13743 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13744
13745         * tracepoint.c (parse_static_tracepoint_marker_definition):
13746         Consider case where the definition is followed by more
13747         definitions.
13748         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13749         tracepoint-selftests.c.
13750         * unittests/tracepoint-selftests.c: New.
13751
13752 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13753
13754         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13755         Carvalho.
13756
13757 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13758
13759         * symtab.c (find_pc_sect_line): fixed indentation.
13760
13761 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13762
13763         * symtab.c (find_pc_sect_line): now uses binary search.
13764
13765 2018-03-19  Tom Tromey  <tom@tromey.com>
13766
13767         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13768         "IDENT" production.
13769
13770 2018-03-19  Pedro Alves  <palves@redhat.com>
13771             Tom Tromey  <tom@tromey.com>
13772
13773         * unittests/observable-selftests.c: New file.
13774         * common/observable.h: New file.
13775         * observable.h: New file.
13776         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13777         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13778         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13779         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13780         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13781         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13782         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13783         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13784         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13785         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13786         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13787         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13788         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13789         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13790         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13791         tui/tui-interp.c, valops.c: Update all users.
13792         * tui/tui-hooks.c (tui_bp_created_observer)
13793         (tui_bp_deleted_observer, tui_bp_modified_observer)
13794         (tui_inferior_exit_observer, tui_before_prompt_observer)
13795         (tui_normal_stop_observer, tui_register_changed_observer):
13796         Remove.
13797         (tui_observers_token): New global.
13798         (attach_or_detach, tui_attach_detach_observers): New functions.
13799         (tui_install_hooks, tui_remove_hooks): Use
13800         tui_attach_detach_observers.
13801         * record-btrace.c (record_btrace_thread_observer): Remove.
13802         (record_btrace_thread_observer_token): New global.
13803         * observer.sh: Remove.
13804         * observer.c: Rename to observable.c.
13805         * observable.c (namespace gdb_observers): Define new objects.
13806         (observer_debug): Move into gdb_observers namespace.
13807         (struct observer, struct observer_list, xalloc_observer_list_node)
13808         (xfree_observer_list_node, generic_observer_attach)
13809         (generic_observer_detach, generic_observer_notify): Remove.
13810         (_initialize_observer): Update.
13811         Don't include observer.inc.
13812         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13813         (clean mostlyclean): Likewise.
13814         (observer.h, observer.inc): Remove targets.
13815         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13816         (COMMON_SFILES): Use observable.c, not observer.c.
13817         * .gitignore: Remove observer.h.
13818
13819 2018-03-18  Tom Tromey  <tom@tromey.com>
13820
13821         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13822         gdb::def_vector.
13823         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13824
13825 2018-03-17  Tom Tromey  <tom@tromey.com>
13826
13827         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13828
13829 2018-03-17  Tom Tromey  <tom@tromey.com>
13830
13831         * target.c (class scoped_target_fd): New.
13832         (target_fileio_close_cleanup): Remove.
13833         (target_fileio_read_alloc_1): Use scoped_target_fd.
13834
13835 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13836
13837         * silent-rules.mk: New.
13838         * Makefile.in: Include silent-rules.mk
13839         (srcdir, VPATH, top_srcdir): Move up.
13840         (COMPILE): Add ECHO_CXX.
13841         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13842         (init.c): Add ECHO_INIT_C.
13843         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13844         (version.c): Add ECHO_GEN.
13845         (printcmd.o): Add ECHO_CXX.
13846         (target-float.o): Add ECHO_CXX.
13847         (ada-exp.o): Add ECHO_CXX.
13848         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13849         (insight$(EXEEXT)): Add ECHO_CXXLD.
13850         * gnulib/configure.ac: Add AM_SILENT_RULES.
13851         * gnulib/aclocal.m4: Re-generate.
13852         * gnulib/configure: Re-generate.
13853         * gnulib/import/Makefile.in: Re-generate.
13854
13855 2018-03-16  Tom Tromey  <tom@tromey.com>
13856
13857         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13858         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13859         * utils.c (do_free_section_addr_info)
13860         (make_cleanup_free_section_addr_info): Remove.
13861         * symfile.h (struct other_sections): Add constructor.
13862         (struct section_addr_info): Remove.
13863         (section_addr_info): New typedef.
13864         (struct sym_fns) <sym_offsets>: Change type of parameter.
13865         (build_section_addr_info_from_objfile)
13866         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13867         (default_symfile_offsets, symbol_file_add)
13868         (symbol_file_add_from_bfd)
13869         (build_section_addr_info_from_section_table): Update.
13870         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13871         * symfile.c (alloc_section_addr_info): Remove.
13872         (build_section_addr_info_from_section_table): Change return type.
13873         Update.
13874         (build_section_addr_info_from_bfd)
13875         (build_section_addr_info_from_objfile): Likewise.
13876         (free_section_addr_info): Remove.
13877         (relative_addr_info_to_section_offsets): Change type of "addrs".
13878         (addrs_section_compar): Now a std::sort comparator.
13879         (addrs_section_sort): Change return type.
13880         (addr_info_make_relative): Change type of "addrs".  Update.
13881         (default_symfile_offsets, syms_from_objfile_1)
13882         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13883         (symbol_file_add_separate): Update.
13884         (symbol_file_add): Change type of "addrs".  Update.
13885         (add_symbol_file_command): Update.  Remove cleanups.
13886         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13887         cleanups.
13888         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13889         * solib.c (solib_read_symbols): Update.
13890         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13891         * machoread.c (macho_symfile_offsets): Update.
13892         * jit.c (jit_bfd_try_read_symtab): Update.
13893
13894 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13895
13896         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13897         unittests/utils-selftests.c.
13898         * unittests/utils-selftests.c: New file.
13899
13900 2018-03-14  Tom Tromey  <tom@tromey.com>
13901
13902         PR cli/14977:
13903         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13904         for NULL.
13905
13906 2018-03-14  Tom Tromey  <tom@tromey.com>
13907
13908         PR cli/19918:
13909         * printcmd.c (printf_pointer): Allow "-" in format.
13910
13911 2018-03-14  Tom Tromey  <tom@tromey.com>
13912
13913         * printcmd.c (_initialize_printcmd): Add usage to printf.
13914
13915 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13916
13917         * MAINTAINERS: Update my email address.
13918
13919 2018-03-13  Tom Tromey  <tom@tromey.com>
13920
13921         * machoread.c (macho_check_dsym): Change filenamep to a
13922         std::string*.
13923         (macho_symfile_read): Update.
13924         * symfile.c (load_command): Use std::string.
13925
13926 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13927
13928         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13929         to error message string.
13930         (riscv_register_name): Use xsnprintf instead of sprintf.
13931         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13932         internal_error.
13933         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13934         error.
13935         (riscv_push_dummy_call): Likewise.
13936
13937 2018-03-12  Tom Tromey  <tom@tromey.com>
13938
13939         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13940         Use gdb::byte_vector.
13941         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13942
13943 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13944
13945         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13946         parameter type to readable_regcache.
13947         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13948         the declaration.
13949
13950 2018-03-11  Tom Tromey  <tom@tromey.com>
13951
13952         * dwarf2read.c (struct nextfield): Add initializers.
13953         (struct nextfnfield): Remove.
13954         (struct fnfieldlist): Add initializers.  Remove "length" and
13955         "head", use std::vector.
13956         (struct decl_field_list): Remove.
13957         (struct field_info): Add initializers.
13958         <fields, baseclasses>: Now std::vector.
13959         <nbaseclasses, nfnfields, typedef_field_list_count,
13960         nested_types_list_count>: Remove.
13961         (dwarf2_add_field, dwarf2_add_type_defn)
13962         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13963         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13964         (process_structure_scope): Update.
13965
13966 2018-03-11  Tom Tromey  <tom@tromey.com>
13967
13968         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13969         for use by std::sort.
13970         (build_type_psymtabs_1): Use std::vector.
13971
13972 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13973
13974         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13975         and LIBMPFR in the printed configuration.
13976
13977 2018-03-08  Tom Tromey  <tom@tromey.com>
13978
13979         * source.c (get_filename_and_charpos): Use scoped_fd.
13980         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13981         (procfs_pidlist): Likewise.
13982         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13983         (iterate_over_mappings): Likewise.
13984
13985 2018-03-08  Tom Tromey  <tom@tromey.com>
13986
13987         * infcall.c (struct call_return_meta_info)
13988         <stack_temporaries_enabled>: Remove.
13989         (get_call_return_value, call_function_by_hand_dummy): Update.
13990         * thread.c (disable_thread_stack_temporaries): Remove.
13991         (enable_thread_stack_temporaries): Remove.
13992         (thread_stack_temporaries_enabled_p): Return bool.
13993         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13994         (get_last_thread_stack_temporary): Update.
13995         * eval.c (evaluate_subexp): Update.
13996         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13997         class, not a function.
13998         (value_ptr, value_vec): Remove typedefs.
13999         (class thread_info) <stack_temporaries_enabled>: Now bool.
14000         <stack_temporaries>: Now a std::vector.
14001         (thread_stack_temporaries_enabled_p)
14002         (value_in_thread_stack_temporaries): Return bool.
14003
14004 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14005
14006         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14007         (getpkt_or_notif_sane_1): Likewise.
14008
14009 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14010
14011         * build-id.c (build_id_to_debug_bfd): Use std::string.
14012
14013 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14014
14015         * build-id.c (find_separate_debug_file_by_buildid): Return
14016         std::string.
14017         * build-id.h (find_separate_debug_file_by_buildid): Return
14018         std::string.
14019         * coffread.c (coff_symfile_read): Adjust to std::string.
14020         * elfread.c (elf_symfile_read): Adjust to std::string.
14021         * symfile.c (separate_debug_file_exists): Change parameter to
14022         std::string.
14023         (find_separate_debug_file): Return std::string.
14024         (find_separate_debug_file_by_debuglink): Return std::string.
14025         * symfile.h (find_separate_debug_file_by_debuglink): Return
14026         std::string.
14027
14028 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14029
14030         * common/xml-utils.c (xml_escape_text): Move code to...
14031         (xml_escape_text_append): ... this new function.
14032         * common/xml-utils.h (xml_escape_text_append): New declaration.
14033         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14034         New function.
14035         (_initialize_xml_utils): register test_xml_escape_text_append as
14036         a selftest.
14037
14038 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14039
14040         * defs.h: Remove MAX_REGISTER_SIZE.
14041         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14042         asserts.
14043         * python/py-unwind.c (pyuw_sniffer): Likewise.
14044
14045 2018-03-07  Tom Tromey  <tom@tromey.com>
14046
14047         * linux-tdep.c (linux_info_proc): Update.
14048         * target.h (struct target_ops) <to_fileio_readlink>: Return
14049         optional<string>.
14050         (target_fileio_readlink): Return optional<string>.
14051         * remote.c (remote_hostio_readlink): Return optional<string>.
14052         * inf-child.c (inf_child_fileio_readlink): Return
14053         optional<string>.
14054         * target.c (target_fileio_readlink): Return optional<string>.
14055
14056 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14057
14058         * regcache.c (cooked_read_test): Add riscv to the list of
14059         architectures that have a save_reggroup.
14060
14061 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14062
14063         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14064         value is not a dynamic class object.
14065
14066 2018-03-06  Tom Tromey  <tom@tromey.com>
14067
14068         * rust-exp.y: Formatting fixes.
14069
14070 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14071
14072         * riscv-tdep.c (riscv_register_name): Remove target description
14073         support.
14074         (riscv_gdbarch_init): Remove target description check.
14075
14076 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14077
14078         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14079         comment.
14080         * riscv-tdep.h: Likewise.
14081
14082 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14083
14084         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14085         (riscv_pseudo_register_write): Delete.
14086         (riscv_gdbarch_init): Remove all use of pseudo registers.
14087
14088 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14089
14090         * record-btrace.c (btrace_print_lines): Replace cleanup
14091         parameter with RAII equivalents.
14092         (btrace_insn_history): Replace cleanup with RAII equivalents.
14093         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14094         make_cleanup_ui_out_tuple_begin_end): Remove.
14095         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14096         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14097         make_cleanup_ui_out_list_begin_end): Remove.
14098
14099 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14100
14101         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14102         parameter types to std::vector.  Use bool.
14103         (record_btrace_wait): Replace VEC(tp_t) with
14104         std::vector<thread_info *>.
14105         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14106
14107 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14108
14109         * record-btrace.c (record_btrace_disable_callback): Remove.
14110         (struct scoped_btrace_disable): New.
14111         (record_btrace_open): Use scoped_btrace_disable.
14112
14113 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14114
14115         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14116         reading values from registers.
14117
14118 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14119
14120         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14121         where appropriate.
14122
14123 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14124
14125         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14126         change parameter type.  Use GDB's print functions, and use
14127         core_addr_to_string where appropriate.
14128         (riscv_push_dummy_call): Use core_addr_to_string where
14129         appropriate, update call to riscv_print_arg_location, and reindent
14130         a few lines.
14131         (riscv_return_value): Update call to riscv_print_arg_location.
14132
14133 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14134             Tim Newsome <tim@sifive.com>
14135             Albert Ou <a0u@eecs.berkeley.edu>
14136             Darius Rad <darius@bluespec.com>
14137
14138         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14139         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14140         (ALLDEPFILES): Add riscv-tdep.c
14141         * configure.tgt: Add riscv support.
14142         * riscv-tdep.c: New file.
14143         * riscv-tdep.h: New file.
14144         * NEWS: Mention new target.
14145         * MAINTAINERS: Add entry for riscv.
14146
14147 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14148
14149         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14150         fields within aggregates.
14151
14152 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14153
14154         * record-btrace.c (btrace_print_lines): Change type of flags to
14155         gdb_disassembly_flags.
14156
14157 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14158
14159         * fbsd-nat.c: Include "inf-ptrace.h".
14160         (USE_SIGTRAP_SIGINFO): Conditionally define.
14161         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14162         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14163         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14164         function.
14165         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14166         Likewise.
14167         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14168         Likewise.
14169         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14170         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14171         "supports_stopped_by_hw_breakpoint" target methods.
14172
14173 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14174
14175         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14176         * fbsd-nat.c (debug_fbsd_nat): New variable.
14177         (show_fbsd_nat_debug): New function.
14178         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14179         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14180
14181 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14182
14183         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14184         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14185         prototype.
14186         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14187         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14188         method.
14189
14190 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14191
14192         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14193         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14194
14195 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14196
14197         * charset.c (struct charset_vector): New.
14198         (charsets): Change type to charset_vector.
14199         (find_charset_names): Adjust.
14200         (add_one): Adjust.
14201         (_initialize_charset): Adjust.
14202
14203 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14204
14205         * progspace.h (struct program_space) <deleted_solibs>: Change
14206         type to std::vector<std::string>.
14207         * progspace.c (clear_program_space_solib_cache): Adjust.
14208         * breakpoint.c (print_solib_event): Adjust.
14209         (check_status_catch_solib): Adjust.
14210         * solib.c (update_solib_list): Adjust.
14211         * ui-out.h (class ui_out) <field_string>: New overload.
14212         * ui-out.c (ui_out::field_string): New overload.
14213
14214 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14215
14216         * progspace.h (struct program_space): Add constructor and
14217         destructor, initialize fields.
14218         (add_program_space): Remove.
14219         * progspace.c (add_program_space): Rename to...
14220         (program_space::program_space): ... this.
14221         (release_program_space): Rename to...
14222         (program_space::~program_space): ... this.
14223         (delete_program_space): Use delete to delete program_space.
14224         (initialize_progspace): Use new to allocate program_space.
14225         * inferior.c (add_inferior_with_spaces): Likewise.
14226         (clone_inferior_command): Likewise.
14227         * infrun.c (follow_fork_inferior): Likewise.
14228         (handle_vfork_child_exec_or_exit): Likewise.
14229
14230 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14231
14232         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14233         (delim_string_to_char_ptr_vec): Return std::vector of
14234         gdb::unique_xmalloc_ptr.
14235         (dirnames_to_char_ptr_vec_append): Take std::vector of
14236         gdb::unique_xmalloc_ptr.
14237         (dirnames_to_char_ptr_vec): Return std::vector of
14238         gdb::unique_xmalloc_ptr.
14239         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14240         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14241         (delim_string_to_char_ptr_vec): Return an std::vector of
14242         gdb::unique_xmalloc_ptr, adjust the code.
14243         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14244         gdb::unique_xmalloc_ptr, adjust the code.
14245         (dirnames_to_char_ptr_vec): Return an std::vector of
14246         gdb::unique_xmalloc_ptr, adjust the code.
14247         * auto-load.c (auto_load_safe_path_vec): Change type to
14248         std::vector of gdb::unique_xmalloc_ptr.
14249         (auto_load_expand_dir_vars): Return an std::vector of
14250         gdb::unique_xmalloc_ptr, adjust the code.
14251         (auto_load_safe_path_vec_update): Adjust.
14252         (filename_is_in_auto_load_safe_path_vec): Adjust.
14253         (auto_load_objfile_script_1): Adjust.
14254         * build-id.c (build_id_to_debug_bfd): Adjust.
14255         * linux-thread-db.c (thread_db_load_search): Adjust.
14256         * source.c (add_path): Adjust.
14257         (openp): Adjust.
14258         * symfile.c (find_separate_debug_file): Adjust.
14259         * utils.c (do_free_char_ptr_vec): Remove.
14260         (make_cleanup_free_char_ptr_vec): Remove.
14261
14262 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14263
14264         PR gdb/22907
14265         * common/pathstuff.c: Conditionally include "<windows.h>".
14266
14267 2018-03-01  Georg Sauthoff  <mail@georg.so>
14268
14269         PR gdb/22888
14270         * gcore.in: Quote variables and switch interpreter to bash.
14271
14272 2018-03-01  Tom Tromey  <tom@tromey.com>
14273
14274         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14275         assertion.  Add assertion for discriminant_index.
14276         (quirk_rust_enum): Use correct base type name in univariant case.
14277
14278 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14279
14280         * record.c (get_call_history_modifiers): Return a
14281         record_print_flags.
14282         (cmd_record_call_history): Adjust.
14283         * record-btrace.c (record_btrace_call_history): Adjust.
14284         (record_btrace_call_history_range): Adjust.
14285         (record_btrace_call_history_from): Adjust.
14286         * target-debug.h (target_debug_print_record_print_flags): New.
14287         * target-delegates.c: Re-generate.
14288         * target.c (target_call_history): Change flags type.
14289         (target_call_history_from): Likewise.
14290         (target_call_history_range): Likewise.
14291         * target.h (struct target_ops) <target_call_history>: Likewise.
14292         (target_call_history_from): Likewise.
14293         (target_call_history_range): Likewise.
14294
14295 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14296             Simon Marchi  <simon.marchi@polymtl.ca>
14297
14298         * common/common-utils.c: Include "sys/stat.h".
14299         (is_regular_file): Move here from "source.c"; change return
14300         type to "bool".
14301         * common/common-utils.h (is_regular_file): New prototype.
14302         * common/pathstuff.c (contains_dir_separator): New function.
14303         * common/pathstuff.h (contains_dir_separator): New prototype.
14304         * source.c: Don't include "sys/stat.h".
14305         (is_regular_file): Move to "common/common-utils.c".
14306
14307 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14308
14309         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14310         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14311         * auto-load.c: Include "common/pathstuff.h".
14312         * common/common-def.h (current_directory): Move here.
14313         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14314         function.
14315         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14316         prototype.
14317         * common/pathstuff.c: New file.
14318         * common/pathstuff.h: New file.
14319         * compile/compile.c: Include "common/pathstuff.h".
14320         * defs.h (current_directory): Move to "common/common-defs.h".
14321         * dwarf2read.c: Include "common/pathstuff.h".
14322         * exec.c: Likewise.
14323         * guile/scm-safe-call.c: Likewise.
14324         * linux-thread-db.c: Likewise.
14325         * main.c: Likewise.
14326         * nto-tdep.c: Likewise.
14327         * objfiles.c: Likewise.
14328         * source.c: Likewise.
14329         * symtab.c: Likewise.
14330         * utils.c: Include "common/pathstuff.h".
14331         (gdb_realpath): Move to "common/pathstuff.c".
14332         (gdb_realpath_keepfile): Likewise.
14333         (gdb_abspath): Likewise.
14334         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14335         (gdb_realpath_keepfile): Likewise.
14336         (gdb_abspath): Likewise.
14337
14338 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14339
14340         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14341         wildcard process pid for super_resume for kernels with a
14342         specific bug.
14343
14344 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14345
14346         * compile/compile.c (get_args): Add additional comments
14347         explaining function.
14348
14349 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14350             Tom Tromey  <tom@tromey.com>
14351
14352         * target.h (memory_write_request_s): Remove typedef.  Don't define
14353         VEC.
14354         (target_write_memory_blocks): Change argument to std::vector.
14355         (struct memory_write_request): Add constructor.
14356         * target-memory.c (compare_block_starting_address): Return bool.
14357         Change argument types.
14358         (claim_memory): Change arguments to use std::vector.
14359         (split_regular_and_flash_blocks, blocks_to_erase)
14360         (compute_garbled_blocks): Likewise.
14361         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14362         (target_write_memory_blocks): Change argument to std::vector.
14363         * symfile.c (struct load_section_data): Add constructor and
14364         destructor.  Use std::vector for "requests".
14365         (struct load_progress_data): Add initializers.
14366         (load_section_callback): Update.  Use "new".
14367         (clear_memory_write_data): Remove.
14368         (generic_load): Update.
14369
14370 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14371
14372         * arch/aarch64.h: Use common/tdesc.h.
14373
14374 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14375
14376         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14377         architecture with a 64-bit ABI.
14378
14379 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14380
14381         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14382         ahead of target description loading.
14383
14384 2018-02-26  Tom Tromey  <tom@tromey.com>
14385
14386         * stack.c (backtrace_command_1): Update.
14387         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14388         of "flags".
14389         * python/py-framefilter.c (py_print_frame)
14390         (gdbpy_apply_frame_filter): Change type of "flags".
14391         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14392         of "flags".
14393         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14394         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14395         * extension.h (enum frame_filter_flag): Rename from
14396         frame_filter_flags.
14397         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14398         (apply_ext_lang_frame_filter): Change type of "flags".
14399         * extension.c (apply_ext_lang_frame_filter): Change type of
14400         "flags".
14401         * extension-priv.h (struct extension_language_ops)
14402         <apply_frame_filter>: Change type of "flags".
14403
14404 2018-02-26  Tom Tromey  <tom@tromey.com>
14405
14406         PR python/16497:
14407         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14408         off-by-one in py_end computation.
14409         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14410         PRINT_MORE_FRAMES.
14411         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14412         constant.
14413
14414 2018-02-26  Tom Tromey  <tom@tromey.com>
14415
14416         * dwarf2read.c (struct variant_field): New.
14417         (struct nextfield) <variant>: New field.
14418         (dwarf2_add_field): Handle DW_TAG_variant_part.
14419         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14420         discriminated union.
14421         (read_structure_type): Handle DW_TAG_variant_part.
14422         (handle_struct_member_die): New function, extracted from
14423         process_structure_scope.  Handle DW_TAG_variant.
14424         (process_structure_scope): Handle discriminated unions.  Call
14425         handle_struct_member_die.
14426
14427 2018-02-26  Tom Tromey  <tom@tromey.com>
14428
14429         * rust-lang.h (rust_last_path_segment): Declare.
14430         * rust-lang.c (rust_last_path_segment): Now public.  Change
14431         contract.
14432         (struct disr_info): Remove.
14433         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14434         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14435         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14436         (rust_enum_p, rust_enum_variant): New function.
14437         (rust_underscore_fields): Remove "offset" parameter.
14438         (rust_print_enum): New function.
14439         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14440         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14441         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14442         enums.
14443         (rust_internal_print_type): New function, from rust_print_type.
14444         Remove enum code.
14445         (rust_print_type): Call rust_internal_print_type.
14446         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14447         Update enum handling.
14448         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14449         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14450         (rust_union_quirks): New functions.
14451         (process_full_comp_unit, process_full_type_unit): Call
14452         rust_union_quirks.
14453         (process_structure_scope): Update rust_unions if necessary.
14454
14455 2018-02-26  Tom Tromey  <tom@tromey.com>
14456
14457         * value.h (value_union_variant): Declare.
14458         * valops.c (value_union_variant): New function.
14459         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14460         (struct discriminant_info): New.
14461         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14462         enumerator.
14463         (struct main_type) <flag_discriminated_union>: New field.
14464
14465 2018-02-26  Tom Tromey  <tom@tromey.com>
14466
14467         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14468         unittests/unpack-selftests.c.
14469         * unittests/unpack-selftests.c: New file.
14470         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14471
14472 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14473
14474         * dwarf2read.c (struct partial_die_info) <read>: New method.
14475         (read_partial_die): Remove the declaration.
14476         (load_partial_dies): Update.
14477         (partial_die_info::partial_die_info):
14478         (read_partial_die): Change it to partial_die_info::read.
14479
14480 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14481
14482         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14483         (fixup_partial_die): Remove declaration.
14484         (scan_partial_symbols): Update.
14485         (partial_die_parent_scope): Likewise.
14486         (partial_die_full_name): Likewise.
14487         (fixup_partial_die): Change it to partial_die_info::fixup.
14488
14489 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14490
14491         * dwarf2read.c (read_partial_die): Update the declaration.
14492         (load_partial_dies): Caller update.
14493         (read_partial_die): Remove one argument abbrev_len.
14494
14495 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14496
14497         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14498         assignment operator.
14499         (load_partial_dies): Use ctor and copy ctor.
14500         (read_partial_die): Update.
14501         (dwarf2_cu::find_partial_die): Use ctor.
14502
14503 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14504
14505         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14506         (find_partial_die_in_comp_unit): Change it to
14507         dwarf2_cu::find_partial_die.
14508         (find_partial_die): Update.
14509
14510 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14511
14512         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14513         is NULL.
14514
14515 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14516
14517         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14518
14519 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14520
14521         * arch/amd64.h: Use common/tdesc.h.
14522         * arch/i386.c: Likewise.
14523         * arch/i386.h: Likewise.
14524         * arch/tic6x.c: Likewise.
14525         * arch/tdesc.h: Move file from here...
14526         * common/tdesc.h: ...to here.
14527         * features/aarch64-core.c: Regenerate.
14528         * features/aarch64-fpu.c: Regenerate.
14529         * features/i386/32bit-avx.c: Regenerate.
14530         * features/i386/32bit-avx512.c: Regenerate.
14531         * features/i386/32bit-core.c: Regenerate.
14532         * features/i386/32bit-linux.c: Regenerate.
14533         * features/i386/32bit-mpx.c: Regenerate.
14534         * features/i386/32bit-pkeys.c: Regenerate.
14535         * features/i386/32bit-sse.c: Regenerate.
14536         * features/i386/64bit-avx.c: Regenerate.
14537         * features/i386/64bit-avx512.c: Regenerate.
14538         * features/i386/64bit-core.c: Regenerate.
14539         * features/i386/64bit-linux.c: Regenerate.
14540         * features/i386/64bit-mpx.c: Regenerate.
14541         * features/i386/64bit-pkeys.c: Regenerate.
14542         * features/i386/64bit-segments.c: Regenerate.
14543         * features/i386/64bit-sse.c: Regenerate.
14544         * features/i386/x32-core.c: Regenerate.
14545         * features/tic6x-c6xp.c: Regenerate.
14546         * features/tic6x-core.c: Regenerate.
14547         * features/tic6x-gp.c: Regenerate.
14548         * target-descriptions.c: Use common/tdesc.h.
14549         * target-descriptions.h: Likewise.
14550
14551 2018-02-24  Tom Tromey  <tom@tromey.com>
14552
14553         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14554         (try_thread_db_load_from_dir, thread_db_load_search): Use
14555         std::string.
14556         (info_auto_load_libthread_db_compare): Return bool.  Change
14557         argument types.
14558         (info_auto_load_libthread_db): Use std::vector, std::string.
14559         Remove cleanups.
14560
14561 2018-02-24  Tom Tromey  <tom@tromey.com>
14562
14563         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14564         std::string.
14565         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14566         std::string*.
14567         * gdbarch.c: Rebuild.
14568         * gdbarch.h: Rebuild.
14569         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14570         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14571         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14572         std::string*.
14573
14574 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14575
14576         * gdbtypes.h (sect_offset): Change type to uint64_t.
14577         (sect_offset_str): New function.
14578         * dwarf2read.c (create_addrmap_from_aranges): Use
14579         sect_offset_str.
14580         (error_check_comp_unit_head): Likewise.
14581         (create_debug_type_hash_table): Likewise.
14582         (read_cutu_die_from_dwo): Likewise.
14583         (init_cutu_and_read_dies): Likewise.
14584         (init_cutu_and_read_dies_no_follow): Likewise.
14585         (process_psymtab_comp_unit_reader): Likewise.
14586         (partial_die_parent_scope): Likewise.
14587         (peek_die_abbrev): Likewise.
14588         (process_queue): Likewise.
14589         (dwarf2_physname): Likewise.
14590         (read_namespace_alias): Likewise.
14591         (read_import_statement): Likewise.
14592         (create_dwo_cu_reader): Likewise.
14593         (create_cus_hash_table): Likewise.
14594         (lookup_dwo_cutu): Likewise.
14595         (inherit_abstract_dies): Likewise.
14596         (read_func_scope): Likewise.
14597         (read_call_site_scope): Likewise.
14598         (dwarf2_add_member_fn): Likewise.
14599         (read_common_block): Likewise.
14600         (read_module_type): Likewise.
14601         (read_typedef): Likewise.
14602         (read_subrange_type): Likewise.
14603         (load_partial_dies): Likewise.
14604         (read_partial_die): Likewise.
14605         (find_partial_die): Likewise.
14606         (read_str_index): Likewise.
14607         (dwarf2_string_attr): Likewise.
14608         (build_error_marker_type): Likewise.
14609         (lookup_die_type): Likewise.
14610         (dump_die_shallow): Likewise.
14611         (follow_die_ref): Likewise.
14612         (dwarf2_fetch_die_loc_sect_off): Likewise.
14613         (dwarf2_fetch_constant_bytes): Likewise.
14614         (follow_die_sig): Likewise.
14615         (get_signatured_type): Likewise.
14616         (get_DW_AT_signature_type): Likewise.
14617         (dwarf2_find_containing_comp_unit): Likewise.
14618         (set_die_type): Likewise.
14619
14620 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14621
14622         * arch/aarch64.c: Include "common-defs.h".
14623         * arch/amd64.c: Likewise.
14624         * arch/i386.c: Likewise.
14625
14626 2018-02-21  Tom Tromey  <tom@tromey.com>
14627
14628         * value.h: (extract_field_op): Update.
14629         * eval.c (extract_field_op): Return a const char *.
14630         * expression.h (parse_expression_for_completion): Update.
14631         * completer.c (complete_expression): Update.
14632         (add_struct_fields): Make fieldname const.
14633         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14634         (mark_completion_tag, parse_exp_in_context_1): Update.
14635         (parse_expression_for_completion): Change "name" to
14636         unique_xmalloc_ptr*.
14637
14638 2018-02-21  Tom Tromey  <tom@tromey.com>
14639
14640         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14641
14642 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14643
14644         * avr-tdep.c (avr_read_pc): Change parameter type to
14645         readable_regcache.
14646         * gdbarch.sh (read_pc): Likewise.
14647         * gdbarch.c: Re-generated.
14648         * gdbarch.h: Re-generated.
14649         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14650         readable_regcache.
14651         * ia64-tdep.c (ia64_read_pc): Likewise.
14652         * mips-tdep.c (mips_read_pc): Likewise.
14653         * spu-tdep.c (spu_read_pc): Likewise.
14654
14655 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14656
14657         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14658         * regcache-dump.c: New file.
14659         * regcache.c: Move register_dump to regcache-dump.c.
14660         (maintenance_print_registers): Likewise.
14661         (maintenance_print_raw_registers): Likewise.
14662         (maintenance_print_cooked_registers): Likewise.
14663         (maintenance_print_register_groups): Likewise.
14664         (maintenance_print_remote_registers): Likewise.
14665         (_initialize_regcache): Likewise.
14666         * regcache.h (register_dump): Moved from regcache.c.
14667
14668 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14669
14670         * regcache.c (regcache::regcache): Update.
14671         (regcache::invalidate): Move it to detached_regcache::invalidate.
14672         (get_thread_arch_aspace_regcache): Update.
14673         (regcache::raw_update): Update.
14674         (regcache::cooked_read): Remove some code.
14675         (regcache::cooked_read_value): Likewise.
14676         (regcache::raw_write): Remove assert on m_readonly_p.
14677         (regcache::raw_supply_integer): Move it to
14678         detached_regcache::raw_supply_integer.
14679         (regcache::raw_supply_zeroed): Likewise.
14680         * regcache.h (detached_regcache) <raw_supply_integer>: New
14681         declaration.
14682         <raw_supply_zeroed, invalidate>: Likewise.
14683         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14684         <invalidate>: Likewise.
14685         <m_readonly_p>: Removed.
14686
14687 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14688
14689         * infcmd.c (get_return_value): Let stop_regs point to
14690         get_current_regcache.
14691         * regcache.c (regcache::regcache): Remove.
14692         (register_dump_reg_buffer): New class.
14693         (regcache_print): Adjust.
14694         * regcache.h (regcache): Remove constructors.
14695
14696 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14697
14698         * regcache.c (class register_dump): New class.
14699         (register_dump_regcache, register_dump_none): New class.
14700         (register_dump_remote, register_dump_groups): New class.
14701         (regcache_print): Update.
14702         * regcache.h (regcache_dump_what): Move it to regcache.c.
14703         (regcache) <dump>: Remove.
14704
14705 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14706
14707         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14708          reg_buffer_rw *.
14709         (jit_unwind_reg_set_impl): Call raw_supply.
14710         (jit_frame_sniffer): Use reg_buffer_rw.
14711         * record-full.c (record_full_core_regbuf): Change its type.
14712         (record_full_core_open_1): Use reg_buffer_rw.
14713         (record_full_close): Likewise.
14714         (record_full_core_fetch_registers): Use regcache->raw_supply.
14715         (record_full_core_store_registers): Likewise.
14716         * regcache.c (regcache::get_register_status): Move it to
14717         reg_buffer.
14718         (regcache_raw_set_cached_value): Remove.
14719         (regcache::raw_set_cached_value): Remove.
14720         (regcache::raw_write): Call raw_supply.
14721         (regcache::raw_supply): Move it to reg_buffer_rw.
14722         * regcache.h (regcache_raw_set_cached_value): Remove.
14723         (reg_buffer_rw): New class.
14724
14725 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14726
14727         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14728         readonly_detached_regcache.
14729         (dummy_frame_prev_register): Use regcache->cooked_read.
14730         * frame.c (frame_save_as_regcache): Change return type.
14731         (frame_pop): Update.
14732         * frame.h (frame_save_as_regcache): Update declaration.
14733         * inferior.h (get_infcall_suspend_state_regcache): Update
14734         declaration.
14735         * infrun.c (infcall_suspend_state) <registers>: use
14736         readonly_detached_regcache.
14737         (save_infcall_suspend_state): Don't use regcache_dup.
14738         (get_infcall_suspend_state_regcache): Change return type.
14739         * linux-fork.c (struct fork_info) <savedregs>: Change to
14740         readonly_detached_regcache.
14741         <pc>: New field.
14742         (fork_save_infrun_state): Don't use regcache_dup.
14743         (info_checkpoints_command): Adjust.
14744         * mi/mi-main.c (register_changed_p): Update declaration.
14745         (mi_cmd_data_list_changed_registers): Use
14746         readonly_detached_regcache.
14747         (register_changed_p): Change parameter type to
14748         readonly_detached_regcache.
14749         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14750         readonly_detached_regcache.
14751         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14752         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14753         New.
14754         (regcache::save): Move it to reg_buffer.
14755         (regcache::restore): Change parameter type.
14756         (regcache_dup): Remove.
14757         * regcache.h (reg_buffer) <save>: New method.
14758         (readonly_detached_regcache): New class.
14759         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14760         readonly_detached_regcache.
14761         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14762
14763 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14764
14765         * frame.c (frame_save_as_regcache): Use regcache method save.
14766         (frame_pop): Use regcache method restore.
14767         * infrun.c (restore_infcall_suspend_state): Likewise.
14768         * linux-fork.c (fork_load_infrun_state): Likewise.
14769         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14770         save.
14771         * regcache.c (regcache_save): Remove.
14772         (regcache::restore): More asserts.
14773         (regcache_cpy): Remove.
14774         * regcache.h (regcache_save): Remove the declaration.
14775         (regcache::restore): Move from private to public.
14776         Remove the friend declaration of regcache_cpy.
14777         (regcache_cpy): Remove declaration.
14778
14779 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14780
14781         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14782         parameter type to 'readable_regcache *'.
14783         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14784         * arm-tdep.c (arm_neon_quad_read): Likewise.
14785         (arm_pseudo_read): Likewise.
14786         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14787         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14788         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14789         * gdbarch.c: Re-generated.
14790         * gdbarch.h: Re-generated.
14791         * gdbarch.sh (pseudo_register_read): Change parameter type to
14792         'readable_regcache *'.
14793         (pseudo_register_read_value): Likewise.
14794         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14795         (h8300_pseudo_register_read): Likewise.
14796         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14797         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14798         (i386_pseudo_register_read_into_value): Likewise.
14799         (i386_pseudo_register_read_value): Likewise.
14800         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14801         declaration.
14802         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14803         * m32c-tdep.c (m32c_raw_read): Likewise.
14804         (m32c_read_flg): Likewise.
14805         (m32c_banked_register): Likewise.
14806         (m32c_banked_read): Likewise.
14807         (m32c_sb_read): Likewise.
14808         (m32c_part_read): Likewise.
14809         (m32c_cat_read): Likewise.
14810         (m32c_r3r2r1r0_read): Likewise.
14811         (m32c_pseudo_register_read): Likewise.
14812         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14813         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14814         (mep_pseudo_cr64_read): Likewise.
14815         (mep_pseudo_register_read): Likewise.
14816         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14817         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14818         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14819         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14820         (regcache::cooked_read): Likewise.
14821         (regcache::cooked_read_value): Likewise.
14822         (regcache_cooked_read_signed):
14823         (regcache::cooked_read): Likewise.
14824         * regcache.h (readable_regcache): New class.
14825         (regcache): Inherit readable_regcache.  Move some methods to
14826         readable_regcache.
14827         * rl78-tdep.c (rl78_pseudo_register_read): Change
14828         parameter type to 'readable_regcache *'.
14829         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14830         (e500_pseudo_register_read): Change parameter type to
14831         'readable_regcache *'.
14832         (dfp_pseudo_register_read): Likewise.
14833         (vsx_pseudo_register_read): Likewise.
14834         (efpr_pseudo_register_read): Likewise.
14835         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14836         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14837         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14838         (sh64_pseudo_register_read): Likewise.
14839         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14840         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14841         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14842         (spu_pseudo_register_read): Likewise.
14843         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14844         (xtensa_pseudo_register_read): Likewise.
14845
14846 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14847
14848         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14849         (regcache::arch): Move it to reg_buffer::arch.
14850         (regcache::register_buffer): Likewise.
14851         (regcache::assert_regnum): Likewise.
14852         (regcache::num_raw_registers): Likewise.
14853         * regcache.h (reg_buffer): New class.
14854         (regcache): Inherit reg_buffer.
14855
14856 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14857
14858         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14859         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14860
14861 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14862
14863         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14864
14865 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14866
14867         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14868         (SFILES): Remove common/*.c files.
14869         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14870         * common/common.host: Add common reference.
14871         * configure.ac: Likewise.
14872         * configure: Regenerate.
14873
14874 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14875
14876         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14877         (block_initialize_namespace): Use new.
14878         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14879         (dwarf2_free_objfile): Use delete.
14880         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14881         (copy_type_recursive): Use new.
14882         * gdb_obstack.h (allocate_on_obstack): New.
14883
14884 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14885
14886         PR gdb/22849
14887         * inferior.c (exit_inferior_1): Reset inf->control.
14888
14889 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14890
14891         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14892         declaration.
14893
14894 2018-02-14  Pedro Alves  <palves@redhat.com>
14895
14896         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14897         frame_cleanup_after_sniffer on exception.
14898
14899 2018-02-14  Tom Tromey  <tom@tromey.com>
14900
14901         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14902         const.
14903         (solib_bfd_open): Make pathname const.
14904         * solib.c (solib_bfd_open): Make pathname const.
14905         * solib-spu.c (spu_bfd_fopen): Make name const.
14906         (spu_bfd_open): Make pathname const.
14907         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14908         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14909
14910 2018-02-14  Tom Tromey  <tom@tromey.com>
14911
14912         * symfile.c (symfile_bfd_open): Update.
14913         * source.h (openp, source_full_path_of, find_and_open_source):
14914         Change argument type to unique_xmalloc_ptr.
14915         * source.c (openp): Take a unique_xmalloc_ptr.
14916         (source_full_path_of, find_and_open_source): Likewise.
14917         (open_source_file, symtab_to_fullname): Update.
14918         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14919         unique_xmalloc_ptr.
14920         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14921         (exec_file_find): Update.
14922         * psymtab.c (psymtab_to_fullname): Update.
14923         * nto-tdep.h (nto_find_and_open_solib): Update.
14924         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14925         unique_xmalloc_ptr.
14926         * exec.c (exec_file_attach): Update.
14927         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14928         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14929
14930 2018-02-14  Tom Tromey  <tom@tromey.com>
14931
14932         * solib.c: Include source.h.
14933         * nto-tdep.c: Include source.h.
14934         * mi/mi-cmd-env.c: Include source.h.
14935         * infcmd.c: Include source.h.
14936         * exec.c: Include source.h.
14937         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14938         (add_path, directory_switch, source_path, init_source_path): Move
14939         declarations...
14940         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14941         (add_path, directory_switch, source_path, init_source_path):
14942         ...here.
14943
14944 2018-02-14  Tom Tromey  <tom@tromey.com>
14945
14946         * solist.h (exec_file_find, solib_find): Return
14947         unique_xmalloc_ptr.
14948         (solib_bfd_fopen): Take a const char *.
14949         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14950         (exec_file_find, solib_find): Likewise.
14951         (solib_bfd_fopen): Do not take ownership of "pathname".
14952         (solib_bfd_open): Use unique_xmalloc_ptr.
14953         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14954         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14955         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14956         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14957
14958 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14959
14960         * ada-lang.c (name_match_type_from_name): Remove reference to
14961         ada_name_for_lookup in function's documentation.
14962         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14963
14964 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14965
14966         * defs.h (enum openp_flags): New enum.
14967         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14968         Move to enum openp_flags.
14969         (openp_flags): New enum flags.
14970         (openp): Change parameter type to openp_flags.
14971         * source.c (openp): Change parameter type to openp_flags.
14972         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14973         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14974
14975 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14976
14977         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14978         per-command.
14979
14980 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14981
14982         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14983         into...
14984         (class dwarf2_queue_guard): ...the destructor of this new class.
14985         (dw2_do_instantiate_symtab): Create instance of the new class
14986         dwarf2_queue_guard, remove cleanup.
14987
14988 2018-02-09  Tom Tromey  <tom@tromey.com>
14989
14990         * source.c (find_source_lines): Don't reference past the end of
14991         the vector.
14992
14993 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14994
14995         * remote.c (remote_btrace_maybe_reopen): Change error message.
14996         * btrace.c (btrace_enable): Likewise.
14997         (parse_xml_btrace): Likewise.
14998         (parse_xml_btrace_conf): Likewise.
14999
15000 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15001
15002         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15003         (linux_enable_pt, linux_enable_bts): Call
15004         diagnose_perf_event_open_fail.
15005
15006 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15007
15008         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15009         Remove parameter and change return type.  Update callers.  Move it.
15010         (linux_enable_bts, linux_enable_pt): Improve error message.
15011         (linux_enable_pt): Remove zero buffer size check.
15012         (linux_enable_btrace): Improve error messages.  Remove NULL return
15013         check.
15014
15015 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15016
15017         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15018         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15019         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15020         (linux_supports_pt, linux_supports_btrace): Remove.
15021         (linux_enable_bts): Call cpu_supports_bts.
15022         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15023         * remote.c (remote_supports_btrace): Remove.
15024         (init_remote_ops): Remove remote_supports_btrace.
15025         * target-delegates.c: Regenerated.
15026         * target.c (target_supports_btrace): Remove.
15027         * target.h (target_ops) <to_supports_btrace>: Remove
15028         (target_supports_btrace): Remove.
15029         * x86-linux-nat.c (x86_linux_create_target): Remove
15030         linux_supports_btrace.
15031
15032 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15033
15034         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15035         btrace failed.
15036         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15037         exception and use message in own exception.
15038
15039 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15040
15041         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15042         (perf_event_pt_event_type): Use gdb_file_up.
15043         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15044         scoped_fd, and scoped_mmap.
15045
15046 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15047
15048         * common/scoped_mmap.h: New.
15049         * unittests/scoped_mmap-selftest.c: New.
15050         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15051         unittests/scoped_mmap-selftest.c.
15052
15053 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15054
15055         * common/scoped_fd.h: New.
15056         * unittests/scoped_fd-selftest.c: New.
15057         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15058         unittests/scoped_fd-selftest.c.
15059
15060 2018-02-09  Tom Tromey  <tom@tromey.com>
15061
15062         * auto-load.c (auto_load_section_scripts): Use
15063         gdb::unique_xmalloc_ptr.
15064
15065 2018-02-09  Tom Tromey  <tom@tromey.com>
15066
15067         * auto-load.c (execute_script_contents): Use std::string.
15068
15069 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15070
15071         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15072         Python function, rather than a new command.
15073
15074 2018-02-08  Tom Tromey  <tom@tromey.com>
15075
15076         * solib.c (solib_find_1): Use std::string.
15077         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15078
15079 2018-02-08  Tom Tromey  <tom@tromey.com>
15080
15081         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15082
15083 2018-02-08  Tom Tromey  <tom@tromey.com>
15084
15085         * source.c (find_source_lines): Use gdb::def_vector.
15086
15087 2018-02-08  Tom Tromey  <tom@tromey.com>
15088
15089         * macrocmd.c (struct temporary_macro_definition): New.
15090         (macro_define_command): Use temporary_macro_definition.  Remove
15091         cleanups.
15092         (free_macro_definition_ptr): Remove.
15093
15094 2018-02-08  Tom Tromey  <tom@tromey.com>
15095
15096         * macroexp.c (maybe_expand): Use std::string.
15097
15098 2018-02-08  Tom Tromey  <tom@tromey.com>
15099
15100         * macroexp.c (struct macro_buffer): Add initializers for some
15101         members.
15102         (init_buffer, init_shared_buffer, free_buffer)
15103         (free_buffer_return_text): Remove.
15104         (macro_buffer): New constructors.
15105         (~macro_buffer): New destructor.
15106         (macro_buffer::set_shared): New method.
15107         (macro_buffer::resize_buffer, macro_buffer::appendc)
15108         (macro_buffer::appendmem): Now methods, not free functions.
15109         (set_token, append_tokens_without_splicing, stringify)
15110         (macro_stringify): Update.
15111         (gather_arguments): Change return type.  Remove argc_p argument,
15112         add args_ptr argument.  Use std::vector.
15113         (substitute_args): Remove argc argument.  Accept std::vector.
15114         (expand): Update.  Use std::vector.
15115         (scan, macro_expand, macro_expand_next): Update.
15116
15117 2018-02-08  Tom Tromey  <tom@tromey.com>
15118
15119         * symtab.c (default_collect_symbol_completion_matches_break_on):
15120         Use unique_xmalloc_ptr.
15121         * macroscope.h: (sal_macro_scope, user_macro_scope)
15122         (default_macro_scope): Return unique_xmalloc_ptr.
15123         * macroscope.c (sal_macro_scope, user_macro_scope)
15124         (default_macro_scope): Return unique_xmalloc_ptr.
15125         * macroexp.h (macro_expand, macro_expand_once): Return
15126         unique_xmalloc_ptr.
15127         * macroexp.c (macro_expand, macro_expand_once): Return
15128         unique_xmalloc_ptr.
15129         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15130         (info_macro_command, info_macros_command): Use
15131         unique_xmalloc_ptr.
15132         * compile/compile-c-support.c (write_macro_definitions): Use
15133         unique_xmalloc_ptr.
15134         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15135
15136 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15137
15138         * value.c (value_static_field): Assign field type instead of
15139         containing type when returning an optimized out value.
15140
15141 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15142
15143         * ft32-tdep.c (ft32_read_pc): Remove.
15144         (ft32_write_pc): Remove.
15145         (ft32_gdbarch_init): Update.
15146         * m32r-tdep.c (m32r_read_pc): Remove.
15147         (m32r_gdbarch_init): Update.
15148         * mep-tdep.c (mep_read_pc): Remove.
15149         (mep_gdbarch_init): Update.
15150         * microblaze-tdep.c (microblaze_write_pc): Remove.
15151         (microblaze_gdbarch_init): Update.
15152         * mn10300-tdep.c (mn10300_read_pc): Remove.
15153         (mn10300_write_pc): Remove.
15154         (mn10300_gdbarch_init): Update.
15155         * moxie-tdep.c (moxie_read_pc): Remove.
15156         (moxie_write_pc): Remove.
15157         (moxie_gdbarch_init): Update.
15158
15159 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15160
15161         * expprint.c (print_subexp_standard): Handle
15162         OP_F77_UNDETERMINED_ARGLIST.
15163         (dump_subexp_body_standard): Likewise.
15164
15165 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15166
15167         * target-descriptions.c (tdesc_element_visitor) Add empty
15168         implementations.
15169         (tdesc_type): Move make_gdb_type from here.
15170         (tdesc_type_builtin): Likewise.
15171         (tdesc_type_vector): Likewise.
15172         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15173         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15174         (make_gdb_type_union): Likewise.
15175         (make_gdb_type_flags): Likewise.
15176         (make_gdb_type_enum): Likewise.
15177         (make_gdb_type): New function.
15178         (tdesc_register_type): Use static make_gdb_type.
15179
15180 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15181
15182         * infcmd.c (default_print_one_register_info): Align natural-format
15183         column values consistently one under another.
15184         (pad_to_column): New function.
15185
15186 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15187
15188         * dwarf2read.c (dwarf2_physname): Move commment.
15189
15190 2018-02-01  Leszek Swirski  <leszeks@google.com>
15191
15192         * varobj.c (varobj_formatted_print_options): Allow recursive
15193         pretty printing if pretty printing is enabled.
15194
15195 2018-02-01  Leszek Swirski  <leszeks@google.com>
15196
15197         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15198         names after a structop as a filename.
15199
15200 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15201
15202         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15203         (arm_record_coproc_data_proc): Likewise.
15204
15205 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15206
15207         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15208
15209 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15210
15211         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15212         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15213
15214 2018-01-31  Pedro Alves  <palves@redhat.com>
15215
15216         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15217         * inflow.c (child_terminal_save_inferior): Wrap reference to
15218         tcgetpgrp in HAVE_TERMIOS_H.
15219         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15220         _WIN32.
15221         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15222         always iterate over all inferiors.
15223         (gdbsim_cntrl_c): Adjust.
15224         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15225
15226 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15227
15228         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15229         index type is objfile-owned if the element type is as well.
15230
15231 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15232
15233         GDB 8.1 released.
15234
15235 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15236
15237         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15238         "features/s390x-linux64.c".
15239         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15240         s390_linux32 and s390x_linux64.
15241         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15242         default tdesc.
15243         * s390-tdep.c: Include "features/s390-linux32.c" and
15244         "features/s390x-linux64.c".
15245         (s390_tdesc_valid): Add check for tdesc_has_registers.
15246         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15247         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15248         tdesc_s390x_linux64.
15249         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15250         tdesc_s390x_linux64 to...
15251         * s390-tdep.h: ...here.
15252
15253 2018-01-30  Pedro Alves  <palves@redhat.com>
15254
15255         PR gdb/13211
15256         * config.in, configure: Regenerate.
15257         * configure.ac: Check for getpgid.
15258         * go32-nat.c (go32_pass_ctrlc): New.
15259         (go32_target): Install it.
15260         * inf-child.c (inf_child_target): Install
15261         child_terminal_save_inferior, child_pass_ctrlc and
15262         child_interrupt.
15263         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15264         (inf_ptrace_target): No longer install it.
15265         * infcmd.c (interrupt_target_1): Adjust.
15266         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15267         (child_interrupt): Declare.
15268         (inferior::terminal_state): New.
15269         * inflow.c (struct terminal_info): Update comments.
15270         (inferior_process_group): Delete.
15271         (terminal_is_ours): Delete.
15272         (gdb_tty_state): New.
15273         (child_terminal_init): Adjust.
15274         (is_gdb_terminal, sharing_input_terminal_1)
15275         (sharing_input_terminal): New functions.
15276         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15277         Set the process's actual process group in the foreground if
15278         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15279         mark terminal as the inferior's if not sharing GDB's terminal.
15280         Don't check attach_flag.
15281         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15282         pass down a target_terminal_state.
15283         (child_terminal_save_inferior): New, factored out from ...
15284         (child_terminal_ours_1): ... this.  Handle
15285         target_terminal_state::is_ours_for_output.
15286         (child_interrupt, child_pass_ctrlc): New.
15287         (inflow_inferior_exit): Clear the inferior's terminal_state.
15288         (copy_terminal_info): Copy the inferior's terminal state.
15289         (_initialize_inflow): Remove reference to terminal_is_ours.
15290         * inflow.h (inferior_process_group): Delete.
15291         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15292         * procfs.c (procfs_target): Don't install procfs_interrupt.
15293         (procfs_interrupt): Delete.
15294         * remote.c (remote_serial_quit_handler): Adjust.
15295         (remote_interrupt): Remove ptid parameter.  Adjust.
15296         * target-delegates.c: Regenerate.
15297         * target.c: Include "terminal.h".
15298         (target_terminal::terminal_state): Rename to ...
15299         (target_terminal::m_terminal_state): ... this.
15300         (target_terminal::init): Adjust.
15301         (target_terminal::inferior): Adjust to per-inferior
15302         terminal_state.
15303         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15304         (target_terminal::ours, target_terminal::ours_for_output): Use
15305         target_terminal_is_ours_kind.
15306         (target_interrupt): Remove ptid parameter.  Adjust.
15307         (default_target_pass_ctrlc): Adjust.
15308         * target.h (target_ops::to_terminal_save_inferior): New field.
15309         (target_ops::to_interrupt): Remove ptid_t parameter.
15310         (target_interrupt): Remove ptid_t parameter.  Update comment.
15311         (target_pass_ctrlc): Update comment.
15312         * target/target.h (target_terminal_state): New scoped enum,
15313         factored out of ...
15314         (target_terminal::terminal_state): ... here.
15315         (target_terminal::inferior): Update comments.
15316         (target_terminal::restore_inferior): New.
15317         (target_terminal::is_inferior, target_terminal::is_ours)
15318         (target_terminal::is_ours_for_output): Adjust.
15319         (target_terminal::scoped_restore_terminal_state): Adjust to
15320         rename, and call restore_inferior() instead of inferior().
15321         (target_terminal::scoped_restore_terminal_state::m_state): Change
15322         type.
15323         (target_terminal::terminal_state): Rename to ...
15324         (target_terminal::m_terminal_state): ... this and change type.
15325
15326 2018-01-30  Pedro Alves  <palves@redhat.com>
15327
15328         * linux-nat.c (wait_for_signal): New function.
15329         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15330         directly.
15331         (async_terminal_is_ours)
15332         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15333         (linux_nat_add_target): Don't override
15334         to_terminal_inferior/to_terminal_ours.
15335
15336 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15337
15338         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15339
15340 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15341
15342         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15343         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15344         dwarf2_per_objfile_free here.
15345         (dwarf2_per_objfile_free): Remove.
15346         (_initialize_dwarf2_read): Don't register
15347         dwarf2_per_objfile_free as a registry cleanup.
15348
15349 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15350
15351         Avoid compilation errors in MinGW native builds
15352
15353         The error is triggered by including python-internal.h, and the
15354         error message is:
15355
15356              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15357                       from build-gnulib/import/math.h:27,
15358                       from d:/usr/Python26/include/pyport.h:235,
15359                       from d:/usr/Python26/include/Python.h:58,
15360                       from python/python-internal.h:94,
15361                       from python/py-arch.c:24:
15362              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15363         using ::hypot;
15364                 ^~~~~
15365
15366         This happens because Python headers define 'hypot' to expand t
15367         '_hypot' in the Windows builds.
15368         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15369         'hypoth'.  This avoids a compilation error.
15370
15371 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15372
15373         * MAINTAINERS (Write After Approval): Fix ordering.
15374
15375 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15376
15377         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15378
15379 2018-01-26  Alan Modra  <amodra@gmail.com>
15380
15381         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15382         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15383         Remove nop.  Make const.  Comment.
15384         (powerpc32_plt_stub_so_2): New.
15385         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15386         Correct count.  Update uses.
15387         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15388         Move common code reading PLT entry word.  Correct
15389         powerpc32_plt_stub PLT address calculation.
15390         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15391         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15392         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15393         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15394         (ppc64_standard_linkage8): Likewise.
15395         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15396         Correct insns description.
15397         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15398
15399 2018-01-24  Pedro Alves  <palves@redhat.com>
15400
15401         GCC PR libstdc++/83906
15402         * gdbtypes.c (operator==(const dynamic_prop &,
15403         const dynamic_prop &)): New.
15404         (operator==(const range_bounds &, const range_bounds &)): New.
15405         (check_types_equal): Use them instead of memcmp.
15406         * gdbtypes.h (operator==(const dynamic_prop &,
15407         const dynamic_prop &)): Declare.
15408         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15409         (operator==(const range_bounds &, const range_bounds &)): Declare.
15410         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15411
15412 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15413
15414         * s390-linux-tdep.c (s390_record_address_mask)
15415         (s390_record_calc_disp_common, s390_record_calc_disp)
15416         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15417         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15418         (s390_process_record): Move to s390-tdep.c.
15419         (s390_linux_init_abi_any): Adjust.
15420         * s390-tdep.c (s390_record_address_mask)
15421         (s390_record_calc_disp_common, s390_record_calc_disp)
15422         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15423         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15424         (s390_process_record): Moved from s390-linux-tdep.c
15425         (s390_gdbarch_init): Adjust.
15426
15427 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15428
15429         * s390-linux-nat.c (s390-tdep.h): New include.
15430         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15431         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15432         (ALLDEPFILES): Add s390-tdep.c.
15433         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15434         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15435         * s390-tdep.h: ...this.  New file.
15436         * s390-linux-tdep.c (s390-tdep.h): New include.
15437         (_initialize_s390_tdep): Rename to...
15438         (_initialize_s390_linux_tdep): ...this and adjust.
15439         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15440         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15441         s390-tdep.h.
15442         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15443         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15444         (s390_is_partial_instruction, s390_software_single_step)
15445         (is_non_branch_ril, s390_displaced_step_copy_insn)
15446         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15447         (s390_prologue_data, s390_addr, s390_store, s390_load)
15448         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15449         (s390_register_call_saved, s390_guess_tracepoint_registers)
15450         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15451         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15452         (s390_pseudo_register_name, s390_pseudo_register_type)
15453         (s390_pseudo_register_read, s390_pseudo_register_write)
15454         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15455         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15456         (s390_addr_bits_remove, s390_address_class_type_flags)
15457         (s390_address_class_type_flags_to_name)
15458         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15459         (s390_function_arg_float, s390_function_arg_vector)
15460         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15461         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15462         (s390_frame_align, s390_register_return_value, s390_return_value)
15463         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15464         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15465         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15466         (s390_trad_frame_prev_register, s390_unwind_cache)
15467         (s390_prologue_frame_unwind_cache)
15468         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15469         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15470         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15471         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15472         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15473         (s390_frame_base_address, s390_local_base_address)
15474         (s390_frame_base, s390_gcc_target_options)
15475         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15476         (s390_validate_reg_range, s390_tdesc_valid)
15477         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15478         * s390-tdep.c: ...this.  New file.
15479
15480 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15481
15482         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15483         (s390_process_record, s390_gdbarch_tdep_alloc)
15484         (s390_linux_init_abi_any): Use/set new hook.
15485
15486 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15487
15488         * s390-linux-tdep.c (osabi.h): New include.
15489         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15490         (s390_linux_init_abi_any): New functions.
15491         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15492
15493 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15494
15495         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15496         tdesc_has_registers check
15497
15498 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15499
15500         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15501         (s390_validate_reg_range): New macro.
15502         (s390_gdbarch_init): Adjust.
15503
15504 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15505
15506         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15507         (s390_gdbarch_tdep_alloc): Adjust.
15508         (s390_gdbarch_init): Adjust.
15509
15510 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15511
15512         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15513         <have_tdb>: Change type to bool.
15514         (s390_gdbarch_tdep_alloc): Adjust.
15515         (s390_gdbarch_init): Adjust.
15516
15517 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15518
15519         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15520         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15521         (s390_gdbarch_tdep_alloc): New function.
15522         (s390_gdbarch_init): Allocate tdep at start and use its fields
15523         instead of separate variables.
15524
15525 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15526
15527         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15528         when looking for cached gdbarch and add comment for remaining.
15529
15530 2018-01-22  Pedro Alves  <palves@redhat.com>
15531             Sergio Durigan Junior  <sergiodj@redhat.com>
15532
15533         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15534         case.
15535
15536 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15537
15538         * MAINTAINERS: Update my company e-mail address.
15539
15540 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15541
15542         * regcache.c (cooked_write_test): New function.
15543         (_initialize_regcache): Register the test.
15544
15545 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15546
15547         * ia64-tdep.c (ia64_pseudo_register_read): Call
15548         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15549         * m32c-tdep.c (m32c_cat_read): Likewise.
15550         (m32c_r3r2r1r0_read): Likewise.
15551         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15552         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15553
15554 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15555
15556         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15557         method raw_read instead of regcache_raw_read.
15558         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15559         * arm-tdep.c (arm_neon_quad_read): Likewise.
15560         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15561         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15562         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15563         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15564         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15565         (i386_pseudo_register_read_into_value): Likewise.
15566         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15567         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15568         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15569         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15570         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15571         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15572         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15573         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15574         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15575
15576 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15577
15578         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15579         * configure.tgt: Remove target mt.
15580         * mt-tdep.c: Remove.
15581         * regcache.c (cooked_read_test): Remove the check for mt.
15582
15583 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15584
15585         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15586         instead of gdbarch_pseudo_register_read_value.
15587
15588 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15589
15590         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15591         language is Ada.
15592
15593 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15594
15595         * linespec.c (create_sals_line_offset): Remove code that preserved
15596         the symtab_and_line's line number.
15597
15598 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15599
15600         * varobj.c (varobj_create): Don't set valid_block when creating a
15601         floating varobj.
15602
15603 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15604
15605         * varobj.c (varobj_create): Remove out of date comment.
15606
15607 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15608
15609         PR mi/20395
15610         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15611         updating innermost block.
15612         * parse.c (innermost_block_tracker::update): Take extra type
15613         parameter, and check types match before updating innermost block.
15614         (write_dollar_variable): Update innermost block for registers.
15615         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15616         (innermost_block_tracker::innermost_block_tracker): Initialise
15617         m_types member.
15618         (innermost_block_tracker::reset): Take type parameter.
15619         (innermost_block_tracker::update): Take type parameter, and pass
15620         type through as needed.
15621         (innermost_block_tracker::m_types): New member.
15622         * varobj.c (varobj_create): Pass type when reseting innermost
15623         block.
15624
15625 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15626
15627         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15628         * ada-lang.c (resolve_subexp): Likewise.
15629         * breakpoint.c (set_breakpoint_condition) Likewise.
15630         (watch_command_1) Likewise.
15631         * c-exp.y (variable): Likewise.
15632         * d-exp.y (PrimaryExpression): Likewise.
15633         * f-exp.y (variable): Likewise.
15634         * go-exp.y (variable): Likewise.
15635         * m2-exp.y (variable): Likewise.
15636         * objfiles.c (objfile::~objfile): Likewise.
15637         * p-exp.y (variable): Likewise.
15638         * parse.c (innermost_block): Change type.
15639         * parser-defs.h (class innermost_block_tracker): New.
15640         (innermost_block): Change to innermost_block_tracker.
15641         * printcmd.c (display_command): Switch to innermost_block API.
15642         (do_one_display): Likewise.
15643         * rust-exp.y (do_one_display): Likewise.
15644         * symfile.c (clear_symtab_users): Likewise.
15645         * varobj.c (varobj_create): Switch to innermost_block API, replace
15646         use of innermost_block with block stored on varobj object.
15647
15648 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15649
15650         * expression.h (innermost_block): Remove declaration.
15651         * varobj.c: Add 'parser-defs.h' include.
15652
15653 2018-01-19  Tom Tromey  <tom@tromey.com>
15654
15655         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15656         symbols in the static and global blocks.
15657
15658 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15659
15660         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15661         gdb_ptrace.h, and move including gdb_wait.h ...
15662         * nat/linux-ptrace.h: ... to here.
15663
15664 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15665
15666         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15667         inf_ptrace_detach_success.
15668         (inf_ptrace_detach_success): Add inferior parameter, use it
15669         instead of inferior_ptid, pass it to detach_inferior.
15670         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15671         parameter.
15672         * inferior.c (detach_inferior): Add overload that takes an
15673         inferior object.
15674         * inferior.h (detach_inferior): Likewise.
15675         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15676         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15677         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15678
15679 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15680
15681         * target.h (struct target_ops) <to_detach>: Add inferior
15682         parameter.
15683         (target_detach): Likewise.
15684         * target.c (dispose_inferior): Pass inferior down.
15685         (target_detach): Pass inferior down.  Assert that it is equal to
15686         the current inferior.
15687         * aix-thread.c (aix_thread_detach): Pass inferior down.
15688         * corefile.c (core_file_command): Pass current_inferior() down.
15689         * corelow.c (core_detach): Add inferior parameter.
15690         * darwin-nat.c (darwin_detach): Likewise.
15691         * gnu-nat.c (gnu_detach): Likewise.
15692         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15693         * infcmd.c (detach_command): Pass current_inferior() down to
15694         target_detach.
15695         * infrun.c (follow_fork_inferior): Pass parent_inf to
15696         target_detach.
15697         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15698         target_detach.
15699         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15700         * linux-thread-db.c (thread_db_detach): Likewise.
15701         * nto-procfs.c (procfs_detach): Likewise.
15702         * procfs.c (procfs_detach): Likewise.
15703         * record.c (record_detach): Likewise.
15704         * record.h (struct inferior): Forward-declare.
15705         (record_detach): Add inferior parameter.
15706         * remote-sim.c (gdbsim_detach): Likewise.
15707         * remote.c (remote_detach_1): Likewise.
15708         (remote_detach): Likewise.
15709         (extended_remote_detach): Likewise.
15710         * sol-thread.c (sol_thread_detach): Likewise.
15711         * target-debug.h (target_debug_print_inferior_p): New macro.
15712         * target-delegates.c: Re-generate.
15713         * top.c (kill_or_detach): Pass inferior down to target_detach.
15714         * windows-nat.c (windows_detach): Add inferior parameter.
15715
15716 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15717
15718         * target.h (struct target_ops) <to_detach>: Remove args
15719         parameter.
15720         (target_detach): Likewise.
15721         * target.c (dispose_inferior): Adjust.
15722         (target_detach): Remove args parameter, adjust.
15723         * aix-thread.c (aix_thread_detach): Adjust.
15724         * corefile.c (core_file_command): Adjust.
15725         * corelow.c (core_detach): Adjust.
15726         * darwin-nat.c (darwin_detach): Adjust.
15727         * gnu-nat.c (gnu_detach): Adjust.
15728         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15729         * infcmd.c (detach_command): Adjust
15730         * infrun.c (follow_fork_inferior): Adjust.
15731         (handle_vfork_child_exec_or_exit): Adjust.
15732         * linux-fork.c (linux_fork_detach): Remove args parameter.
15733         * linux-fork.h (linux_fork_detach): Likewise.
15734         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15735         * linux-thread-db.c (thread_db_detach): Likewise.
15736         * nto-procfs.c (procfs_detach): Likewise.
15737         * procfs.c (procfs_detach): Likewise.
15738         (do_detach): Remove signo parameter.
15739         * record.c (record_detach): Remove args parameter.
15740         * record.h (record_detach): Likewise.
15741         * remote-sim.c (gdbsim_detach): Likewise.
15742         * remote.c (remote_detach_1): Likewise.
15743         (remote_detach): Likewise.
15744         (extended_remote_detach): Likewise.
15745         * sol-thread.c (sol_thread_detach): Likewise.
15746         * target-delegates.c: Re-generate.
15747         * top.c (struct qt_args) <args>: Remove field.
15748         (kill_or_detach): Don't pass args.
15749         (quit_force): Don't set args.
15750         * windows-nat.c (windows_detach): Remove args parameter.
15751
15752 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15753
15754         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15755         (arm_linux_init_abi): Install it.
15756
15757 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15758
15759         * osabi.c (gdb_osabi_names): Extend the regexp for
15760         arm-linux-gnueabihf.
15761
15762 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15763
15764         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15765         m_abbrevs.
15766         (abbrev_table::add_abbrev): Update.
15767         (abbrev_table::lookup_abbrev): Update.
15768
15769 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15770
15771         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15772
15773 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15774
15775         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15776         to "std::string".
15777
15778 2018-01-17  Tom Tromey  <tom@tromey.com>
15779
15780         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15781
15782 2018-01-17  Tom Tromey  <tom@tromey.com>
15783
15784         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15785         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15786         (create_array_type_with_stride): Update.
15787         * dwarf2read.c (set_die_type): Update.
15788
15789 2018-01-17  Tom Tromey  <tom@tromey.com>
15790
15791         * dwarf2read.c (delayed_method_info): Remove typedef.
15792         (dwarf2_cu::method_info): Now a std::vector.
15793         (add_to_method_list): Update.
15794         (free_delayed_list): Remove.
15795         (compute_delayed_physnames): Update.
15796         (process_full_comp_unit, process_full_type_unit): Clear the method
15797         list.  Remove cleanups.
15798         (psymtab_include_file_name): Add name_holder parameter.  Use
15799         unique_xmalloc_ptr.
15800         (dwarf_decode_lines): Update.
15801
15802 2018-01-17  Tom Tromey  <tom@tromey.com>
15803             Simon Marchi  <simon.marchi@ericsson.com>
15804
15805         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15806         (dwarf2_per_objfile::free_cached_comp_units)
15807         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15808         (init_cutu_and_read_dies_no_follow): Update.
15809         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15810         (dwarf2_cu::~dwarf2_cu): New.
15811         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15812         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15813
15814 2018-01-17  Tom Tromey  <tom@tromey.com>
15815             Simon Marchi  <simon.marchi@ericsson.com>
15816
15817         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15818         (struct die_reader_specs) <abbrev_table>: New member.
15819         (struct abbrev_table): Add constructor.
15820         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15821         <abbrev_obstack>: Now an auto_obstack.
15822         (abbrev_table_up): New typedef.
15823         (init_cu_die_reader): Add abbrev_table parameter.
15824         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15825         Add result_dwo_abbrev_table.
15826         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15827         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15828         Update.
15829         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15830         parameter.
15831         (skip_children): Update.
15832         (abbrev_table::alloc_abbrev): Rename from
15833         abbrev_table_alloc_abbrev.
15834         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15835         (abbrev_table::lookup_abbrev): Rename from
15836         abbrev_table_lookup_abbrev.
15837         (abbrev_table_read_table): Return abbrev_table_up.
15838         (abbrev_table_free, abbrev_table_free_cleanup)
15839         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15840         (load_partial_dies): Update.
15841
15842 2018-01-17  Tom Tromey  <tom@tromey.com>
15843
15844         * dwarf2read.c (dwarf2_compute_name): Update comment.
15845         (read_func_scope, read_variable): Update.
15846         (new_symbol): Remove.
15847         (new_symbol_full): Rename to new_symbol.
15848
15849 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15850
15851         PR gdb/16577
15852         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15853         a warning instead of throwing an error, set section size to 0 and return
15854         NULL.
15855         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15856
15857 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15858
15859         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15860         std::string.
15861         (linux_ptrace_attach_fail_reason_string): Likewise.
15862         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15863         Likewise.
15864         (linux_ptrace_attach_fail_reason_string): Likewise.
15865         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15866
15867 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15868
15869         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15870
15871 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15872
15873         PR gdb/21559
15874         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15875         checking for fs_base/gs_base fields in struct user_regs_struct.
15876         * configure: Regenerate.
15877
15878 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15879
15880         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15881         function.
15882         (aarch64_linux_init_abi): Install it to gdbarch hook
15883         gcc_target_options.
15884
15885 2018-01-15  Pedro Alves  <palves@redhat.com>
15886
15887         * common/signals-state-save-restore.c
15888         (save_original_signals_state): Fix typos.
15889
15890 2017-01-12  Tom Tromey  <tom@tromey.com>
15891             Sergio Durigan Junior  <sergiodj@redhat.com>
15892
15893         * Makefile.in (install-only): Install gdb-add-index.
15894
15895 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15896
15897         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15898
15899 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15900
15901         * infrun.c (keep_going_pass_signal): Clear step-over info when
15902         insert_breakpoints fails.
15903
15904 2018-01-11  Pedro Alves  <palves@redhat.com>
15905
15906         PR gdb/22583
15907         * infrun.c (resume): Rename to ...
15908         (resume_1): ... this.
15909         (resume): Reimplement as wrapper around resume_1.
15910
15911 2018-01-11  Pedro Alves  <palves@redhat.com>
15912
15913         PR remote/22597
15914         * remote.c (remote_parse_stop_reply): Default to the last-set
15915         general thread instead of to 'magic_null_ptid'.
15916
15917 2018-01-10  Pedro Alves  <palves@redhat.com>
15918
15919         * language.h (language_get_symbol_name_matcher): Rename ...
15920         (get_symbol_name_matcher): ... this.
15921         * language.c (language_get_symbol_name_matcher): Ditto.
15922         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15923         callers adjusted.
15924
15925 2018-01-10  Pedro Alves  <palves@redhat.com>
15926
15927         PR gdb/22670
15928         * dwarf2read.c
15929         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15930         Adjust to use language_get_symbol_name_matcher instead of
15931         language_defn::la_get_symbol_name_matcher.
15932         * language.c (language_get_symbol_name_matcher): If in Ada mode
15933         and the lookup name is a verbatim match, return Ada's matcher.
15934         * language.h (language_get_symbol_name_matcher): Adjust comment.
15935         (ada_lookup_name_info::verbatim_p):: New method.
15936
15937 2018-01-10  Pedro Alves  <palves@redhat.com>
15938
15939         PR gdb/22670
15940         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15941         minsym's language is language_auto or language_cplus, pass down
15942         language_ada instead.
15943         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15944
15945 2018-01-10  Pedro Alves  <palves@redhat.com>
15946
15947         PR gdb/22670
15948         * minsyms.c (linkage_name_str): New function.
15949         (iterate_over_minimal_symbols): Use it.
15950
15951 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15952
15953         * NEWS: Document that 'info proc' now works on FreeBSD.
15954
15955 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15956
15957         * configure.ac: Check for kinfo_getfile in libutil.
15958         * configure: Regenerate.
15959         * config.in: Regenerate.
15960         * fbsd-nat.c: Include "fbsd-tdep.h".
15961         (fbsd_fetch_cmdline): New.
15962         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15963         rather than calling error.
15964         (fbsd_info_proc): New.
15965         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15966         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15967         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15968
15969 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15970
15971         * fbsd-nat.c (struct free_deleter): Remove.
15972         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15973
15974 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15975
15976         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15977         NULL for an empty pathname.
15978
15979 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15980
15981         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15982         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15983         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15984         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15985         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15986         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15987         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15988         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15989         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15990         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15991         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15992         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15993         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15994         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15995         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15996
15997 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15998
15999         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16000         (gnu_xfer_auxv): New function.
16001         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16002         TARGET_OBJECT_AUXV.
16003
16004 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16005             Simon Marchi  <simon.marchi@ericsson.com>
16006
16007         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16008         common/selftest.c.
16009         (COMMON_OBS): Remove selftest.o.
16010         * configure.ac: Append selftest-arch.c and common/selftest.c to
16011         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16012         * configure: Re-generated.
16013         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16014         GDB_SELF_TEST.
16015         (maintenance_info_selftests): Likewise.
16016
16017 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16018
16019         * ada-valprint.c (val_print_packed_array_elements): Use
16020         proper number of elements when printing an array indexed
16021         by an enumeration type.
16022
16023 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16024
16025         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16026         (dw2_get_file_names_reader): Adjust.
16027         (lookup_dwo_signatured_type): Adjust.
16028         (lookup_dwp_signatured_type): Adjust.
16029         (lookup_signatured_type): Adjust.
16030         (create_type_unit_group): Adjust.
16031         (get_type_unit_group): Adjust.
16032         (process_psymtab_comp_unit_reader): Adjust.
16033         (build_type_psymtabs_reader): Adjust.
16034         (scan_partial_symbols): Adjust.
16035         (add_partial_symbol): Adjust.
16036         (add_partial_subprogram): Adjust.
16037         (peek_die_abbrev): Adjust.
16038         (fixup_go_packaging): Adjust.
16039         (process_imported_unit_die): Adjust.
16040         (dwarf2_compute_name): Adjust.
16041         (dwarf2_physname): Adjust.
16042         (read_import_statement): Adjust.
16043         (handle_DW_AT_stmt_list): Adjust.
16044         (read_file_scope): Adjust.
16045         (read_func_scope): Adjust.
16046         (read_lexical_block_scope): Adjust.
16047         (read_call_site_scope): Adjust.
16048         (read_variable): Adjust.
16049         (dwarf2_rnglists_process): Adjust.
16050         (dwarf2_ranges_process): Adjust.
16051         (dwarf2_ranges_read): Adjust.
16052         (dwarf2_get_pc_bounds): Adjust.
16053         (dwarf2_record_block_ranges): Adjust.
16054         (dwarf2_add_field): Adjust.
16055         (dwarf2_add_member_fn): Adjust.
16056         (read_structure_type): Adjust.
16057         (process_structure_scope): Adjust.
16058         (read_enumeration_type): Adjust.
16059         (read_array_type): Adjust.
16060         (mark_common_block_symbol_computed): Adjust.
16061         (read_common_block): Adjust.
16062         (read_namespace_type): Adjust.
16063         (read_namespace): Adjust.
16064         (read_module_type): Adjust.
16065         (read_tag_pointer_type): Adjust.
16066         (read_tag_ptr_to_member_type): Adjust.
16067         (read_tag_string_type): Adjust.
16068         (read_subroutine_type): Adjust.
16069         (read_typedef): Adjust.
16070         (read_base_type): Adjust.
16071         (attr_to_dynamic_prop): Adjust.
16072         (read_subrange_type): Adjust.
16073         (read_unspecified_type): Adjust.
16074         (dwarf2_read_abbrevs): Adjust.
16075         (load_partial_dies): Adjust.
16076         (read_partial_die): Adjust.
16077         (find_partial_die): Adjust.
16078         (guess_partial_die_structure_name): Adjust.
16079         (fixup_partial_die): Adjust.
16080         (read_attribute_value): Adjust.
16081         (read_addr_index): Adjust.
16082         (read_addr_index_from_leb128): Adjust.
16083         (read_str_index): Adjust.
16084         (dwarf2_string_attr): Adjust.
16085         (get_debug_line_section): Adjust.
16086         (dwarf_decode_line_header): Adjust.
16087         (lnp_state_machine::check_line_address): Adjust.
16088         (dwarf_decode_lines_1): Adjust.
16089         (dwarf_decode_lines): Adjust.
16090         (dwarf2_start_symtab): Adjust.
16091         (var_decode_location): Adjust.
16092         (new_symbol_full): Adjust.
16093         (dwarf2_const_value_data): Adjust.
16094         (dwarf2_const_value_attr): Adjust.
16095         (dwarf2_const_value): Adjust.
16096         (die_type): Adjust.
16097         (die_containing_type): Adjust.
16098         (build_error_marker_type): Adjust.
16099         (lookup_die_type): Adjust.
16100         (guess_full_die_structure_name): Adjust.
16101         (anonymous_struct_prefix): Adjust.
16102         (determine_prefix): Adjust.
16103         (dwarf2_name): Adjust.
16104         (follow_die_ref_or_sig): Adjust.
16105         (follow_die_offset): Adjust.
16106         (follow_die_ref): Adjust.
16107         (follow_die_sig_1): Adjust.
16108         (follow_die_sig): Adjust.
16109         (get_signatured_type): Adjust.
16110         (get_DW_AT_signature_type): Adjust.
16111         (decode_locdesc): Adjust.
16112         (dwarf_decode_macros): Adjust.
16113         (cu_debug_loc_section): Adjust.
16114         (fill_in_loclist_baton): Adjust.
16115         (dwarf2_symbol_mark_computed): Adjust.
16116         (init_one_comp_unit): Don't assign
16117         dwarf2_cu::dwarf2_per_objfile.
16118         (set_die_type): Adjust.
16119
16120 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16121
16122         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16123         <dwarf2_per_objfile>: New field.
16124         (dwarf2_per_objfile): Remove global.
16125         (get_dwarf2_per_objfile): New function.
16126         (set_dwarf2_per_objfile): New function.
16127         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16128         dwarf2_per_objfile.
16129         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16130         (read_abbrev_offset): Likewise.
16131         (read_indirect_string): Likewise.
16132         (read_indirect_line_string): Likewise.
16133         (read_indirect_string_at_offset): Likewise.
16134         (read_indirect_string_from_dwz): Likewise.
16135         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16136         dwarf2_per_objfile.
16137         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16138         (create_all_comp_units): Change objfile parameter to
16139         dwarf2_per_objfile.
16140         (create_all_type_units): Likewise.
16141         (process_queue): Add dwarf2_per_objfile parameter.
16142         (read_and_check_comp_unit_head): Likewise.
16143         (lookup_dwo_unit_in_dwp): Likewise.
16144         (get_dwp_file): Likewise.
16145         (process_cu_includes): Likewise.
16146         (struct free_dwo_file_cleanup_data): New struct.
16147         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16148         set_dwarf2_per_objfile.
16149         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16150         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16151         context, adjust calls.
16152         (dw2_instantiate_symtab): Likewise.
16153         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16154         (dw2_get_cu): Likewise.
16155         (create_cu_from_index_list): Change objfile parameter to
16156         dwarf2_per_objfile.
16157         (create_cus_from_index_list): Get dwarf2_per_objfile from
16158         context, adjust calls.
16159         (create_cus_from_index): Likewise.
16160         (create_signatured_type_table_from_index): Change objfile
16161         parameter to dwarf2_per_objfile.
16162         (create_signatured_type_table_from_debug_names): Change objfile
16163         parameter to dwarf2_per_objfile.
16164         (create_addrmap_from_index): Likewise.
16165         (create_addrmap_from_aranges): Likewise.
16166         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16167         (dw2_setup): Remove.
16168         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16169         context.
16170         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16171         get_dwarf2_per_objfile.
16172         (dw2_forget_cached_source_info): Likewise.
16173         (dw2_map_symtabs_matching_filename): Likewise.
16174         (struct dw2_symtab_iterator) <index>: Remove.
16175         <dwarf2_per_objfile>: New field.
16176         (dw2_symtab_iter_init): Replace index parameter with
16177         dwarf2_per_objfile.
16178         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16179         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16180         (dw2_print_stats): Likewise.
16181         (dw2_dump): Likewise.
16182         (dw2_expand_symtabs_for_function): Likewise.
16183         (dw2_expand_all_symtabs): Likewise.
16184         (dw2_expand_symtabs_with_fullname): Likewise.
16185         (dw2_expand_marked_cus): Replace index and objfile parameters
16186         with dwarf2_per_objfile.
16187         (dw_expand_symtabs_matching_file_matcher): Add
16188         dwarf2_per_objfile parameter and adjust calls.
16189         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16190         adjust calls.
16191         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16192         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16193         adjust calls.
16194         (create_cus_from_debug_names_list): Replace objfile parameter
16195         with dwarf2_per_objfile and adjust calls.
16196         (create_cus_from_debug_names): Likewise.
16197         (dwarf2_read_debug_names): Likewise.
16198         (mapped_debug_names::namei_to_name): Adjust call.
16199         (dw2_debug_names_iterator::next): Likewise.
16200         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16201         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16202         (dw2_debug_names_dump): Likewise.
16203         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16204         (dw2_debug_names_expand_symtabs_matching): Likewise.
16205         (dwarf2_initialize_objfile): Likewise.
16206         (dwarf2_build_psymtabs): Likewise.
16207         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16208         this_cu.
16209         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16210         (read_and_check_comp_unit_head): Likewise.
16211         (read_abbrev_offset): Likewise.
16212         (create_debug_type_hash_table): Likewise.
16213         (create_debug_types_hash_table): Likewise.
16214         (create_all_type_units): Replace objfile parameter with
16215         dwarf2_per_objfile.
16216         (add_type_unit): Add dwarf2_per_objfile parameter.
16217         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16218         with dwarf2_per_objfile.
16219         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16220         (lookup_dwp_signatured_type): Likewise.
16221         (lookup_signatured_type): Likewise.
16222         (read_cutu_die_from_dwo): Likewise.
16223         (init_tu_and_read_dwo_dies): Likewise.
16224         (init_cutu_and_read_dies): Likewise.
16225         (init_cutu_and_read_dies_no_follow): Likewise.
16226         (allocate_type_unit_groups_table): Add objfile parameter.
16227         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16228         (get_type_unit_group): Likewise.
16229         (process_psymtab_comp_unit): Update call.
16230         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16231         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16232         (print_tu_stats): Likewise.
16233         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16234         in void* parameter.
16235         (build_type_psymtabs): Change objfile parameter to
16236         dwarf2_per_objfile.
16237         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16238         passed in void* parameter.
16239         (process_skeletonless_type_units): Change objfile parameter to
16240         dwarf2_per_objfile.
16241         (set_partial_user): Likewise.
16242         (dwarf2_build_psymtabs_hard): Likewise.
16243         (read_comp_units_from_section): Likewise.
16244         (create_all_comp_units): Likewise.
16245         (scan_partial_symbols): Update calls.
16246         (add_partial_symbol): Likewise.
16247         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16248         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16249         (process_queue): Add dwarf2_per_objfile parameter.
16250         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16251         (compute_compunit_symtab_includes): Likewise.
16252         (process_cu_includes): Add dwarf2_per_objfile parameter.
16253         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16254         (process_full_type_unit): Likewise.
16255         (process_imported_unit_die): Update call.
16256         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16257         (read_file_scope): Likewise.
16258         (allocate_dwo_file_hash_table): Add objfile parameter.
16259         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16260         (create_cus_hash_table): Likewise.
16261         (create_dwp_hash_table): Likewise.
16262         (create_dwo_unit_in_dwp_v1): Likewise.
16263         (create_dwp_v2_section): Likewise.
16264         (create_dwo_unit_in_dwp_v2): Likewise.
16265         (lookup_dwo_unit_in_dwp): Likewise.
16266         (try_open_dwop_file): Likewise.
16267         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16268         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16269         cleanup to include a reference to dwarf2_per_objfile.
16270         (open_dwp_file): Add dwarf2_per_objfile parameter.
16271         (open_and_init_dwp_file): Likewise.
16272         (get_dwp_file): Likewise.
16273         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16274         (queue_and_load_all_dwo_tus): Update call.
16275         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16276         data.
16277         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16278         (dwarf2_ranges_process): Likewise.
16279         (dwarf2_get_pc_bounds): Likewise.
16280         (mark_common_block_symbol_computed): Likewise.
16281         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16282         (dwarf2_read_abbrevs): Update call.
16283         (read_partial_die): Use dwarf2_per_objfile from cu.
16284         (find_partial_die): Likewise.
16285         (fixup_partial_die): Likewise.
16286         (read_attribute_value): Likewise.
16287         (read_indirect_string_at_offset_from): Add objfile parameter.
16288         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16289         parameter.
16290         (read_indirect_string_from_dwz): Add objfile parameter.
16291         (read_indirect_string): Add objfile parameter.
16292         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16293         (read_addr_index): Use dwarf2_per_objfile from cu.
16294         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16295         call dw2_setup.
16296         (read_str_index): Use dwarf2_per_objfile from cu.
16297         (get_debug_line_section): Likewise.
16298         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16299         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16300         (new_symbol_full): Use dwarf2_per_objfile from cu.
16301         (build_error_marker_type): Likewise.
16302         (lookup_die_type): Likewise.
16303         (determine_prefix): Likewise.
16304         (follow_die_offset): Likewise.
16305         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16306         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16307         (dwarf2_fetch_die_type_sect_off): Likewise.
16308         (dwarf2_get_die_type): Likewise.
16309         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16310         (get_signatured_type): Likewise.
16311         (get_DW_AT_signature_type): Likewise.
16312         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16313         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16314         (cu_debug_loc_section): Likewise.
16315         (fill_in_loclist_baton): Likewise.
16316         (dwarf2_symbol_mark_computed): Likewise.
16317         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16318         dwarf2_per_objfile.
16319         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16320         parameter.
16321         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16322         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16323         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16324         (set_die_type): Use dwarf2_free_objfile from cu.
16325         (get_die_type_at_offset): Likewise.
16326         (dwarf2_per_objfile_free): Don't assign global variable.
16327         (debug_names) <constructor>: Add dwarf2_per_objfile
16328         parameter, update m_debugstrlookup construction.
16329         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16330         parameter.
16331         <m_dwarf2_per_objfile>: New field.
16332         <lookup>: Use m_dwarf2_per_objfile.
16333         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16334         (psyms_seen_size): Likewise.
16335         (write_gdbindex): Replace objfile parameter with
16336         dwarf2_per_objfile.
16337         (write_debug_names): Likewise.
16338         (write_psymtabs_to_index): Likewise.
16339         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16340         calls.
16341
16342 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16343
16344         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16345         <dwarf2_per_objfile>: New field.
16346         (struct dwarf2_per_cu_data) <objfile>: Remove.
16347         <dwarf2_per_objfile>: New field.
16348         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16349         of objfile.
16350         (create_signatured_type_table_from_index): Likewise.
16351         (create_debug_type_hash_table): Likewise.
16352         (fill_in_sig_entry_from_dwo_entry): Likewise.
16353         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16354         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16355         objfile.
16356         (create_partial_symtab): Access objfile through
16357         dwarf2_per_objfile.
16358         (process_psymtab_comp_unit_reader): Likewise.
16359         (read_comp_units_from_section): Likewise.
16360         (scan_partial_symbols): Likewise.
16361         (add_partial_symbol): Likewise.
16362         (add_partial_subprogram): Likewise.
16363         (peek_die_abbrev): Likewise.
16364         (fixup_go_packaging): Likewise.
16365         (process_full_comp_unit): Likewise.
16366         (process_full_type_unit): Likewise.
16367         (process_imported_unit_die): Likewise.
16368         (dwarf2_compute_name): Likewise.
16369         (dwarf2_physname): Likewise.
16370         (read_import_statement): Likewise.
16371         (create_cus_hash_table): Assign dwarf2_physname instead of
16372         objfile.
16373         (read_func_scope): Access objfile through dwarf2_per_objfile.
16374         (read_lexical_block_scope): Likewise.
16375         (read_call_site_scope): Likewise.
16376         (read_variable): Likewise.
16377         (dwarf2_rnglists_process): Likewise.
16378         (dwarf2_ranges_process): Likewise.
16379         (dwarf2_ranges_read): Likewise.
16380         (dwarf2_record_block_ranges): Likewise.
16381         (dwarf2_add_field): Likewise.
16382         (dwarf2_add_member_fn): Likewise.
16383         (read_structure_type): Likewise.
16384         (process_structure_scope): Likewise.
16385         (read_enumeration_type): Likewise.
16386         (read_array_type): Likewise.
16387         (read_common_block): Likewise.
16388         (read_namespace_type): Likewise.
16389         (read_namespace): Likewise.
16390         (read_module_type): Likewise.
16391         (read_tag_pointer_type): Likewise.
16392         (read_tag_ptr_to_member_type): Likewise.
16393         (read_tag_string_type): Likewise.
16394         (read_subroutine_type): Likewise.
16395         (read_typedef): Likewise.
16396         (read_base_type): Likewise.
16397         (attr_to_dynamic_prop): Likewise.
16398         (read_subrange_type): Likewise.
16399         (read_unspecified_type): Likewise.
16400         (load_partial_dies): Likewise.
16401         (read_partial_die): Likewise.
16402         (find_partial_die): Likewise.
16403         (guess_partial_die_structure_name): Likewise.
16404         (fixup_partial_die): Likewise.
16405         (read_attribute_value): Likewise.
16406         (read_addr_index_from_leb128): Likewise.
16407         (dwarf2_read_addr_index): Likewise.
16408         (dwarf2_string_attr): Likewise.
16409         (lnp_state_machine::check_line_address): Likewise.
16410         (dwarf_decode_lines_1): Likewise.
16411         (dwarf_decode_lines): Likewise.
16412         (dwarf2_start_symtab): Likewise.
16413         (var_decode_location): Likewise.
16414         (new_symbol_full): Likewise.
16415         (dwarf2_const_value_data): Likewise.
16416         (dwarf2_const_value_attr): Likewise.
16417         (dwarf2_const_value): Likewise.
16418         (die_type): Likewise.
16419         (die_containing_type): Likewise.
16420         (lookup_die_type): Likewise.
16421         (guess_full_die_structure_name): Likewise.
16422         (anonymous_struct_prefix): Likewise.
16423         (dwarf2_name): Likewise.
16424         (follow_die_ref_or_sig): Likewise.
16425         (follow_die_offset): Likewise.
16426         (follow_die_ref): Likewise.
16427         (dwarf2_fetch_die_loc_sect_off): Likewise.
16428         (dwarf2_fetch_constant_bytes): Likewise.
16429         (dwarf2_fetch_die_type_sect_off): Likewise.
16430         (dwarf2_get_die_type): Likewise.
16431         (follow_die_sig): Likewise.
16432         (decode_locdesc): Likewise.
16433         (dwarf2_per_cu_objfile): Likewise.
16434         (dwarf2_per_cu_text_offset): Likewise.
16435         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16436         objfile.
16437         (set_die_type): Access objfile through
16438         dwarf2_per_objfile.
16439
16440 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16441
16442         * valprint.c (converted_character_d): Remove typedef.
16443         (DEF_VEC_O (converted_character_d)): Remove.
16444         (count_next_character): Use std::vector.
16445         (print_converted_chars_to_obstack): Likewise.
16446         (generic_printstr): Likewise.
16447
16448 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16449
16450         * xml-support.h (struct gdb_xml_value): Add constructor.
16451         <value>: Change type to unique_xmalloc_ptr.
16452         (gdb_xml_value_s): Remove typedef.
16453         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16454         (gdb_xml_element_start_handler): Change parameter type to
16455         std::vector.
16456         (xml_find_attribute): Likewise.
16457         * xml-support.c (xml_find_attribute): Change parameter type to
16458         std::vector and adjust.
16459         (gdb_xml_values_cleanup): Remove.
16460         (gdb_xml_parser::start_element): Adjust to std::vector.
16461         (xinclude_start_include): Change paraeter type to std::vector
16462         and adjust.
16463         * btrace.c (check_xml_btrace_version): Likewise.
16464         (parse_xml_btrace_block): Likewise.
16465         (parse_xml_btrace_pt_config_cpu): Likewise.
16466         (parse_xml_btrace_pt): Likewise.
16467         (parse_xml_btrace_conf_bts): Likewise.
16468         (parse_xml_btrace_conf_pt): Likewise.
16469         * memory-map.c (memory_map_start_memory): Likewise.
16470         (memory_map_start_property): Likewise.
16471         * osdata.c (osdata_start_osdata): Likewise.
16472         (osdata_start_item): Likewise.
16473         (osdata_start_column): Likewise.
16474         * remote.c (start_thread): Likewise.
16475         * solib-aix.c (library_list_start_library): Likewise.
16476         (library_list_start_list): Likewise.
16477         * solib-svr4.c (library_list_start_library): Likewise.
16478         (svr4_library_list_start_list): Likewise.
16479         * solib-target.c (library_list_start_segment): Likewise.
16480         (library_list_start_section): Likewise.
16481         (library_list_start_library): Likewise.
16482         (library_list_start_list): Likewise.
16483         * tracepoint.c (traceframe_info_start_memory): Likewise.
16484         (traceframe_info_start_tvar): Likewise.
16485         * xml-syscall.c (syscall_start_syscall): Likewise.
16486         * xml-tdesc.c (tdesc_start_target): Likewise.
16487         (tdesc_start_feature): Likewise.
16488         (tdesc_start_reg): Likewise.
16489         (tdesc_start_union): Likewise.
16490         (tdesc_start_struct): Likewise.
16491         (tdesc_start_flags): Likewise.
16492         (tdesc_start_enum): Likewise.
16493         (tdesc_start_field): Likewise.
16494         (tdesc_start_enum_value): Likewise.
16495         (tdesc_start_vector): Likewise.
16496
16497 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16498
16499         * extension.h (struct xmethod_worker) <clone>: Remove.
16500         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16501         Remove.
16502         (python_xmethod_worker::clone): Remove.
16503         * valops.c (find_overload_match): Use std::move instead of
16504         clone.
16505
16506 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16507
16508         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16509         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16510         <free_xmethod_worker_data>: Remove.
16511         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16512         <get_xmethod_arg_types>: Remove.
16513         <get_xmethod_result_type>: Remove.
16514         <invoke_xmethod>: Remove.
16515         * extension.c (new_xmethod_worker): Remove.
16516         (clone_xmethod_worker): Remove.
16517         (get_matching_xmethod_workers): Return void, pass std::vector by
16518         pointer.
16519         (get_xmethod_arg_types): Rename to...
16520         (xmethod_worker::get_arg_types): ... this, and adjust.
16521         (get_xmethod_result_type): Rename to...
16522         (xmethod_worker::get_result_type): ... this, and adjust.
16523         (invoke_xmethod): Remove.
16524         (free_xmethod_worker): Remove.
16525         (free_xmethod_worker_vec): Remove.
16526         * extension.h (enum ext_lang_rc): Move here from
16527         extension-priv.h.
16528         (struct xmethod_worker): Add constructor and destructor.
16529         <data>: Remove.
16530         <value>: Remove.
16531         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16532         virtual pure methods.
16533         <get_arg_types, get_result_type>: New methods.
16534         (xmethod_worker_ptr): Remove typedef.
16535         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16536         (xmethod_worker_vec): Remove typedef.
16537         (xmethod_worker_up): New typedef.
16538         (invoke_xmethod): Remove.
16539         (clone_xmethod_worker): Remove.
16540         (free_xmethod_worker): Remove.
16541         (free_xmethod_worker_vec): Remove.
16542         (get_xmethod_arg_types): Remove.
16543         (get_xmethod_result_type): Remove.
16544         * valops.c (find_method_list): Use std::vector, don't use
16545         intermediate vector.
16546         (value_find_oload_method_list): Use std::vector.
16547         (find_overload_match): Use std::vector.
16548         (find_oload_champ): Use std::vector.
16549         * value.c (value_free): Use operator delete.
16550         (value_of_xmethod): Rename to...
16551         (value_from_xmethod): ... this.  Don't assign
16552         xmethod_worker::value, take rvalue-reference.
16553         (result_type_of_xmethod): Adjust.
16554         (call_xmethod): Adjust.
16555         * value.h: Include extension.h.
16556         (struct xmethod_worker): Don't forward-declare.
16557         (value_of_xmethod): Rename to...
16558         (value_from_xmethod): ... this, take rvalue-reference.
16559         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16560         (struct python_xmethod_worker): ... this, add constructor and
16561         destructor.
16562         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16563         (gdbpy_free_xmethod_worker_data): Rename to...
16564         (python_xmethod_worker::~python_xmethod_worker): ... this and
16565         adjust.
16566         (gdbpy_clone_xmethod_worker_data): Rename to...
16567         (python_xmethod_worker::clone): ... this and adjust.
16568         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16569         temporary vector.
16570         (gdbpy_get_xmethod_arg_types): Rename to...
16571         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16572         (gdbpy_get_xmethod_result_type): Rename to...
16573         (python_xmethod_worker::do_get_result_type): ... this and
16574         adjust.
16575         (gdbpy_invoke_xmethod): Rename to...
16576         (python_xmethod_worker::invoke): ... this and adjust.
16577         (new_python_xmethod_worker): Rename to...
16578         (python_xmethod_worker::python_xmethod_worker): ... this and
16579         adjust.
16580         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16581         Remove.
16582         (gdbpy_free_xmethod_worker_data): Remove.
16583         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16584         (gdbpy_get_xmethod_arg_types): Remove.
16585         (gdbpy_get_xmethod_result_type): Remove.
16586         (gdbpy_invoke_xmethod): Remove.
16587         * python/python.c (python_extension_ops): Remove obsolete
16588         callbacks.
16589
16590 2018-01-05  Pedro Alves  <palves@redhat.com>
16591
16592         PR gdb/18653
16593         * common/signals-state-save-restore.c
16594         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16595         find a custom handler preinstalled, instead of internal erroring.
16596         But only warn if !quiet.
16597         * common/signals-state-save-restore.h
16598         (save_original_signals_state): New parameter 'quiet'.
16599         * main.c (captured_main_1): Move save_original_signals_state call
16600         after option handling, and pass QUIET.
16601
16602 2018-01-05  Pedro Alves  <palves@redhat.com>
16603
16604         * spu-tdep.c (spu_catch_start): Pass
16605         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16606
16607 2018-01-05  Pedro Alves  <palves@redhat.com>
16608
16609         PR gdb/22670
16610         * ada-lang.c (literal_symbol_name_matcher): New function.
16611         (ada_get_symbol_name_matcher): Use it for
16612         symbol_name_match_type::SEARCH_NAME.
16613         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16614         it down instead of assuming symbol_name_match_type::FULL.
16615         * block.h (block_lookup_symbol): New parameter 'match_type'.
16616         * c-valprint.c (print_unpacked_pointer): Use
16617         lookup_symbol_search_name instead of lookup_symbol.
16618         * compile/compile-object-load.c (get_out_value_type): Pass down
16619         symbol_name_match_type::SEARCH_NAME.
16620         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16621         symbol_name_match_type::FULL.
16622         * cp-support.c (cp_get_symbol_name_matcher): Handle
16623         symbol_name_match_type::SEARCH_NAME.
16624         * infrun.c (insert_exception_resume_breakpoint): Use
16625         lookup_symbol_search_name.
16626         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16627         * psymtab.c (maintenance_check_psymtabs): Use
16628         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16629         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16630         SYMBOL_SEARCH_NAME.
16631         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16632         if symbol_name_match_type::SEARCH_NAME.
16633         (lookup_symbol_in_language): Pass down
16634         symbol_name_match_type::FULL.
16635         (lookup_symbol_search_name): New.
16636         (lookup_language_this): Pass down
16637         symbol_name_match_type::SEARCH_NAME.
16638         (lookup_symbol_aux, lookup_local_symbol): New parameter
16639         'match_type'.  Pass it down.
16640         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16641         (lookup_symbol_search_name): New declaration.
16642         (lookup_symbol_in_block): New 'match_type' parameter.
16643
16644 2018-01-05  Pedro Alves  <palves@redhat.com>
16645
16646         PR gdb/22670
16647         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16648         ada_lookup_symbol.
16649         (ada_lookup_symbol): Reimplement in terms of
16650         ada_lookup_symbol_list, bits factored out from
16651         ada_lookup_encoded_symbol.
16652
16653 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16654
16655         * ada-exp.y (write_object_renaming): When subscripting an array
16656         using a symbol as the index, pass the block in call to
16657         ada_lookup_encoded_symbol when looking that symbol up.
16658
16659 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16660
16661         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16662         TYPE_INDEX_TYPE.
16663
16664 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16665
16666         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16667         the case where VALUE_LVAL (val0) is not lval_memory.
16668
16669 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16670
16671         * ada-valprint.c (print_optional_low_bound): Handle
16672         character-indexed array printing like boolean-indexed array
16673         printing.
16674
16675 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16676
16677         * NEWS: Create a new section for the next release branch.
16678         Rename the section of the current branch, now that it has
16679         been cut.
16680
16681 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16682
16683         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16684         * version.in: Bump version to 8.1.50.DATE-git.
16685
16686 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16687
16688         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16689         Add field.
16690         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16691         Add field.
16692         (default_exception_support_info) <catch_handlers_sym>: Add field.
16693         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16694         (ada_exception_name_addr_1): Add "catch handlers" handling.
16695         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16696         Update all callers.
16697         (create_excep_cond_exprs) <ex>: Add parameter.
16698         (re_set_exception): Update create_excep_cond_exprs call.
16699         (print_it_exception, print_one_exception, print_mention_exception)
16700         (print_recreate_exception): Add "catch handler" handling.
16701         (allocate_location_catch_handlers, re_set_catch_handlers)
16702         (check_status_catch_handlers, print_it_catch_handlers)
16703         (print_one_catch_handlers, print_mention_catch_handlers)
16704         (print_recreate_catch_handlers): New function.
16705         (catch_handlers_breakpoint_ops): New variable.
16706         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16707         Add parameter.  Add "catch handler" handling.
16708         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16709         Add "catch handler" handling.
16710         (ada_exception_catchpoint_cond_string): Add "catch handler"
16711         handling.
16712         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16713         call.
16714         (catch_ada_handlers_command): New function.
16715         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16716         operations structure.
16717         (_initialize_ada_language): Add "catch handlers" command entry.
16718         * NEWS: Document "catch handlers" feature.
16719
16720 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16721
16722         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16723         account when creating the array type of the slice.
16724         (ada_value_slice): Likewise.
16725
16726 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16727
16728         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16729         New enum value.
16730         (create_array_type_with_stride): Add byte_stride_prop parameter.
16731         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16732         New parameter.  Update all callers in this file.
16733         (array_type_has_dynamic_stride): New function.
16734         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16735         of arrays with dynamic byte strides.
16736         * dwarf2read.c (read_array_type): Add support for dynamic
16737         DW_AT_byte_stride attributes.
16738
16739 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16740
16741         * dwarf2read.c (read_unspecified_type): Treat
16742         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16743
16744 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16745
16746         Update copyright year range in all GDB files.
16747
16748 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16749
16750         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16751         and gdb/testsuite/gdb.base/step-line.c.
16752
16753 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16754
16755         * copyright.py (main): Dump the contents of
16756         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16757         even if BY_HAND is empty.
16758
16759 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16760
16761         * top.c (print_gdb_version): Update Copyright year in version
16762         message.
16763
16764 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16765
16766         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16767
16768 For older changes see ChangeLog-2017.
16769 \f
16770 Local Variables:
16771 mode: change-log
16772 left-margin: 8
16773 fill-column: 74
16774 version-control: never
16775 coding: utf-8
16776 End: