AArch64: Fix the gdb build with musl libc
[external/binutils.git] / gdb / ChangeLog
1 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2
3         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
4         asm/sigcontext.h.
5
6 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7
8         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
9         warning trailing new line.
10
11 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12
13         * nat/linux-ptrace.c (kill_child): New function.
14         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
15         Add a call to kill_child in case of early return after fork.
16         (linux_check_ptrace_features): Use kill_child instead of local code.
17         (linux_test_for_tracefork): Likewise.
18
19 2018-12-14  Tom Tromey  <tom@tromey.com>
20
21         * Makefile.in: Remove "alloca" comment.
22         (INFOFILES): Remove.
23         (local-maintainer-clean): Don't use INFOFILES.
24
25 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
26
27         * syscalls/update-freebsd.sh: New file.
28         * syscalls/freebsd.xml: Regenerate.
29
30 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
31
32         * NEWS: Add entry documenting system call aliases.
33         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
34         to get_syscalls_by_name.
35         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
36         * gdbarch.h: Regenerate.
37         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
38         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
39         from get_syscall_by_name.  Now accepts a pointer to a vector of
40         integers and returns a bool.
41         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
42         (syscall_create_syscall_desc): Add alias parameter and pass it to
43         syscall_desc constructor.
44         (syscall_start_syscall): Handle alias attribute.
45         (syscall_attr): Add alias attribute.
46         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
47         Now accepts a pointer to a vector of integers and returns a
48         bool.  Add syscalls whose alias or name matches the requested
49         name.
50         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
51         accepts a pointer to a vector of integers and returns a bool.
52         * xml-syscall.h (get_syscalls_by_name): Likewise.
53
54 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
55
56         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
57         to get_syscalls_by_group.
58         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
59         false.
60         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
61         numbers to an existing vector of integers and return a bool.
62         (get_syscalls_by_group): Accept pointer to vector of integers
63         and change return type to bool.
64         * xml-syscall.h (get_syscalls_by_group): Likewise.
65
66 2018-12-13  Jim Wilson  <jimw@sifive.com>
67
68         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
69         comment for SD field, and correct xlen calculation.  For MISA, add
70         comment for MXL field, add call to register_size, and correct base
71         calculation.
72
73 2018-12-13  Stafford Horne  <shorne@gmail.com>
74
75         * NEWS(New targets): Add or1k*-*-linux*.
76
77 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
78
79         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
80         declare on one line to fix ARI warning.
81
82 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
83
84         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
85         (infcall_suspend_state::registers): New.
86         (infcall_suspend_state::restore): New.
87         (infcall_suspend_state::thread_suspend): Rename to...
88         (infcall_suspend_state::m_thread_suspend): ...this.
89         (infcall_suspend_state::registers): Rename to...
90         (infcall_suspend_state::m_registers): ...this.
91         (infcall_suspend_state::siginfo_gdbarch): Rename to...
92         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
93         (infcall_suspend_state::siginfo_data): Rename to...
94         (infcall_suspend_state::m_siginfo_data): ...this.
95         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
96         constructor.
97         (restore_infcall_suspend_state): Rewrite to use
98         infcall_suspend_state::restore method.
99         (get_infcall_suspend_state_regcache): Use
100         infcall_suspend_state::registers method.
101
102 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
103
104         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
105         arguments are passed in integer registers.
106         (riscv_call_arg_complex_float): Likewise.
107
108 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
109
110         * nat/linux-osdata.c (common_getter): New function.
111         (struct osdata_type): Change getter to take_snapshot.
112         Add LONGEST len_avail and struct buffer buffer.
113         Change all elements in the initializer.
114         Add an element for the list of types.
115         (linux_xfer_osdata_info_os_types): New function.
116         (linux_common_xfer_osdata): Use common_getter for the list of types.
117         Replace getter call by common_getter.
118         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
119         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
120         (linux_xfer_osdata_fds): Likewise.
121         (linux_xfer_osdata_modules): Likewise.
122         (linux_xfer_osdata_msg): Likewise.
123         (linux_xfer_osdata_processes): Likewise.
124         (linux_xfer_osdata_processgroups): Likewise.
125         (linux_xfer_osdata_sem): Likewise.
126         (linux_xfer_osdata_shm): Likewise.
127         (linux_xfer_osdata_isockets): Likewise.
128         (linux_xfer_osdata_threads): Likewise.
129
130 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
131
132         * nat/linux-osdata.c: Removed various trailing spaces.
133
134 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
135
136         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
137         leading whitespace before #include line.
138
139 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
140             Дилян Палаузов  <dilyan.palauzov@aegee.org>
141
142         PR gdb/23950
143         * configure.ac: Search for tgetent in libtinfow.
144         * configure: Re-generate.
145
146 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
147
148         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
149         (thread_db_err_str): Forward declare.
150         (delete_thread_db_info): Call td_ta_delete_p if available.
151         (try_thread_db_load_1): Acquire td_ta_delete address.
152         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
153
154 2018-12-08  Pedro Alves  <palves@redhat.com>
155
156         * source.c (forward_search_command): Rename to ...
157         (search_command_helper): ... this.  Add 'forward' parameter.
158         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
159         buffer.  Handle backward searches too.
160         (forward_search_command, reverse_search_command): Reimplement by
161         calling search_command_helper.
162
163 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
164
165         * .dir-locals.el: Copy most of the settings from c-mode over to
166         c++-mode.
167
168 2018-12-08  Stafford Horne  <shorne@gmail.com>
169
170         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
171         * configure.tgt: Add or1k*-*-linux*.
172         * or1k-linux-tdep.c: New file.
173         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
174
175 2018-12-07  Pedro Alves  <palves@redhat.com>
176
177         * dwarf2read.c (get_gdb_index_contents_from_section): Use
178         gdb::make_array_view.
179
180 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
181
182         * language.c (_initialize_language): Fix leak by assigning
183         a static string to language.  Same for range and case_sensitive,
184         even if no leak is detected for these variables.
185
186 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
187
188         * configure: Re-generate.
189         * configure.ac: Use separate sed expressions to escape variables
190         in auto-load directories.
191
192 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
193
194         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
195         (riscv_find_default_target_description): Use new function to
196         extract feature from gdbarch_info.
197         (riscv_gdbarch_init): Add error checks for xlen and flen between
198         target description and bfd headers.  Be smarter about when we
199         think the hardware floating point abi should be used.
200
201 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
202
203         * nat/aarch64-linux-hw-point.c
204         (aarch64_linux_any_set_debug_regs_state): New function.
205         * nat/aarch64-linux-hw-point.h
206         (aarch64_linux_any_set_debug_regs_state): New declaration.
207         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
208         BPs or WPs are set.
209
210 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
211
212         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
213         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
214
215 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
216             Simon Marchi  <simon.marchi@ericsson.com>
217
218         * linespec.c (symtab_vector_up): Remove.
219         (symtabs_from_filename): Change return type to std::vector.
220         (collect_symtabs_from_filename): Likewise.
221         (create_sals_line_offset): Assign return value of
222         collect_symtabs_from_filename to *ls->file_symtabs.
223         (convert_explicit_location_to_linespec): Remove call to release.
224         (parse_linespec): Likewise.
225         (symtab_collector) <symtab_collector>: Remove initialization of
226         m_symtabs.
227         <release_symtabs>: Change return type to std::vector<symtab *>.
228         <operator ()>: Adjust.
229
230 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
231
232         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
233         defined.
234         (union sigval32, struct siginfo32, fbsd_siginfo_size)
235         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
236         of KERN_PROC_AUXV and PT_LWPINFO.
237         (fbsd_nat_target::xfer_partial): Define method unconditionally.
238         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
239         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
240         Make TARGET_OBJECT_FREEBSD_VMMAP and
241         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
242         and KERN_PROC_PS_STRINGS.
243         * fbsd-nat.h: Include <sys/proc.h>.
244         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
245
246 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
247
248         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
249         header files.
250         (riscv_linux_nat_target::read_description): New method.
251
252 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
253
254         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
255         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
256         (riscv_tdesc_cache): New global.
257         (riscv_create_target_description): Look in the cache before
258         creating a new target description.
259
260 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
261
262         * arch/riscv.h (riscv_gdb_features::operator==): New.
263         (riscv_gdb_features::operator!=): New.
264         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
265         operator.
266
267 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
268
269         * arch/riscv.h (riscv_create_target_description): Make return type
270         const.
271         * arch/riscv.c (riscv_create_target_description): Likewise.
272         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
273
274 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
275             Keith Seitz  <keiths@redhat.com>
276             Tom Tromey  <tom@tromey.com>
277             Sergio Durigan Junior  <sergiodj@redhat.com>
278
279         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
280         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
281         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
282         inside the CU.
283
284 2018-11-30  Pedro Alves  <palves@redhat.com>
285
286         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
287         <stratum>: New override.
288         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
289         <stratum>: New override.
290         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
291         <stratum>: New override.
292         * exec.c (exec_target) <exec_target>: Delete.
293         <stratum>: New override.
294         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
295         stratum method instead of the to_stratum field.
296         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
297         <stratum>: New override.
298         (thread_db_target::thread_db_target): Delete.
299         * make-target-delegates (print_class): Don't print a ctor
300         declaration.  Print a stratum method override declaration.
301         * process-stratum-target.h (process_stratum_target)
302         <process_stratum_target>: Delete.
303         <stratum>: New override.
304         * ravenscar-thread.c (ravenscar_thread_target)
305         <ravenscar_thread_target>: Delete.
306         <stratum>: New override.
307         * record-btrace.c (record_btrace_target)
308         <record_btrace_target>: Delete.
309         <stratum>: New override.
310         * record-full.c (record_full_base_target)
311         <record_full_base_target>: Delete.
312         <stratum>: New override.
313         * record.c (record_disconnect, record_detach)
314         (record_mourn_inferior, record_kill): Adjust to use the stratum
315         method instead of the to_stratum field.
316         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
317         * sol-thread.c (sol_thread_target)
318         <sol_thread_target>: Delete.
319         <stratum>: New override.
320         * spu-multiarch.c (spu_multiarch_target)
321         <spu_multiarch_target>: Delete.
322         <stratum>: New override.
323         * target-delegates.c: Regenerate.
324         * target.c (target_stack::push, target_stack::unpush)
325         (pop_all_targets_above, pop_all_targets_at_and_above)
326         (info_target_command, target_require_runnable)
327         (target_stack::find_beneath): Adjust to use the stratum method
328         instead of the to_stratum field.
329         (dummy_target::dummy_target): Delete.
330         (dummy_target::stratum): New.
331         (debug_target::debug_target): Delete.
332         (debug_target::stratum): New.
333         (maintenance_print_target_stack): Adjust to use the stratum method
334         instead of the to_stratum field.
335         * target.h (struct target_ops) <stratum>: New method.
336         <to_stratum>: Delete.
337         <is_pushed>: Adjust to use the stratum method
338         instead of the to_stratum field.
339
340 2018-11-30  Pedro Alves  <palves@redhat.com>
341
342         * corelow.c (core_target) <has_all_memory, has_execution>: New
343         overrides.
344         * inf-child.c (inf_child_target::has_all_memory)
345         (inf_child_target::has_memory, inf_child_target::has_stack)
346         (inf_child_target::has_registers)
347         (inf_child_target::has_execution): Delete.
348         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
349         has_stack, has_registers, has_execution>: Delete.
350         * process-stratum-target.c
351         (process_stratum_target::has_all_memory)
352         (process_stratum_target::has_memory)
353         (process_stratum_target::has_stack)
354         (process_stratum_target::has_registers)
355         (process_stratum_target::has_execution): New.
356         * process-stratum-target.h (process_stratum_target)
357         <has_all_memory, has_memory, has_stack, has_registers,
358         has_execution>: New method overrides.
359         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
360         has_memory, has_stack, has_registers, has_execution>: Delete.
361         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
362         has_execution>: Delete.
363         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
364         has_registers, has_execution>: Delete.
365         * target.c (default_child_has_all_memory)
366         (default_child_has_memory, default_child_has_stack)
367         (default_child_has_registers, default_child_has_execution):
368         Delete.
369         * target.h (default_child_has_all_memory)
370         (default_child_has_memory, default_child_has_stack)
371         (default_child_has_registers, default_child_has_execution):
372         Delete.
373         * tracefile.h (tracefile_target) <has_execution>: New override.
374
375 2018-11-30  Pedro Alves  <palves@redhat.com>
376
377         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
378         * bsd-kvm.c: Include "process-stratum-target.h".
379         (bsd_kvm_target): Now inherits from process_stratum_target.
380         (bsd_kvm_target::bsd_kvm_target): Default it.
381         * corelow.c: Include "process-stratum-target.h".
382         (core_target): Now inherits from process_stratum_target.
383         (core_target::core_target): Don't set to_stratum here.
384         * inf-child.c (inf_child_target::inf_child_target): Delete.
385         * inf-child.h: Include "process-stratum-target.h".
386         (inf_child_target): Inherit from process_stratum_target.
387         (inf_child_target) <inf_child_target>: Default it.
388         <can_async_p, supports_non_stop, supports_disable_randomization>:
389         Delete overrides.
390         * process-stratum-target.c: New file.
391         * process-stratum-target.h: New file.
392         * remote-sim.c: Include "process-stratum-target.h".
393         (gdbsim_target): Inherit from process_stratum_target.
394         <gdbsim_target>: Default it.
395         * remote.c: Include "process-stratum-target.h".
396         (remote_target): Inherit from process_stratum_target.
397         <remote_target>: Default it.
398         * target.c (default_thread_address_space)
399         (default_thread_architecture): Delete.
400         * target.h (target_ops) <thread_architecture>: Now returns NULL by
401         default.
402         <thread_address_space>: Ditto.
403         * test-target.h: Include "process-stratum-target.h" instead of
404         "target.h".
405         (test_target_ops): Inherit from process_stratum_target.
406         <test_target_ops>: Default it.
407         * tracefile.c (tracefile_target::tracefile_target): Delete.
408         * tracefile.h: Include "process-stratum-target.h".
409         (tracefile_target): Inherit from process_stratum_target.
410         <tracefile_target>: Default it.
411         * target-delegates.c: Regenerate.
412
413 2018-11-30  Pedro Alves  <palves@redhat.com>
414
415         * Makefile.in (COMMON_SFILES): Add test-target.c.
416         * gdbarch-selftests.c: Include "test-target.h".
417         * regcache.c: Include "test-target.h".
418         * target.c (test_target_info, test_target_ops::info): Move to ...
419         * test-target.c: ... this new file.
420         * target.h (test_target_ops): Move to ...
421         * test-target.h: ... this new file.
422
423 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
424
425         * source.c (forward_search_command): Fix leak by using
426         xrealloc even for the first allocation in the loop, as buf
427         is static.
428
429 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
430
431         PR gdb/23093
432         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
433         (fbsd_gdb_signal_to_target): New.
434         (fbsd_init_abi): Install gdbarch "signal_from_target" and
435         "signal_to_target" methods.
436
437 2018-11-29  Tom Tromey  <tom@tromey.com>
438
439         * valarith.c (value_x_unop): Don't set argvec[3].
440
441 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
442
443         PR gdb/23917
444         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
445         semicolon.
446
447 2018-11-26  Pedro Alves  <palves@redhat.com>
448
449         * procfs.c (procfs_notice_thread): Replace uses of
450         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
451         * sol-thread.c (sol_thread_target::wait)
452         (sol_update_thread_list_callback): Likewise.
453
454 2018-11-25  Tom Tromey  <tom@tromey.com>
455
456         * ui-out.c (ui_out::field_fmt): Remove comment.
457         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
458         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
459
460 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
461
462         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
463         leak in open_source_file' has been partially undone by '2179fbc36d23
464         Return scoped_fd from open_source_file'. Re-add the transfer of
465         current s->fullname to the unique_xmalloc_ptr fullname given
466         to find_and_open_source.
467
468 2018-11-23  Pedro Alves  <palves@redhat.com>
469
470         * gdbthread.h (enum thread_state): Move comments here.
471         (is_running, is_stopped, is_exited): Remove declarations.
472
473 2018-11-22  Pedro Alves  <palves@redhat.com>
474
475         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
476         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
477         ALL_NON_EXITED_THREADS with all_non_exited_threads.
478         (print_one_breakpoint_location): Replace ALL_INFERIORS with
479         all_inferiors.
480         * bsd-kvm.c: Include inferior.h.
481         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
482         with all_non_exited_threads.
483         * common/filtered-iterator.h: New.
484         * common/safe-iterator.h: New.
485         * corelow.c (core_target_open): Don't call init_thread_list here.
486         * darwin-nat.c (thread_info_from_private_thread_info): Replace
487         ALL_THREADS with all_threads.
488         * fbsd-nat.c (fbsd_nat_target::resume): Replace
489         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
490         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
491         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
492         * fork-child.c (postfork_hook): Don't call init_thread_list here.
493         * gdbarch-selftests.c (register_to_value_test): Adjust.
494         * gdbthread.h: Don't include "inferior.h" here.
495         (struct inferior): Forward declare.
496         (enum step_over_calls_kind): Moved here from inferior.h.
497         (thread_info::deletable): Definition moved to thread.c.
498         (find_thread_ptid (inferior *, ptid_t)): Declare.
499         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
500         Include "thread-iter.h".
501         (all_threads, all_non_exited_threads, all_threads_safe): New.
502         (any_thread_p): Declare.
503         (thread_list): Delete.
504         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
505         all_non_exited_threads.
506         (proceed_after_attach_callback): Delete.
507         (proceed_after_attach): Take an inferior pointer instead of an
508         integer PID.  Adjust to use range-for.
509         (attach_post_wait): Pass down inferior pointer instead of pid.
510         Use range-for instead of ALL_NON_EXITED_THREADS.
511         (detach_command): Remove init_thread_list call.
512         * inferior-iter.h: New.
513         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
514         (delete_thread_of_inferior): Delete.
515         (delete_inferior, exit_inferior_1): Use range-for with
516         inf->threads_safe() instead of iterate_over_threads.
517         (inferior_appeared): Call init_thread_list here.
518         (discard_all_inferiors): Use all_non_exited_inferiors.
519         (find_inferior_id, find_inferior_pid): Use all_inferiors.
520         (iterate_over_inferiors): Use all_inferiors_safe.
521         (have_inferiors, number_of_live_inferiors): Use
522         all_non_exited_inferiors.
523         (number_of_inferiors): Use all_inferiors and std::distance.
524         (print_inferior): Use all_inferiors.
525         * inferior.h: Include gdbthread.h.
526         (enum step_over_calls_kind): Moved to gdbthread.h.
527         (struct inferior) <thread_list>: New field.
528         <threads, non_exited_threads, threads_safe>: New methods.
529         (ALL_INFERIORS): Delete.
530         Include "inferior-iter.h".
531         (ALL_NON_EXITED_INFERIORS): Delete.
532         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
533         functions.
534         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
535         ALL_NON_EXITED_THREADS with all_non_exited_threads.
536         * infrun.c (follow_exec): Use all_threads_safe.
537         (clear_proceed_status, proceed): Use all_non_exited_threads.
538         (init_wait_for_inferior): Don't clear inline frame state here.
539         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
540         all_threads instead of ALL_NON_EXITED_THREADS.
541         (random_pending_event_thread): Use all_non_exited_threads instead
542         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
543         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
544         instead of ALL_NON_EXITED_THREADS.
545         (handle_no_resumed): Use all_non_exited_threads instead of
546         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
547         ALL_INFERIORS.
548         (restart_threads, switch_back_to_stepped_thread): Use
549         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
550         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
551         all_inferiors.
552         (kill_unfollowed_fork_children): Use inf->non_exited_threads
553         instead of ALL_NON_EXITED_THREADS.
554         * linux-tdep.c (linux_make_corefile_notes): Use
555         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
556         * linux-thread-db.c (thread_db_target::update_thread_list):
557         Replace ALL_INFERIORS with all_inferiors.
558         (thread_db_target::thread_handle_to_thread_info): Use
559         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
560         * mi/mi-interp.c (multiple_inferiors_p): New.
561         (mi_on_resume_1): Simplify using all_non_exited_threads and
562         multiple_inferiors_p.
563         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
564         instead of ALL_NON_EXITED_THREADS.
565         * nto-procfs.c (nto_procfs_target::open): Don't call
566         init_thread_list here.
567         * record-btrace.c (record_btrace_target_open)
568         (record_btrace_target::stop_recording)
569         (record_btrace_target::close)
570         (record_btrace_target::record_is_replaying)
571         (record_btrace_target::resume, record_btrace_target::wait)
572         (record_btrace_target::record_stop_replaying): Use
573         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
574         * record-full.c (record_full_wait_1): Use all_non_exited_threads
575         instead of ALL_NON_EXITED_THREADS.
576         * regcache.c (cooked_read_test): Remove reference to global
577         thread_list.
578         * remote-sim.c (gdbsim_target::create_inferior): Don't call
579         init_thread_list here.
580         * remote.c (remote_target::update_thread_list): Use
581         all_threads_safe instead of ALL_NON_EXITED_THREADS.
582         (remote_target::process_initial_stop_replies): Replace
583         ALL_INFERIORS with all_non_exited_inferiors and use
584         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
585         (remote_target::open_1): Don't call init_thread_list here.
586         (remote_target::append_pending_thread_resumptions)
587         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
588         instead of ALL_NON_EXITED_THREADS.
589         (remote_target::commit_resume)
590         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
591         with all_non_exited_inferiors and use all_non_exited_threads
592         instead of ALL_NON_EXITED_THREADS.
593         (remote_target::kill_new_fork_children): Use
594         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
595         init_thread_list and init_wait_for_inferior calls.
596         (remote_target::remote_btrace_maybe_reopen)
597         (remote_target::thread_handle_to_thread_info): Use
598         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
599         * target.c (target_terminal::restore_inferior)
600         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
601         all_non_exited_inferiors.
602         * thread-iter.c: New file.
603         * thread-iter.h: New file.
604         * thread.c: Include "inline-frame.h".
605         (thread_list): Delete.
606         (clear_thread_inferior_resources): Call clear_inline_frame_state.
607         (init_thread_list): Use all_threads_safe instead of
608         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
609         (new_thread): Adjust to per-inferior thread lists.
610         (add_thread_silent): Pass inferior to find_thread_ptid.
611         (thread_info::deletable): New, moved from the header.
612         (delete_thread_1): Adjust to per-inferior thread lists.
613         (find_thread_global_id): Use inf->threads().
614         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
615         find_thread_ptid.
616         (find_thread_ptid(inferior*, ptid_t)): New overload.
617         (iterate_over_threads): Use all_threads_safe.
618         (any_thread_p): New.
619         (thread_count): Use all_threads and std::distance.
620         (live_threads_count): Use all_non_exited_threads and
621         std::distance.
622         (valid_global_thread_id): Use all_threads.
623         (in_thread_list): Use find_thread_ptid.
624         (first_thread_of_inferior): Adjust to per-inferior thread lists.
625         (any_thread_of_inferior, any_live_thread_of_inferior): Use
626         inf->non_exited_threads().
627         (prune_threads, delete_exited_threads): Use all_threads_safe.
628         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
629         (set_resumed, set_running): Use all_non_exited_threads.
630         (is_thread_state, is_stopped, is_exited, is_running)
631         (is_executing): Delete.
632         (set_executing, set_stop_requested, finish_thread_state): Use
633         all_non_exited_threads.
634         (print_thread_info_1): Use all_inferiors and all_threads.
635         (thread_apply_all_command): Use all_non_exited_threads.
636         (thread_find_command): Use all_threads.
637         (update_threads_executing): Use all_non_exited_threads.
638         * tid-parse.c (parse_thread_id): Use inf->threads.
639         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
640
641 2018-11-22  Pedro Alves  <palves@redhat.com>
642
643         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
644         switch to it before calling into try_open_exec_file.
645
646 2018-11-22  Pedro Alves  <palves@redhat.com>
647
648         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
649         inferior_thread instead of find_thread_ptid, and only when
650         inferior_ptid is not null_ptid.
651         * inferior.c (add_inferior): Don't include target_pid_to_str
652         output when the inferior is not started.
653         * python/py-inferior.c (python_on_normal_stop): Don't use
654         find_thread_ptid.
655         (tui_on_user_selected_context_changed): Use inferior_thread
656         instead of find_thread_ptid, and only when inferior_ptid is not
657         null_ptid.
658
659 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
660
661         PR python/23714
662         * gdb/python/python.c (execute_gdb_command): Call
663         prevent_dont_repeat earlier to avoid affecting dont_repeat.
664
665 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
666
667         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
668         (HFILES_NO_SRCDIR): Add arch/riscv.h.
669         * arch/riscv.c: New file.
670         * arch/riscv.h: New file.
671         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
672         this list, and add arch/riscv.o.
673         * features/Makefile: Add riscv features.
674         * features/riscv/32bit-cpu.c: New file.
675         * features/riscv/32bit-cpu.xml: New file.
676         * features/riscv/32bit-csr.c: New file.
677         * features/riscv/32bit-csr.xml: New file.
678         * features/riscv/32bit-fpu.c: New file.
679         * features/riscv/32bit-fpu.xml: New file.
680         * features/riscv/64bit-cpu.c: New file.
681         * features/riscv/64bit-cpu.xml: New file.
682         * features/riscv/64bit-csr.c: New file.
683         * features/riscv/64bit-csr.xml: New file.
684         * features/riscv/64bit-fpu.c: New file.
685         * features/riscv/64bit-fpu.xml: New file.
686         * features/riscv/rebuild-csr-xml.sh: New file.
687         * riscv-tdep.c: Add 'arch/riscv.h' include.
688         (riscv_gdb_reg_names): Delete.
689         (csr_reggroup): New global.
690         (struct riscv_register_alias): Delete.
691         (struct riscv_register_feature): New structure.
692         (riscv_register_aliases): Delete.
693         (riscv_xreg_feature): New global.
694         (riscv_freg_feature): New global.
695         (riscv_virtual_feature): New global.
696         (riscv_csr_feature): New global.
697         (riscv_create_csr_aliases): New function.
698         (riscv_read_misa_reg): Delete.
699         (riscv_has_feature): Delete.
700         (riscv_isa_xlen): Simplify, just return cached xlen.
701         (riscv_isa_flen): Simplify, just return cached flen.
702         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
703         (riscv_register_name): Update to make use of tdesc_register_name.
704         Look up xreg and freg names in the new globals riscv_xreg_feature
705         and riscv_freg_feature.  Don't supply csr aliases here.
706         (riscv_fpreg_q_type): Delete.
707         (riscv_register_type): Use tdesc_register_type in almost all
708         cases, override the returned type in a few specific cases only.
709         (riscv_print_one_register_info): Handle errors reading registers.
710         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
711         registers that are otherwise unknown to GDB.  Also check the
712         csr_reggroup.
713         (riscv_print_registers_info): Remove assert about upper register
714         number, and use gdbarch_register_reggroup_p instead of
715         short-cutting.
716         (riscv_find_default_target_description): New function.
717         (riscv_check_tdesc_feature): New function.
718         (riscv_add_reggroups): New function.
719         (riscv_setup_register_aliases): New function.
720         (riscv_init_reggroups): New function.
721         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
722         setup register groups.  Register new riscv debug variable.
723         * riscv-tdep.h: Add 'arch/riscv.h' include.
724         (struct gdbarch_tdep): Remove abi union, and add
725         riscv_gdbarch_features field.  Remove cached quad floating point
726         type, and provide initialisation for double type field.
727         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
728         the list of targets using the feature based target descriptions.
729         * NEWS: Mention target description support.
730
731 2018-11-21  Pedro Alves  <palves@redhat.com>
732
733         * valops.c (find_method_list, value_find_oload_method_list)
734         (find_overload_match, find_oload_champ): Rename parameters and
735         locals.
736
737 2018-11-21  Pedro Alves  <palves@redhat.com>
738
739         * valops.c (find_method_list): Replace pointer and length
740         parameters with an gdb::array_view.  Adjust.
741         (value_find_oload_method_list): Likewise.
742         (find_overload_match): Use gdb::array_view for methods list.
743         Adjust to find_oload_champ interface change.
744         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
745         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
746
747 2018-11-21  Pedro Alves  <palves@redhat.com>
748
749         * gdbtypes.c (compare_badness): Change type of parameters to const
750         reference.  Adjust to badness_vector being a std::vector now.
751         (rank_function): Adjust to badness_vector being a std::vector now.
752         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
753         (LENGTH_MATCH): Delete.
754         (compare_badness): Change type of parameters to const reference.
755         (rank_function): Return a badness_vector by value now.
756         (find_overload_match): Adjust to badness_vector being a
757         std::vector now.  Remove cleanups.
758         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
759         badness_vector pointer.
760         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
761         a badness_vector pointer.  Adjust to badness_vector being a
762         std::vector now.  Remove cleanups.
763         (find_oload_champ): 'oload_champ_bv' parameter now
764         a badness_vector pointer.  Adjust to badness_vector being a
765         std::vector now.  Remove cleanups.
766
767 2018-11-21  Pedro Alves  <palves@redhat.com>
768
769         * cp-support.c (sym_return_val_size, sym_return_val_index)
770         (sym_return_val): Delete.
771         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
772         add to the vector.
773         (make_symbol_overload_list): Adjust to return a std::vector
774         instead of maintaining a global open coded vector.
775         (make_symbol_overload_list_block): Add std::vector parameter.
776         (make_symbol_overload_list_block): Rename to ...
777         (add_symbol_overload_list_block): ... this and add std::vector
778         parameter.
779         (make_symbol_overload_list_namespace): Rename to ...
780         (add_symbol_overload_list_namespace): ... this and add std::vector
781         parameter.
782         (make_symbol_overload_list_adl_namespace): Rename to ...
783         (add_symbol_overload_list_adl_namespace): ... this and add
784         std::vector parameter.
785         (make_symbol_overload_list_adl): Delete.
786         (add_symbol_overload_list_adl): New.
787         (make_symbol_overload_list_using): Rename to ...
788         (add_symbol_overload_list_using): ... this and add std::vector
789         parameter.
790         (make_symbol_overload_list_qualified): Rename to ...
791         (add_symbol_overload_list_qualified): ... this and add std::vector
792         parameter.
793         * cp-support.h: Include "common/array-view.h" and <vector>.
794         (make_symbol_overload_list): Change return type to std::vector.
795         (make_symbol_overload_list_adl): Delete declaration.
796         (add_symbol_overload_list_adl): New declaration.
797         * valops.c (find_overload_match): Local 'oload_syms' now a
798         std::vector.
799         (find_oload_champ_namespace): 'oload_syms' parameter now a
800         std::vector pointer.
801         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
802         std::vector pointer.  Adjust to new make_symbol_overload_list
803         interface.
804
805 2018-11-21  Pedro Alves  <palves@redhat.com>
806
807         * common/array-view.h (array_view::splice(size_type, size_t)): New.
808         (array_view::splice(size_type)): New.
809         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
810         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
811         std::vector.
812         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
813         * extension.h: Include "common/array-view.h".
814         (xmethod_worker::invoke): Adjust to use gdb::array_view.
815         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
816         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
817         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
818         (xmethod_worker::do_get_result_type): Adjust to use
819         gdb::array_view.
820         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
821         * gdbtypes.h: Include "common/array-view.h".
822         (rank_function): Adjust to use gdb::array_view.
823         * python/py-xmethods.c (python_xmethod_worker::invoke)
824         (python_xmethod_worker::do_get_arg_types)
825         (python_xmethod_worker::do_get_result_type)
826         (python_xmethod_worker::invoke): Adjust to new interfaces.
827         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
828         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
829         * valops.c (find_overload_match, find_oload_champ_namespace)
830         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
831         gdb:array_view and the new xmethod_worker interfaces.
832         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
833         gdb::array_view.
834         * value.h (find_overload_match, result_type_of_xmethod)
835         (call_xmethod): Adjust to use gdb::array_view.
836         * unittests/array-view-selftests.c: Add slicing tests.
837
838 2018-11-21  Pedro Alves  <palves@redhat.com>
839
840         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
841         * common/array-view.h (make_array_view): New.
842         * compile/compile-object-run.c (compile_object_run): Adjust to
843         pass an array_view.
844         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
845         * eval.c (eval_call): Adjust to pass an array_view.
846         (evaluate_subexp_standard): Adjust to pass an array_view.
847         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
848         * guile/scm-value.c (gdbscm_value_call): Likewise.
849         * infcall.c (push_dummy_code): Replace pointer + size parameters
850         with an array_view parameter.
851         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
852         adjust.
853         * infcall.h: Include "common/array-view.h".
854         (call_function_by_hand, call_function_by_hand_dummy): Replace
855         pointer + size parameters with an array_view parameter.
856         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
857         * linux-tdep.c (linux_infcall_mmap): Likewise.
858         * objc-lang.c (lookup_objc_class, lookup_child_selector)
859         (value_nsstring, print_object_command): Likewise.
860         * python/py-value.c (valpy_call): Likewise.
861         * rust-lang.c (rust_evaluate_funcall): Likewise.
862         * spu-tdep.c (flush_ea_cache): Likewise.
863         * valarith.c (value_x_binop, value_x_unop): Likewise.
864         * valops.c (value_allocate_space_in_inferior): Likewise.
865         * unittests/array-view-selftests.c (run_tests): Add
866         gdb::make_array_view test.
867
868 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
869
870         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
871         than a fixed size buffer.
872
873 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
874
875         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
876         and remove insertion of extra spaces in GDB's output.
877         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
878         Layout field into a temporary buffer, and then output it as a
879         string field.
880
881 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
882
883         * NEWS: Document the language choice done by
884         'info [types|functions|variables]|rbreak'.
885
886 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
887
888         * symtab.c (treg_matches_sym_type_name): Use
889         scoped_switch_to_sym_language_if_auto instead of local logic.
890         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
891         to switch to SYM language when language mode is auto.
892
893 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
894
895         * language.h (scoped_switch_to_sym_language_if_auto): New class.
896
897 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
898
899         * symtab.c (search_symbols): Properly check absence of type regexp
900         before entering the loop scanning the minimal symbols.
901
902 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
903
904         * s12z-tdep.c (s12z_extract_return_value): New function.
905         (inv_reg_perm) New array.
906         (s12z_return_value): Populate readbuf if non-null.
907
908 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
909
910         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
911         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
912         to MinGW fixed by Gnulib.
913         (O_NOINHERIT): Define if not defined.
914
915 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
916
917         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
918
919 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
920
921         * infrun.c (displaced_step_inferior_state) <next>: Remove.
922
923 2018-11-19  Tom Tromey  <tom@tromey.com>
924
925         * source.c (get_filename_and_charpos): Return void.
926
927 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
928
929         * skip.c (_initialize_step_skip): Fix "info skip" help.
930
931 2018-11-16  Tom Tromey  <tom@tromey.com>
932
933         PR rust/23625:
934         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
935
936 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
937
938         * infrun.c (displaced_step_inferior_states): Change type to
939         std::forward_list.
940         (get_displaced_stepping_state): Adjust.
941         (displaced_step_in_progress_any_inferior): Adjust.
942         (add_displaced_stepping_state): Adjust.
943         (remove_displaced_stepping_state): Adjust.
944
945 2018-11-18  Tom Tromey  <tom@tromey.com>
946
947         PR build/23814:
948         * target-delegates.c: Rebuild.
949         * ia64-linux-nat.c (class ia64_linux_nat_target)
950         <have_steppable_watchpoint>: Use override.  Return true, not 1.
951         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
952         "self" argument.
953         (ia64_linux_nat_target::low_new_thread): Rename.
954         (class ia64_linux_nat_target) <read_description>: Don't declare.
955         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
956         bool.
957
958 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
959
960         PR gdb/22736:
961         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
962         lang_struct_return code.
963
964 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
965
966         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
967         return_method.
968         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
969         * amd64-tdep.c (amd64_push_arguments): Likewise.
970         (amd64_push_dummy_call): Likewise.
971         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
972         * arc-tdep.c (arc_push_dummy_call): Likewise.
973         * arm-tdep.c (arm_push_dummy_call): Likewise.
974         * avr-tdep.c (avr_push_dummy_call): Likewise.
975         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
976         * cris-tdep.c (cris_push_dummy_call): Likewise.
977         * csky-tdep.c (csky_push_dummy_call): Likewise.
978         * frv-tdep.c (frv_push_dummy_call): Likewise.
979         * gdbarch.c: Regenerate.
980         * gdbarch.h: Regenerate.
981         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
982         return_method.
983         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
984         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
985         (hppa64_push_dummy_call): Likewise.
986         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
987         * i386-tdep.c (i386_push_dummy_call): Likewise.
988         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
989         * infcall.c (call_function_by_hand_dummy): Likewise.
990         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
991         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
992         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
993         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
994         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
995         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
996         * mep-tdep.c (mep_push_dummy_call): Likewise.
997         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
998         (mips_n32n64_push_dummy_call): Likewise.
999         (mips_o32_push_dummy_call): Likewise.
1000         (mips_o64_push_dummy_call): Likewise.
1001         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1002         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1003         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1004         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1005         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1006         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1007         (ppc64_sysv_abi_push_dummy_call): Likewise.
1008         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1009         (ppc64_sysv_abi_push_dummy_call): Likewise.
1010         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1011         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1012         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1013         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1014         * rx-tdep.c (rx_push_dummy_call): Likewise.
1015         * s390-tdep.c (s390_push_dummy_call): Likewise.
1016         * score-tdep.c (score_push_dummy_call): Likewise.
1017         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1018         (sh_push_dummy_call_nofpu): Likewise.
1019         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1020         (sparc32_push_dummy_call): Likewise.
1021         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1022         (sparc64_push_dummy_call): Likewise.
1023         * spu-tdep.c (spu_push_dummy_call): Likewise.
1024         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1025         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1026         * v850-tdep.c (v850_push_dummy_call): Likewise.
1027         * vax-tdep.c (vax_push_dummy_call): Likewise.
1028         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1029         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1030
1031 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1032
1033         * gdbarch.sh (enum function_call_return_method): Add enum.
1034         * gdbarch.h: Regenerate.
1035         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1036
1037 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1038
1039         * unittests/copy_bitwise-selftests.c: New file.
1040         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1041         (selftests::copy_bitwise_tests): Delete, moving this code to
1042         unittests/copy_bitwise-selftests.c instead.
1043         (_initialize_utils): Do not register copy_bitwise tests.
1044         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1045         unittests/copy_bitwise-selftests.c.
1046
1047 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1048
1049         * ada-lang.c (move_bits): Delete. Update all callers to use
1050         copy_bitwise instead.
1051         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1052         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1053         Move from here to utils.c.
1054         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1055         selftests.
1056         * utils.h (copy_bitwise): Add declaration.
1057         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1058         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1059         Moved here from dwarf2loc.c.
1060         (_initialize_utils): Register copy_bitwise selftests.
1061
1062 2018-11-14  Jim Wilson  <jimw@sifive.com>
1063
1064         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1065         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1066         then increment next_regnum if odd.
1067         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1068         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1069         function type.  Pass new arg to riscv_arg_location based on function
1070         type.
1071         (riscv_return_value): Pass new arg to riscv_arg_location.
1072
1073         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1074         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1075         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1076
1077         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1078         setting len.  New local align, set to max of arg align and xlen,
1079         and pass to first riscv_assign_stack_location call.
1080
1081 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1082
1083         * skip.c (complete_skip_number): New function.
1084         (_initialize_step_skip): Add completers to some skip commands.
1085
1086 2018-11-09  Tom Tromey  <tom@tromey.com>
1087
1088         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1089         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1090         <guesses>: Now a std::vector.
1091         (remote_g_packet_data_init, register_remote_g_packet_guess):
1092         Update.
1093         (remote_read_description_p): Update.  Return bool.
1094         (remote_target::read_description): Update.
1095         (struct remote_g_packet_guess): Add constructor.
1096
1097 2018-11-09  Tom Tromey  <tom@tromey.com>
1098
1099         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1100         move assignment operator.
1101         * psymtab.c (psymtab_to_fullname): Update.
1102         * source.h (open_source_file): Return scoped_fd.
1103         (find_and_open_source): Likewise.
1104         * source.c (open_source_file): Return scoped_fd.
1105         (get_filename_and_charpos): Update.
1106         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1107         (forward_search_command): Likewise.
1108         (reverse_search_command): Likewise.
1109         (find_and_open_source): Return scoped_fd.
1110         * tui/tui-source.c (tui_set_source_content): Update.  Use
1111         gdb_file_up.
1112
1113 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1114
1115         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1116         overflow.
1117
1118 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1119
1120         * configure: Regenerate.
1121
1122 2018-11-09  Tom de Vries  <tdevries@suse.de>
1123
1124         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1125         unconditionally, to set the language of the symbol.  Manage freeing
1126         returned pointer using gdb::unique_xmalloc_ptr.
1127
1128 2018-11-08  Tom Tromey  <tom@tromey.com>
1129
1130         * record.c (require_record_target): Upper-case "<TAB>".
1131
1132 2018-11-08  Tom Tromey  <tom@tromey.com>
1133
1134         * python/lib/gdb/command/pretty_printers.py
1135         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1136
1137 2018-11-08  Tom Tromey  <tom@tromey.com>
1138
1139         PR gdb/23555:
1140         PR gdb/23838:
1141         * target.h (target_supports_terminal_ours): Return bool.
1142         * target.c (target_supports_terminal_ours): Handle case where
1143         current_top_target returns nullptr.  Return bool.
1144
1145 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1146
1147         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1148         return the correct count for potential HFAs.
1149
1150 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1151
1152         * i387-tdep.c (i387_supply_xsave): Split handling of
1153         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1154         (i387_collect_xsave): Likewise.
1155
1156 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1157
1158         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1159         (riscv_frame_this_id): Catch errors thrown while building the
1160         frame cache, leave the frame id as the default, which is the outer
1161         frame id.
1162
1163 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1164
1165         * ada-lang.c (read_atcb): Only set task_info->called_task if
1166         task_info->state == Entry_Caller_Sleep.
1167         (print_ada_task_info): Do not check task_info->state before
1168         checking task_info->called_task.
1169         (info_task): Likewise.
1170
1171 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1172
1173         * ada-tasks.c (read_atcb): Clear task_info before computing
1174         the value of each of its fields.
1175
1176 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1177
1178         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1179         NULL before dereferencing it.
1180
1181 2018-11-06  Tom de Vries  <tdevries@suse.de>
1182
1183         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1184         program headers.
1185
1186 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1187
1188         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1189         so that it applies to uclinux as well.
1190
1191 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1192
1193         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1194         when on AAPCS.
1195
1196 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1197
1198         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1199         RISCV_CSR_SSTATUS_REGNUM.
1200
1201 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1202
1203         * source.c (open_source_file): Fix leak by transferring the
1204         current s->fullname to the unique_xmalloc_ptr fullname given
1205         to find_and_open_source.
1206
1207 2018-11-04  Tom Tromey  <tom@tromey.com>
1208
1209         * varobj.c (install_default_visualizer): Update.
1210         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1211         Return gdbpy_ref.
1212         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1213         (find_pretty_printer_from_progspace)
1214         (find_pretty_printer_from_gdb, find_pretty_printer)
1215         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1216         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1217         Update.
1218
1219 2018-11-04  Tom Tromey  <tom@tromey.com>
1220
1221         * python/python.c (gdbpy_parameter_value): Update.
1222         * python/python-internal.h (python_string_to_unicode)
1223         (python_string_to_target_python_string)
1224         (host_string_to_python_string): Return gdbpy_ref.
1225         * python/py-utils.c (python_string_to_unicode)
1226         (unicode_to_encoded_python_string)
1227         (unicode_to_target_python_string)
1228         (python_string_to_target_string)
1229         (python_string_to_target_python_string): Return gdbpy_ref.
1230         (python_string_to_host_string): Update.
1231         (host_string_to_python_string): Return gdbpy_ref.
1232         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1233         (stpy_fullname): Update.
1234         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1235         Update.
1236         * python/py-prettyprint.c (print_string_repr): Update.
1237         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1238         (objfpy_get_build_id): Update.
1239         * python/py-breakpoint.c (bppy_get_location)
1240         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1241         Update.
1242
1243 2018-11-04  Tom Tromey  <tom@tromey.com>
1244
1245         * python/python-internal.h (gdb_py_object_from_longest)
1246         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1247         * python/py-value.c (valpy_int): Update.
1248         * python/py-utils.c (gdb_py_object_from_longest): Return
1249         gdbpy_ref.
1250         (gdb_py_object_from_ulongest): Likewise.
1251         * python/py-type.c (typy_get_alignof): Update.
1252         * python/py-linetable.c (ltpy_get_all_source_lines)
1253         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1254         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1255
1256 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1257
1258         * ada-lang.c (_initialize_ada_language): Fix typo.
1259
1260 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1261
1262         * language.c (type): Remove.
1263         (_initialize_language): Remove assignment to type.
1264
1265 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1266
1267         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1268         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1269         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1270         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1271         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1272         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1273         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1274         and aarch64-ravenscar-thread.o.
1275         * NEWS: Add entry documenting Ravenscar tasking support
1276         on AArch64 ELF.
1277
1278 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1279
1280         * symtab.c (info_functions_command): Initialize quiet flag.
1281         * stack.c (info_args_command): Likewise.
1282
1283 2018-11-01  Jim Wilson  <jimw@sifive.com>
1284
1285         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1286         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1287         debugging messages.
1288
1289 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1290
1291         * ada-lang.c (ada_watch_location_expression): New function.
1292         (ada_language_defn): Set la_watch_location_expression to
1293         ada_watch_location_expression.
1294
1295 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1296
1297         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1298
1299 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1300
1301         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1302         shifting.
1303
1304 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1305             Joel Brobecker  <brobecker@adacore.com>
1306
1307         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1308         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1309         * arm-pikeos-tdep.c: New file.
1310         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1311         embedded system.
1312         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1313
1314 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1315
1316         * common/pathstuff.c (get_standard_temp_dir): New.
1317         * common/pathstuff.h (get_standard_temp_dir): New.
1318         * config.in: Re-generate.
1319         * configure: Re-generate.
1320         * configure.ac: Don't check for mkdtemp.
1321         * gnulib/aclocal-m4-deps.mk: Re-generate.
1322         * gnulib/aclocal.m4: Re-generate.
1323         * gnulib/config.in: Re-generate.
1324         * gnulib/configure: Re-generate.
1325         * gnulib/import/Makefile.am: Re-generate.
1326         * gnulib/import/Makefile.in: Re-generate.
1327         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1328         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1329         * gnulib/import/m4/mkdtemp.m4: New file.
1330         * gnulib/import/mkdtemp.c: New file.
1331         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1332         Add mkdtemp module.
1333         * unittests/mkdir-recursive-selftests.c (test): Use
1334         get_standard_temp_dir.
1335         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1336         ifdef.
1337         * compile/compile.c (get_compile_file_tempdir): Likewise.
1338
1339 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1340
1341         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1342         (SIG_FRAME_LR_OFFSET64): New define.
1343         (SIG_FRAME_FP_OFFSET64): New define.
1344         (aix_sighandle_frame_cache): New Function.
1345         (aix_sighandle_frame_this_id): New Function.
1346         (aix_sighandle_frame_prev_register): New Function.
1347         (aix_sighandle_frame_sniffer): New Function.
1348         (aix_sighandle_frame_unwind): New global variable.
1349         (rs6000_aix_init_osabi): Install new frame unwinder.
1350
1351 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1352
1353         PR gdb/23835
1354         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1355         already defined.
1356
1357 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1358
1359         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1360
1361 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1362
1363         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1364         (producer_is_icc): New function.
1365         (check_producer): Set producer_is_icc field on dwarf2_cu.
1366         (dwarf2_init_integer_type): New function.
1367         (read_base_type): Call dwarf2_init_integer_type instead of
1368         init_integer_type in all cases.
1369         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1370         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1371         LEN is greater than 0.
1372
1373 2018-10-30  Tom Tromey  <tom@tromey.com>
1374
1375         * main.c (captured_main_1): Check return value of bfd_init.
1376
1377 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1378
1379         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1380         Adjust comments.
1381
1382 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1383
1384         * procfs.c: Include common/pathstuff.h.
1385
1386 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1387
1388         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1389         Add missing braces.  No functional change.
1390
1391 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1392
1393         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1394         to report a bad option and fix indentation.
1395         * demangle.c (demangle_command): Use report_unrecognized_option_error
1396         to report a bad option and correctly report the bad option.
1397
1398 2018-10-27  Tom Tromey  <tom@tromey.com>
1399
1400         PR cli/23364:
1401         * darwin-nat.c (copied_shell): New global.
1402         (may_have_sip): Rename from should_disable_startup_with_shell.
1403         (copy_shell_to_cache, maybe_cache_shell): New functions.
1404         (darwin_nat_target::create_inferior): Update.  Use
1405         copied_shell.
1406
1407 2018-10-27  Tom Tromey  <tom@tromey.com>
1408
1409         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1410         (run_tests): Call test_to_file.
1411         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1412         temporary files.
1413         * common/scoped_fd.h (scoped_fd::to_file): New method.
1414
1415 2018-10-27  Tom Tromey  <tom@tromey.com>
1416
1417         * unittests/scoped_mmap-selftests.c (test_normal): Use
1418         gdb_mkostemp_cloexec.
1419         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1420         Use gdb_mkostemp_cloexec.
1421         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1422         gnulib/config.in, gnulib/configure,
1423         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1424         gnulib/import/m4/gnulib-cache.m4,
1425         gnulib/import/m4/gnulib-comp.m4: Update.
1426         * gnulib/import/m4/mkostemp.m4: New file.
1427         * gnulib/import/m4/mkstemp.m4: Remove.
1428         * gnulib/import/mkostemp.c: New file.
1429         * gnulib/import/mkstemp.m4: Remove.
1430         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1431         mkstemp, add mkostemp.  Apply new patch.
1432         * gnulib/import/stdlib.in.h: Apply patch.
1433         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1434         New file.
1435         * dwarf-index-write.c (write_psymtabs_to_index): Use
1436         gdb_mkostemp_cloexec.
1437         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1438
1439 2018-10-27  Tom Tromey  <tom@tromey.com>
1440
1441         * unittests/mkdir-recursive-selftests.c: New file.
1442         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1443         unittests/mkdir-recursive-selftests.c.
1444         * dwarf-index-cache.c (mkdir_recursive): Move to
1445         common/filestuff.c.
1446         (index_cache::store): Check return value of mkdir_recursive.
1447         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1448         (_initialize_index_cache): Don't register test.
1449         * common/filestuff.h (mkdir_recursive): Declare.
1450         * common/filestuff.c (mkdir_recursive): Move from
1451         dwarf-index-cache.c.  Return bool.
1452
1453 2018-10-27  Tom Tromey  <tom@tromey.com>
1454
1455         * dwarf-index-write.c (write_psymtabs_to_index): Move
1456         make_temp_filename to common/pathstuff.c.
1457         * common/pathstuff.h (make_temp_filename): Declare.
1458         * common/pathstuff.c (make_temp_filename): New function, moved
1459         from dwarf-index-write.c.
1460
1461 2018-10-27  Tom Tromey  <tom@tromey.com>
1462
1463         * procfs.c (procfs_target::create_inferior): Use get_shell.
1464         * cli/cli-cmds.c (shell_escape): Use get_shell.
1465         * windows-nat.c (windows_nat_target::create_inferior): Use
1466         get_shell.
1467         * common/pathstuff.c (get_shell): New function.
1468         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1469         (fork_inferior): Use get_shell.
1470         * common/pathstuff.h (get_shell): Declare.
1471
1472 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1473
1474         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1475
1476 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1477
1478         * stack.c (print_variable_and_value_data): Add preg and treg.
1479         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1480         and update callers.
1481         (print_frame_arg_vars): Likewise.
1482         (prepare_reg): New function.
1483         (info_locals_command): Extract info print args and use them.
1484         (info_args_command): Likewise.
1485         (_initialize_stack): Modify on-line help.
1486         * symtab.c (treg_matches_sym_type_name): New function.
1487         (search_symbols): New arg t_regexp.
1488         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1489         (info_variables_command): Extract info print args and use them.
1490         (info_functions_command): Likewise.
1491         (info_types_command): Update call to symtab_symbol_info.
1492         (_initialize_symtab): Modify on-line help.
1493         * symtab.h (treg_matches_sym_type_name): New function.
1494         (search_symbols): New t_regexp arg.
1495
1496 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1497
1498         * cli-utils.c (extract_arg_maybe_quoted): New function.
1499         (extract_info_print_args): New function.
1500         (info_print_args_help): New function.
1501         (report_unrecognized_option_error): New function.
1502         * cli-utils.h (extract_arg_maybe_quoted): New function.
1503         (extract_info_print_args): New function.
1504         (info_print_args_help): New function.
1505         (report_unrecognized_option_error): New function.
1506
1507 2018-10-26  Tom Tromey  <tom@tromey.com>
1508
1509         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1510         (compute_compunit_symtab_includes): Update.
1511         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1512         (compunit_symtab_ptr): Likewise.
1513
1514 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1515
1516         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1517         default_print_auxv_entry for specific tag values.
1518
1519 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1520
1521         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1522
1523 2018-10-26  Jim Wilson  <jimw@sifive.com>
1524
1525         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1526         (riscv_linux_sigframe_init): Declare.
1527         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1528         (riscv_linux_sigframe): New.
1529         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1530         (riscv_linux_sigframe_init): Define.
1531         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1532
1533         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1534         (riscv_isa_flen): Likewise.  Drop static.
1535         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1536         (riscv_isa_flen): Likewise.  Declare.
1537
1538 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1539             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1540
1541         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1542         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1543         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1544         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1545         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1546         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1547         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1548         Define.
1549         (struct ppc_linux_features) <htm>: New field.
1550         (ppc_linux_no_features): Add initializer for htm field.
1551         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1552         new tdescs.
1553         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1554         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1555         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1556         Define if not already defined.
1557         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1558         and rs6000/powerpc-isa207-htm-vsx64l.
1559         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1560         rs6000/powerpc-isa207-htm-vsx64l.xml.
1561         * features/rs6000/power-htm-spr.xml: New file.
1562         * features/rs6000/power-htm-core.xml: New file.
1563         * features/rs6000/power64-htm-core.xml: New file.
1564         * features/rs6000/power-htm-fpu.xml: New file.
1565         * features/rs6000/power-htm-altivec.xml: New file.
1566         * features/rs6000/power-htm-vsx.xml: New file.
1567         * features/rs6000/power-htm-ppr.xml: New file.
1568         * features/rs6000/power-htm-dscr.xml: New file.
1569         * features/rs6000/power-htm-tar.xml: New file.
1570         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1571         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1572         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1573         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1574         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1575         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1576         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1577         fetch_regset with HTM regsets.
1578         (store_register, store_ppc_registers): Call store_regset with HTM
1579         regsets.
1580         (ppc_linux_nat_target::read_description): Set htm field in the
1581         features struct if needed.
1582         * ppc-linux-tdep.c: Include
1583         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1584         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1585         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1586         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1587         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1588         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1589         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1590         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1591         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1592         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1593         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1594         (ppc32_linux_ctarregset): New globals.
1595         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1596         (ppc_linux_collect_core_cpgrregset): New function.
1597         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1598         regsets.
1599         (ppc_linux_core_read_description): Check if the tm spr section is
1600         present and set htm in the features struct.
1601         (_initialize_ppc_linux_tdep): Call
1602         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1603         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1604         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1605         Declare.
1606         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1607         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1608         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1609         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1610         New fields.
1611         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1612         Likewise.
1613         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1614         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1615         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1616         New enum fields.
1617         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1618         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1619         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1620         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1621         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1622         <PPC_CTAR_REGNUM>: Likewise.
1623         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1624         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1625         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1626         (IS_CEFP_PSEUDOREG): Define.
1627         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1628         registers.  Return names for the checkpointed DFP, VSX, and EFP
1629         pseudo registers.
1630         (rs6000_pseudo_register_type): Remove initial assert and raise an
1631         internal error in the else clause instead.  Return types for the
1632         checkpointed DFP, VSX, and EFP pseudo registers.
1633         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1634         checkpointed DFP pseudo registers.
1635         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1636         checkpointed VSX pseudo registers.
1637         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1638         from efpr_pseudo_register_read and
1639         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1640         registers.
1641         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1642         Handle checkpointed DFP, VSX, and EFP registers.
1643         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1644         (efp_ax_pseudo_register_collect): New functions.
1645         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1646         register logic to new functions.  Handle checkpointed DFP, VSX,
1647         and EFP pseudo registers.
1648         (rs6000_gdbarch_init): Look for and validate the htm features.
1649         Include checkpointed DFP, VSX and EFP pseudo-registers.
1650         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1651         HTM registers.
1652
1653 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1654
1655         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1656         without altivec or fpu.
1657
1658 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1659             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1660
1661         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1662         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1663         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1664         Define if not already defined.
1665         * features/rs6000/power-ebb.xml: New file.
1666         * features/rs6000/power-linux-pmu.xml: New file.
1667         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1668         features.
1669         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1670         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1671         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1672         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1673         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1674         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1675         fetch_regset with ebb and pmu regsets.
1676         (store_register, store_ppc_registers): Call store_regset with ebb
1677         and pmu regsets.
1678         (ppc_linux_nat_target::read_description): Set isa207 field in the
1679         features struct if ebb and pmu are avaiable.
1680         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1681         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1682         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1683         and pmu regsets.
1684         (ppc_linux_core_read_description): Check if the pmu section is
1685         present and set isa207 in the features struct.
1686         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1687         (ppc32_linux_pmuregset): Declare.
1688         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1689         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1690         <ppc_sier_regnum>: New field.
1691         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1692         New enum values.
1693         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1694         values.
1695         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1696         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1697         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1698         ebb and pmu features.
1699
1700 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1701             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1702
1703         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1704         (tdesc_powerpc_isa207_vsx64l): Declare.
1705         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1706         (struct ppc_linux_features) <isa207>: New field.
1707         (ppc_linux_no_features): Add initializer for isa207 field.
1708         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1709         new tdescs.
1710         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1711         (NT_PPC_TAR): Define if not already defined.
1712         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1713         rs6000/powerpc-isa207-vsx64l.
1714         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1715         rs6000/powerpc-isa207-vsx64l.xml.
1716         * features/rs6000/power-tar.xml: New file.
1717         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1718         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1719         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1720         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1721         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1722         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1723         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1724         fetch_regset with the TAR regset.
1725         (store_register, store_ppc_registers): Call store_regset with the
1726         TAR regset.
1727         (ppc_linux_nat_target::read_description): Set isa207 field in the
1728         features struct if needed.
1729         * ppc-linux-tdep.c: Include
1730         features/rs6000/powerpc-isa207-vsx32l.c and
1731         features/rs6000/powerpc-isa207-vsx64l.c.
1732         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1733         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1734         regset.
1735         (ppc_linux_core_read_description): Check if the tar section is
1736         present and set isa207 in the features struct.
1737         (_initialize_ppc_linux_tdep): Call
1738         initialize_tdesc_powerpc_isa207_vsx32l and
1739         initialize_tdesc_powerpc_isa207_vsx64l.
1740         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1741         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1742         (enum) <PPC_TAR_REGNUM>: New enum value.
1743         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1744         feature.
1745         (ppc_process_record_op31): Record changes to TAR.
1746
1747 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1748             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1749
1750         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1751         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1752         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1753         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1754         (struct ppc_linux_features) <ppr_dscr>: New field.
1755         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1756         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1757         new tdescs.
1758         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1759         Define if not already defined.
1760         * features/Makefile (WHICH): Add
1761         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1762         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1763         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1764         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1765         * features/rs6000/power-dscr.xml: New file.
1766         * features/rs6000/power-ppr.xml: New file.
1767         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1768         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1769         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1770         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1771         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1772         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1773         * ppc-linux-nat.c: Include <sys/uio.h>.
1774         (fetch_regset, store_regset, check_regset): New functions.
1775         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1776         DSCR and PPR regsets.
1777         (store_register, store_ppc_registers): Call store_regset with
1778         DSCR and PPR regsets.
1779         (ppc_linux_get_hwcap2): New function.
1780         (ppc_linux_nat_target::read_description): Call
1781         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1782         features struct if needed.
1783         * ppc-linux-tdep.c: Include
1784         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1785         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1786         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1787         (ppc32_linux_dscrregset): New globals.
1788         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1789         and dscr regsets.
1790         (ppc_linux_core_read_description): Check if the ppr and dscr
1791         sections are present and set ppr_dscr in the features struct.
1792         (_initialize_ppc_linux_tdep): Call
1793         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1794         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1795         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1796         (ppc32_linux_dscrregset): Declare.
1797         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1798         <ppc_dscr_regnum>: New field.
1799         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1800         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1801         and dscr features.
1802         (ppc_process_record_op31): Record changes to PPR and DSCR.
1803
1804 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1805
1806         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1807         second initializer line for the have_* variables.  Initialize
1808         have_fpu to 0 instead of 1.
1809
1810 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1811
1812         * arch/ppc-linux-common.c (ppc_linux_match_description):
1813         Parenthesize tdesc assignements and indent them properly.
1814
1815 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1816
1817         * ppc-linux-nat.c (fetch_register): Change if statement to else
1818         if.
1819         (store_register): Likewise.
1820
1821 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1822
1823         * rs6000-tdep.c: Remove reggroups.h include.
1824         (rs6000_pseudo_register_reggroup_p): Remove.
1825         (rs6000_gdbarch_init): Remove call to
1826         set_tdesc_pseudo_register_reggroup_p.
1827
1828 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1829
1830         * reggroups.c (default_register_reggroup_p): Return true for
1831         decfloat registers and float_reggroup.
1832
1833 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1834
1835         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1836         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1837         ppc_linux_collect_vrregset by regcache_collect_regset.
1838
1839 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1840
1841         * linux-tdep.c (linux_collect_regset_section_cb): Use
1842         std::vector<gdb_byte> instead of char * and malloc for buf.
1843         Remove xfree.
1844
1845 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1846
1847         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1848         symtab_start instead of always using language_unknown.
1849
1850 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1851
1852         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1853         READ_P parameter, catch and ignore register access errors from
1854         either the old or new MISA location.
1855         (riscv_has_feature): Update call to riscv_read_misa_reg.
1856
1857 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1858
1859         * python/py-function.c (convert_values_to_python): Return
1860         gdbpy_ref<>.  Add header comment.
1861         (fnpy_call): Adjust.
1862
1863 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1864
1865         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1866         (cmdpy_completer_handle_brkchars): Adjust.
1867         (cmdpy_completer): Adjust.
1868
1869 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1870
1871         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1872         Pass correct regnum to raw_supply_zeroed.
1873
1874 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1875
1876         * regcache.c (cooked_read_test): Add CSKY to the list of
1877         architectures with a save_reggroup
1878
1879 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1880
1881         PR gdb/23368
1882         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1883         transfer terminal state from old new new inferior.
1884         * terminal.h (swap_terminal_info): New function.
1885         * inflow.c (swap_terminal_info): New function.
1886
1887 2018-10-23  Tom Tromey  <tom@tromey.com>
1888
1889         * record-btrace.c (get_thread_current_frame_id): Rename from
1890         get_thread_current_frame.  Return a frame_id.
1891         (record_btrace_start_replaying): Update.
1892
1893 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1894
1895         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1896         for CSRs.
1897
1898 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1899
1900         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1901         have_nonsteppable_watchpoint attribute to 1.
1902
1903 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1904
1905         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1906         register names.
1907         (struct register_alias): Rename to...
1908         (struct riscv_register_alias): ...this, and update comment.
1909         (riscv_register_aliases): Update type, and alias names.  Remove
1910         CSR names from this list.
1911         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1912         register names.  Add an extra assertion.
1913         (riscv_is_regnum_a_named_csr): New function.
1914         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1915
1916 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1917
1918         * configure.tgt: Add configuration for s12z.
1919         * s12z-tdep.c:  New file.
1920         * NEWS: Mention new target.
1921
1922 2018-10-22  Jim Wilson  <jimw@sifive.com>
1923
1924         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1925         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1926
1927         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1928         (riscv_register_type): Use them.
1929         (riscv_print_one_register_info): Handle union of floats same as float.
1930         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1931         riscv_fpreg_q_type fields.
1932
1933 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1934
1935         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1936         * gdbarch.h: Re-generate.
1937         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1938         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1939         * eval.c (evaluate_subexp_standard): Likewise.
1940         * findvar.c (value_of_register): Likewise.
1941         (value_of_register_lazy): Likewise.
1942         (address_from_register): Likewise.
1943         * frame.c (get_frame_register_bytes): Likewise.
1944         * gdbarch-selftests.c (register_to_value_test): Likewise.
1945         * h8300-tdep.c (h8300_register_type): Likewise.
1946         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1947         (i386_svr4_reg_to_regnum): Likewise.
1948         * infcmd.c (default_print_registers_info): Likewise.
1949         (registers_info): Likewise.
1950         (print_vector_info): Likewise.
1951         (default_print_float_info): Likewise.
1952         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1953         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1954         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1955         (mi_cmd_data_list_changed_registers): Likewise.
1956         (mi_cmd_data_list_register_values): Likewise.
1957         (mi_cmd_data_write_register_values): Likewise.
1958         (mi_cmd_trace_frame_collected): Likewise.
1959         * mips-tdep.c (print_gp_register_row): Likewise.
1960         (mips_print_registers_info): Likewise.
1961         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1962         * regcache.c (init_regcache_descr): Likewise.
1963         (register_size): Likewise.
1964         (register_dump::dump): Likewise.
1965         (cooked_read_test): Likewise.
1966         (cooked_write_test): Likewise.
1967         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1968         (rs6000_gdbarch_init): Likewise.
1969         * stabsread.c (stab_reg_to_regnum): Likewise.
1970         * stack.c (info_frame_command): Likewise.
1971         * target-descriptions.c (tdesc_register_name): Likewise.
1972         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1973         * tui/tui-regs.c (tui_show_register_group): Likewise.
1974         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1975         (user_reg_map_regnum_to_name): Likewise.
1976         (value_of_user_reg): Likewise.
1977         (maintenance_print_user_registers): Likewise.
1978         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1979         (xtensa_register_name): Likewise.
1980         (xtensa_register_type): Likewise.
1981         (xtensa_reg_to_regnum): Likewise.
1982         (xtensa_pseudo_register_read): Likewise.
1983         (xtensa_pseudo_register_write): Likewise.
1984
1985 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1986
1987         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1988         correctly-sized buffer with raw_read.
1989         (amd64_pseudo_register_write): Use correctly-sized buffer for
1990         raw_read/raw_write.
1991
1992 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1993
1994         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1995         in add_prefix_cmd of set print type.
1996
1997 2018-10-19  Tom Tromey  <tom@tromey.com>
1998
1999         PR tui/18388:
2000         * NEWS: Mention tabset deprecation.
2001         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2002         (update_tab_width): New function.
2003         (tui_set_tab_width, tui_show_tab_width): New functions.
2004         (tui_set_tab_width_command): Use update_tab_width.
2005         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2006         Add new "set tui tab-width" command.
2007         * tui/tui-source.c (tui_set_source_content): Update.
2008         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2009         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2010         Don't declare.
2011         (tui_tab_width): Declare.
2012         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2013         (tui_set_default_tab_len): Remove.
2014
2015 2018-10-19  Tom Tromey  <tom@tromey.com>
2016
2017         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2018         (key_is_backspace, tui_getc): Don't declare.
2019         * tui/tui-io.c (key_is_start_sequence): Now static.
2020         (key_is_end_sequence, key_is_backspace): Remove.
2021         (tui_getc): Now static.
2022
2023 2018-10-19  Tom Tromey  <tom@tromey.com>
2024
2025         * symfile.c (reread_symbols): Clear "static_links".
2026
2027 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2028
2029         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2030         define.
2031         (aarch64_linux_sigframe_init): Extra boundary checks.
2032
2033 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2034
2035         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2036         the possibly non-existent tdesc type 'vec128', but the type of raw
2037         register v16 instead.
2038
2039 2018-10-19  Gary Benson <gbenson@redhat.com>
2040
2041         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2042
2043 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2044
2045         PR cli/23785
2046         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2047         NULL.
2048
2049 2018-10-17  Paul Koning  <paul_koning@dell.com>
2050
2051         * charset.c (convert_between_encodings): Fix unsigned overflow.
2052
2053 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2054
2055         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2056         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2057         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2058         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2059         New functions.
2060         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2061         and fbsd_info_proc_mappings_header.
2062         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2063         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2064         New.
2065
2066 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2067
2068         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2069         Solaris Maintainer.
2070
2071 2018-10-15  Tom Tromey  <tom@tromey.com>
2072
2073         * tui/tui.c (strcat_to_buf): Remove casts.
2074         * tui/tui-winsource.c (tui_show_source_line)
2075         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2076         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2077         * tui/tui-windata.c (tui_first_data_item_displayed)
2078         (tui_delete_data_content_windows, tui_erase_data_content)
2079         (tui_display_all_data, tui_display_data_from)
2080         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2081         * tui/tui-win.c (tui_set_win_height)
2082         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2083         casts.
2084         * tui/tui-win.c (tui_resize_all): Remove casts.
2085         (tui_scroll_backward_command, tui_set_focus)
2086         (tui_set_tab_width_command): Likewise.
2087         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2088         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2089         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2090         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2091         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2092         Remove casts.
2093
2094 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2095
2096         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2097         AArch64/ARM maintainer.
2098
2099 2018-10-11  Gary Benson <gbenson@redhat.com>
2100
2101         * interps.h (interp::m_name): Make private and mutable.
2102         * interps.c (interp::~interp): Free m_name.
2103
2104 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2105             Simon Marchi <simark@simark.ca>
2106
2107         * README (`configure' options): Add documentation for new
2108         "--enable-unit-tests" option.
2109         * acinclude.m4: Include "selftest.m4".
2110         * configure: Regenerate.
2111         * configure.ac: Use "GDB_AC_SELFTEST".
2112         * maint.c (maintenance_selftest): Update message informing
2113         that selftests have been disabled.
2114         (maintenance_info_selftests): Likewise.
2115         * selftest.m4: New file.
2116
2117 2018-10-10  Gary Benson <gbenson@redhat.com>
2118
2119         * remote.c (remote_target::remote_send_printf): Add
2120         missing va_end found by Coverity.
2121
2122 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2123
2124         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2125
2126 2018-10-09  Tom Tromey  <tom@tromey.com>
2127
2128         * configure: Rebuild.
2129         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2130         * NEWS: Update --enable-ubsan documentation.
2131
2132 2018-10-09  Gary Benson <gbenson@redhat.com>
2133
2134         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2135         found by Coverity.
2136
2137 2018-10-08  Tom Tromey  <tom@tromey.com>
2138
2139         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2140         variable.
2141         (riscv_fbsd_init_abi): Likewise.
2142
2143 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2144         * valops.c (value_struct_elt_for_reference): Rename local variable
2145         to work around the shadowing a previous local warning.
2146
2147 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2148
2149         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2150         * NEWS: Mention new FreeBSD/riscv native configuration.
2151         * configure.host: Add riscv*-*-freebsd*.
2152         * configure.nat: Likewise.
2153         * riscv-fbsd-nat.c: New file.
2154
2155 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2156
2157         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2158         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2159         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2160         * NEWS: Mention new FreeBSD/riscv target.
2161         * configure.tgt: Add riscv*-*-freebsd*.
2162         * riscv-fbsd-tdep.c: New file.
2163         * riscv-fbsd-tdep.h: New file.
2164
2165 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2166
2167         * regcache.h (struct regcache_map_entry): Note that this type can
2168         be used with traditional frame caches.
2169         * trad-frame.c (trad_frame_set_reg_regmap): New.
2170         * trad-frame.h (trad_frame_set_reg_regmap): New.
2171
2172 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2173
2174         PR c++/16841
2175         * valops.c (get_virtual_base_offset): New function.
2176         (value_struct_elt_for_reference): Use it to get virtual base offset
2177         and add it in calculating class member address.
2178
2179 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2180
2181         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2182         (check_producer): Check if the producer is codewarrior.
2183         (producer_is_codewarrior): New function.
2184         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2185         produced by codewarrior.
2186         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2187
2188 2018-10-06  Tom Tromey  <tom@tromey.com>
2189
2190         PR python/19399:
2191         * python/py-inferior.c: Add "architecture" entry.
2192         (infpy_architecture): New function.
2193
2194 2018-10-06  Tom Tromey  <tom@tromey.com>
2195
2196         PR python/21765:
2197         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2198         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2199         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2200         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2201
2202 2018-10-06  Tom Tromey  <tom@tromey.com>
2203
2204         PR build/17077:
2205         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2206         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2207         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2208         #include.
2209
2210 2018-10-06  Tom Tromey  <tom@tromey.com>
2211
2212         * python/py-breakpoint.c (bppy_get_location): Handle a
2213         bp_breakpoint without a location.
2214
2215 2018-10-06  Tom Tromey  <tom@tromey.com>
2216
2217         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2218         (_RegEx): Reformat help text.
2219         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2220         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2221         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2222         text.
2223         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2224         (EnableXMethod, DisableXMethod): Remove help indentation.
2225         Capitalize meta-syntactic variables.
2226         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2227         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2228         Capitalize meta-syntactic variables.
2229         * python/lib/gdb/command/explore.py (ExploreCommand)
2230         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2231         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2232         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2233         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2234         Remove help indentation.
2235         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2236         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2237         (DisableFrameFilter, SetFrameFilterPriority)
2238         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2239
2240 2018-10-06  Tom Tromey  <tom@tromey.com>
2241
2242         PR tui/28819:
2243         * tui/tui-io.c (gdb_wgetch): New function.
2244         (tui_mld_getc, tui_getc): Use it.
2245
2246 2018-10-05  Tom Tromey  <tom@tromey.com>
2247
2248         * sol-thread.c (sol_thread_target::wait): Rename inner
2249         "save_ptid".
2250
2251 2018-10-04  Tom Tromey  <tom@tromey.com>
2252
2253         * configure: Rebuild.
2254         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2255
2256 2018-10-04  Tom Tromey  <tom@tromey.com>
2257
2258         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2259         declaration of "block".
2260
2261 2018-10-04  Tom Tromey  <tom@tromey.com>
2262
2263         * common/filestuff.c (fdwalk): Remove inner declaration of
2264         "result".
2265
2266 2018-10-04  Tom Tromey  <tom@tromey.com>
2267
2268         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2269         "structs_addr" and hoist declaration.
2270
2271 2018-10-04  Tom Tromey  <tom@tromey.com>
2272
2273         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2274         variable "size".
2275
2276 2018-10-04  Tom Tromey  <tom@tromey.com>
2277
2278         * mdebugread.c (parse_partial_symbols): Use std::string.
2279
2280 2018-10-04  Tom Tromey  <tom@tromey.com>
2281
2282         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2283         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2284         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2285         header.
2286         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2287         more inner scope.
2288         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2289         * varobj.c (varobj_update): Rename inner "newobj",
2290         "type_changed".
2291         * valprint.c (generic_emit_char): Rename inner "buf".
2292         * valops.c (find_overload_match): Rename inner "temp".
2293         (value_struct_elt_for_reference): Declare "v" in more inner
2294         scope.
2295         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2296         * unittests/array-view-selftests.c (run_tests): Rename inner
2297         "vec".
2298         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2299         header.
2300         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2301         "tsv" in more inner scope.
2302         (print_one_static_tracepoint_marker): Rename inner
2303         "tuple_emitter".
2304         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2305         (tic6x_push_dummy_call): Don't redeclare "addr".
2306         * target-float.c: Declare "dto" lower.
2307         * symtab.c (lookup_local_symbol): Rename inner "sym".
2308         (find_pc_sect_line): Rename inner "pc".
2309         * stack.c (print_frame): Don't redeclare "gdbarch".
2310         (return_command): Rename inner "gdbarch".
2311         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2312         "sp".
2313         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2314         header.
2315         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2316         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2317         scope.
2318         * remote.c (remote_target::update_thread_list): Don't redeclare
2319         "tp".
2320         (remote_target::process_initial_stop_replies): Rename inner
2321         "thread".
2322         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2323         (remote_target::wait_as): Don't redeclare "stop_reply".
2324         (remote_target::get_thread_local_address): Rename inner
2325         "result".
2326         (remote_target::get_tib_address): Likewise.
2327
2328         * regcache.c (cooked_read_test): Rename "regnum".
2329         * record-btrace.c (cmd_record_btrace_start): Rename inner
2330         "exception".
2331         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2332         loop header.
2333         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2334         header.
2335         (ppu2spu_sniffer): Rename inner "buf".
2336         * parse.c (operator_check_standard): Rename inner "type",
2337         "objfile".
2338         * p-valprint.c (pascal_val_print): Introduce new scope for
2339         "low_bound", "high_bound".
2340         * p-exp.y (yylex): Declare "i" in loop header.
2341         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2342         Lower declaration of "s".
2343         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2344         header.
2345         (nios2_push_dummy_call): Rename "len".
2346         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2347         "buf".
2348         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2349         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2350         (linux_xfer_osdata_modules): Likewise.
2351         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2352         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2353         (mips_o64_push_dummy_call): Likewise.
2354         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2355         "op".
2356         * mi/mi-main.c (list_available_thread_groups): Rename inner
2357         "tuple_emitter".
2358         (mi_cmd_data_read_memory): Rename inner "opts".
2359         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2360         "tuple_emitter".
2361         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2362         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2363         more inner scope.
2364         (parse_partial_symbols): Rename inner "pst", "p", "name"
2365         * main.c (captured_main_1): Rename inner "i"s.
2366         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2367         "oso2".
2368         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2369         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2370         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2371         (handle_signal_stop): Rename inner "gdbarch".
2372         (handle_command): Declare "signum" in loop header.
2373         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2374         "status".
2375         (examine_prologue): Rename inner "sol" and "sof".
2376         (ia64_extract_return_value): Rename inner "val".  Declare another
2377         "val" in a more inner scope.
2378         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2379         inner scope.
2380         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2381         "except".
2382         * findvar.c (default_read_var_value): Don't redeclare "addr".
2383         * f-exp.y (yylex): Declare "i" in loop header.
2384         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2385         Rename inner "type", "expect_type".
2386         (evaluate_subexp_for_sizeof): Rename inner "pc".
2387         * elfread.c (elf_symfile_read): Rename inner "abfd".
2388         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2389         "bytes_read".
2390         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2391         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2392         (dwarf_decode_line_header): Rename inner "lh".
2393         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2394         "offset".  Declare "i" in loop header.
2395         (disassemble_dwarf_expression): Rename inner "addr_size".
2396         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2397         inner "result".
2398         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2399         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2400         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2401         "inner_list_emitter".
2402         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2403         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2404         declaration in a block.
2405         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2406         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2407         "obstack_final_size".
2408         * cp-support.c (inspect_type): Declare "i" in loop header.
2409         * compile/compile.c (compile_instance::insert_symbol_error):
2410         Rename inner "e".
2411         * common/agent.c (agent_run_command): Remove inner "ret"
2412         declaration.
2413         * coffread.c (coff_symfile_read): Rename inner "name".
2414         (coff_symfile_read): Rename inner "abfd".
2415         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2416         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2417         "high".
2418         * c-exp.y (lex_one_token): Move "len" declaration lower.
2419         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2420         "gdbarch".
2421         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2422         "b".
2423         (watch_command_1): Declare "mark" later.
2424         (clear_command): Don't shadow "a" or "b".
2425         (delete_command): Rename inner "b".
2426         (delete_trace_command): Likewise.
2427         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2428         "op".
2429         (arm_gdbarch_init): Remove inner "e_flags".
2430         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2431         "offset" in inner blocks.
2432
2433 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2434
2435         * dwarf-index-write.c (file_write): Don't write if the vector is
2436         empty.
2437
2438 2018-10-05  Tom de Vries  <tdevries@suse.de>
2439
2440         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2441         PyArg_ParseTuple call.
2442
2443 2018-10-05  Tom de Vries  <tdevries@suse.de>
2444
2445         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2446         PyArg_ParseTuple call.
2447
2448 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2449
2450         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2451         to avoid exceeding 80 characters per line limit.
2452
2453 2018-10-04  Tom Tromey  <tom@tromey.com>
2454
2455         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2456         (reread_symbols): Update.
2457         * complaints.h (clear_complaints): Remove argument.
2458         * complaints.c (enum complaint_series): Remove.
2459         (series): Remove global.
2460         (complaint_internal): Update.
2461         (clear_complaints): Remove argument.
2462
2463 2018-10-04  Tom Tromey  <tom@tromey.com>
2464
2465         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2466         debugging symbols" message if there is a separate debug objfile.
2467
2468 2018-10-04  Tom Tromey  <tom@tromey.com>
2469
2470         PR cli/19551:
2471         * symfile.c (symbol_file_add_with_addrs): Update output.
2472         * psymtab.c (require_partial_symbols): Update output.
2473
2474 2018-10-04  Tom Tromey  <tom@tromey.com>
2475
2476         PR cli/22234:
2477         * complaints.c: Emit \n.
2478
2479 2018-10-04  Tom Tromey  <tom@tromey.com>
2480
2481         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2482         (separate_debug_file_exists, find_separate_debug_file)
2483         (add_symbol_file_command, reread_symbols, allocate_symtab)
2484         (allocate_compunit_symtab): Use filtered printing, not
2485         unfiltered.
2486         * psymtab.c (require_partial_symbols, dump_psymtab)
2487         (allocate_psymtab): Use filtered printing, not unfiltered.
2488
2489 2018-10-04  Tom Tromey  <tom@tromey.com>
2490
2491         * complaints.c (complaint_internal): Correctly check complaint
2492         count.
2493
2494 2018-10-04  Tom Tromey  <tom@tromey.com>
2495
2496         * complaints.h (struct complaints): Remove declaration.
2497         * complaints.c (clear_complaints): Remove an unused variable.
2498
2499 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2500
2501         * MAINTAINERS (Write After Approval): Add self.
2502
2503 2018-10-03  Tom Tromey  <tom@tromey.com>
2504
2505         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2506         "buffer_contents".
2507         * coffread.c (coff_symtab_read): Initialize "newobj".
2508
2509 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2510
2511         * dwarf2read.c (read_func_scope): Remove struct keyword in
2512         range-based for.
2513
2514 2018-10-03  Tom Tromey  <tom@tromey.com>
2515
2516         * README: Mention --enable-ubsan.
2517         * NEWS: Mention --enable-ubsan.
2518         * acinclude.m4: Include sanitize.m4.
2519         * configure: Rebuild.
2520         * configure.ac: Call AM_GDB_UBSAN.
2521         * sanitize.m4: New file.
2522
2523 2018-10-03  Tom Tromey  <tom@tromey.com>
2524
2525         * expression.h (enum exp_opcode): Use uint8_t as base type.
2526         * expprint.c (op_name): Handle invalid opcodes.
2527
2528 2018-10-03  Tom Tromey  <tom@tromey.com>
2529
2530         * parse.c (prefixify_expression): Add assert.
2531         (parse_exp_in_context_1): Throw exception if the expression is
2532         empty.
2533
2534 2018-10-03  Tom Tromey  <tom@tromey.com>
2535
2536         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2537
2538 2018-10-03  Tom Tromey  <tom@tromey.com>
2539
2540         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2541
2542 2018-10-03  Tom Tromey  <tom@tromey.com>
2543
2544         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2545         unsigned.
2546
2547 2018-10-03  Tom Tromey  <tom@tromey.com>
2548
2549         * findvar.c (extract_integer): Do work in an unsigned type.
2550
2551 2018-10-03  Tom Tromey  <tom@tromey.com>
2552
2553         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2554         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2555         base type.
2556         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2557         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2558         type.
2559         * c-lang.h (enum c_string_type_values): Use unsigned as base
2560         type.
2561         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2562
2563 2018-10-03  Tom Tromey  <tom@tromey.com>
2564
2565         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2566         <~dwarf2_frame_state_reg_info>: Update.
2567         <dwarf2_frame_state_reg_info>: Update.
2568         <alloc_regs>: Add assertion.  Update.
2569         <reg>: Now a std::vector.
2570         <num_regs>: Remove.
2571         <swap>: Update.
2572         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2573         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2574
2575 2018-10-03  Tom Tromey  <tom@tromey.com>
2576
2577         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2578
2579 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2580
2581         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2582
2583 2018-10-02  Tom Tromey  <tom@tromey.com>
2584
2585         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2586
2587 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2588
2589         * NEWS: Mention changed commands.
2590         * ser-uds.c: New file.
2591         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2592         * configure: Regenerate.
2593         * Makefile.in: Add new file.
2594         * serial.c (serial_open): Check if filename is a socket
2595         and lookup the appropriate interface accordingly.
2596
2597 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2598
2599         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2600         define.
2601         (AARCH64_EXTRA_MAGIC): Likewise.
2602         (AARCH64_FPSIMD_MAGIC): Likewise.
2603         (AARCH64_SVE_MAGIC): Likewise.
2604         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2605         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2606         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2607         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2608         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2609         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2610         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2611         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2612         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2613         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2614         (read_aarch64_ctx): Add function.
2615         (aarch64_linux_sigframe_init): Detect FP registers.
2616
2617 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2618
2619         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2620         (AARCH64_D0_REGNUM): Likewise.
2621         (AARCH64_S0_REGNUM): Likewise.
2622         (AARCH64_H0_REGNUM): Likewise.
2623         (AARCH64_B0_REGNUM): Likewise.
2624         (AARCH64_SVE_V0_REGNUM): Likewise.
2625         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2626         (AARCH64_D0_REGNUM): Likewise.
2627         (AARCH64_S0_REGNUM): Likewise.
2628         (AARCH64_H0_REGNUM): Likewise.
2629         (AARCH64_B0_REGNUM): Likewise.
2630         (AARCH64_SVE_V0_REGNUM): Likewise.
2631
2632 2018-10-01  Gary Benson <gbenson@redhat.com>
2633
2634         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2635         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2636         prfpregset_t instead of gdb_prfpregset_t.
2637         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2638         * configure, config.in: Rebuild.
2639
2640 2018-10-01  Gary Benson <gbenson@redhat.com>
2641
2642         * common/gdb_proc_service.h: New file, factored out from...
2643         * gdb_proc_service.h: Moved common code to the above file.
2644         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2645
2646 2018-10-01  Gary Benson <gbenson@redhat.com>
2647
2648         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2649         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2650
2651 2018-10-01  Gary Benson <gbenson@redhat.com>
2652
2653         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2654         (AC_CHECK_HEADERS): Check for linux/elf.h.
2655         * configure, config.in: Rebuild.
2656         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2657         doesn't define elf_fpregset_t.
2658
2659 2018-10-01  Gary Benson <gbenson@redhat.com>
2660
2661         * gdb_proc_service.h: Whitespace change.
2662
2663 2018-10-01  Tom Tromey  <tom@tromey.com>
2664
2665         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2666         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2667         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2668
2669 2018-10-01  Tom Tromey  <tom@tromey.com>
2670
2671         * README: Minor change.
2672
2673 2018-09-30  Pedro Alves  <palves@redhat.com>
2674
2675         * darwin-nat-info.c (darwin_debug_regions_recurse)
2676         (info_mach_exceptions_command): Remove unused local variables.
2677         * darwin-nat.c (darwin_decode_notify_message)
2678         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2679         (darwin_stop_inferior, darwin_setup_exceptions)
2680         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2681         (darwin_nat_target::attach, darwin_nat_target::detach)
2682         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2683         local variables.
2684         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2685         variables.
2686
2687 2018-09-29  Tom Tromey  <tom@tromey.com>
2688
2689         * README: Remove some leftover text.
2690
2691 2018-09-29  Tom Tromey  <tom@tromey.com>
2692
2693         * PROBLEMS: Rewrite.
2694         * README: Update.
2695
2696 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2697
2698         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2699         case with explicit breakpoint kind.
2700         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2701         'additional_info' and related logic.
2702         (riscv_debug_breakpoints): New variable.
2703         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2704         instruction to determine the breakpoint kind.
2705         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2706         flag.  Update description of 'set/show riscv
2707         use-compressed-breakpoints' flag.
2708
2709 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2710
2711         (NEWS): Mention changes to frame related commands.
2712         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2713         (add_prefix_cmd_suppress_notification): New function.
2714         (add_com_suppress_notification): Call
2715         add_cmd_suppress_notification.
2716         * command.h (add_cmd_suppress_notification): Declare.
2717         (add_prefix_cmd_suppress_notification): Declare.
2718         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2719         (parse_frame_specification): Moved from stack.c, with
2720         simplification to handle a single argument.
2721         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2722         switch to the selected frame.  Add a header comment.
2723         * stack.c: Remove 'safe-ctype.h' include.
2724         (find_frame_for_function): Add declaration.
2725         (find_frame_for_address): New function.
2726         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2727         (frame_selection_by_function_completer): New function.
2728         (info_frame_command): Rename to...
2729         (info_frame_command_core): ...this, and update parameter types.
2730         (select_frame_command): Rename to...
2731         (select_frame_command_core): ...this, and update parameter types.
2732         (frame_command): Rename to...
2733         (frame_command_core): ...this, and update parameter types.
2734         (class frame_command_helper): New class to wrap implementations of
2735         frame related sub-commands.
2736         (frame_apply_cmd_list): New static global.
2737         (frame_cmd_list): Make static.
2738         (select_frame_cmd_list): New global for sub-commands.
2739         (info_frame_cmd_list): New global for sub-commands.
2740         (_initialize_stack): Register sub-commands for 'frame',
2741         'select-frame', and 'info frame'.  Update 'frame apply' commands
2742         to use frame_apply_cmd_list.  Move function local static
2743         frame_apply_list to file static frame_apply_cmd_list for
2744         consistency.
2745         * stack.h (select_frame_command): Delete declarationn.
2746         (select_frame_for_mi): Declare new function.
2747
2748 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2749
2750         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2751         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2752         and NOP.
2753
2754 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2755
2756         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2757
2758 2018-09-26  Tom Tromey  <tom@tromey.com>
2759
2760         * valops.c (auto_abandon): Remove dead code.
2761
2762 2018-09-26  Tom Tromey  <tom@tromey.com>
2763
2764         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2765
2766 2018-09-24  Tom Tromey  <tom@tromey.com>
2767
2768         * common/pathstuff.c (get_standard_cache_dir): Make
2769         "xdg_cache_home" and "home" const.
2770         * top.c (init_history): Make "tmpenv" const.
2771         * main.c (get_init_files): Make "homedir" const.
2772
2773 2018-09-23  Tom Tromey  <tom@tromey.com>
2774
2775         PR python/18852:
2776         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2777
2778 2018-09-23  Tom Tromey  <tom@tromey.com>
2779
2780         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2781         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2782         * python/python-internal.h (gdbpy_handle_exception): Declare.
2783         * python/py-utils.c (gdbpy_handle_exception): New function.
2784
2785 2018-09-23  Tom Tromey  <tom@tromey.com>
2786
2787         PR python/17284:
2788         * python/py-type.c (typy_template_argument): Check for negative
2789         argument number.
2790
2791 2018-09-23  Tom Tromey  <tom@tromey.com>
2792
2793         PR python/14062:
2794         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2795
2796 2018-09-23  Tom Tromey  <tom@tromey.com>
2797
2798         PR python/18170:
2799         * python/py-value.c (valpy_int): Allow conversion from pointer
2800         type.
2801
2802 2018-09-23  Tom Tromey  <tom@tromey.com>
2803
2804         PR python/20126:
2805         * python/py-value.c (valpy_int): Respect type sign.
2806
2807 2018-09-23  Tom Tromey  <tom@tromey.com>
2808
2809         PR python/18352;
2810         * python/py-value.c (valpy_float): Allow conversions from int or
2811         char.
2812         (valpy_int, valpy_long): Allow conversions from float.
2813
2814 2018-09-23  Tom Tromey  <tom@tromey.com>
2815
2816         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2817         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2818
2819 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2820
2821         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2822         __sighndlr.
2823         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2824
2825 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2826
2827         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2828         target_terminal::ours().
2829
2830 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2831
2832         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2833         of vl to ULONGEST.
2834
2835 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2836
2837         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2838         redundant condition.
2839
2840 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2841
2842         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2843
2844         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2845         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2846         * sol-thread.c (ps_pdmodel): Don't guard definition.
2847
2848         * procfs.c: Fix formatting.
2849
2850         * procfs.c (sysset_t_alloc): Remove.
2851         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2852         (procfs_debug_inferior): Likewise.
2853         (procfs_set_exec_trap): Likewise.
2854         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2855         (proc_set_traced_sysexit): Likewise.
2856
2857         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2858         (dead_procinfo): Likewise.
2859         (proc_warn): Likewise.
2860         (proc_error): Likewise.
2861         (proc_get_LDT_entry): Likewise.
2862         (do_attach): Likewise.
2863         (procfs_target::pid_to_str): Likewise.
2864         (iterate_over_mappings): Likewise.
2865
2866         * procfs.c (create_procinfo): Fix ARI warning.
2867         (proc_get_status): Likewise.
2868         (proc_stop_process): Likewise.
2869         (proc_run_process): Likewise.
2870         (proc_kill): Likewise.
2871         (proc_get_LDT_entry): Likewise.
2872         (procfs_find_LDT_entry): Likewise.
2873         (proc_update_threads): Likewise.
2874         (proc_iterate_over_threads): Likewise.
2875         (do_attach): Likewise.
2876         (procfs_xfer_memory): Likewise.
2877         (invalidate_cache): Likewise.
2878         (procfs_target::resume): Likewise.
2879         (procfs_init_inferior): Likewise.
2880         (procfs_set_exec_trap): Likewise.
2881         (procfs_target::thread_alive): Likewise.
2882         (procfs_target::pid_to_exec_file): Likewise.
2883         (iterate_over_mappings): Likewise.
2884         (procfs_target::make_corefile_notes): Likewise.
2885         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2886
2887         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2888         (procfs_find_LDT_entry): Likewise.
2889         * sol-thread.c (ps_lgetLDT): Likewise.
2890
2891 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2892
2893         PR tdep/17903
2894         * procfs.c (procfs_target): Declare pid_to_exec_file.
2895         (procfs_target::pid_to_exec_file): New.
2896
2897 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2898
2899         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2900         renaming.
2901         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2902         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2903
2904 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2905
2906         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2907         (supply_fpregset, fill_fpregset): Move ...
2908         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2909         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2910         Remove references to ioctl-based procfs.
2911         Include <sys/reg.h>.
2912         Remove PR_MODEL_NATIVE guards.
2913         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2914         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2915
2916 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2917
2918         PR gdb/20981:
2919         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2920         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2921         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2922
2923 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2924
2925         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2926         (fbsd_print_sockaddr_in6): Likewise.
2927
2928 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2929             Chris January  <chris.january@arm.com>
2930
2931         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2932         (evaluate_subexp_standard): Return a dummy type when
2933         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2934         OP_F77_UNDETERMINED_ARGLIST case.
2935         * expression.h (enum noside): Update comment.
2936
2937 2018-09-19  George Vasick <george.vasick@oracle.com>
2938
2939         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2940
2941 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2942             April Chin <april.chin@oracle.com>
2943             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2944
2945         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2946         uint_t lwpid_t.
2947         (create_procinfo): Print pids in /proc without leading zeros.
2948
2949 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2950
2951         * nios2-tdep.c (nios2_gcc_target_options): New.
2952         (nios2_gdb_arch_init): Install new hook.
2953
2954 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2955
2956         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2957         New file.
2958         * update-gnulib.sh: Apply patch.
2959         * configure: Re-generate.
2960
2961 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2962
2963         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2964         description.  Make "info proc" command descriptions more
2965         consistent.
2966
2967 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2968
2969         * NEWS: Mention 'info proc files' command.
2970
2971 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2972
2973         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2974         descriptors for IP_FILES and IP_ALL.
2975
2976 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2977
2978         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2979         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2980         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2981         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2982         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2983         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2984         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2985         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2986         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2987         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2988         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2989         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2990         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2991         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2992         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2993         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2994         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2995         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2996         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2997         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2998         (struct fbsd_sockaddr_un): New types.
2999         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3000         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3001         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3002         (fbsd_core_info_proc_files): New functions.
3003         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3004         IP_ALL.
3005         * fbsd-tdep.h (fbsd_info_proc_files_header)
3006         (fbsd_info_proc_files_entry): New.
3007
3008 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3009
3010         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3011         * infcmd.c (info_proc_cmd_files): New function.
3012         (_initialize_infcmd): Register 'info proc files' command.
3013
3014 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3015
3016         * gnulib/aclocal-m4-deps.mk: Re-generate.
3017         * gnulib/aclocal.m4: Re-generate.
3018         * gnulib/config.in: Re-generate.
3019         * gnulib/configure: Re-generate.
3020         * gnulib/import/Makefile.am: Re-generate.
3021         * gnulib/import/Makefile.in: Re-generate.
3022         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3023         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3024         * gnulib/import/arpa_inet.in.h: New file.
3025         * gnulib/import/inet_ntop.c: New file.
3026         * gnulib/import/m4/arpa_inet_h.m4: New file.
3027         * gnulib/import/m4/inet_ntop.m4: New file.
3028         * gnulib/import/m4/netinet_in_h.m4: New file.
3029         * gnulib/import/m4/socklen.m4: New file.
3030         * gnulib/import/m4/sockpfaf.m4: New file.
3031         * gnulib/import/m4/stdalign.m4: New file.
3032         * gnulib/import/m4/sys_uio_h.m4: New file.
3033         * gnulib/import/netinet_in.in.h: New file.
3034         * gnulib/import/stdalign.in.h: New file.
3035         * gnulib/import/sys_socket.c: New file.
3036         * gnulib/import/sys_socket.in.h: New file.
3037         * gnulib/import/sys_uio.in.h: New file.
3038         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3039         module.
3040
3041 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3042
3043         * gnulib/aclocal-m4-deps.mk: New file.
3044         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3045         deterministically.
3046
3047 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3048
3049         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3050         KVE_PATH.
3051
3052 2018-09-18  Tom Tromey  <tom@tromey.com>
3053
3054         * compile/compile-object-load.c (struct
3055         link_hash_table_cleanup_data): Add constructor and destructor.
3056         Use DISABLE_COPY_AND_ASSIGN.
3057         (~link_hash_table_cleanup_data): Rename from
3058         link_hash_table_free.  Now a destructor.
3059         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3060
3061 2018-09-18  Tom Tromey  <tom@tromey.com>
3062
3063         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3064         * compile/compile-object-load.c (struct munmap_list): Move to
3065         header file.
3066         (munmap_list::add): Rename from munmap_list_add; rewrite.
3067         (munmap_list::~munmap_list): Rename from munmap_list_free.
3068         (munmap_listp_free_cleanup): Remove.
3069         (compile_object_load): Update.
3070         * compile/compile-object-load.h (struct munmap_list): Move from
3071         compile-object-load.c.  Rewrite.
3072
3073 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3074
3075         * aarch64-tdep.c (pass_in_v): Use register size.
3076         (aarch64_extract_return_value): Likewise.
3077         (aarch64_store_return_value): Likewise.
3078
3079 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3080
3081         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3082         rlim_t.
3083
3084 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3085
3086         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3087         Fix short help line.
3088
3089 2018-09-17  Tom Tromey  <tom@tromey.com>
3090
3091         PR python/20445:
3092         * configure: Rebuild.
3093         * configure.ac: Conditionally use -DNDEBUG for Python.
3094
3095 2018-09-17  Tom Tromey  <tom@tromey.com>
3096
3097         * configure: Rebuild.
3098         * configure.ac: Use gmp as a library dependency when checking for
3099         mpfr.
3100
3101 2018-09-17  Pedro Alves  <palves@redhat.com>
3102
3103         * python/py-inferior.c (find_inferior_object): Delete.
3104
3105 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3106
3107         * compile/compile-cplus-types.c
3108         (compile_cplus_instance::enter_scope): Don't use new_scope after
3109         std::move.
3110
3111 2018-09-17  Tom Tromey  <tom@tromey.com>
3112
3113         * common/pathstuff.c (get_standard_cache_dir): Use
3114         ~/Library/Caches on macOS.
3115         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3116
3117 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3118
3119         PR python/23669
3120         * breakpoint.c (commands_cmd_element): New.
3121         (_initialize_breakpoint): Assign commands_cmd_element.
3122         * breakpoint.h (commands_cmd_element): New.
3123         * cli/cli-script.c (while_cmd_element, if_command,
3124         define_cmd_element): New.
3125         (command_name_equals): Remove.
3126         (process_next_line): Compare commands by pointer, not by name.
3127         (_initialize_cli_script): Assign the various cmd_list_element
3128         variables.
3129         * compile/compile.c (compile_cmd_element): New.
3130         (_initialize_compile): Assign compile_cmd_element.
3131         * compile/compile.h (compile_cmd_element): New.
3132         * guile/guile.c (guile_cmd_element): New.
3133         (install_gdb_commands): Assign guile_cmd_element.
3134         * guile/guile.h (guile_cmd_element): New.
3135         * python/python.c (python_cmd_element): New.
3136         (_initialize_python): Assign python_cmd_element.
3137         * python/python.h (python_cmd_element): New.
3138         * tracepoint.c (while_stepping_cmd_element): New.
3139         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3140         * tracepoint.h (while_stepping_cmd_element): New.
3141
3142 2018-09-17  Tom Tromey  <tom@tromey.com>
3143
3144         * infrun.c (save_infcall_suspend_state): Return
3145         infcall_suspend_state_up.
3146         (save_infcall_control_state): Return infcall_control_state_up.
3147         * inferior.h (save_infcall_suspend_state)
3148         (save_infcall_control_state): Declare later.  Return unique
3149         pointers.
3150
3151 2018-09-17  Tom Tromey  <tom@tromey.com>
3152
3153         * infrun.c (struct stop_context): Declare constructor,
3154         destructor, "changed" method.
3155         (stop_context::stop_context): Rename from save_stop_context.
3156         (stop_context::~stop_context): Rename from
3157         release_stop_context_cleanup.
3158         (normal_stop): Update.
3159         (stop_context::changed): Rename from stop_context_changed.  Return
3160         bool.
3161
3162 2018-09-17  Tom Tromey  <tom@tromey.com>
3163
3164         * inferior.h (struct infcall_suspend_state_deleter): New.
3165         (infcall_suspend_state_up): New typedef.
3166         (struct infcall_control_state_deleter): New.
3167         (infcall_control_state_up): New typedef.
3168         (make_cleanup_restore_infcall_suspend_state)
3169         (make_cleanup_restore_infcall_control_state): Don't declare.
3170         * infcall.c (call_function_by_hand_dummy): Update.
3171         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3172         (make_cleanup_restore_infcall_suspend_state): Remove.
3173         (do_restore_infcall_control_state_cleanup)
3174         (make_cleanup_restore_infcall_control_state): Remove.
3175
3176 2018-09-17  Tom Tromey  <tom@tromey.com>
3177
3178         * gdbthread.h (struct thread_control_state): Add initializer.
3179         (class thread_info) <control>: Remove initializer.
3180         * inferior.h (struct inferior_control_state): Add initializer.
3181         (class inferior) <control>: Remove initializer.
3182         (exit_inferior_1): Update.
3183         * infrun.c (struct infcall_control_state): Add constructors.
3184         (save_infcall_control_state): Use new.
3185         (restore_infcall_control_state, discard_infcall_control_state):
3186         Use delete.
3187
3188 2018-09-17  Tom Tromey  <tom@tromey.com>
3189
3190         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3191         unique_ptr.
3192         <siginfo_data>: Now a unique_xmalloc_ptr.
3193         (save_infcall_suspend_state, restore_infcall_suspend_state)
3194         (discard_infcall_suspend_state)
3195         (get_infcall_suspend_state_regcache): Update.
3196
3197 2018-09-17  Tom Tromey  <tom@tromey.com>
3198
3199         * gdbthread.h (struct thread_suspend_state): Add initializers.
3200         (class thread_info) <suspend>: Remove initializer.
3201         * infrun.c (struct infcall_suspend_state): Add initializers.
3202         (save_infcall_suspend_state): Use new.
3203         (discard_infcall_suspend_state): Use delete.
3204
3205 2018-09-16  Tom Tromey  <tom@tromey.com>
3206
3207         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3208         Remove.
3209         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3210         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3211         (py_varobj_iter_new): Likewise.
3212         (py_varobj_get_iterator): Use gdbpy_ref.
3213
3214 2018-09-16  Tom Tromey  <tom@tromey.com>
3215
3216         * python/py-threadevent.c (py_get_event_thread): Simplify.
3217         * python/py-inferior.c (infpy_thread_from_thread_handle):
3218         Return immediately after calling thread_to_thread_object.  Use
3219         Py_RETURN_NONE.
3220         (thread_to_thread_object): Set the exception on a NULL return.
3221
3222 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3223
3224         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3225
3226 2018-09-16  Tom Tromey  <tom@tromey.com>
3227
3228         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3229         Remove.
3230
3231 2018-09-16  Tom Tromey  <tom@tromey.com>
3232
3233         * python/python-internal.h (thread_to_thread_object): Change
3234         return type.
3235         * python/py-inferior.c (thread_to_thread_object): Return a new
3236         reference.
3237         (infpy_thread_from_thread_handle): Update.
3238         * python/py-infthread.c (gdbpy_selected_thread): Update.
3239         * python/py-stopevent.c (create_stop_event_object): Update.
3240         * python/py-threadevent.c (py_get_event_thread): Return a new
3241         reference.
3242         (py_get_event_thread): Update.
3243         * python/py-event.h (py_get_event_thread): Change return type.
3244         * python/py-continueevent.c (create_continue_event_object):
3245         Update.
3246
3247 2018-09-16  Tom Tromey  <tom@tromey.com>
3248
3249         * python/py-progspace.c (pspy_get_objfiles): Update.
3250         * python/python-internal.h (objfile_to_objfile_object): Change
3251         return type.
3252         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3253         Update.
3254         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3255         Update.
3256         * python/python.c (gdbpy_get_current_objfile): Update.
3257         (gdbpy_objfiles): Update.
3258         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3259         Update.
3260         (objfile_to_objfile_object): Return a new reference.
3261         * python/py-symtab.c (stpy_get_objfile): Update.
3262         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3263         Update.
3264
3265 2018-09-16  Tom Tromey  <tom@tromey.com>
3266
3267         * python/py-inferior.c (infpy_get_progspace): Update.
3268         * python/python-internal.h (pspace_to_pspace_object): Change
3269         return type.
3270         * python/py-newobjfileevent.c
3271         (create_clear_objfiles_event_object): Update.
3272         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3273         Update.
3274         * python/python.c (gdbpy_get_current_progspace): Update.
3275         (gdbpy_progspaces): Update.
3276         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3277         reference.
3278         * python/py-objfile.c (objfpy_get_progspace): Update.
3279         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3280         Update.
3281
3282 2018-09-16  Tom Tromey  <tom@tromey.com>
3283
3284         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3285         (solib_name, block_for_pc, find_pc_line): New functions.
3286         (execute_unwinders): Update.
3287         * python/py-block.c (gdbpy_block_for_pc): Remove.
3288         * python/py-inferior.c (infpy_get_progspace): New function.
3289         (inferior_object_getset) <progspace>: Add.
3290         * python/py-progspace.c (pspy_objfiles): Rewrite.
3291         (pspy_solib_name, pspy_block_for_pc)
3292         (pspy_find_pc_line, pspy_is_valid): New functions.
3293         (progspace_object_methods): Add entries for solib_name,
3294         block_for_pc, find_pc_line, is_valid.
3295         * python/python-internal.h (gdbpy_block_for_pc)
3296         (build_objfiles_list): Don't declare.
3297         * python/python.c: Don't include solib.h.
3298         (gdbpy_solib_name, gdbpy_find_pc_line)
3299         (gdbpy_get_current_progspace, build_objfiles_list)
3300         (gdbpy_objfiles): Remove.
3301         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3302         solib_name, find_pc_line>: Remove entries.
3303
3304 2018-09-16  Tom Tromey  <tom@tromey.com>
3305
3306         * top.c (new_ui_command): Use GNU style for metasyntactic
3307         variables.
3308         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3309         variables.
3310         * maint.c (maintenance_translate_address): Remove "<>" around
3311         text.
3312         * interps.c (interpreter_exec_cmd): Use GNU style for
3313         metasyntactic variables.
3314         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3315         metasyntactic variables.
3316         * tracepoint.c (tfind_range_command): Use GNU style for
3317         metasyntactic variables.
3318         (tfind_outside_command): Likewise.
3319         (_initialize_tracepoint): Likewise.
3320         * remote.c (extended_remote_target::create_inferior): Use GNU
3321         style for metasyntactic variables.
3322         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3323         metasyntactic variables.
3324         (adi_assign_command): Likewise.
3325
3326 2018-09-16  Tom Tromey  <tom@tromey.com>
3327
3328         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3329         metasyntactic variables.  Print message if no disassembler options
3330         are available.
3331
3332 2018-09-15  Tom Tromey  <tom@tromey.com>
3333
3334         * infcmd.c (get_inferior_args): Return const char *.
3335         * inferior.h (get_inferior_args): Return type now const.
3336         * linux-tdep.c (linux_fill_prpsinfo): Update.
3337         * procfs.c (procfs_target::make_corefile_notes): Update.
3338
3339 2018-09-07  Tom Tromey  <tom@tromey.com>
3340
3341         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3342         inside the TRY.
3343
3344 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3345
3346         * nios2-tdep.c (nios2_type_align): New.
3347         (nios2_gdb_arch_init): Install type_align hook.
3348
3349 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3350
3351         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3352         type that is neither object file owned, nor gdbarch owned.
3353         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3354         gdbarch is non-NULL.
3355         (alloc_type_instance): Allocate non-objfile owned types on the
3356         gdbarch obstack.
3357         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3358         using TYPE_ALLOC to ensure memory is allocated on the correct
3359         obstack.
3360         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3361         obstack, or the gdbarch obstack.
3362         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3363
3364 2018-09-14  Tom Tromey  <tom@tromey.com>
3365
3366         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3367         block.
3368
3369 2018-09-14  Tom Tromey  <tom@tromey.com>
3370
3371         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3372
3373 2018-09-13  Tom Tromey  <tom@tromey.com>
3374
3375         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3376         static.
3377
3378 2018-09-13  Tom Tromey  <tom@tromey.com>
3379
3380         * exec.c (try_open_exec_file): Use std::string.
3381
3382 2018-09-13  Tom Tromey  <tom@tromey.com>
3383
3384         * utils.h (gdb_bfd_errmsg): Return std::string.
3385         * exec.c (exec_file_attach): Update.
3386         * compile/compile-object-load.c (compile_object_load): Update.
3387         * utils.c (gdb_bfd_errmsg): Return std::string.
3388
3389 2018-09-13  Tom Tromey  <tom@tromey.com>
3390
3391         * procfs.c (struct procinfo_deleter): New.
3392         (procinfo_up): New typedef.
3393         (do_destroy_procinfo_cleanup): Remove.
3394         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3395
3396 2018-09-13  Tom Tromey  <tom@tromey.com>
3397
3398         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3399
3400 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3401 2018-09-13  Tom Tromey  <tom@tromey.com>
3402
3403         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3404         (pspy_get_objfiles): New function.
3405         (progspace_object_methods): New.
3406         (pspace_object_type): Add tp_methods callback.
3407         * python/python-internal.h (build_objfiles_list): New
3408         declaration.
3409         * python/python.c (build_objfiles_list): New function.
3410         (gdbpy_objfiles): Implement using build_objfiles_list.
3411         * NEWS: Mention the Progspace.objfiles method.
3412
3413 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3414
3415         * python/py-inferior.c (infpy_get_progspace): New function.
3416         (inferior_object_getset): Add progspace property.
3417         * NEWS: Mention the new property.
3418
3419 2018-09-13  Tom Tromey  <tom@tromey.com>
3420
3421         PR rust/23650:
3422         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3423
3424 2018-09-13  Tom Tromey  <tom@tromey.com>
3425
3426         PR rust/23626:
3427         * rust-lang.c (rust_enum_variant): Now static.
3428         (rust_empty_enum_p): New function.
3429         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3430         Handle empty enum.
3431
3432 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3433
3434         * python/py-inferior.c (infpy_repr): New.
3435         (inferior_object_type): Register infpy_repr.
3436         * python/py-objfile.c (objfpy_repr): New.
3437         (objfile_object_type): Register objfpy_repr.
3438
3439 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3440
3441         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3442
3443 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3444
3445         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3446         typo.
3447
3448 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3449
3450         * common/common-utils.c: Don't include '<sys/stat.h>'.
3451         (is_regular_file): Move to...
3452         * common/filestuff.c (is_regular_file): ... here.
3453         * common/common-utils.h (is_regular_file): Move to...
3454         * common/filestuff.h (is_regular_file): ... here.
3455
3456 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3457
3458         * skip.c (debug_skip): New variable.
3459         (skiplist_entry::do_skip_file_p): Add debug output.
3460         (skiplist_entry::do_skip_gfile_p): Likewise.
3461         (skiplist_entry::skip_function_p): Likewise.
3462         (_initialize_step_skip): Create debug command.
3463         * NEWS: Mention set/show debug skip.
3464
3465 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3466
3467         * darwin-nat.c (should_disable_startup_with_shell):
3468         New function.
3469         (darwin_nat_target::create_inferior): Add call.
3470
3471 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3472
3473         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3474         inf_port, msg_state>: Initialize.
3475         (struct darwin_thread_info) <signaled, single_step>: Change
3476         type and initialize.
3477         (struct darwin_thread_info) <event>: Initialize.
3478
3479 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3480
3481         PR gdb/23555
3482         PR gdb/23558
3483         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3484         guesses.
3485
3486 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3487
3488         Revert:
3489         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3490
3491         PR gdb/23555
3492         PR gdb/23558
3493         * gnulib/aclocal.m4: Regenerate.
3494         * gnulib/config.in: Regenerate.
3495         * gnulib/configure: Regenerate.
3496         * gnulib/import/Makefile.am: Update.
3497         * gnulib/import/Makefile.in: Update.
3498         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3499         * gnulib/import/_Noreturn.h: ... this.
3500         * gnulib/import/alloca.in.h: Update.
3501         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3502         * gnulib/import/arg-nonnull.h: ... this.
3503         * gnulib/import/assure.h: Update.
3504         * gnulib/import/at-func.c: Update.
3505         * gnulib/import/basename-lgpl.c: Update.
3506         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3507         * gnulib/import/c++defs.h: ... this.
3508         * gnulib/import/canonicalize-lgpl.c: Update.
3509         * gnulib/import/cdefs.h: Update.
3510         * gnulib/import/chdir-long.c: Update.
3511         * gnulib/import/chdir-long.h: Update.
3512         * gnulib/import/cloexec.c: Update.
3513         * gnulib/import/cloexec.h: Update.
3514         * gnulib/import/close.c: Update.
3515         * gnulib/import/closedir.c: Update.
3516         * gnulib/import/config.charset: Update.
3517         * gnulib/import/dirent-private.h: Update.
3518         * gnulib/import/dirent.in.h: Update.
3519         * gnulib/import/dirfd.c: Update.
3520         * gnulib/import/dirname-lgpl.c: Update.
3521         * gnulib/import/dirname.h: Update.
3522         * gnulib/import/dosname.h: Update.
3523         * gnulib/import/dup-safer-flag.c: Update.
3524         * gnulib/import/dup-safer.c: Update.
3525         * gnulib/import/dup.c: Update.
3526         * gnulib/import/dup2.c: Update.
3527         * gnulib/import/errno.in.h: Update.
3528         * gnulib/import/error.c: Update.
3529         * gnulib/import/error.h: Update.
3530         * gnulib/import/exitfail.c: Update.
3531         * gnulib/import/exitfail.h: Update.
3532         * gnulib/import/extra/update-copyright: Update.
3533         * gnulib/import/fchdir.c: Update.
3534         * gnulib/import/fcntl.c: Update.
3535         * gnulib/import/fcntl.in.h: Update.
3536         * gnulib/import/fd-hook.c: Update.
3537         * gnulib/import/fd-hook.h: Update.
3538         * gnulib/import/fd-safer-flag.c: Update.
3539         * gnulib/import/fd-safer.c: Update.
3540         * gnulib/import/fdopendir.c: Update.
3541         * gnulib/import/filename.h: Update.
3542         * gnulib/import/filenamecat-lgpl.c: Update.
3543         * gnulib/import/filenamecat.h: Update.
3544         * gnulib/import/flexmember.h: Update.
3545         * gnulib/import/float+.h: Update.
3546         * gnulib/import/float.c: Update.
3547         * gnulib/import/float.in.h: Update.
3548         * gnulib/import/fnmatch.c: Update.
3549         * gnulib/import/fnmatch.in.h: Update.
3550         * gnulib/import/fnmatch_loop.c: Update.
3551         * gnulib/import/fpucw.h: Update.
3552         * gnulib/import/frexp.c: Update.
3553         * gnulib/import/frexpl.c: Update.
3554         * gnulib/import/fstat.c: Update.
3555         * gnulib/import/fstatat.c: Update.
3556         * gnulib/import/getcwd-lgpl.c: Update.
3557         * gnulib/import/getcwd.c: Update.
3558         * gnulib/import/getdtablesize.c: Update.
3559         * gnulib/import/getlogin_r.c: Update.
3560         * gnulib/import/getprogname.c: Update.
3561         * gnulib/import/getprogname.h: Update.
3562         * gnulib/import/gettext.h: Update.
3563         * gnulib/import/gettimeofday.c: Update.
3564         * gnulib/import/glob-libc.h: Update.
3565         * gnulib/import/glob.c: Update.
3566         * gnulib/import/glob.in.h: Update.
3567         * gnulib/import/glob_internal.h: Update.
3568         * gnulib/import/glob_pattern_p.c: Update.
3569         * gnulib/import/globfree.c: Update.
3570         * gnulib/import/hard-locale.c: Update.
3571         * gnulib/import/hard-locale.h: Update.
3572         * gnulib/import/intprops.h: Update.
3573         * gnulib/import/inttypes.in.h: Update.
3574         * gnulib/import/isnan.c: Update.
3575         * gnulib/import/isnand-nolibm.h: Update.
3576         * gnulib/import/isnand.c: Update.
3577         * gnulib/import/isnanl-nolibm.h: Update.
3578         * gnulib/import/isnanl.c: Update.
3579         * gnulib/import/itold.c: Update.
3580         * gnulib/import/libc-config.h: Update.
3581         * gnulib/import/limits.in.h: Update.
3582         * gnulib/import/localcharset.c: Update.
3583         * gnulib/import/localcharset.h: Update.
3584         * gnulib/import/localtime-buffer.c: Update.
3585         * gnulib/import/localtime-buffer.h: Update.
3586         * gnulib/import/lstat.c: Update.
3587         * gnulib/import/m4/00gnulib.m4: Update.
3588         * gnulib/import/m4/__inline.m4: Update.
3589         * gnulib/import/m4/absolute-header.m4: Update.
3590         * gnulib/import/m4/alloca.m4: Update.
3591         * gnulib/import/m4/builtin-expect.m4: Update.
3592         * gnulib/import/m4/canonicalize.m4: Update.
3593         * gnulib/import/m4/chdir-long.m4: Update.
3594         * gnulib/import/m4/close.m4: Update.
3595         * gnulib/import/m4/closedir.m4: Update.
3596         * gnulib/import/m4/configmake.m4: Update.
3597         * gnulib/import/m4/d-ino.m4: Update.
3598         * gnulib/import/m4/d-type.m4: Update.
3599         * gnulib/import/m4/dirent_h.m4: Update.
3600         * gnulib/import/m4/dirfd.m4: Update.
3601         * gnulib/import/m4/dirname.m4: Update.
3602         * gnulib/import/m4/double-slash-root.m4: Update.
3603         * gnulib/import/m4/dup.m4: Update.
3604         * gnulib/import/m4/dup2.m4: Update.
3605         * gnulib/import/m4/eealloc.m4: Update.
3606         * gnulib/import/m4/environ.m4: Update.
3607         * gnulib/import/m4/errno_h.m4: Update.
3608         * gnulib/import/m4/error.m4: Update.
3609         * gnulib/import/m4/exponentd.m4: Update.
3610         * gnulib/import/m4/exponentl.m4: Update.
3611         * gnulib/import/m4/extensions.m4: Update.
3612         * gnulib/import/m4/extern-inline.m4: Update.
3613         * gnulib/import/m4/fchdir.m4: Update.
3614         * gnulib/import/m4/fcntl-o.m4: Update.
3615         * gnulib/import/m4/fcntl.m4: Update.
3616         * gnulib/import/m4/fcntl_h.m4: Update.
3617         * gnulib/import/m4/fdopendir.m4: Update.
3618         * gnulib/import/m4/filenamecat.m4: Update.
3619         * gnulib/import/m4/flexmember.m4: Update.
3620         * gnulib/import/m4/float_h.m4: Update.
3621         * gnulib/import/m4/fnmatch.m4: Update.
3622         * gnulib/import/m4/fnmatch_h.m4: Update.
3623         * gnulib/import/m4/fpieee.m4: Update.
3624         * gnulib/import/m4/frexp.m4: Update.
3625         * gnulib/import/m4/frexpl.m4: Update.
3626         * gnulib/import/m4/fstat.m4: Update.
3627         * gnulib/import/m4/fstatat.m4: Update.
3628         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3629         * gnulib/import/m4/getcwd-path-max.m4: Update.
3630         * gnulib/import/m4/getcwd.m4: Update.
3631         * gnulib/import/m4/getdtablesize.m4: Update.
3632         * gnulib/import/m4/getlogin.m4: Update.
3633         * gnulib/import/m4/getlogin_r.m4: Update.
3634         * gnulib/import/m4/getpagesize.m4: Update.
3635         * gnulib/import/m4/getprogname.m4: Update.
3636         * gnulib/import/m4/gettimeofday.m4: Update.
3637         * gnulib/import/m4/glibc21.m4: Update.
3638         * gnulib/import/m4/glob.m4: Update.
3639         * gnulib/import/m4/glob_h.m4: Update.
3640         * gnulib/import/m4/gnulib-cache.m4: Update.
3641         * gnulib/import/m4/gnulib-common.m4: Update.
3642         * gnulib/import/m4/gnulib-comp.m4: Update.
3643         * gnulib/import/m4/gnulib-tool.m4: Update.
3644         * gnulib/import/m4/hard-locale.m4: Update.
3645         * gnulib/import/m4/include_next.m4: Update.
3646         * gnulib/import/m4/inttypes-pri.m4: Update.
3647         * gnulib/import/m4/inttypes.m4: Update.
3648         * gnulib/import/m4/isnand.m4: Update.
3649         * gnulib/import/m4/isnanl.m4: Update.
3650         * gnulib/import/m4/largefile.m4: Update.
3651         * gnulib/import/m4/limits-h.m4: Update.
3652         * gnulib/import/m4/localcharset.m4: Update.
3653         * gnulib/import/m4/locale-fr.m4: Update.
3654         * gnulib/import/m4/locale-ja.m4: Update.
3655         * gnulib/import/m4/locale-zh.m4: Update.
3656         * gnulib/import/m4/localtime-buffer.m4: Update.
3657         * gnulib/import/m4/longlong.m4: Update.
3658         * gnulib/import/m4/lstat.m4: Update.
3659         * gnulib/import/m4/malloc.m4: Update.
3660         * gnulib/import/m4/malloca.m4: Update.
3661         * gnulib/import/m4/math_h.m4: Update.
3662         * gnulib/import/m4/mbrtowc.m4: Update.
3663         * gnulib/import/m4/mbsinit.m4: Update.
3664         * gnulib/import/m4/mbsrtowcs.m4: Update.
3665         * gnulib/import/m4/mbstate_t.m4: Update.
3666         * gnulib/import/m4/memchr.m4: Update.
3667         * gnulib/import/m4/memmem.m4: Update.
3668         * gnulib/import/m4/mempcpy.m4: Update.
3669         * gnulib/import/m4/memrchr.m4: Update.
3670         * gnulib/import/m4/mkdir.m4: Update.
3671         * gnulib/import/m4/mkstemp.m4: Update.
3672         * gnulib/import/m4/mmap-anon.m4: Update.
3673         * gnulib/import/m4/mode_t.m4: Update.
3674         * gnulib/import/m4/msvc-inval.m4: Update.
3675         * gnulib/import/m4/msvc-nothrow.m4: Update.
3676         * gnulib/import/m4/multiarch.m4: Update.
3677         * gnulib/import/m4/nocrash.m4: Update.
3678         * gnulib/import/m4/off_t.m4: Update.
3679         * gnulib/import/m4/onceonly.m4: Update.
3680         * gnulib/import/m4/open-cloexec.m4: Update.
3681         * gnulib/import/m4/open.m4: Update.
3682         * gnulib/import/m4/openat.m4: Update.
3683         * gnulib/import/m4/opendir.m4: Update.
3684         * gnulib/import/m4/pathmax.m4: Update.
3685         * gnulib/import/m4/rawmemchr.m4: Update.
3686         * gnulib/import/m4/readdir.m4: Update.
3687         * gnulib/import/m4/readlink.m4: Update.
3688         * gnulib/import/m4/realloc.m4: Update.
3689         * gnulib/import/m4/rename.m4: Update.
3690         * gnulib/import/m4/rewinddir.m4: Update.
3691         * gnulib/import/m4/rmdir.m4: Update.
3692         * gnulib/import/m4/save-cwd.m4: Update.
3693         * gnulib/import/m4/secure_getenv.m4: Update.
3694         * gnulib/import/m4/setenv.m4: Update.
3695         * gnulib/import/m4/signal_h.m4: Update.
3696         * gnulib/import/m4/ssize_t.m4: Update.
3697         * gnulib/import/m4/stat-time.m4: Update.
3698         * gnulib/import/m4/stat.m4: Update.
3699         * gnulib/import/m4/std-gnu11.m4: Update.
3700         * gnulib/import/m4/stdbool.m4: Update.
3701         * gnulib/import/m4/stddef_h.m4: Update.
3702         * gnulib/import/m4/stdint.m4: Update.
3703         * gnulib/import/m4/stdio_h.m4: Update.
3704         * gnulib/import/m4/stdlib_h.m4: Update.
3705         * gnulib/import/m4/strchrnul.m4: Update.
3706         * gnulib/import/m4/strdup.m4: Update.
3707         * gnulib/import/m4/strerror.m4: Update.
3708         * gnulib/import/m4/string_h.m4: Update.
3709         * gnulib/import/m4/strstr.m4: Update.
3710         * gnulib/import/m4/strtok_r.m4: Update.
3711         * gnulib/import/m4/sys_socket_h.m4: Update.
3712         * gnulib/import/m4/sys_stat_h.m4: Update.
3713         * gnulib/import/m4/sys_time_h.m4: Update.
3714         * gnulib/import/m4/sys_types_h.m4: Update.
3715         * gnulib/import/m4/tempname.m4: Update.
3716         * gnulib/import/m4/time_h.m4: Update.
3717         * gnulib/import/m4/unistd-safer.m4: Update.
3718         * gnulib/import/m4/unistd_h.m4: Update.
3719         * gnulib/import/m4/warn-on-use.m4: Update.
3720         * gnulib/import/m4/wchar_h.m4: Update.
3721         * gnulib/import/m4/wchar_t.m4: Update.
3722         * gnulib/import/m4/wctype_h.m4: Update.
3723         * gnulib/import/m4/wint_t.m4: Update.
3724         * gnulib/import/malloc.c: Update.
3725         * gnulib/import/malloc/scratch_buffer.h: Update.
3726         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3727         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3728         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3729         * gnulib/import/malloca.c: Update.
3730         * gnulib/import/malloca.h: Update.
3731         * gnulib/import/malloca.valgrind: Update.
3732         * gnulib/import/math.in.h: Update.
3733         * gnulib/import/mbrtowc.c: Update.
3734         * gnulib/import/mbsinit.c: Update.
3735         * gnulib/import/mbsrtowcs-impl.h: Update.
3736         * gnulib/import/mbsrtowcs-state.c: Update.
3737         * gnulib/import/mbsrtowcs.c: Update.
3738         * gnulib/import/memchr.c: Update.
3739         * gnulib/import/memmem.c: Update.
3740         * gnulib/import/mempcpy.c: Update.
3741         * gnulib/import/memrchr.c: Update.
3742         * gnulib/import/mkdir.c: Update.
3743         * gnulib/import/mkstemp.c: Update.
3744         * gnulib/import/msvc-inval.c: Update.
3745         * gnulib/import/msvc-inval.h: Update.
3746         * gnulib/import/msvc-nothrow.c: Update.
3747         * gnulib/import/msvc-nothrow.h: Update.
3748         * gnulib/import/open.c: Update.
3749         * gnulib/import/openat-die.c: Update.
3750         * gnulib/import/openat-priv.h: Update.
3751         * gnulib/import/openat-proc.c: Update.
3752         * gnulib/import/openat.c: Update.
3753         * gnulib/import/openat.h: Update.
3754         * gnulib/import/opendir.c: Update.
3755         * gnulib/import/pathmax.h: Update.
3756         * gnulib/import/pipe-safer.c: Update.
3757         * gnulib/import/rawmemchr.c: Update.
3758         * gnulib/import/readdir.c: Update.
3759         * gnulib/import/readlink.c: Update.
3760         * gnulib/import/realloc.c: Update.
3761         * gnulib/import/ref-add.sin: Update.
3762         * gnulib/import/ref-del.sin: Update.
3763         * gnulib/import/rename.c: Update.
3764         * gnulib/import/rewinddir.c: Update.
3765         * gnulib/import/rmdir.c: Update.
3766         * gnulib/import/same-inode.h: Update.
3767         * gnulib/import/save-cwd.c: Update.
3768         * gnulib/import/save-cwd.h: Update.
3769         * gnulib/import/scratch_buffer.h: Update.
3770         * gnulib/import/secure_getenv.c: Update.
3771         * gnulib/import/setenv.c: Update.
3772         * gnulib/import/signal.in.h: Update.
3773         * gnulib/import/stat-time.c: Update.
3774         * gnulib/import/stat-time.h: Update.
3775         * gnulib/import/stat-w32.c: Update.
3776         * gnulib/import/stat-w32.h: Update.
3777         * gnulib/import/stat.c: Update.
3778         * gnulib/import/stdbool.in.h: Update.
3779         * gnulib/import/stddef.in.h: Update.
3780         * gnulib/import/stdint.in.h: Update.
3781         * gnulib/import/stdio.in.h: Update.
3782         * gnulib/import/stdlib.in.h: Update.
3783         * gnulib/import/str-two-way.h: Update.
3784         * gnulib/import/strchrnul.c: Update.
3785         * gnulib/import/strdup.c: Update.
3786         * gnulib/import/streq.h: Update.
3787         * gnulib/import/strerror-override.c: Update.
3788         * gnulib/import/strerror-override.h: Update.
3789         * gnulib/import/strerror.c: Update.
3790         * gnulib/import/string.in.h: Update.
3791         * gnulib/import/stripslash.c: Update.
3792         * gnulib/import/strnlen1.c: Update.
3793         * gnulib/import/strnlen1.h: Update.
3794         * gnulib/import/strstr.c: Update.
3795         * gnulib/import/strtok_r.c: Update.
3796         * gnulib/import/sys_stat.in.h: Update.
3797         * gnulib/import/sys_time.in.h: Update.
3798         * gnulib/import/sys_types.in.h: Update.
3799         * gnulib/import/tempname.c: Update.
3800         * gnulib/import/tempname.h: Update.
3801         * gnulib/import/time.in.h: Update.
3802         * gnulib/import/unistd--.h: Update.
3803         * gnulib/import/unistd-safer.h: Update.
3804         * gnulib/import/unistd.in.h: Update.
3805         * gnulib/import/unsetenv.c: Update.
3806         * gnulib/import/verify.h: Update.
3807         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3808         * gnulib/import/wchar.in.h: Update.
3809         * gnulib/import/wctype.in.h: Update.
3810         * gnulib/import/xalloc-oversized.h: Update.
3811         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3812         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3813
3814 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3815
3816         * record-btrace.c (get_thread_current_frame): Remove
3817         old_inferior_ptid.
3818
3819 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3820
3821         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3822         with check_tag to 1 if and only if the type is tagged and the
3823         component being searched cannot been found in the current
3824         view. Otherwise, always call ada_to_fixed_type with
3825         check_tag to 0.
3826
3827 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3828
3829         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3830         declaration.
3831         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3832         * ada-varobj.c (ada_varobj_get_number_of_children,
3833         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3834
3835 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3836
3837         * ada-valprint.c (ada_value_print): Use type instead of
3838         enclosing type.
3839
3840 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3841
3842         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3843         an array of access to unconstrained array.
3844
3845 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3846
3847         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3848         (ada_check_typedef): Use it.
3849
3850 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3851
3852         * ada-varobj.c (ada_varobj_describe_struct_child)
3853         (ada_varobj_describe_child): Handle union case like struct one.
3854
3855 2018-09-10  Tom Tromey  <tom@tromey.com>
3856
3857         PR python/18380:
3858         * python/python.c (_initialize_python): Make example in "python"
3859         help work in Python 3.
3860
3861 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3862
3863         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3864         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3865         $(EXEEXT) to the script, as it is not a program.
3866
3867 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3868
3869         * python/py-prettyprint.c (pretty_print_one_value): Return
3870         gdbpy_ref<>.
3871         (print_string_repr): Adjust.
3872         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3873         * python/python-internal.h (apply_varobj_pretty_printer): Return
3874         gdbpy_ref<>.
3875         * varobj.c (varobj_value_get_print_value): Adjust.
3876
3877 2018-09-08  Tom Tromey  <tom@tromey.com>
3878
3879         PR python/16047:
3880         * python/py-prettyprint.c (pretty_print_one_value): Check for
3881         to_string method.
3882
3883 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3884
3885         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3886         replace_operator_with_call.
3887
3888 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3889
3890         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3891
3892 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3893
3894         * ada-typeprint.c (print_range): Print the bounds using TYPE
3895         rather than its TYPE_TARGET_TYPE.
3896
3897 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3898
3899         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3900         call to ada_to_fixed_value_create.
3901
3902 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3903
3904         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3905
3906 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3907
3908         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3909         by calls to error.
3910
3911 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3912
3913         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3914         Move update of loop variable "fi".
3915
3916 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3917
3918         * ada-lang.c (value_assign_to_component): In the case of
3919         big-endian targets, extract the bits of the given VAL
3920         using an src_offset of zero if container is not a scalar.
3921
3922 2018-09-06  Simon Ser  <contact@emersion.fr>
3923
3924         PR gdb/23105
3925         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3926         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3927         * fbsd-tdep.c (fbsd_make_note_desc): New.
3928         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3929         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3930         * target.h (enum target_object) Add FreeBSD-specific
3931         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3932
3933 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3934
3935         * compile/compile-c.h (generate_c_for_variable_locations):
3936         Change reference to pointer.
3937         * compile/compile-c-support.c (compile_program) <compute>:
3938         Likewise.
3939         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3940         (generate_c_for_for_one_variable): Likewise
3941         (generate_c_for_variable_locations): Likewise
3942         * compile/compile-c-types.c (compile_c_instance::convert_type):
3943         Likewise
3944         * compile/compile-cplus-symbols.c (convert_one_symbol):
3945         std::move the scope passed to enter_scope.
3946         * compile/compile-cplus-types.c
3947         (compile_cplus_instance::enter_scope): Make parameter
3948         rvalue-reference.
3949         (compile_cplus_instance::new_scope): Change reference to
3950         pointer.
3951         (compile_cplus_instance::convert_type): Likewise
3952         (compile_cplus_convert_typedef): std::move the scope passed to
3953         enter_scope.
3954         (compile_cplus_convert_struct_or_union): Likewise.
3955         (compile_cplus_convert_enum): Likewise.
3956         (compile_cplus_convert_namespace): Likewise.
3957         * compile/compile-cplus.h (compile_cplus_instance)
3958         <enter_scope>: Make parameter rvalue-reference.
3959         * compile/compile-internal.h (compile_instance)
3960         <get_cached_type>: Likewise
3961         * compile/compile-loc2c.c (push): Likewise
3962         (pushf): Likewise
3963         (unary): Likewise
3964         (binary): Likewise
3965         (print_label): Likewise
3966         (pushf_register_address): Likewise
3967         (pushf_register): Likewise
3968         (do_compile_dwarf_expr_to_c): Likewise
3969         (compile_dwarf_expr_to_c): Likewise
3970         (compile_dwarf_bounds_to_c): Likewise
3971         * compile/compile.c (compile_instance::get_cached_type):
3972         Likewise
3973         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3974         (compile_dwarf_bounds_to_c): Likewise
3975         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3976         (dwarf2_compile_property_to_c): Likewise
3977         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3978         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3979         Likewise
3980
3981 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3982
3983         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3984         * tui/tui-data.c (init_content_element): Don't initialize it.
3985
3986 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3987
3988         * tui/tui-data.h (struct tui_win_info)
3989         <detail::opaque>: Remove.
3990         * tui/tui-data.c (init_win_info): Remove assignment.
3991
3992 2018-09-05  Tom Tromey  <tom@tromey.com>
3993
3994         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3995         -Wformat-nonliteral.
3996         * target-float.c (host_float_ops<T>::to_string)
3997         (host_float_ops<T>::from_string): Use
3998         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3999         * configure: Rebuild.
4000
4001 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4002
4003         * printcmd.c (printf_c_string): Use
4004         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4005         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4006
4007 2018-09-05  Tom Tromey  <tom@tromey.com>
4008
4009         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4010
4011 2018-09-05  Tom de Vries  <tdevries@suse.de>
4012
4013         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4014         with resolve_abstract_p == true.
4015         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4016         defaulting to false. Propagate resolve_abstract_p to
4017         dwarf2_fetch_die_loc_sect_off.
4018         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4019         parameter, defaulting to false.
4020         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4021         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4022         parameter.
4023         * dwarf2read.h (struct die_info): Forward-declare.
4024         (die_info_ptr): New typedef.
4025         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4026
4027 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4028
4029         GDB 8.2 released.
4030
4031 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4032             Pedro Alves  <palves@redhat.com>
4033
4034         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4035         "aclocal-m4-deps.mk".  Include file here.
4036         $(srcdir)/aclocal.m4: Add "configure.ac".
4037         * gnulib/aclocal-m4-deps.mk: New file.
4038         * gnulib/update-gnulib.sh: Automatically update
4039         "aclocal-m4-deps.mk".
4040
4041 2018-09-04  Tom Tromey  <tom@tromey.com>
4042
4043         * configure: Rebuild.
4044         * configure.ac: Remove multi-ice code.
4045
4046 2018-09-04  Tom Tromey  <tom@tromey.com>
4047
4048         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4049         (ada-exp.o): Update.
4050
4051 2018-09-04  Tom Tromey  <tom@tromey.com>
4052
4053         * Makefile.in (printcmd.o, target-float.o): Remove.
4054         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4055
4056 2018-09-04  Tom Tromey  <tom@tromey.com>
4057
4058         * gnulib/Makefile.in: Remove obsolete comment.
4059         * Makefile.in: Remove obsolete comment.
4060
4061 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4062
4063         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4064         line with '+'.
4065
4066 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4067
4068         * riscv-tdep.c: Add 'prologue-value.h' include.
4069         (struct riscv_unwind_cache): New struct.
4070         (riscv_debug_unwinder): New global.
4071         (riscv_scan_prologue): Update arguments, capture register details
4072         from prologue scan.
4073         (riscv_skip_prologue): Reformat arguments line, move end of
4074         prologue calculation into riscv_scan_prologue.
4075         (riscv_frame_cache): Update return type, create
4076         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4077         details.
4078         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4079         (riscv_frame_prev_register): Use the trad_frame within the
4080         riscv_unwind_cache.
4081         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4082         flag.
4083
4084 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4085
4086         * trad-frame.h (trad_frame_set_realreg): Declare.
4087         (trad_frame_set_addr): Declare.
4088         * trad-frame.c (trad_frame_set_realreg): Define new function.
4089         (trad_frame_set_addr): Define new function.
4090         (trad_frame_set_reg_realreg): Use new function.
4091         (trad_frame_set_reg_addr): Use new function.
4092
4093 2018-09-01  Keith Seitz  <keiths@redhat.com>
4094
4095         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4096         pulongest instead of "%lld".
4097         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4098         ATTRIBUTE_UNUSED.
4099
4100 2018-08-31  Tom Tromey  <tom@tromey.com>
4101
4102         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4103         variant part type.
4104
4105 2018-08-31  Pedro Alves  <palves@redhat.com>
4106
4107         * gdbarch.h: Regenerate.
4108
4109 2018-08-31  Pedro Alves  <palves@redhat.com>
4110
4111         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4112         * target.h (Hardware watchpoint interfaces): Describe
4113         continuable/steppable/non-steppable watchpoints.
4114         * gdbarch.h, gdbarch.c: Regenerate.
4115
4116 2018-08-31  Pedro Alves  <palves@redhat.com>
4117
4118         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4119         Delete.
4120         * s390-linux-nat.c
4121         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4122         * target.h (target_ops::have_continuable_watchpoint): Delete.
4123         (target_have_continuable_watchpoint): Delete.
4124         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4125         * target-delegates.c: Regenerate.
4126
4127 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4128
4129         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4130         the files present in "gnulib/import/m4/".
4131
4132 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4133
4134         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4135         c.sw, c.swsp, and c.sdsp.
4136
4137 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4138
4139         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4140         (riscv_read_misa_reg): Don't cache value read into inferior data.
4141         (riscv_new_inferior_data): Delete.
4142         (riscv_inferior_data_cleanup): Delete.
4143         (riscv_inferior_data): Delete.
4144         (riscv_invalidate_inferior_data): Delete.
4145         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4146
4147 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4148
4149         * compile/compile-cplus-types.c
4150         (compile_cplus_instance::leave_scope): Take the address of scope
4151         object.
4152         (compile_cplus_instance::convert_qualified_base): Compare quals
4153         to 0.
4154
4155 2018-08-30  Keith Seitz  <keiths@redhat.com>
4156
4157         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4158         Use "%s" and host_address_to_string instead of "%p" in printf.
4159
4160 2018-08-29  Keith Seitz  <keiths@redhat.com>
4161
4162         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4163         and compile-cplus-types.c.
4164         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4165         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4166         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4167         Declare.
4168         * compile/compile-c-support.c: Include compile-cplus.h.
4169         (load_libcompile): Templatize.
4170         (get_compile_context): "New" function.
4171         (c_get_compile_context): Use get_compile_context.
4172         (cplus_get_compile_context): New function.
4173         (cplus_push_user_expression, cplus_pop_user_expression)
4174         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4175         (cplus_compute_program): Define new structs/functions.
4176         * compile/compile-cplus-symmbols.c: New file.
4177         * compile/compile-cplus-types.c: New file.
4178         * compile/compile-cplus.h: New file.
4179         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4180         Declare.
4181         * compile/compile-object-load.c (get_out_value_type): Use
4182         strncmp_iw when comparing symbol names.
4183         (compile_object_load): Add mst_bss and mst_data.
4184         * compile/compile.c (_initialize_compile): Remove
4185         -Wno-implicit-function-declaration from `compile_args'.
4186         * compile/gcc-cp-plugin.h: New file.
4187         * NEWS: Mention C++ compile support and new debug options.
4188
4189 2018-08-29  Keith Seitz  <keiths@redhat.com>
4190
4191         * linespec.c (collect_info::add_symbol): Make virtual.
4192         (struct symbol_searcher_collect_info): New struct.
4193         (symbol_searcher::find_all_symbols): New method.
4194         * symtab.h (class symbol_searcher): New class.
4195
4196 2018-08-29  Keith Seitz  <keiths@redhat.com>
4197
4198         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4199         Change to vector of block_symbol.  Update all users.
4200         (struct collect_info) <symbols>: Likewise.
4201         (collect_info::add_symbol): Take block_symbol as argument.
4202         Update all callers.
4203         (decode_compound_collector) <m_symbols>: Change type to vector
4204         of block_symbol.  Update all users.
4205         (decode_compound_collector::operator ()): Change parameter type
4206         to block_symbol.
4207         (find_method, find_function_symbols, find_linespec_symbols)
4208         (find_label_symbols_in_block, find_label_symbols): Change symbol
4209         vectors to block_symbol vectors.
4210         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4211         block_symbol.
4212
4213 2018-08-29  Keith Seitz  <keiths@redhat.com>
4214
4215         * linespec.c (symbolp): Remove typedef and VEC definitions.
4216         (bound_minimal_symbol_d): Likewise.
4217
4218 2018-08-29  Keith Seitz  <keiths@redhat.com>
4219
4220         * linespec.c (decode_compound_collector::decode_compound_collector):
4221         Remove initialization for `m_symtabs'.
4222         (decode_compound_collector::release_symbols): Change return type
4223         to std::vector.  Update all callers.
4224         (class decode_compound_collector) <m_symbols>: Change type to
4225         std::vector.
4226         (lookup_prefix_sym): Change return type to std::vector.  Update all
4227         callers.
4228         (compare_symbols): Remove.
4229         (std_compare_symbols): Rename to `compare_symbols'.
4230         (find_method): Change `sym_classes' parameter to std::vector.
4231         Update all callers.  Use std::sort to sort sym_classes.
4232         (find_linespec_symbols): Remove cleanup.
4233
4234 2018-08-29  Keith Seitz  <keiths@redhat.com>
4235
4236         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4237         std::vector.  Update all users.
4238         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4239         (struct collect_info) <minimal_symbols>: Likewise.
4240         (compare_msymbols): Return bool.  Change parameters to const
4241         bound_minimal_symbol references.
4242         (find_method, find_function_symbols, find_linespec_symbols): Change
4243         `minsyms' parameter to std::vector.  Update all callers.
4244
4245 2018-08-29  Keith Seitz  <keiths@redhat.com>
4246
4247         * linespec.c (struct linespec) <label_symbols>: Change type to
4248         std::vector.  Update all users.
4249         (find_label_symbols_in_block): Change `result' parameter to
4250         std::vector.  Update all callers.
4251         (find_label_symbols): Return std::vector.  Update all callers.
4252
4253 2018-08-29  Keith Seitz  <keiths@redhat.com>
4254
4255         * linespec.c (struct linespec) <function_symbols>: Change type to
4256         std::vector.  Update all users.
4257         (struct collect_info) <function_symbols>: Likewise.
4258         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4259         (std_compare_symbols): New function.
4260         (find_method, find_function_symbols, find_linespec_symbols)
4261         (find_label_symbols_in_block): Change `symbols' parameter to
4262         std::vector.  Update all callers.
4263         (find_label_symbols): Likewise for `function_symbols' and
4264         `label_funcs_ret'.
4265
4266 2018-08-29  Keith Seitz  <keiths@redhat.com>
4267
4268         * linespec.c (symtab_vector_up): Define.
4269         (struct linespec) <file_symtabs>: Change type to std::vector *.
4270         Update all uses.
4271         (struct collect_info) <file_symtabs>: Likewise.
4272         (collect_symtabs_from_filename): Return symtab_vector_up.
4273         Update all callers.
4274         (decode_objc): Remove cleanup.
4275         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4276         (symtab_collector::release_symtabs): Return symtab_vector_up.
4277         Update all callers.
4278         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4279         Update all users.
4280         (collect_symtabs_from_filename, symtabs_from_filename): Return
4281         symtab_vector_up.  Update all callers.
4282
4283 2018-08-29  Tom Tromey  <tom@tromey.com>
4284
4285         * csky-tdep.c (csky_analyze_prologue): Use
4286         core_addr_to_string_nz.
4287
4288 2018-08-29  Tom Tromey  <tom@tromey.com>
4289
4290         * windows-nat.c (struct xlate_exception) <them>: Change type to
4291         DWORD.
4292         (xlate): Fix formatting.  Remove last entry.
4293         (struct xlate_exception, xlate): Comment out.
4294         (windows_nat_target::resume): Use ranged for.
4295
4296 2018-08-29  Jim Wilson  <jimw@sifive.com>
4297
4298         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4299         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4300         of NT_PRFPREG.
4301         (riscv_linux_nat_target::store_registers): Likewise.
4302
4303 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4304
4305         PR gdb/23555
4306         PR gdb/23558
4307         * gnulib/aclocal.m4: Regenerate.
4308         * gnulib/config.in: Regenerate.
4309         * gnulib/configure: Regenerate.
4310         * gnulib/import/Makefile.am: Update.
4311         * gnulib/import/Makefile.in: Update.
4312         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4313         * gnulib/import/_Noreturn.h: ... this.
4314         * gnulib/import/alloca.in.h: Update.
4315         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4316         * gnulib/import/arg-nonnull.h: ... this.
4317         * gnulib/import/assure.h: Update.
4318         * gnulib/import/at-func.c: Update.
4319         * gnulib/import/basename-lgpl.c: Update.
4320         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4321         * gnulib/import/c++defs.h: ... this.
4322         * gnulib/import/canonicalize-lgpl.c: Update.
4323         * gnulib/import/cdefs.h: Update.
4324         * gnulib/import/chdir-long.c: Update.
4325         * gnulib/import/chdir-long.h: Update.
4326         * gnulib/import/cloexec.c: Update.
4327         * gnulib/import/cloexec.h: Update.
4328         * gnulib/import/close.c: Update.
4329         * gnulib/import/closedir.c: Update.
4330         * gnulib/import/config.charset: Update.
4331         * gnulib/import/dirent-private.h: Update.
4332         * gnulib/import/dirent.in.h: Update.
4333         * gnulib/import/dirfd.c: Update.
4334         * gnulib/import/dirname-lgpl.c: Update.
4335         * gnulib/import/dirname.h: Update.
4336         * gnulib/import/dosname.h: Update.
4337         * gnulib/import/dup-safer-flag.c: Update.
4338         * gnulib/import/dup-safer.c: Update.
4339         * gnulib/import/dup.c: Update.
4340         * gnulib/import/dup2.c: Update.
4341         * gnulib/import/errno.in.h: Update.
4342         * gnulib/import/error.c: Update.
4343         * gnulib/import/error.h: Update.
4344         * gnulib/import/exitfail.c: Update.
4345         * gnulib/import/exitfail.h: Update.
4346         * gnulib/import/extra/update-copyright: Update.
4347         * gnulib/import/fchdir.c: Update.
4348         * gnulib/import/fcntl.c: Update.
4349         * gnulib/import/fcntl.in.h: Update.
4350         * gnulib/import/fd-hook.c: Update.
4351         * gnulib/import/fd-hook.h: Update.
4352         * gnulib/import/fd-safer-flag.c: Update.
4353         * gnulib/import/fd-safer.c: Update.
4354         * gnulib/import/fdopendir.c: Update.
4355         * gnulib/import/filename.h: Update.
4356         * gnulib/import/filenamecat-lgpl.c: Update.
4357         * gnulib/import/filenamecat.h: Update.
4358         * gnulib/import/flexmember.h: Update.
4359         * gnulib/import/float+.h: Update.
4360         * gnulib/import/float.c: Update.
4361         * gnulib/import/float.in.h: Update.
4362         * gnulib/import/fnmatch.c: Update.
4363         * gnulib/import/fnmatch.in.h: Update.
4364         * gnulib/import/fnmatch_loop.c: Update.
4365         * gnulib/import/fpucw.h: Update.
4366         * gnulib/import/frexp.c: Update.
4367         * gnulib/import/frexpl.c: Update.
4368         * gnulib/import/fstat.c: Update.
4369         * gnulib/import/fstatat.c: Update.
4370         * gnulib/import/getcwd-lgpl.c: Update.
4371         * gnulib/import/getcwd.c: Update.
4372         * gnulib/import/getdtablesize.c: Update.
4373         * gnulib/import/getlogin_r.c: Update.
4374         * gnulib/import/getprogname.c: Update.
4375         * gnulib/import/getprogname.h: Update.
4376         * gnulib/import/gettext.h: Update.
4377         * gnulib/import/gettimeofday.c: Update.
4378         * gnulib/import/glob-libc.h: Update.
4379         * gnulib/import/glob.c: Update.
4380         * gnulib/import/glob.in.h: Update.
4381         * gnulib/import/glob_internal.h: Update.
4382         * gnulib/import/glob_pattern_p.c: Update.
4383         * gnulib/import/globfree.c: Update.
4384         * gnulib/import/hard-locale.c: Update.
4385         * gnulib/import/hard-locale.h: Update.
4386         * gnulib/import/intprops.h: Update.
4387         * gnulib/import/inttypes.in.h: Update.
4388         * gnulib/import/isnan.c: Update.
4389         * gnulib/import/isnand-nolibm.h: Update.
4390         * gnulib/import/isnand.c: Update.
4391         * gnulib/import/isnanl-nolibm.h: Update.
4392         * gnulib/import/isnanl.c: Update.
4393         * gnulib/import/itold.c: Update.
4394         * gnulib/import/libc-config.h: Update.
4395         * gnulib/import/limits.in.h: Update.
4396         * gnulib/import/localcharset.c: Update.
4397         * gnulib/import/localcharset.h: Update.
4398         * gnulib/import/localtime-buffer.c: Update.
4399         * gnulib/import/localtime-buffer.h: Update.
4400         * gnulib/import/lstat.c: Update.
4401         * gnulib/import/m4/00gnulib.m4: Update.
4402         * gnulib/import/m4/__inline.m4: Update.
4403         * gnulib/import/m4/absolute-header.m4: Update.
4404         * gnulib/import/m4/alloca.m4: Update.
4405         * gnulib/import/m4/builtin-expect.m4: Update.
4406         * gnulib/import/m4/canonicalize.m4: Update.
4407         * gnulib/import/m4/chdir-long.m4: Update.
4408         * gnulib/import/m4/close.m4: Update.
4409         * gnulib/import/m4/closedir.m4: Update.
4410         * gnulib/import/m4/configmake.m4: Update.
4411         * gnulib/import/m4/d-ino.m4: Update.
4412         * gnulib/import/m4/d-type.m4: Update.
4413         * gnulib/import/m4/dirent_h.m4: Update.
4414         * gnulib/import/m4/dirfd.m4: Update.
4415         * gnulib/import/m4/dirname.m4: Update.
4416         * gnulib/import/m4/double-slash-root.m4: Update.
4417         * gnulib/import/m4/dup.m4: Update.
4418         * gnulib/import/m4/dup2.m4: Update.
4419         * gnulib/import/m4/eealloc.m4: Update.
4420         * gnulib/import/m4/environ.m4: Update.
4421         * gnulib/import/m4/errno_h.m4: Update.
4422         * gnulib/import/m4/error.m4: Update.
4423         * gnulib/import/m4/exponentd.m4: Update.
4424         * gnulib/import/m4/exponentl.m4: Update.
4425         * gnulib/import/m4/extensions.m4: Update.
4426         * gnulib/import/m4/extern-inline.m4: Update.
4427         * gnulib/import/m4/fchdir.m4: Update.
4428         * gnulib/import/m4/fcntl-o.m4: Update.
4429         * gnulib/import/m4/fcntl.m4: Update.
4430         * gnulib/import/m4/fcntl_h.m4: Update.
4431         * gnulib/import/m4/fdopendir.m4: Update.
4432         * gnulib/import/m4/filenamecat.m4: Update.
4433         * gnulib/import/m4/flexmember.m4: Update.
4434         * gnulib/import/m4/float_h.m4: Update.
4435         * gnulib/import/m4/fnmatch.m4: Update.
4436         * gnulib/import/m4/fnmatch_h.m4: Update.
4437         * gnulib/import/m4/fpieee.m4: Update.
4438         * gnulib/import/m4/frexp.m4: Update.
4439         * gnulib/import/m4/frexpl.m4: Update.
4440         * gnulib/import/m4/fstat.m4: Update.
4441         * gnulib/import/m4/fstatat.m4: Update.
4442         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4443         * gnulib/import/m4/getcwd-path-max.m4: Update.
4444         * gnulib/import/m4/getcwd.m4: Update.
4445         * gnulib/import/m4/getdtablesize.m4: Update.
4446         * gnulib/import/m4/getlogin.m4: Update.
4447         * gnulib/import/m4/getlogin_r.m4: Update.
4448         * gnulib/import/m4/getpagesize.m4: Update.
4449         * gnulib/import/m4/getprogname.m4: Update.
4450         * gnulib/import/m4/gettimeofday.m4: Update.
4451         * gnulib/import/m4/glibc21.m4: Update.
4452         * gnulib/import/m4/glob.m4: Update.
4453         * gnulib/import/m4/glob_h.m4: Update.
4454         * gnulib/import/m4/gnulib-cache.m4: Update.
4455         * gnulib/import/m4/gnulib-common.m4: Update.
4456         * gnulib/import/m4/gnulib-comp.m4: Update.
4457         * gnulib/import/m4/gnulib-tool.m4: Update.
4458         * gnulib/import/m4/hard-locale.m4: Update.
4459         * gnulib/import/m4/include_next.m4: Update.
4460         * gnulib/import/m4/inttypes-pri.m4: Update.
4461         * gnulib/import/m4/inttypes.m4: Update.
4462         * gnulib/import/m4/isnand.m4: Update.
4463         * gnulib/import/m4/isnanl.m4: Update.
4464         * gnulib/import/m4/largefile.m4: Update.
4465         * gnulib/import/m4/limits-h.m4: Update.
4466         * gnulib/import/m4/localcharset.m4: Update.
4467         * gnulib/import/m4/locale-fr.m4: Update.
4468         * gnulib/import/m4/locale-ja.m4: Update.
4469         * gnulib/import/m4/locale-zh.m4: Update.
4470         * gnulib/import/m4/localtime-buffer.m4: Update.
4471         * gnulib/import/m4/longlong.m4: Update.
4472         * gnulib/import/m4/lstat.m4: Update.
4473         * gnulib/import/m4/malloc.m4: Update.
4474         * gnulib/import/m4/malloca.m4: Update.
4475         * gnulib/import/m4/math_h.m4: Update.
4476         * gnulib/import/m4/mbrtowc.m4: Update.
4477         * gnulib/import/m4/mbsinit.m4: Update.
4478         * gnulib/import/m4/mbsrtowcs.m4: Update.
4479         * gnulib/import/m4/mbstate_t.m4: Update.
4480         * gnulib/import/m4/memchr.m4: Update.
4481         * gnulib/import/m4/memmem.m4: Update.
4482         * gnulib/import/m4/mempcpy.m4: Update.
4483         * gnulib/import/m4/memrchr.m4: Update.
4484         * gnulib/import/m4/mkdir.m4: Update.
4485         * gnulib/import/m4/mkstemp.m4: Update.
4486         * gnulib/import/m4/mmap-anon.m4: Update.
4487         * gnulib/import/m4/mode_t.m4: Update.
4488         * gnulib/import/m4/msvc-inval.m4: Update.
4489         * gnulib/import/m4/msvc-nothrow.m4: Update.
4490         * gnulib/import/m4/multiarch.m4: Update.
4491         * gnulib/import/m4/nocrash.m4: Update.
4492         * gnulib/import/m4/off_t.m4: Update.
4493         * gnulib/import/m4/onceonly.m4: Update.
4494         * gnulib/import/m4/open-cloexec.m4: Update.
4495         * gnulib/import/m4/open.m4: Update.
4496         * gnulib/import/m4/openat.m4: Update.
4497         * gnulib/import/m4/opendir.m4: Update.
4498         * gnulib/import/m4/pathmax.m4: Update.
4499         * gnulib/import/m4/rawmemchr.m4: Update.
4500         * gnulib/import/m4/readdir.m4: Update.
4501         * gnulib/import/m4/readlink.m4: Update.
4502         * gnulib/import/m4/realloc.m4: Update.
4503         * gnulib/import/m4/rename.m4: Update.
4504         * gnulib/import/m4/rewinddir.m4: Update.
4505         * gnulib/import/m4/rmdir.m4: Update.
4506         * gnulib/import/m4/save-cwd.m4: Update.
4507         * gnulib/import/m4/secure_getenv.m4: Update.
4508         * gnulib/import/m4/setenv.m4: Update.
4509         * gnulib/import/m4/signal_h.m4: Update.
4510         * gnulib/import/m4/ssize_t.m4: Update.
4511         * gnulib/import/m4/stat-time.m4: Update.
4512         * gnulib/import/m4/stat.m4: Update.
4513         * gnulib/import/m4/std-gnu11.m4: Update.
4514         * gnulib/import/m4/stdbool.m4: Update.
4515         * gnulib/import/m4/stddef_h.m4: Update.
4516         * gnulib/import/m4/stdint.m4: Update.
4517         * gnulib/import/m4/stdio_h.m4: Update.
4518         * gnulib/import/m4/stdlib_h.m4: Update.
4519         * gnulib/import/m4/strchrnul.m4: Update.
4520         * gnulib/import/m4/strdup.m4: Update.
4521         * gnulib/import/m4/strerror.m4: Update.
4522         * gnulib/import/m4/string_h.m4: Update.
4523         * gnulib/import/m4/strstr.m4: Update.
4524         * gnulib/import/m4/strtok_r.m4: Update.
4525         * gnulib/import/m4/sys_socket_h.m4: Update.
4526         * gnulib/import/m4/sys_stat_h.m4: Update.
4527         * gnulib/import/m4/sys_time_h.m4: Update.
4528         * gnulib/import/m4/sys_types_h.m4: Update.
4529         * gnulib/import/m4/tempname.m4: Update.
4530         * gnulib/import/m4/time_h.m4: Update.
4531         * gnulib/import/m4/unistd-safer.m4: Update.
4532         * gnulib/import/m4/unistd_h.m4: Update.
4533         * gnulib/import/m4/warn-on-use.m4: Update.
4534         * gnulib/import/m4/wchar_h.m4: Update.
4535         * gnulib/import/m4/wchar_t.m4: Update.
4536         * gnulib/import/m4/wctype_h.m4: Update.
4537         * gnulib/import/m4/wint_t.m4: Update.
4538         * gnulib/import/malloc.c: Update.
4539         * gnulib/import/malloc/scratch_buffer.h: Update.
4540         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4541         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4542         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4543         * gnulib/import/malloca.c: Update.
4544         * gnulib/import/malloca.h: Update.
4545         * gnulib/import/malloca.valgrind: Update.
4546         * gnulib/import/math.in.h: Update.
4547         * gnulib/import/mbrtowc.c: Update.
4548         * gnulib/import/mbsinit.c: Update.
4549         * gnulib/import/mbsrtowcs-impl.h: Update.
4550         * gnulib/import/mbsrtowcs-state.c: Update.
4551         * gnulib/import/mbsrtowcs.c: Update.
4552         * gnulib/import/memchr.c: Update.
4553         * gnulib/import/memmem.c: Update.
4554         * gnulib/import/mempcpy.c: Update.
4555         * gnulib/import/memrchr.c: Update.
4556         * gnulib/import/mkdir.c: Update.
4557         * gnulib/import/mkstemp.c: Update.
4558         * gnulib/import/msvc-inval.c: Update.
4559         * gnulib/import/msvc-inval.h: Update.
4560         * gnulib/import/msvc-nothrow.c: Update.
4561         * gnulib/import/msvc-nothrow.h: Update.
4562         * gnulib/import/open.c: Update.
4563         * gnulib/import/openat-die.c: Update.
4564         * gnulib/import/openat-priv.h: Update.
4565         * gnulib/import/openat-proc.c: Update.
4566         * gnulib/import/openat.c: Update.
4567         * gnulib/import/openat.h: Update.
4568         * gnulib/import/opendir.c: Update.
4569         * gnulib/import/pathmax.h: Update.
4570         * gnulib/import/pipe-safer.c: Update.
4571         * gnulib/import/rawmemchr.c: Update.
4572         * gnulib/import/readdir.c: Update.
4573         * gnulib/import/readlink.c: Update.
4574         * gnulib/import/realloc.c: Update.
4575         * gnulib/import/ref-add.sin: Update.
4576         * gnulib/import/ref-del.sin: Update.
4577         * gnulib/import/rename.c: Update.
4578         * gnulib/import/rewinddir.c: Update.
4579         * gnulib/import/rmdir.c: Update.
4580         * gnulib/import/same-inode.h: Update.
4581         * gnulib/import/save-cwd.c: Update.
4582         * gnulib/import/save-cwd.h: Update.
4583         * gnulib/import/scratch_buffer.h: Update.
4584         * gnulib/import/secure_getenv.c: Update.
4585         * gnulib/import/setenv.c: Update.
4586         * gnulib/import/signal.in.h: Update.
4587         * gnulib/import/stat-time.c: Update.
4588         * gnulib/import/stat-time.h: Update.
4589         * gnulib/import/stat-w32.c: Update.
4590         * gnulib/import/stat-w32.h: Update.
4591         * gnulib/import/stat.c: Update.
4592         * gnulib/import/stdbool.in.h: Update.
4593         * gnulib/import/stddef.in.h: Update.
4594         * gnulib/import/stdint.in.h: Update.
4595         * gnulib/import/stdio.in.h: Update.
4596         * gnulib/import/stdlib.in.h: Update.
4597         * gnulib/import/str-two-way.h: Update.
4598         * gnulib/import/strchrnul.c: Update.
4599         * gnulib/import/strdup.c: Update.
4600         * gnulib/import/streq.h: Update.
4601         * gnulib/import/strerror-override.c: Update.
4602         * gnulib/import/strerror-override.h: Update.
4603         * gnulib/import/strerror.c: Update.
4604         * gnulib/import/string.in.h: Update.
4605         * gnulib/import/stripslash.c: Update.
4606         * gnulib/import/strnlen1.c: Update.
4607         * gnulib/import/strnlen1.h: Update.
4608         * gnulib/import/strstr.c: Update.
4609         * gnulib/import/strtok_r.c: Update.
4610         * gnulib/import/sys_stat.in.h: Update.
4611         * gnulib/import/sys_time.in.h: Update.
4612         * gnulib/import/sys_types.in.h: Update.
4613         * gnulib/import/tempname.c: Update.
4614         * gnulib/import/tempname.h: Update.
4615         * gnulib/import/time.in.h: Update.
4616         * gnulib/import/unistd--.h: Update.
4617         * gnulib/import/unistd-safer.h: Update.
4618         * gnulib/import/unistd.in.h: Update.
4619         * gnulib/import/unsetenv.c: Update.
4620         * gnulib/import/verify.h: Update.
4621         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4622         * gnulib/import/wchar.in.h: Update.
4623         * gnulib/import/wctype.in.h: Update.
4624         * gnulib/import/xalloc-oversized.h: Update.
4625         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4626         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4627
4628 2018-08-16  Gary Benson <gbenson@redhat.com>
4629
4630         PR gdb/13000:
4631         * gdb/main.c (captured_main_1): Exit with nonzero status
4632         in batch mode if the last command to be executed failed.
4633         * NEWS: Mention the above.
4634
4635 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4636
4637         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4638         end of warning message.
4639
4640 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4641
4642         PR gdb/22943:
4643         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4644         (aarch64_extract_return_value): Use
4645         aapcs_is_vfp_call_or_return_candidate.
4646         (aarch64_return_in_memory): Likewise.
4647         (aarch64_store_return_value): Likewise.
4648
4649 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4650
4651         * aarch64-tdep.c
4652         (aapcs_is_vfp_call_or_return_candidate): Make static
4653         (pass_in_v_or_stack): Remove function.
4654         (pass_in_v_vfp_candidate): New function.
4655         (aarch64_push_dummy_call): Check for float register candidates.
4656
4657 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4658
4659         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4660         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4661         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4662
4663 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4664
4665         PR build/23399
4666         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4667         (struct ipa_sym_addresses): Rename to...
4668         (struct ipa_sym_addresses_common): ... this.
4669         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4670
4671 2018-08-28  Tom Tromey  <tom@tromey.com>
4672
4673         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4674         (token_fifo): Now a std::vector.
4675         (yylex, c_parse): Update.
4676         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4677         (token_fifo): Now a std::vector.
4678         (yylex, d_parse): Update.
4679         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4680         (token_fifo): Now a std::vector.
4681         (yylex, go_parse): Update.
4682
4683 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4684
4685         * parser-defs.h (struct type_stack) <elements>: Change type to
4686         std::vector<union type_stack_elt>.
4687         <depth, size>: Remove.
4688         * parse.c (parse_exp_in_context_1): Adjust.
4689         (type_stack_reserve): Remove.
4690         (check_type_stack_depth): Remove.
4691         (insert_into_type_stack): Adjust to std::vector.
4692         (insert_type): Likewise.
4693         (push_type): Likewise.
4694         (push_type_int): Likewise.
4695         (insert_type_address_space): Likewise.
4696         (pop_type): Likewise.
4697         (pop_type_int): Likewise.
4698         (pop_typelist): Likewise.
4699         (pop_type_stack): Likewise.
4700         (append_type_stack): Likewise.
4701         (push_type_stack): Likewise.
4702         (get_type_stack): Likewise.
4703         (type_stack_cleanup): Likewise.
4704         (push_typelist): Likewise.
4705         (follow_types): Likewise.
4706         (_initialize_parse): Likewise.
4707
4708 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4709
4710         * NEWS: Mention csky target.
4711
4712 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4713             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4714             Don Breazeal  <donb@codesourcery.com>
4715
4716         * csky-linux-tdep.c: New file.
4717         * csky-tdep.c: Likewise.
4718         * csky-tdep.h: Likewise.
4719         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4720         csky-tdep.o.
4721         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4722         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4723         * configure.tgt: Add csky support.
4724
4725 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4726
4727         * python/py-framefilter.c (py_print_frame): Print frame architecture
4728         when printing on an MI output.
4729
4730 2018-08-27  Tom Tromey  <tom@tromey.com>
4731
4732         PR build/23087:
4733         * configure: Rebuild.
4734         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4735
4736 2018-08-27  Tom Tromey  <tom@tromey.com>
4737
4738         * aarch64-linux-tdep.c
4739         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4740         casts to int.
4741
4742 2018-08-27  Tom Tromey  <tom@tromey.com>
4743
4744         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4745         unsigned.
4746         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4747         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4748         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4749         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4750         unsigned.
4751
4752 2018-08-27  Tom Tromey  <tom@tromey.com>
4753
4754         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4755         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4756
4757 2018-08-27  Tom Tromey  <tom@tromey.com>
4758
4759         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4760         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4761         ULONGEST_MAX.
4762         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4763         ULONGEST_MAX.
4764         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4765         ULONGEST_MAX.
4766         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4767         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4768         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4769         ULONGEST_MAX.
4770         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4771         (ppc64_linux_sigaction_tramp_frame)
4772         (ppc32_linux_sighandler_tramp_frame)
4773         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4774         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4775         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4776         * mn10300-linux-tdep.c (am33_linux_sigframe)
4777         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4778         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4779         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4780         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4781         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4782         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4783         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4784         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4785         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4786         * microblaze-linux-tdep.c
4787         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4788         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4789         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4790         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4791         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4792         * common/common-types.h (ULONGEST_MAX): New define.
4793         (CORE_ADDR_MAX): Fix formatting.
4794         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4795         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4796         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4797         (arm_linux_rt_sigreturn_tramp_frame)
4798         (arm_eabi_linux_sigreturn_tramp_frame)
4799         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4800         (thumb2_eabi_linux_sigreturn_tramp_frame)
4801         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4802         (arm_linux_restart_syscall_tramp_frame)
4803         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4804         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4805         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4806         ULONGEST_MAX.
4807         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4808
4809 2018-08-27  Tom Tromey  <tom@tromey.com>
4810
4811         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4812         CORE_ADDR_MAX.
4813         * mips-tdep.c (mips_deal_with_atomic_sequence)
4814         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4815         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4816         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4817         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4818         CORE_ADDR_MAX.
4819         * aarch64-tdep.c (aarch64_software_single_step): Use
4820         CORE_ADDR_MAX.
4821
4822 2018-08-27  Tom Tromey  <tom@tromey.com>
4823
4824         * linespec.c (complete_linespec_component): Add cast to "char".
4825         * completer.c (completion_tracker::build_completion_result): Add
4826         cast to "char".
4827
4828 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4829
4830         * solist.h (struct solist, struct target_so_ops): Fix
4831         indentation.
4832
4833 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4834
4835         * ada-tasks.c (ada_task_info_s): Remove typedef.
4836         (DEF_VEC_O(ada_task_info_s)): Remove.
4837         (struct ada_tasks_inferior_data): Initialize fields.
4838         <task_list>: Make an std::vector.
4839         (get_ada_tasks_inferior_data): Allocate with new.
4840         (ada_get_task_number): Adjust.
4841         (get_task_number_from_id): Likewise.
4842         (valid_task_id): Likewise.
4843         (ada_get_task_info_from_ptid): Likewise.
4844         (iterate_over_live_ada_tasks): Likewise.
4845         (add_ada_task): Likewise.
4846         (read_known_tasks): Likewise.
4847         (ada_build_task_list): Likewise.
4848         (print_ada_task_info): Likewise.
4849         (info_task): Likewise.
4850         (task_command_1): Likewise.
4851
4852 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4853
4854         * ada-lang.c (add_angle_brackets): Return std::string.
4855
4856 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4857
4858         * python/py-threadevent.c (py_get_event_thread): Initialize
4859         pythread.
4860
4861 2018-08-24  Pedro Alves  <palves@redhat.com>
4862
4863         * python/py-bpevent.c (create_breakpoint_event_object): Use
4864         copy-initialization.
4865         * python/py-continueevent.c (emit_continue_event): Use
4866         copy-initialization.
4867         * python/py-exitedevent.c (create_exited_event_object): Return a
4868         gdbpy_ref<>.
4869         (emit_exited_event): Use copy-initialization.
4870         * python/py-inferior.c (python_new_inferior)
4871         (python_inferior_deleted, add_thread_object): Use
4872         copy-initialization.
4873         * python/py-infevents.c (create_inferior_call_event_object)
4874         (create_register_changed_event_object)
4875         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4876         (emit_inferior_call_event, emit_memory_changed_event)
4877         (emit_register_changed_event): Use copy-initialization.
4878         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4879         Return a gdbpy_ref<>.
4880         (emit_new_objfile_event): Use copy-initialization.
4881         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4882         (emit_clear_objfiles_event): Use copy-initialization.
4883         * python/py-signalevent.c (create_signal_event_object): Use
4884         copy-initialization.
4885         * python/py-threadevent.c (create_thread_event_object): Use
4886         copy-initialization.
4887
4888 2018-08-24  Pedro Alves  <palves@redhat.com>
4889             Simon Marchi  <simon.marchi@ericsson.com>
4890
4891         PR gdb/23379
4892         * python/py-continueevent.c: Include "gdbthread.h".
4893         (create_continue_event_object): Add intro comment.  Add 'ptid'
4894         parameter.  Use it to find thread to pass to
4895         create_thread_event_object.
4896         (emit_continue_event): Pass PTID down to
4897         create_continue_event_object.
4898         * python/py-event.h (py_get_event_thread): Declare.
4899         (create_thread_event_object): Remove default from 'thread'
4900         parameter.
4901         * python/py-stopevent.c (create_stop_event_object): Use
4902         py_get_event_thread.
4903         * python/py-threadevent.c (get_event_thread): Rename to ...
4904         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4905         and use it to find the thread.
4906         (create_thread_event_object): Assert that THREAD isn't null.
4907         Don't find the event thread here.
4908
4909 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4910
4911         * block.h (blockrange, blockranges): New struct declarations.
4912         (struct block): Add new field named `ranges'.
4913         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4914         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4915         macros for accessing ranges in struct block.
4916         (make_blockranges): New declaration.
4917         block.c (make_blockranges): New function.
4918         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4919         for block.
4920         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4921         * blockframe.c (cache_pc_function_block): New static global.
4922         (clear_pc_function_cache): Clear cache_pc_function_block.
4923         (find_pc_partial_function): Move comment to symtab.h.  Add
4924         support for non-contiguous blocks.
4925         * cli/cli-cmds.c (block.h): Include.
4926         (print_disassembly): Handle printing of non-contiguous blocks.
4927         (disassemble_current_function): Likewise.
4928         (disassemble_command): Likewise.
4929
4930         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4931         BLOCK_START.
4932         * blockframe.c (get_pc_function_start): Likewise.
4933         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4934         (gcc_symbol_address): Likewise.
4935         * compile/compile-object-run.c (compile_object_run): Likewise.
4936         * compile/compile.c (get_expr_block_and_pc): Likewise.
4937         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4938         (func_addr_to_tail_call_list): Likewise.
4939         * findvar.c (default_read_var_value): Likewise.
4940         * inline-frame.c (inline_frame_this_id): Likewise.
4941         (skip-inline_frames): Likewise.
4942         * infcmd.c (until_next_command): Likewise.
4943         * linespec.c (convert_linespec_to_sals): Likewise.
4944         * parse.c (parse_exp_in_context_1): Likewise.
4945         * printcmd.c (build_address_symbolic): likewise.
4946         (info_address_command): Likewise.
4947         symtab.c (find_function_start_sal): Likewise.
4948         (skip_prologue_sal): Likewise.
4949         (find_function_alias_target): Likewise.
4950         (find_gnu_ifunc): Likewise.
4951         * stack.c (find_frame_funname): Likewise.
4952         * symtab.c (fixup_symbol_section): Likewise.
4953         (find_function_start_sal): Likewise.
4954         (skip_prologue_sal): Likewsie.
4955         (find_function_alias_target): Likewise.
4956         (find_gnu_ifunc): Likewise.
4957         * tracepoint.c (info_scope_command): Likewise.
4958         * value.c (value_fn_field): Likewise.
4959
4960         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4961         in place of find_pc_partial_function.
4962         * blockframe.c (find_function_entry_range_from_pc): New function.
4963         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4964         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4965         for each range in a block.
4966
4967
4968 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4969
4970         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4971         incrementation.
4972
4973 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4974
4975         * solib-svr4.c (read_program_headers_from_bfd): Return
4976         gdb::optional<gdb::byte_vector>.
4977         (svr4_exec_displacement): Adjust.
4978
4979 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4980
4981         * solib-svr4.c (read_program_header): Return
4982         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4983         (find_program_interpreter): Return
4984         gdb::optional<gdb::byte_vector>.
4985         (scan_dyntag_auxv): Adjust.
4986         (enable_break): Adjust.
4987         (svr4_exec_displacement): Adjust.
4988
4989 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4990
4991         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4992         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4993
4994 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4995
4996         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4997         string_vprintf.
4998         * guile/scm-utils.c (gdbscm_printf): Likewise.
4999         * serial.c (serial_printf): Likewise.
5000         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5001
5002 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5003
5004         * stack.c (print_frame): Print frame architecture when printing on
5005         an MI output.
5006         * NEWS: Mention new "arch" attribute in frame output.
5007
5008 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5009
5010         * arch/aarch64.h (aarch64_regnum): Update comment.
5011
5012 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5013
5014         * NEWS: Add SVE to 8.2 section.
5015
5016 2018-08-21  Pedro Alves  <palves@redhat.com>
5017
5018         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5019         out from gdbscm_parse_function_args.
5020         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5021         gdbscm_parse_function_args_1.
5022
5023 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5024
5025         PR gdb/17816
5026         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5027         operator.
5028
5029 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5030
5031         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5032
5033 2018-08-19  Michael Spang  <spang@google.com>
5034
5035         PR gdb/11786
5036         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5037         for PT_TLS segments.
5038
5039 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5040
5041         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5042         dwarf_variable_value.
5043         * dwarf2-frame.c (class dwarf_expr_executor):
5044         Add override for dwarf_variable_value.
5045         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5046         (class symbol_needs_eval_context): Likewise.
5047         (indirect_synthetic_pointer): Add forward declaration.
5048         (sect_variable_value): New function.
5049         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5050         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5051         for DW_OP_GNU_variable_value.
5052
5053 2018-08-16  Tom Tromey  <tom@tromey.com>
5054
5055         * top.c (read_command_file): Update.
5056         (command_line_input): Remove "repeat" argument.
5057         * ada-lang.c (get_selections): Update.
5058         * linespec.c (decode_line_2): Update.
5059         * defs.h (command_line_input): Remove argument.
5060         * cli/cli-script.c (read_next_line): Update.
5061         * python/py-gdb-readline.c: Update.
5062
5063 2018-08-17  Tom Tromey  <tom@tromey.com>
5064
5065         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5066         command_line_input.
5067
5068 2018-08-15  Tom Tromey  <tom@tromey.com>
5069
5070         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5071
5072 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5073
5074         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5075         If used, use find_pc_partial_function to find address range
5076         to disassemble.
5077         * mi/mi-main.c (mi_cmd_list_features): Report
5078         "data-disassemble-a-option" feature.
5079         * NEWS: Mention new -data-disassemble option -a.
5080
5081 2018-08-13  Tom Tromey  <tom@tromey.com>
5082
5083         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5084
5085 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5086
5087         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5088         (aarch64_linux_collect_sve_regset): Likewise.
5089         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5090         * regcache.h (regcache_map_entry_size): New function.
5091
5092 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5093
5094         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5095         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5096         (SVE_HEADER_VL_LENGTH): Likewise.
5097         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5098         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5099         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5100         (SVE_HEADER_SIZE_OFFSET): Likewise.
5101         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5102         (SVE_HEADER_VL_OFFSET): Likewise.
5103         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5104         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5105         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5106         (SVE_HEADER_SIZE): Likewise.
5107         (aarch64_linux_core_read_vq): Add function.
5108         (aarch64_linux_core_read_description): Check for SVE section.
5109
5110 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5111
5112         * aarch64-fbsd-tdep.c
5113         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5114         collect_size.
5115         * aarch64-linux-tdep.c
5116         (aarch64_linux_iterate_over_regset_sections): Likewise.
5117         * alpha-linux-tdep.c
5118         (alpha_linux_iterate_over_regset_sections):
5119         * alpha-nbsd-tdep.c
5120         (alphanbsd_iterate_over_regset_sections): Likewise.
5121         * amd64-fbsd-tdep.c
5122         (amd64fbsd_iterate_over_regset_sections): Likewise.
5123         * amd64-linux-tdep.c
5124         (amd64_linux_iterate_over_regset_sections): Likewise.
5125         * arm-bsd-tdep.c
5126         (armbsd_iterate_over_regset_sections): Likewise.
5127         * arm-fbsd-tdep.c
5128         (arm_fbsd_iterate_over_regset_sections): Likewise.
5129         * arm-linux-tdep.c
5130         (arm_linux_iterate_over_regset_sections): Likewise.
5131         * corelow.c (get_core_registers_cb): Likewise.
5132         (core_target::fetch_registers): Likewise.
5133         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5134         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5135         * gdbarch.h (void): Regenerate.
5136         * gdbarch.sh: Add supply_size and collect_size.
5137         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5138         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5139         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5140         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5141         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5142         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5143         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5144         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5145         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5146         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5147         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5148         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5149         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5150         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5151         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5152         Likewise.
5153         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5154         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5155         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5156         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5157         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5158         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5159         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5160         Likewise.
5161         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5162         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5163         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5164         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5165         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5166         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5167         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5168         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5169
5170 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5171
5172         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5173         with string_printf.
5174
5175 2018-08-10  Keith Seitz  <keiths@redhat.com>
5176
5177         * compile/compile-c-support.c (add_code_header, add_code_footer):
5178         Move into policy class.
5179         (c_push_user_expression, pop_user_expression_nop)
5180         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5181         (compile_program): New host class.
5182         (c_compile_program): New typedef.
5183         (c_compute_porgram): Use c_compile_program.
5184
5185 2018-08-10  Keith Seitz  <keiths@redhat.com>
5186
5187         * compile/compile-internal.h (compile_instance::~compile_instance):
5188         Remove calls to htab_delete.
5189         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5190         * compile.c (compile_instance::compile_instance): Initialize
5191         htab unique pointers.
5192         (compile_instance::get_cached_type, compile_instance::insert_type)
5193         (compile_instance::error_symbol_once): Update for unique_ptr.
5194
5195 2018-08-10  Keith Seitz  <keiths@redhat.com>
5196
5197         * compile/compile-c-symbols.c (struct symbol_error)
5198         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5199         (compile_instance::insert_symbol_error)
5200         (compile_instance::error_symbol_once): Move to ...
5201         * compile/compile.c: ... here.
5202
5203 2018-08-10  Keith Seitz  <keiths@redhat.com>
5204
5205         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5206         instead of `new_compile_instance'.
5207         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5208         Update description.
5209         If the symbol error map is not initialized, create it.
5210         (generate_c_for_for_one_symbol): Do not check/initialize
5211         the symbol error map.
5212         * compile/compile-c-types.c (compile_c_instance): Make a class.
5213         Update all callers.
5214         (compile_instance::compile_instance): Initialize the type cache.
5215         (get_cached_type): New function.
5216         (insert_type): Update description.
5217         (compile_c_instance::m_default_cflags): Define.
5218         (convert_type): Update description.  Use get_cached_type.
5219         (delete_instance): Moved to destructor.
5220         (new_compile_instance): Moved to constructor.
5221         * compile/compile-c.h (compile_c_instance): Make class inheriting
5222         from compile_instance.
5223         <base>: Remove field.
5224         <type_map, symbol_err_map>: Move to base class.
5225         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5226         * compile/compile-internal.h (compile_instance): Make class.
5227         <type_map_t, symbol_err_map_t>: Define.
5228         <fe>: Rename to `m_gcc_fe'.
5229         <scope, block, gcc_target_options>: Add `m_' prefix.
5230         <m_type_map, m_symbol_err_map>: New fields, moved from
5231         compile_c_instance.
5232         <destroy>: Remove.
5233         (convert_type, new_compile_instance): Remove.
5234         * compile/compile.c (cleanup_compile_instance): Remove.
5235         (compile_to_object): Use unique_ptr to eliminate cleanups.
5236         (compile_instance::set_print_callback, compile_instance::version)
5237         (compile_instance::set_verbose)
5238         (compile_instance::set_driver_filename)
5239         (compile_instance::set_triplet_regexp)
5240         (compile_instance::set_arguments)
5241         (compile_instance::set_source_file)
5242         (compile_instance::compile): Define.
5243
5244 2018-08-10  Keith Seitz  <keiths@redhat.com>
5245
5246         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5247         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5248         gcc-c-fe.def to define C plugin.
5249         (delete_instance): Delete `c_plugin'.
5250         (new_compile_instance): Initialize `c_plugin'.
5251         * compile/compile-c.h: Include gcc_c_plugin.h.
5252         (struct compile_c_instance) <c_plugin>: New member.
5253         * gcc-c-plugin.h: New file.
5254         Update all callers with API change.
5255
5256 2018-08-10  Keith Seitz  <keiths@redhat.com>
5257
5258         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5259         (HFILES_NO_SRCDIR): ... to here.
5260         Add compile-internal.h and compile-c.h.
5261         * compile/compile-c-support.c: Include compile-c.h.
5262         * compile/compile-c-symbols.c: Include compile-c.h.
5263         (generate_c_for_variable_locations): Update comment.
5264         * compile/compile-c-types.c: Include compile-c.h.
5265         * compile/compile-c.h: New file -- moved C language declarations
5266         from other files here.
5267         * compile/compile-internal.h: Do not include hashtab.h or
5268         common/enum-flags.h.
5269         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5270         (gcc_convert_symbol, gcc_symbol_address)
5271         (generate_c_for_variable_locations, c_get_mode_for_size)
5272         (c_get_range_decl_name): Definitions moved to compile-c.h.
5273         * compile/compile-loc2c.c: Include compile-c.h.
5274
5275 2018-08-10  Keith Seitz  <keiths@redhat.com>
5276
5277         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5278         (c_symbol_substitution_name): ... this.
5279         Update all callers.
5280
5281 2018-08-10  Keith Seitz  <keiths@redhat.com>
5282
5283         * compile/compile-c-support.c (c_compute_program): Use
5284         unique_xmalloc_ptr to eliminate cleanup.
5285         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5286         Return a unique_xmalloc_ptr and eliminate cleanup.
5287         * compile/compile-internal.h (generate_c_for_variable_locations):
5288         Return unique_xmalloc_ptr and update description.
5289
5290 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5291
5292         * corelow.c (core_target::get_core_register_section): Rename
5293         min_size to section_min_size.
5294
5295 2018-08-09  Jim Wilson  <jimw@sifive.com>
5296
5297         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5298         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5299         * NEWS: Mention new GNU/Linux RISC-V target.
5300         * configure.host: Add riscv*-*-linux*.
5301         * configure.nat: Add riscv*.
5302         * configure.tgt: Add riscv*-*-linux*.
5303         * riscv-linux-nat.c: New file.
5304         * riscv-linux-tdep.c: New file.
5305
5306 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5307
5308         * infrun.c (resume): Make static, add forward declaration.
5309         (proceed): Update header comment.
5310         * infrun.h (resume): Delete declaration.
5311
5312 2018-08-09  Tom Tromey  <tom@tromey.com>
5313
5314         * riscv-tdep.h: Minor formatting fixes.
5315
5316 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5317
5318         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5319         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5320         (test_mkdir_recursive): Likewise.
5321         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5322
5323 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5324
5325         * valarith.c (value_subscripted_rvalue): If an array is not in
5326         memory, and we don't know the upper bound, then we can't know that
5327         the requested element exists or not.
5328
5329 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5330
5331         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5332         (target_options_to_string): Add comment.
5333
5334 2018-08-08  Tom Tromey  <tom@tromey.com>
5335
5336         * unittests/scoped_mmap-selftests.c: Check result of "write".
5337
5338 2018-08-08  Jim Wilson  <jimw@sifive.com>
5339
5340         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5341         (decode_register_index_short): New.
5342         (decode_j_type_insn, decode_cj_type_insn): New.
5343         (decode_b_type_insn, decode_cb_type_insn): New.
5344         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5345         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5346         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5347         is_c_sw_insn instead of is_sw_insn.
5348         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5349         (riscv_software_single_step): New.
5350         * riscv-tdep.h (riscv_software_single_step): Declare.
5351
5352         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5353         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5354
5355 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5356
5357         PR gdb/18050:
5358         * target.c (dispose_inferior): Don't dispose of inferiors that are
5359         already killed.
5360
5361 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5362
5363         * remote.c (remote_target::download_tracepoint): Change char* to
5364         const char*.
5365
5366 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5367
5368         * target.h (target_options_to_string): Return an std::string.
5369         * target.c (str_comma_list_concat_elem): Return void, use
5370         std::string.
5371         (do_option): Likewise.
5372         (target_options_to_string): Return an std::string.
5373         * linux-nat.c (linux_nat_target::wait): Adjust.
5374         * target-debug.h (target_debug_print_options): Adjust.
5375
5376 2018-08-07  Tom Tromey  <tom@tromey.com>
5377
5378         * Makefile.in (CPPFLAGS): New variable.
5379         (INTERNAL_CPPFLAGS): Use it.
5380
5381 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5382
5383         * NEWS: Mention the index cache.
5384
5385 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5386
5387         * common/pathstuff.h (get_standard_cache_dir): New.
5388         * common/pathstuff.c (get_standard_cache_dir): New.
5389         * build-id.h (build_id_to_string): New.
5390         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5391         DEBUG_STR_SUFFIX): Move to here.
5392         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5393         DEBUG_STR_SUFFIX): Move from there.
5394         (write_psymtabs_to_index): Make non-static, add basename
5395         parameter.  Write to temporary files, rename when done.
5396         (save_gdb_index_command): Adjust call to
5397         write_psymtabs_to_index.
5398         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5399         field.
5400         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5401         (get_gdb_index_contents_from_cache): New.
5402         (get_gdb_index_contents_from_cache_dwz): New.
5403         (dwarf2_initialize_objfile): Read index from cache.
5404         (dwarf2_build_psymtabs): Save to index.
5405         * dwarf-index-cache.h: New file.
5406         * dwarf-index-cache.c: New file.
5407         * dwarf-index-write.h: New file.
5408
5409 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5410
5411         * gnulib/aclocal.m4: Re-generate.
5412         * gnulib/config.in: Re-generate.
5413         * gnulib/configure: Re-generate.
5414         * gnulib/import/Makefile.am: Re-generate.
5415         * gnulib/import/Makefile.in: Re-generate.
5416         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5417         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5418         * gnulib/import/m4/mkdir.m4: New file.
5419         * gnulib/import/mkdir.c: New file.
5420         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5421         module.
5422
5423 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5424
5425         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5426         * common/scoped_mmap.c: New file.
5427         * common/scoped_mmap.h (destroy): New method.
5428         (~scoped_mmap, reset): Use destroy.
5429         (scoped_mmap): New move constructor.
5430         (mmap_file): New declaration.
5431         * unittests/scoped_mmap-selftests.c (test_normal,
5432         test_invalid_filename, run_tests): New functions.
5433         (_initialize_scoped_mmap_selftests): Register selftest.
5434
5435 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5436
5437         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5438         (read_gdb_index_from_buffer): ... this.  Remove section
5439         parameter, add buffer parameter.
5440         (get_gdb_index_contents_ftype,
5441         get_gdb_index_contents_dwz_ftype): New typedefs.
5442         (dwarf2_read_gdb_index): Add callback parameters to get the
5443         index contents.
5444         (get_gdb_index_contents_from_section): New.
5445         (dwarf2_initialize_objfile): Update call to
5446         dwarf2_read_gdb_index.
5447
5448 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5449
5450         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5451         (gdb_open_cloexec): Likewise.
5452         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5453         (commandline_from_pid): Likewise.
5454         (linux_xfer_osdata_threads): Likewise.
5455         (linux_xfer_osdata_fds): Likewise.
5456         * ada-lang.c (is_package_name): Likewise.
5457         * auxv.c (procfs_xfer_auxv): Likewise.
5458         * breakpoint.c (print_one_breakpoint_location): Use
5459         uiout::field_fmt.
5460         (print_one_catch_solib): Use string_printf.
5461         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5462         (add_pe_forwarded_sym): Likewise.
5463         * dwarf2read.c (create_type_unit_group): Likewise.
5464         (build_error_marker_type): Likewise.
5465         * infcall.c (get_function_name): Likewise.
5466         * valprint.c (print_converted_chars_to_obstack): Likewise.
5467         * xtensa-tdep.c (xtensa_register_type): Likewise.
5468
5469 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5470
5471         * remote.c (remote_target::download_tracepoint): Fix format
5472         string errors.
5473
5474 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5475
5476         * tracefile.c: Include common/byte-vector.h.
5477         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5478         with trace_regblock_size if needed.  Update uses of buf.
5479
5480 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5481
5482         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5483         std::vector<unsigned char>.
5484         * tracepoint.c (collection_list::collection_list): Remove
5485         m_regs_mask initializer from initializer list.  Resize
5486         m_regs_mask using the largest remote register number.
5487         (collection_list::add_remote_register): Remove size check on
5488         m_regs_mask.  Use at to access element.
5489         (collection_list::stringify): Change type of temp_buf to
5490         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5491         stringify the register mask.  Use pack_hex_byte for the register
5492         mask.
5493
5494 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5495
5496         * tracepoint.h (class collection_list) <add_register>: Remove.
5497         <add_remote_register, add_ax_registers, add_local_register>:
5498         Declare.
5499         <add_memrange>: Add scope parameter.
5500         * tracepoint.c (encode_actions_1): Likewise.
5501         (collection_list::add_register): Rename to ...
5502         (collection_list::add_remote_register): ... this.  Update
5503         comment.
5504         (collection_list::add_ax_registers, add_local_register): New
5505         methods.
5506         (collection_list::add_memrange): Add scope parameter.  Call
5507         add_local_register instead of add_register.
5508         (finalize_tracepoint_aexpr): New function.
5509         (collection_list::collect_symbol): Update calls to add_memrange.
5510         Call add_local_register instead of add_register.  Call
5511         add_ax_registers.  Call finalize_tracepoint_aexpr.
5512         (encode_actions_1): Get remote regnos for $reg action.  Call
5513         add_remote_register, add_ax_registers, and add_local_register.
5514         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5515         (validate_actionline): Call finalize_tracepoint_aexpr.
5516
5517 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5518
5519         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5520         Replace array buf with gdb::char_vector buf, of size
5521         get_remote_packet_size ().  Replace references to buf and
5522         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5523         and xsnprintf with snprintf.  Raise errors if the buffer is too
5524         small.
5525
5526 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5527
5528         * remote.c (remote_target::download_tracepoint): Fix the has_more
5529         predicate in the QTDP action list iteration.
5530
5531 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5532
5533         * remote.c (remote_target::download_tracepoint): Fix indentation
5534         in for block.
5535
5536 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5537
5538         * proc-api.c (_initialize_proc_api): Remove c, unused.
5539         * procfs.c (procfs_init_inferior): Remove signals, unused.
5540         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5541         unused.
5542
5543 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5544             Andrew Burgess  <andrew.burgess@embecosm.com>
5545
5546         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5547         'W_STOPCODE (0)' as this could be ambiguous.
5548
5549 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5550
5551         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5552         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5553         "ai_socktype").
5554
5555 2018-08-02  Tom Tromey  <tom@tromey.com>
5556
5557         PR symtab/16842.
5558         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5559         symbols.
5560         (process_structure_scope): Likewise.
5561
5562 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5563
5564         PR gdb/22629:
5565         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5566         kill inferior.
5567
5568 2018-08-02  Tom Tromey  <tom@tromey.com>
5569
5570         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5571         (darwin_suspend_inferior, darwin_resume_inferior)
5572         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5573         (darwin_check_new_threads): Check result of get_darwin_inferior.
5574
5575 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5576
5577         GDB 8.1.1 released.
5578
5579 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5580
5581         * varobj.c (varobj_get_path_expr_parent): Report an error if
5582         parent is a dynamic varobj.
5583
5584 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5585
5586         * gnulib/aclocal.m4: Re-generate.
5587         * gnulib/config.in: Re-generate.
5588         * gnulib/configure: Re-generate.
5589         * gnulib/import/Makefile.in: Re-generate.
5590         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5591         * gnulib/import/m4/onceonly.m4: Re-generate.
5592
5593 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5594
5595         * target-descriptions.c (struct xml_test_tdesc): New.
5596         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5597         (record_xml_tdesc): Update.
5598         (maintenance_check_xml_descriptions): Update.
5599         * target-descriptions.h (record_xml_tdesc): Update comment.
5600
5601 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5602
5603         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5604         checking array bounds are defined.
5605
5606 2018-07-30  Tom Tromey  <tom@tromey.com>
5607
5608         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5609         irreflexivity violation.
5610
5611 2018-07-30  Tom Tromey  <tom@tromey.com>
5612
5613         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5614         * value.c (unpack_long): Remove lint code.
5615         * valops.c (value_ind): Remove lint code.
5616         * valarith.c (value_x_binop, value_x_unop, value_equal)
5617         (value_pos): Remove lint code.
5618
5619 2018-07-28  Tom de Vries  <tdevries@suse.de>
5620
5621         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5622         with undefined upper bound as <optimized out>.
5623
5624 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5625
5626         * gcore.in: Rename variable "name" to "prefix".  Expand
5627         "usage" text.
5628
5629 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5630
5631         * windows-nat.c (windows_nat_target::create_inferior): Update to
5632         call close() in global namespace.
5633
5634 2018-07-26  Tom Tromey  <tom@tromey.com>
5635
5636         * dwarf-index-write.c (add_address_entry): Don't add objfile
5637         offsets.
5638         * dbxread.c (find_stab_function): Rename from
5639         find_stab_function_addr.  Return a bound_minimal_symbol.
5640         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5641         Don't add objfile offsets.
5642         (end_psymtab): Use raw_text_low, raw_text_high,
5643         MSYMBOL_VALUE_RAW_ADDRESS.
5644         (read_ofile_symtab): Update.
5645         (process_one_symbol): Update.
5646         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5647         offsets.
5648         (dw2_relocate): Remove.
5649         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5650         searching addrmap.
5651         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5652         Update.
5653         (process_psymtab_comp_unit_reader, add_partial_symbol)
5654         (add_partial_subprogram, dwarf2_ranges_read): Update.
5655         (load_partial_dies): Update.
5656         (add_address_entry): Don't add objfile offsets.
5657         (dwarf2_build_include_psymtabs): Update.
5658         (create_addrmap_from_aranges): Don't add objfile offsets.
5659         (dw2_find_pc_sect_compunit_symtab): Update.
5660         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5661         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5662         Update.
5663         (parse_partial_symbols): Don't add objfile offsets.  Use
5664         raw_text_low, raw_text_high.  Update.
5665         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5666         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5667         or call 'relocate' quick function.  Clear psymbol_map.
5668         * psympriv.h (struct partial_symbol) <address>: Add section
5669         offset.
5670         <set_unrelocated_address>: Rename from set_address.
5671         <raw_text_low, raw_text_high>: New methods.
5672         <text_low, text_high>: Add objfile parameter.
5673         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5674         set_unrelocated_address.
5675         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5676         (find_pc_psymbol): Update.
5677         (fixup_psymbol_section, relocate_psymtabs): Remove.
5678         (dump_psymtab, psym_functions): Update.
5679         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5680         parameter.
5681         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5682         (start_psymtab_common): Update.
5683         * symfile-debug.c (debug_qf_relocate): Remove.
5684         (debug_sym_quick_functions): Update.
5685         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5686         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5687         Update.
5688
5689 2018-07-26  Tom Tromey  <tromey@redhat.com>
5690
5691         * dbxread.c (end_psymtab): Use text_high_valid and
5692         text_low_valid.
5693         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5694         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5695         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5696         Update comment.
5697         <text_low_valid, text_high_valid>: New fields.
5698         <set_text_low, set_text_high>: Update.
5699         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5700
5701 2018-07-26  Tom Tromey  <tom@tromey.com>
5702
5703         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5704         Update.
5705         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5706         textlow and texthigh fields.
5707         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5708         Update.
5709         * mdebugread.c (parse_lines, parse_partial_symbols)
5710         (psymtab_to_symtab_1): Update.
5711         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5712         Rename fields.  Update comment.  Now private.
5713         <text_low, text_high, set_text_low, set_text_high>: New methods.
5714         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5715         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5716         (start_psymtab_common, maintenance_info_psymtabs)
5717         (maintenance_check_psymtabs): Update.
5718         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5719         texthigh fields.
5720         (scan_xcoff_symtab): Update.
5721
5722 2018-07-26  Tom Tromey  <tromey@redhat.com>
5723
5724         * psympriv.h (struct partial_symbol) <unrelocated_address,
5725         address, set_address>: New methods.
5726         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5727         (fixup_psymbol_section, relocate_psymtabs): Update.
5728         (print_partial_symbols): Add 'objfile' parameter.  Update.
5729         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5730         Update.
5731
5732 2018-07-26  Tom Tromey  <tom@tromey.com>
5733
5734         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5735         (debug_names::write_psymbols): Update.
5736         * psympriv.h (struct partial_symbol): Derive from
5737         general_symbol_info.
5738         <obj_section>: New method.
5739         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5740         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5741         (find_pc_sect_psymbol, fixup_psymbol_section)
5742         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5743         (print_partial_symbols, recursively_search_psymtabs)
5744         (compare_psymbols, psymbol_hash, psymbol_compare)
5745         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5746         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5747
5748 2018-07-26  Tom Tromey  <tromey@redhat.com>
5749
5750         * dbxread.c (end_psymtab): Remove dead code.
5751
5752 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5753
5754         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5755         DWARF unwinders are disabled.
5756         * dwarf2-frame.c: Add dwarf2read.h include.
5757         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5758         disabled.
5759         (dwarf2_frame_unwinders_enabled_p): Define.
5760         (show_dwarf_unwinders_enabled_p): New function.
5761         (_initialize_dwarf2_frame): Register switch to control DWARF
5762         unwinder use.
5763         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5764         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5765         (show_dwarf_cmdlist): Remove static keyword.
5766         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5767         (show_dwarf_cmdlist): Declare.
5768         * NEWS: Document new feature.
5769
5770 2018-07-26  Tom de Vries  <tdevries@suse.de>
5771
5772         PR breakpoints/23366
5773         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5774
5775 2018-07-26  Tom de Vries  <tdevries@suse.de>
5776
5777         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5778         DW_AT_count can't be translated to a dynamic prop.
5779
5780 2018-07-25  Tom de Vries  <tdevries@suse.de>
5781
5782         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5783         try/catch.
5784
5785 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5786
5787         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5788
5789 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5790
5791         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5792
5793 2018-07-24  Keith Seitz  <keiths@redhat.comt
5794
5795         PR symtab/23010
5796         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5797         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5798         instead of add_symbol_to_list.
5799         (read_file_scope): Call prepare_one_comp_unit before reading
5800         any other DIEs.
5801
5802 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5803
5804         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5805
5806 2018-07-24  Tom Tromey  <tom@tromey.com>
5807
5808         * utils.c (malloc, realloc, free): Don't declare.
5809         * configure, config.in: Rebuild.
5810         * configure.ac: Don't check for declarations of free, malloc, or
5811         realloc.
5812
5813 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5814
5815         * aarch64-linux-nat.c
5816         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5817         variable.
5818         * arm-linux-nat.c (fetch_regs): Likewise.
5819         (store_regs): Likewise.
5820         (fetch_vfp_regs): Likewise.
5821         (store_vfp_regs): Likewise.
5822         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5823         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5824         (arm_linux_nat_target::insert_watchpoint): Likewise.
5825         (arm_linux_nat_target::remove_watchpoint): Likewise.
5826         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5827         Likewise.
5828         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5829         Likewise.
5830         * ppc-linux-nat.c (fetch_register): Likewise.
5831         (fetch_all_gp_regs): Likewise.
5832         (fetch_ppc_registers): Likewise.
5833         (store_all_gp_regs): Likewise.
5834         (store_ppc_registers): Likewise.
5835         (hwdebug_insert_point): Likewise.
5836         (can_use_watchpoint_cond_accel): Likewise.
5837         * remote-sim.c (gdb_os_write_stdout): Likewise.
5838
5839 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5840             Tom Tromey  <tom@tromey.com>
5841
5842         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5843         test for it.
5844         * configure: Rebuild.
5845
5846 2018-07-22  Tom Tromey  <tom@tromey.com>
5847
5848         * regformats/regdat.sh: Define xmltarget_${name} inside
5849         #ifndef IN_PROCESS_AGENT.
5850
5851 2018-07-22  Tom Tromey  <tom@tromey.com>
5852
5853         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5854
5855 2018-07-22  Tom Tromey  <tom@tromey.com>
5856
5857         * symfile.c (reread_symbols): Notify iter, not objfile.
5858
5859 2018-07-22  Tom Tromey  <tom@tromey.com>
5860
5861         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5862         Use arch_ops.
5863         (ravenscar_thread_target::prepare_to_store): Likewise.
5864
5865 2018-07-22  Tom Tromey  <tom@tromey.com>
5866
5867         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5868         unused variable.  Call value_fetch_lazy when needed.
5869         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5870         Remove unused variable.  Call value_fetch_lazy when needed.
5871
5872 2018-07-22  Tom Tromey  <tom@tromey.com>
5873
5874         * m32c-tdep.c (mark_dma): Return void.
5875         (make_regs): Remove unused declarations.
5876
5877 2018-07-22  Tom Tromey  <tom@tromey.com>
5878
5879         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5880         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5881         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5882         bkscm_get_valid_block_smob_arg_unsafe for effect.
5883
5884 2018-07-22  Tom Tromey  <tom@tromey.com>
5885
5886         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5887         value_type.
5888
5889 2018-07-22  Tom Tromey  <tom@tromey.com>
5890
5891         * windows-nat.c (saved_context): Conditionally define.
5892         * remote.c (remote_target::remote_btrace_maybe_reopen):
5893         Conditionally declare "warned".
5894         * inflow.c (sigquit_ours): Conditionally define.
5895         (new_tty): Move "tty" declaration inside #if.
5896         * guile/guile.c (guile_datadir): Conditionally define.
5897         * charset.c (set_be_le_names): Move some declarations inside #if.
5898         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5899         #if.
5900         (parse_xml_btrace_conf): Likewise.
5901
5902 2018-07-22  Tom Tromey  <tom@tromey.com>
5903
5904         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5905
5906 2018-07-22  Tom Tromey  <tom@tromey.com>
5907
5908         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5909         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5910         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5911         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5912         * stack.c (frame_apply_level_command): Remove unused variable.
5913         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5914         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5915         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5916         unused variable.
5917         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5918         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5919         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5920         variable.
5921         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5922         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5923         variable.
5924         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5925         Remove unused variable.
5926         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5927         variable.
5928         * common/tdesc.c (print_xml_feature::visit): Remove unused
5929         variable.
5930         * compile/compile-object-load.c (store_regs): Remove unused
5931         variables.
5932         * complaints.c (clear_complaints): Remove unused variable.
5933         * corelow.c (core_target_open): Remove unused variable.
5934         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5935         variable.
5936         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5937         variable.
5938         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5939         variable.
5940         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5941         variable.
5942         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5943         variable.
5944         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5945         variable.
5946         * ia64-tdep.c (examine_prologue): Remove unused variable.
5947         * infcall.c (run_inferior_call): Remove unused variable.
5948         * inferior.c (exit_inferior): Remove unused variable.
5949         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5950         * linespec.c (decode_line_2): Remove unused variable.
5951         * linux-nat.c (super_close): Remove.
5952         * linux-tdep.c (linux_info_proc): Remove unused variable.
5953         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5954         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5955         Remove unused variable.
5956         * parse.c (find_minsym_type_and_address): Remove unused variable.
5957         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5958         variable.
5959         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5960         variable.
5961         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5962         variables.
5963         * record-btrace.c (record_btrace_target::store_registers): Remove
5964         unused variable.
5965         (cmd_show_record_btrace_cpu): Remove unused variable.
5966         * riscv-tdep.c (riscv_register_reggroup_p)
5967         (riscv_push_dummy_call, riscv_return_value): Remove unused
5968         variable.
5969         * rust-exp.y (literal): Remove unused variable.
5970         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5971         unused variable.
5972         <STRUCTOP_ANONYMOUS>: Likewise.
5973         * s390-linux-tdep.c (s390_linux_init_abi_31)
5974         (s390_linux_init_abi_64): Remove unused variable.
5975         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5976         (file_select_thread, net_windows_open, _initialize_ser_windows):
5977         Remove unused variables.
5978         * symtab.c (find_pc_sect_line): Remove unused variable.
5979         * target-memory.c (compute_garbled_blocks): Remove unused
5980         variable.
5981         (target_write_memory_blocks): Remove unused variable.
5982         * target.c (target_stack::unpush): Remove unused variables.
5983         * tracepoint.c (start_tracing, all_tracepoint_actions)
5984         (merge_uploaded_trace_state_variables)
5985         (print_one_static_tracepoint_marker): Remove unused variable.
5986         * unittests/basic_string_view/element_access/char/1.cc (test01):
5987         Remove unused variable.
5988         * windows-nat.c (windows_continue, windows_add_all_dlls)
5989         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5990         Remove unused variables.
5991
5992 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5993
5994         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5995         attr_profile in HAVE_ELF.
5996         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5997         HAVE_ELF.
5998
5999 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6000
6001         * frame.c (frame_register_unwind): Change parameter name.
6002         (frame_unwind_register): Likewise.
6003         (frame_unwind_register_value): Likewise.
6004         (frame_unwind_register_signed): Likewise.
6005         (frame_unwind_register_unsigned): Likewise.
6006         * frame.h (frame_register_unwind): Likewise.
6007         (frame_unwind_register): Likewise.
6008         (frame_unwind_register_value): Likewise.
6009         (frame_unwind_register_signed): Likewise.
6010         (frame_unwind_register_unsigned): Likewise.
6011         (frame_unwind_arch): Likewise.
6012
6013 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6014
6015         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6016         ISA maintenance.
6017
6018 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6019
6020         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6021         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6022         hand.
6023
6024 2018-07-20  Keith Seitz  <keiths@redhat.com>
6025
6026         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6027         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6028         m_compunit_symtab, m_language>: Add "m_" prefix.
6029         Update all uses.
6030         * buildsym.c: Update all uses.
6031
6032 2018-07-20  Tom Tromey  <tom@tromey.com>
6033
6034         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6035         * buildsym.h (record_line_ftype): Remove typedef.
6036
6037 2018-07-20  Tom Tromey  <tom@tromey.com>
6038
6039         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6040         (end_expandable_symtab): Likewise.
6041         (end_symtab_get_static_block): Likewise.
6042         (end_symtab_from_static_block): Likewise.
6043         * buildsym-legacy.c (augment_type_symtab): Remove.
6044         (end_expandable_symtab): Remove.
6045         (end_symtab_get_static_block): Remove.
6046         (end_symtab_from_static_block): Remove.
6047
6048 2018-07-20  Tom Tromey  <tom@tromey.com>
6049
6050         * dwarf2read.c: Include buildsym.h.
6051         (struct dwarf2_cu) <builder>: New method.
6052         (fixup_go_packaging): Update.
6053         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6054         use scoped_free_pendings.
6055         (using_directives): Add "cu" parameter, remove "language".
6056         (read_import_statement, setup_type_unit_groups, )
6057         (read_func_scope, read_lexical_block_scope)
6058         (dwarf2_record_block_ranges, read_namespace): Update.
6059         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6060         (lnp_state_machine::handle_end_sequence): Update.
6061         (class lnp_state_machine) <m_cu>: New member.
6062         <m_record_line_callback>: Remove.
6063         <m_currently_recording_lines>: New member.
6064         (lnp_state_machine::handle_set_file): Update.
6065         (noop_record_line): Remove.
6066         (dwarf_record_line_p): Add cu parameter.
6067         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6068         (lnp_state_machine::record_line)
6069         (lnp_state_machine::lnp_state_machine)
6070         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6071         (dwarf_decode_lines): Update.
6072         (dwarf2_start_subfile): Add cu parameter.
6073         (dwarf2_start_symtab, new_symbol): Update.
6074         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6075         Remove dwarf2_per_objfile parameter.
6076         (dwarf_decode_macros): Update.
6077
6078 2018-07-20  Tom Tromey  <tom@tromey.com>
6079
6080         * stabsread.c (define_symbol): Update.
6081         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6082         * dwarf2read.c (new_symbol): Update.
6083         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6084         * cp-namespace.c: Include buildsym.h.
6085         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6086         * buildsym-legacy.c (get_buildsym_compunit): New function.
6087
6088 2018-07-20  Tom Tromey  <tom@tromey.com>
6089
6090         * xcoffread.c: Include buildsym-legacy.h.
6091         * windows-nat.c: Include buildsym-legacy.h.
6092         * stabsread.c: Include buildsym-legacy.h.
6093         * mdebugread.c: Include buildsym-legacy.h.
6094         * buildsym-legacy.h: New file.
6095         * buildsym-legacy.c: New file, from buildsym.c.
6096         * go32-nat.c: Include buildsym-legacy.h.
6097         * dwarf2read.c: Include buildsym-legacy.h.
6098         * dbxread.c: Include buildsym-legacy.h.
6099         * cp-namespace.c: Include buildsym-legacy.h.
6100         * coffread.c: Include buildsym-legacy.h.
6101         * buildsym.h: Move some contents to buildsym-legacy.h.
6102         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6103         buildsym-legacy.c.
6104         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6105
6106 2018-07-20  Tom Tromey  <tom@tromey.com>
6107
6108         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6109         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6110         (buildsym_compunit::buildsym_compunit)
6111         (buildsym_compunit::~buildsym_compunit)
6112         (buildsym_compunit::get_macro_table): Define.
6113
6114 2018-07-20  Tom Tromey  <tom@tromey.com>
6115
6116         * buildsym.c (reset_symtab_globals): Remove.
6117         (buildsym_compunit::end_symtab_from_static_block): Update.
6118         (buildsym_compunit::augment_type_symtab): Update.
6119         (end_symtab_from_static_block): Call free_buildsym_compunit.
6120         (augment_type_symtab, end_symtab, end_expandable_symtab):
6121         Likewise.
6122
6123 2018-07-20  Tom Tromey  <tom@tromey.com>
6124
6125         * arch-utils.c: Do not include buildsym.h.
6126         * mipsread.c: Do not include buildsym.h.
6127         * machoread.c: Do not include buildsym.h.
6128         * elfread.c: Do not include buildsym.h.
6129
6130 2018-07-20  Tom Tromey  <tom@tromey.com>
6131
6132         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6133         initialization.
6134         (buildsym_compunit): Add new constructor.
6135         (struct buildsym_compunit) <get_last_source_file, finish_block,
6136         record_block_range, start_subfile, patch_subfile_names,
6137         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6138         set_last_source_start_addr, get_last_source_start_addr,
6139         get_local_using_directives, set_local_using_directives,
6140         get_global_using_directives, outermost_context_p,
6141         get_current_context_stack, get_context_stack_depth,
6142         get_current_subfile, get_local_symbols, get_file_symbols,
6143         get_global_symbols, record_debugformat, record_producer,
6144         push_context, pop_context, end_symtab_get_static_block,
6145         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6146         New public methods.
6147         <record_pending_block, finish_block_internal, make_blockvector,
6148         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6149         private methods.
6150         Update all users.
6151
6152 2018-05-22  Tom Tromey  <tom@tromey.com>
6153
6154         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6155         parameter.
6156         (finish_block_internal): Update.
6157
6158 2018-07-20  Tom Tromey  <tom@tromey.com>
6159
6160         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6161         parameter.
6162         (finish_block_internal): Update.
6163
6164 2018-07-20  Tom Tromey  <tom@tromey.com>
6165
6166         * buildsym.h (EXTERN): Don't define or undef.
6167         * buildsym.c (EXTERN): Don't define.
6168
6169 2018-07-20  Tom Tromey  <tom@tromey.com>
6170
6171         * buildsym.c: Remove TODO comment.
6172
6173 2018-07-20  Tom Tromey  <tom@tromey.com>
6174
6175         * coffread.c (coff_symtab_read): Update.
6176         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6177         (xcoff_new_init): Update.
6178         * mipsread.c (mipscoff_new_init): Update.
6179         * mdebugread.c (mdebug_build_psymtabs): Update.
6180         * elfread.c (elf_new_init): Update.
6181         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6182         Update.
6183         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6184         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6185         (stabsect_build_psymtabs): Update.
6186         * buildsym.h (buildsym_init): Don't declare.
6187         * buildsym.c: Update comment.
6188         (prepare_for_building): Remove.
6189         (start_symtab, restart_symtab): Update.
6190         (reset_symtab_globals): Update comment.
6191         (buildsym_init): Remove.
6192
6193 2018-07-20  Tom Tromey  <tom@tromey.com>
6194
6195         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6196         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6197         (read_enum_type, common_block_start, common_block_end)
6198         (cleanup_undefined_types_1, finish_global_stabs): Update.
6199         * mdebugread.c (psymtab_to_symtab_1): Update.
6200         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6201         (read_lexical_block_scope, new_symbol): Update.
6202         * dbxread.c (process_one_symbol): Update.
6203         * coffread.c (coff_symtab_read, process_coff_symbol)
6204         (coff_read_enum_type): Update.
6205         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6206         declare.
6207         (get_local_symbols, get_file_symbols, get_global_symbols): New
6208         functions.
6209         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6210         m_global_symbols.
6211         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6212         (~scoped_free_pendings): Update.
6213         (finish_block, prepare_for_building, reset_symtab_globals)
6214         (end_symtab_get_static_block, end_symtab_with_blockvector)
6215         (augment_type_symtab, push_context): Update.
6216         (get_local_symbols, get_file_symbols, get_global_symbols): New
6217         functions.
6218         (buildsym_init): Update.
6219
6220 2018-07-20  Tom Tromey  <tom@tromey.com>
6221
6222         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6223         (process_full_type_unit): Likewise.
6224         (dwarf2_start_symtab): Set list_in_scope.
6225
6226 2018-07-20  Tom Tromey  <tom@tromey.com>
6227
6228         * dwarf2read.c (process_psymtab_comp_unit_reader)
6229         (build_type_psymtabs_reader): Do not set list_in_scope.
6230
6231 2018-07-20  Tom Tromey  <tom@tromey.com>
6232
6233         * buildsym.c (free_pendings): Remove.
6234         (add_symbol_to_list, scoped_free_pendings)
6235         (finish_block_internal, buildsym_init): Update.
6236
6237 2018-07-20  Tom Tromey  <tom@tromey.com>
6238
6239         * xcoffread.c (read_xcoff_symtab): Update.
6240         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6241         Update.
6242         * dbxread.c (process_one_symbol): Update.
6243         * coffread.c (coff_symtab_read): Update.
6244         * buildsym.h (finish_block): Update.
6245         * buildsym.c (finish_block): Remove "listhead" argument.
6246         (end_symtab_get_static_block): Update.
6247
6248 2018-07-20  Tom Tromey  <tom@tromey.com>
6249
6250         * buildsym.h (class scoped_free_pendings): Remove constructor.
6251         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6252         method.
6253         <m_pending_block_obstack, m_pending_blocks>: New members.
6254         (pending_block_obstack, pending_blocks): Remove.
6255         (scoped_free_pendings::scoped_free_pendings): Default.
6256         (~scoped_free_pendings): Update.
6257         (free_pending_blocks): Remove.
6258         (finish_block_internal, record_pending_block, make_blockvector)
6259         (end_symtab_get_static_block, augment_type_symtab, push_context)
6260         (buildsym_init): Update.
6261
6262 2018-07-20  Tom Tromey  <tom@tromey.com>
6263
6264         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6265         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6266         members.
6267         (pending_addrmap, pending_addrmap_obstack)
6268         (pending_addrmap_interesting): Remove.
6269         (scoped_free_pendings, record_block_range, make_blockvector)
6270         (prepare_for_building, reset_symtab_globals, buildsym_init):
6271         Update.
6272
6273 2018-07-20  Tom Tromey  <tom@tromey.com>
6274
6275         * xcoffread.c (process_linenos): Update.
6276         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6277         * mdebugread.c (psymtab_to_symtab_1): Update.
6278         * dwarf2read.c (setup_type_unit_groups)
6279         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6280         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6281         * dbxread.c (process_one_symbol): Update.
6282         * coffread.c (coff_symtab_read, enter_linenos)
6283         (process_coff_symbol): Update.
6284         * buildsym.h (current_subfile): Don't declare.
6285         (get_current_subfile): Declare.
6286         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6287         member.
6288         (start_subfile, free_buildsym_compunit, push_subfile)
6289         (prepare_for_building, start_symtab): Update.
6290         (get_current_subfile): New function.
6291
6292 2018-07-20  Tom Tromey  <tom@tromey.com>
6293
6294         * coffread.c (coff_symtab_read): Update.
6295         * xcoffread.c (read_xcoff_symtab): Update.
6296         * dwarf2read.c (new_symbol): Update.
6297         (read_func_scope, read_lexical_block_scope): Update.
6298         * dbxread.c (process_one_symbol): Update.
6299         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6300         (outermost_context_p): Remove macro.
6301         (outermost_context_p, get_current_context_stack)
6302         (get_context_stack_depth): Declare.
6303         (pop_context): Return struct context_stack.
6304         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6305         member.
6306         (context_stack_size): Remove.
6307         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6308         (prepare_for_building, end_symtab_get_static_block)
6309         (augment_type_symtab, push_context): Update.
6310         (pop_context): Return struct context_stack.
6311         (outermost_context_p, get_current_context_stack)
6312         (get_context_stack_depth): New functions.
6313         (buildsym_init): Update.
6314
6315 2018-07-20  Tom Tromey  <tom@tromey.com>
6316
6317         * rust-exp.y: Now a pure parser.  Update all rules.
6318         (%union): Move earlier.
6319         (current_parser, work_obstack): Remove globals.
6320         (rust_parser, ~rust_parser): Update.
6321         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6322         lex_character, lex_number, lex_string, lex_identifier,
6323         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6324         convert_name, convert_params_to_expression,
6325         convert_ast_to_expression, ast_basic_type, ast_operation,
6326         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6327         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6328         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6329         ast_array_type, ast_slice_type, ast_reference_type,
6330         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6331         (rust_parse): Update.
6332         (rustyyerror, rustyylex): Add parser parameter.
6333         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6334         (rust_lex_stringish_test, rust_lex_test_sequence)
6335         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6336         (rust_lex_test_push_back, rust_lex_tests): Update.
6337
6338 2018-07-19  Pedro Alves  <palves@redhat.com>
6339
6340         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6341         gdb::unique_xmalloc_ptr.
6342         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6343         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6344         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6345         copy-initialization.
6346         * guile/scm-pretty-print.c (ppscm_print_children): Use
6347         gdb::unique_xmalloc_ptr instead of cleanups.
6348         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6349         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6350         gdb::unique_xmalloc_ptr.
6351         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6352         Adjust to use gdb::unique_xmalloc_ptr.
6353         * guile/scm-utils.c (extract_arg): Adjust.
6354         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6355         gdb::unique_xmalloc_ptr instead of a cleanup.
6356
6357 2018-07-19  Tom Tromey  <tom@tromey.com>
6358
6359         * utils.c (do_value_free_to_mark)
6360         (make_cleanup_value_free_to_mark): Remove.
6361         * utils.h (make_cleanup_value_free_to_mark): Remove.
6362
6363 2018-07-19  Pedro Alves  <palves@redhat.com>
6364
6365         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6366         forwarding reference.
6367
6368 2018-07-18  Pedro Alves  <palves@redhat.com>
6369
6370         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6371         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6372         cleanup.
6373
6374 2018-07-18  Pedro Alves  <palves@redhat.com>
6375
6376         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6377         exceptions.
6378         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6379         (gdbscm_wrap): New.
6380         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6381         directly instead of a cleanup.
6382         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6383         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6384         (vlscm_binop_gdbthrow): New, factored out from ...
6385         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6386         (vlscm_rich_compare): Use gdbscm_wrap.
6387         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6388         instead of a cleanup.
6389         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6390         cleanup.
6391         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6392         Use xfree directly instead of a cleanup.
6393         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6394         Adjust to use gdbscm_wrap and scoped_value_mark.
6395         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6396         (gdbscm_value_address, gdbscm_value_dereference)
6397         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6398         scoped_value_mark.
6399         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6400         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6401         scoped_value_mark.
6402         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6403         gdbscm_wrap and scoped_value_mark.
6404         (gdbscm_value_to_string): Use xfree directly instead of a
6405         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6406         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6407         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6408         scoped_value_mark.
6409         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6410         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6411         scoped_value_mark.
6412         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6413         gdbscm_wrap.
6414
6415 2018-07-18  Tom de Vries  <tdevries@suse.de>
6416
6417         * findvar.c (default_read_var_value): Also resolve dynamic type for
6418         LOC_OPTIMIZED_OUT vars.
6419
6420 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6421
6422         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6423         decoding.
6424
6425 2018-07-17  Tom Tromey  <tom@tromey.com>
6426
6427         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6428         (compute_enum_list, pascm_set_param_value_x)
6429         (gdbscm_parameter_value): Update.
6430         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6431         (gdbscm_scm_to_host_string): Update.
6432         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6433         Update.
6434         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6435         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6436         * guile/scm-string.c (gdbscm_scm_to_string): Return
6437         unique_xmalloc_ptr.
6438         (gdbscm_scm_to_host_string): Likewise.
6439
6440 2018-07-17  Tom Tromey  <tom@tromey.com>
6441
6442         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6443         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6444         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6445         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6446         unique_xmalloc_ptr.
6447
6448 2018-07-17  Tom Tromey  <tom@tromey.com>
6449
6450         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6451         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6452         Update.
6453         * guile/scm-cmd.c (cmdscm_function): Update.
6454         * guile/scm-pretty-print.c
6455         (ppscm_print_exception_unless_memory_error): Update.
6456         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6457         Return unique_xmalloc_ptr.
6458
6459 2018-07-17  Tom Tromey  <tom@tromey.com>
6460
6461         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6462         Use string_printf.
6463
6464 2018-07-17  Jim Wilson  <jimw@sifive.com>
6465
6466         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6467         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6468         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6469         unecessary braces after EF_RISCV_RVC test.  Delete call to
6470         set_gdbarch_decr_pc_after_break.
6471
6472         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6473         RISCV_LAST_FP_REGNUM + 1.
6474         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6475
6476 2018-07-17  Tom Tromey  <tom@tromey.com>
6477
6478         * configure.ac: Remove --disable-gdbcli.
6479         * configure: Rebuild.
6480         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6481         (SUBDIR_CLI_CFLAGS): Remove.
6482         (SFILES): Use SUBDIR_CLI_SRCS.
6483         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6484
6485 2018-07-17  Tom Tromey  <tom@tromey.com>
6486
6487         PR gdb/18624:
6488         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6489
6490 2018-07-16  Jim Wilson  <jimw@sifive.com>
6491
6492         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6493
6494 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6495
6496         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6497         variable.
6498         (libunwind_frame_sniffer): Likewise.
6499         (libunwind_frame_prev_register): Likewise.
6500         (libunwind_sigtramp_frame_sniffer): Likewise.
6501         * ia64-tdep.c (ia64_access_reg): Likewise.
6502         (ia64_access_rse_reg): Likewise.
6503         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6504         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6505
6506 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6507
6508         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6509
6510 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6511
6512         * remote-sim.c (gdbsim_target::close,
6513         gdbsim_target::mourn_inferior): Remove unused variables.
6514
6515 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6516
6517         * ia64-tdep.c (ktab_buf): New global.
6518         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6519         (get_kernel_table): Adjust.
6520
6521 2018-07-16  Tom Tromey  <tom@tromey.com>
6522
6523         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6524         * dwarf2read.c (using_directives, new_symbol): Use
6525         outermost_context_p.
6526         * dbxread.c (process_one_symbol): Use outermost_context_p.
6527         * coffread.c (coff_symtab_read): Use outermost_context_p.
6528
6529 2018-07-16  Tom Tromey  <tom@tromey.com>
6530
6531         * dwarf2read.c (using_directives, read_func_scope)
6532         (read_lexical_block_scope): Update.
6533         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6534         * buildsym.h (local_using_directives, global_using_directives):
6535         Don't declare.
6536         (get_local_using_directives, set_local_using_directives)
6537         (get_global_using_directives): Declare.
6538         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6539         m_global_using_directives>: New members.
6540         (finish_block_internal, prepare_for_building)
6541         (reset_symtab_globals, end_symtab_get_static_block)
6542         (push_context): Update.
6543         (get_local_using_directives, set_local_using_directives)
6544         (get_global_using_directives): New functions.
6545         (buildsym_init): Update.
6546
6547 2018-07-16  Tom Tromey  <tom@tromey.com>
6548
6549         * xcoffread.c (xcoff_initial_scan): Don't call
6550         free_pending_blocks.
6551         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6552         * buildsym.h (class scoped_free_pendings): Add constructor.
6553         (free_pending_blocks): Don't declare.
6554         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6555         (free_pending_blocks): Now static.
6556
6557 2018-07-16  Tom Tromey  <tom@tromey.com>
6558
6559         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6560         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6561         member.
6562         (struct subfile_stack): Remove.
6563         (subfile_stack): Remove.
6564         (push_subfile, pop_subfile, buildsym_init): Update.
6565
6566 2018-07-16  Tom Tromey  <tom@tromey.com>
6567
6568         * buildsym.c (push_subfile): Use gdb_assert.
6569         (pop_subfile): Use gdb_assert.
6570
6571 2018-07-16  Tom Tromey  <tom@tromey.com>
6572
6573         * buildsym.h (merge_symbol_lists): Remove.
6574         * buildsym.c (merge_symbol_lists): Remove.
6575
6576 2018-07-16  Tom Tromey  <tom@tromey.com>
6577
6578         * stabsread.c (scan_file_globals): Update comment.
6579         * stabsread.h (scan_file_globals): Move from buildsym.h.
6580         * buildsym.h (scan_file_globals): Move to stabsread.h.
6581
6582 2018-07-16  Tom Tromey  <tom@tromey.com>
6583
6584         * xcoffread.c (xcoff_new_init): Update.
6585         * mipsread.c (mipscoff_new_init): Update.
6586         * mdebugread.c (mdebug_build_psymtabs): Update.
6587         * elfread.c (elf_new_init): Update.
6588         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6589         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6590         * buildsym.h (buildsym_new_init): Don't declare.
6591         * buildsym.c (buildsym_new_init): Remove.
6592
6593 2018-07-16  Tom Tromey  <tom@tromey.com>
6594
6595         * stabsread.h (within_function): Move from buildsym.h.
6596         * stabsread.c (start_stabs): Clear within_function.
6597         * coffread.c (coff_start_symtab): Clear within_function.
6598         * buildsym.h (within_function): Move to stabsread.h.
6599         * buildsym.c (prepare_for_building): Update.
6600
6601 2018-07-16  Tom Tromey  <tom@tromey.com>
6602
6603         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6604         * dwarf2read.c (dwarf2_start_symtab): Don't set
6605         processing_gcc_compilation.
6606         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6607
6608 2018-07-16  Tom Tromey  <tom@tromey.com>
6609
6610         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6611         (next_symbol_text_func): Move from buildsym.h.
6612         * stabsread.c (hashname): Move from buildsym.c.
6613         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6614         (next_symbol_text_func, hashname): Move to stabsread.h.
6615         * buildsym.c: Don't include bcache.h
6616         (hashname): Move to stasbread.c.
6617
6618 2018-07-16  Tom Tromey  <tom@tromey.com>
6619
6620         * buildsym.h (context_stack_size): Don't declare.
6621         * buildsym.c (context_stack_size): New global.
6622
6623 2018-07-16  Tom Tromey  <tom@tromey.com>
6624
6625         * dbxread.c (processing_acc_compilation): New global.
6626         * buildsym.h (processing_acc_compilation): Don't declare.
6627
6628 2018-07-16  Tom Tromey  <tom@tromey.com>
6629
6630         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6631         * dbxread.c (read_ofile_symtab): Update.
6632         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6633         * buildsym.h (last_source_start_addr): Remove.
6634         (set_last_source_start_addr, get_last_source_start_addr):
6635         Declare.
6636         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6637         parameter.
6638         (struct buildsym_compunit) <m_last_source_start_addr>: New
6639         member.
6640         (prepare_for_building): Remove start_addr parameter.
6641         (start_symtab, restart_symtab, end_symtab_get_static_block)
6642         (end_symtab_with_blockvector): Update.
6643         (set_last_source_start_addr, get_last_source_start_addr): New
6644         functions.
6645
6646 2018-07-16  Tom Tromey  <tom@tromey.com>
6647
6648         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6649         member.
6650         (have_line_numbers): Remove.
6651         (record_line, prepare_for_building, end_symtab_get_static_block)
6652         (augment_type_symtab): Update.
6653
6654 2018-07-16  Tom Tromey  <tom@tromey.com>
6655
6656         * buildsym.c (~buildsym_compunit): Free the macro table.
6657         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6658         methods.
6659         <m_pending_macros>: New member.
6660         (pending_macros): Remove.
6661         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6662         (reset_symtab_globals, end_symtab_get_static_block)
6663         (end_symtab_with_blockvector, augment_type_symtab)
6664         (buildsym_init): Update.
6665
6666 2018-07-16  Tom Tromey  <tom@tromey.com>
6667
6668         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6669         parameter.
6670         (buildsym_compunit::set_last_source_file): New method.
6671         <m_last_source_file>: New member.
6672         (prepare_for_building): Remove "name" parameter.
6673         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6674         (last_source_file): Remove.
6675         (set_last_source_file, get_last_source_file): Update.
6676
6677 2018-07-16  Tom Tromey  <tom@tromey.com>
6678
6679         * buildsym.c (prepare_for_building): Add assert.
6680
6681 2018-07-16  Tom Tromey  <tom@tromey.com>
6682
6683         * buildsym.c (~buildsym_compunit): Update.
6684         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6685         (start_subfile, patch_subfile_names)
6686         (end_symtab_with_blockvector): Update.
6687
6688 2018-07-16  Tom Tromey  <tom@tromey.com>
6689
6690         * buildsym.c (struct buildsym_compunit): Add constructor,
6691         destructor, initializers.
6692         (start_buildsym_compunit): Remove.
6693         (free_buildsym_compunit): Use "delete".
6694         (start_symtab, restart_symtab): Use "new".
6695
6696 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6697
6698         * symfile.c (set_objfile_default_section_offset): Remove struct
6699         keyword.
6700
6701 2018-07-14  Stafford Horne  <shorne@gmail.com>
6702
6703         * (Responsible Maintainers): Add myself as or1k maintainer.
6704
6705 2018-07-13  Tom Tromey  <tom@tromey.com>
6706
6707         * symfile.c (set_objfile_default_section_offset): Use extra braces
6708         around initializer.
6709
6710 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6711
6712         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6713         non-branching basr.
6714
6715 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6716
6717         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6718         unittests/cli-utils-selftests.c
6719         * unittests/cli-utils-selftests.c: New file.
6720
6721 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6722
6723         * NEWS: Mention new commands. Mention change to 'thread apply'.
6724
6725 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6726
6727         * thread.c (thr_try_catch_cmd): New function.
6728         (thread_apply_all_command): Handle qcs flags.
6729         (thread_apply_command): Handle qcs flags.
6730         (taas_command): New function.
6731         (tfaas_command): New function.
6732         (_initialize_thread): Update to setup the new commands 'taas
6733         and 'tfaas'. Change doc string for 'thread apply'.
6734
6735 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6736
6737         * stack.c: (trailing_outermost_frame): New function, mostly
6738         extracted from backtrace_command_1.
6739         (leading_innermost_frame): New function.
6740         (backtrace_command_1): Update to call trailing_outermost_frame.
6741         (frame_apply_command_count): New function.
6742         (frame_apply_level_command): New function.
6743         (frame_apply_all_command): New function.
6744         (frame_apply_command): New function.
6745         (faas_command): New function.
6746         (frame_cmd_list): New variable.
6747         (_initialize_stack): Update to setup the new commands 'frame apply'
6748         and 'faas'.
6749
6750 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6751
6752         * cli-utils.c (number_or_range_parser::get_number): Only handle
6753         numbers or convenience var as numbers.
6754         (parse_flags): New function.
6755         (parse_flags_qcs): New function.
6756         (number_or_range_parser::finished): Ensure parsing end is detected
6757         before end of string.
6758         * cli-utils.h (parse_flags): New function.
6759         (parse_flags_qcs): New function.
6760         (number_or_range_parser): Remove m_finished bool.
6761         (number_or_range_parser::skip_range): Set m_in_range to false.
6762
6763 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6764
6765         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6766         on Windows.
6767
6768 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6769             Jan Kratochvil  <jan.kratochvil@redhat.com>
6770             Paul Fertser  <fercerpav@gmail.com>
6771             Tsutomu Seki  <sekiriki@gmail.com>
6772             Pedro Alves  <palves@redhat.com>
6773
6774         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6775         'unittests/parse-connection-spec-selftests.c'.
6776         (COMMON_SFILES): Add 'common/netstuff.c'.
6777         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6778         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6779         * common/netstuff.c: New file.
6780         * common/netstuff.h: New file.
6781         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6782         (wait_for_connect): Update comment.  New parameter
6783         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6784         Use 'sock' directly instead of 'scb->fd'.
6785         (try_connect): New function, with code from 'net_open'.
6786         (net_open): Rewrite main loop to deal with multiple
6787         sockets/addresses.  Handle IPv6-style hostnames; implement
6788         support for IPv6 connections.
6789         * unittests/parse-connection-spec-selftests.c: New file.
6790
6791 2018-07-11  Pedro Alves  <palves@redhat.com>
6792
6793         PR gdb/23377
6794         * remote.c (remote_target::remote_detach_pid): Call
6795         set_current_process.
6796
6797 2018-07-11  Pedro Alves  <palves@redhat.com>
6798
6799         * h8300-tdep.c (h8300_gdbarch_init): Remove
6800         set_gdbarch_ecoff_reg_to_regnum calls.
6801
6802 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6803
6804         PR c++/23373
6805         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6806         offsets/sizes for static members of a class/struct.
6807
6808 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6809
6810         * target-descriptions.c (tdesc_register_bitsize): Rename.
6811         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6812         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6813         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6814
6815 2018-07-10  Tom Tromey  <tom@tromey.com>
6816
6817         * breakpoint.c (moribund_locations): Now static and a
6818         std::vector.
6819         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6820         (build_bpstat_chain, update_global_location_list)
6821         (breakpoint_retire_moribund): Update.
6822         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6823         VEC.
6824
6825 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6826
6827         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6828         (riscv_register_reggroup_p): Use new function, remove unneeded
6829         parenthesis.
6830         (riscv_push_dummy_call): Extend assert to compare against xlen or
6831         flen based on register type.
6832
6833 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6834
6835         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6836
6837 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6838
6839         * remote.c (show_hardware_watchpoint_limit): New function.
6840         (show_hardware_watchpoint_length_limit): New function.
6841         (show_hardware_breakpoint_limit): New function.
6842         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6843         where appropriate, update help text.
6844
6845 2018-07-09  Tom Tromey  <tom@tromey.com>
6846
6847         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6848         (CLIBS): Don't mention NAT_CLIBS.
6849
6850 2018-07-09  Tom Tromey  <tom@tromey.com>
6851
6852         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6853         (LIBGDB_OBS, clean mostlyclean): Update.
6854         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6855
6856 2018-07-09  Tom Tromey  <tom@tromey.com>
6857
6858         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6859         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6860         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6861
6862 2018-07-09  Tom Tromey  <tom@tromey.com>
6863
6864         * Makefile.in (ALLDEPFILES): Remove exec.c.
6865         (COMMON_OBS): Remove exec.o.
6866         (COMMON_SFILES): Add exec.c.
6867
6868 2018-07-09  Tom Tromey  <tom@tromey.com>
6869
6870         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6871
6872 2018-07-09  Tom Tromey  <tom@tromey.com>
6873
6874         * Makefile.in (clean mostlyclean): Remove stamp-version.
6875         (version.c): Depend on stamp-version.
6876         (stamp-version): New rule, from version.c rule.
6877
6878 2018-07-09  Tom Tromey  <tom@tromey.com>
6879
6880         * Makefile.in (init.c): Depend on stamp-init.
6881         (stamp-init): New rule, from init.c rule.
6882         (clean mostlyclean): Remove stamp-init.
6883
6884 2018-07-09  Tom Tromey  <tom@tromey.com>
6885
6886         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6887         SUBDIR_GCC_COMPILE_SRCS.
6888
6889 2018-07-09  Tom Tromey  <tom@tromey.com>
6890
6891         * Makefile.in (init.c): Remove some unused sed rules.
6892
6893 2018-07-09  Tom Tromey  <tom@tromey.com>
6894
6895         * Makefile.in (TSOBS): Remove.
6896         (INIT_FILES): Update.
6897         (LIBGDB_OBS): Update.
6898         (COMMON_SFILES): Add inflow.c.
6899         (SFILES): Remove inflow.c.
6900
6901 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6902
6903         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6904
6905 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6906
6907         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6908         get_saveloc_name, is_signal_frame_name, step_name,
6909         init_remote_name, create_addr_space_name,
6910         destroy_addr_space_name, search_unwind_table_name,
6911         find_dyn_list_name): Constify.
6912
6913 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6914
6915         * darwin-nat.c (darwin_pthread_kill): New function.
6916         (darwin_resume_thread): Use darwin_pthread_kill.
6917
6918 2018-07-05  Tom de Vries  <tdevries@suse.de>
6919
6920         * macroexp.c (macro_buffer) <operator=>: New member function.
6921
6922 2018-07-04  Tom Tromey  <tom@tromey.com>
6923
6924         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6925
6926 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6927
6928         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6929         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6930         * maint.c: Likewise.
6931         * top.c: Likewise.
6932
6933 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6934
6935         * NEWS: Create a new section for the next release branch.
6936         Rename the section of the current branch, now that it has
6937         been cut.
6938
6939 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6940
6941         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6942         * version.in: Bump version to 8.2.50.DATE-git.
6943
6944 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6945             Pedro Alves  <palves@redhat.com>
6946
6947         * linux-nat.c (linux_init_ptrace): Rename to ...
6948         (linux_init_ptrace_procfs): ... this.  Call
6949         linux_proc_init_warnings.
6950         (linux_nat_target::post_attach)
6951         (linux_nat_target::post_startup_inferior): Adjust.
6952         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6953         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6954
6955 2018-07-04  Tom de Vries  <tdevries@suse.de>
6956
6957         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6958         check ...
6959         (read_comp_unit_head): ... here.
6960
6961 2018-07-03  Tom Tromey  <tom@tromey.com>
6962
6963         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6964         (stop_tracing, tstatus_command)
6965         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6966         (print_one_static_tracepoint_marker): Update.
6967         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6968         std::vector.
6969         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6970         VEC.
6971         (all_tracepoints, static_tracepoints_here): Return std::vector.
6972
6973 2018-07-03  Tom Tromey  <tom@tromey.com>
6974
6975         * common/ptid.c (ptid_equal): Remove.
6976         * common/ptid.h (ptid_equal): Don't declare.
6977         * ada-tasks.c: Update.
6978         * breakpoint.c: Update.
6979         * common/agent.c: Update.
6980         * corelow.c: Update.
6981         * darwin-nat-info.c: Update.
6982         * darwin-nat.c: Update.
6983         * dcache.c: Update.
6984         * dtrace-probe.c: Update.
6985         * dummy-frame.c: Update.
6986         * fbsd-nat.c: Update.
6987         * frame.c: Update.
6988         * gdbthread.h: Update.
6989         * gnu-nat.c: Update.
6990         * go32-nat.c: Update.
6991         * inf-loop.c: Update.
6992         * inf-ptrace.c: Update.
6993         * infcall.c: Update.
6994         * infcmd.c: Update.
6995         * inflow.c: Update.
6996         * infrun.c: Update.
6997         * linux-fork.c: Update.
6998         * linux-nat.c: Update.
6999         * linux-thread-db.c: Update.
7000         * mi/mi-cmd-var.c: Update.
7001         * mi/mi-interp.c: Update.
7002         * mi/mi-main.c: Update.
7003         * nto-procfs.c: Update.
7004         * ppc-linux-tdep.c: Update.
7005         * procfs.c: Update.
7006         * python/py-inferior.c: Update.
7007         * python/py-record-btrace.c: Update.
7008         * python/py-record.c: Update.
7009         * ravenscar-thread.c: Update.
7010         * regcache.c: Update.
7011         * remote-sim.c: Update.
7012         * remote.c: Update.
7013         * sol-thread.c: Update.
7014         * solib.c: Update.
7015         * target.c: Update.
7016         * tui/tui-stack.c: Update.
7017         * varobj.c: Update.
7018         * windows-nat.c: Update.
7019         * windows-tdep.c: Update.
7020
7021 2018-07-03  Tom Tromey  <tom@tromey.com>
7022
7023         * common/ptid.c (ptid_match): Remove.
7024         * common/ptid.h (ptid_match): Don't declare.
7025         * fbsd-nat.c: Update.
7026         * infcmd.c: Update.
7027         * infrun.c: Update.
7028         * linux-nat.c: Update.
7029         * record-btrace.c: Update.
7030         * regcache.c: Update.
7031         * remote.c: Update.
7032
7033 2018-07-03  Tom Tromey  <tom@tromey.com>
7034
7035         * common/ptid.c (ptid_tid_p): Remove.
7036         * common/ptid.h (ptid_tid_p): Don't declare.
7037         * sol-thread.c: Update.
7038
7039 2018-07-03  Tom Tromey  <tom@tromey.com>
7040
7041         * common/ptid.c (ptid_lwp_p): Remove.
7042         * common/ptid.h (ptid_lwp_p): Don't declare.
7043         * fbsd-nat.c: Update.
7044         * linux-nat.c: Update.
7045         * nat/linux-procfs.c: Update.
7046         * nat/x86-linux-dregs.c: Update.
7047         * sol-thread.c: Update.
7048
7049 2018-07-03  Tom Tromey  <tom@tromey.com>
7050
7051         * common/ptid.c (ptid_is_pid): Remove.
7052         * common/ptid.h (ptid_is_pid): Don't declare.
7053         * infrun.c: Update.
7054         * linux-nat.c: Update.
7055         * mi/mi-interp.c: Update.
7056         * remote.c: Update.
7057         * thread.c: Update.
7058
7059 2018-07-03  Tom Tromey  <tom@tromey.com>
7060
7061         * common/ptid.c (ptid_get_tid): Remove.
7062         * common/ptid.h (ptid_get_tid): Don't declare.
7063         * ada-tasks.c: Update.
7064         * aix-thread.c: Update.
7065         * bsd-uthread.c: Update.
7066         * darwin-nat.c: Update.
7067         * fbsd-nat.c: Update.
7068         * i386-darwin-nat.c: Update.
7069         * infrun.c: Update.
7070         * linux-tdep.c: Update.
7071         * nto-procfs.c: Update.
7072         * ppc-ravenscar-thread.c: Update.
7073         * python/py-infthread.c: Update.
7074         * ravenscar-thread.c: Update.
7075         * sol-thread.c: Update.
7076         * sparc-ravenscar-thread.c: Update.
7077         * windows-nat.c: Update.
7078
7079 2018-07-03  Tom Tromey  <tom@tromey.com>
7080
7081         * common/ptid.c (ptid_get_lwp): Remove.
7082         * common/ptid.h (ptid_get_lwp): Don't declare.
7083         * aarch64-linux-nat.c: Update.
7084         * ada-tasks.c: Update.
7085         * aix-thread.c: Update.
7086         * amd64-linux-nat.c: Update.
7087         * arm-linux-nat.c: Update.
7088         * corelow.c: Update.
7089         * fbsd-nat.c: Update.
7090         * fbsd-tdep.c: Update.
7091         * gnu-nat.c: Update.
7092         * i386-cygwin-tdep.c: Update.
7093         * i386-gnu-nat.c: Update.
7094         * i386-linux-nat.c: Update.
7095         * ia64-linux-nat.c: Update.
7096         * inf-ptrace.c: Update.
7097         * infrun.c: Update.
7098         * linux-fork.c: Update.
7099         * linux-nat.c: Update.
7100         * linux-tdep.c: Update.
7101         * linux-thread-db.c: Update.
7102         * mips-linux-nat.c: Update.
7103         * nat/aarch64-linux-hw-point.c: Update.
7104         * nat/aarch64-linux.c: Update.
7105         * nat/linux-btrace.c: Update.
7106         * nat/linux-osdata.c: Update.
7107         * nat/linux-procfs.c: Update.
7108         * nat/x86-linux-dregs.c: Update.
7109         * obsd-nat.c: Update.
7110         * ppc-fbsd-nat.c: Update.
7111         * ppc-linux-nat.c: Update.
7112         * procfs.c: Update.
7113         * python/py-infthread.c: Update.
7114         * ravenscar-thread.c: Update.
7115         * remote.c: Update.
7116         * s390-linux-nat.c: Update.
7117         * sol-thread.c: Update.
7118         * sol2-tdep.c: Update.
7119         * spu-linux-nat.c: Update.
7120         * x86-linux-nat.c: Update.
7121         * xtensa-linux-nat.c: Update.
7122
7123 2018-07-03  Tom Tromey  <tom@tromey.com>
7124
7125         * common/ptid.c (ptid_get_pid): Remove.
7126         * common/ptid.h (ptid_get_pid): Don't declare.
7127         * aarch64-linux-nat.c: Update.
7128         * ada-lang.c: Update.
7129         * aix-thread.c: Update.
7130         * alpha-bsd-nat.c: Update.
7131         * amd64-fbsd-nat.c: Update.
7132         * amd64-linux-nat.c: Update.
7133         * arm-linux-nat.c: Update.
7134         * arm-nbsd-nat.c: Update.
7135         * auxv.c: Update.
7136         * break-catch-syscall.c: Update.
7137         * breakpoint.c: Update.
7138         * bsd-uthread.c: Update.
7139         * corelow.c: Update.
7140         * ctf.c: Update.
7141         * darwin-nat.c: Update.
7142         * fbsd-nat.c: Update.
7143         * fbsd-tdep.c: Update.
7144         * gcore.c: Update.
7145         * gnu-nat.c: Update.
7146         * hppa-nbsd-nat.c: Update.
7147         * hppa-obsd-nat.c: Update.
7148         * i386-fbsd-nat.c: Update.
7149         * ia64-linux-nat.c: Update.
7150         * inf-ptrace.c: Update.
7151         * infcmd.c: Update.
7152         * inferior.c: Update.
7153         * inferior.h: Update.
7154         * inflow.c: Update.
7155         * infrun.c: Update.
7156         * linux-fork.c: Update.
7157         * linux-nat.c: Update.
7158         * linux-tdep.c: Update.
7159         * linux-thread-db.c: Update.
7160         * m68k-bsd-nat.c: Update.
7161         * mi/mi-interp.c: Update.
7162         * mi/mi-main.c: Update.
7163         * mips-linux-nat.c: Update.
7164         * mips-nbsd-nat.c: Update.
7165         * mips64-obsd-nat.c: Update.
7166         * nat/aarch64-linux-hw-point.c: Update.
7167         * nat/aarch64-linux.c: Update.
7168         * nat/linux-btrace.c: Update.
7169         * nat/linux-osdata.c: Update.
7170         * nat/linux-procfs.c: Update.
7171         * nat/x86-linux-dregs.c: Update.
7172         * nto-procfs.c: Update.
7173         * obsd-nat.c: Update.
7174         * ppc-linux-nat.c: Update.
7175         * ppc-nbsd-nat.c: Update.
7176         * ppc-obsd-nat.c: Update.
7177         * proc-service.c: Update.
7178         * procfs.c: Update.
7179         * python/py-inferior.c: Update.
7180         * python/py-infthread.c: Update.
7181         * ravenscar-thread.c: Update.
7182         * record.c: Update.
7183         * remote-sim.c: Update.
7184         * remote.c: Update.
7185         * rs6000-nat.c: Update.
7186         * s390-linux-nat.c: Update.
7187         * sh-nbsd-nat.c: Update.
7188         * sol-thread.c: Update.
7189         * sparc-nat.c: Update.
7190         * sparc64-tdep.c: Update.
7191         * spu-linux-nat.c: Update.
7192         * spu-tdep.c: Update.
7193         * target-debug.h: Update.
7194         * target.c: Update.
7195         * thread.c: Update.
7196         * tid-parse.c: Update.
7197         * tracefile-tfile.c: Update.
7198         * vax-bsd-nat.c: Update.
7199         * windows-nat.c: Update.
7200         * x86-linux-nat.c: Update.
7201         * x86-nat.c: Update.
7202
7203 2018-07-03  Tom Tromey  <tom@tromey.com>
7204
7205         * common/ptid.c (pid_to_ptid): Remove.
7206         * common/ptid.h (pid_to_ptid): Don't declare.
7207         * aix-thread.c: Update.
7208         * arm-linux-nat.c: Update.
7209         * common/ptid.c: Update.
7210         * common/ptid.h: Update.
7211         * corelow.c: Update.
7212         * ctf.c: Update.
7213         * darwin-nat.c: Update.
7214         * fbsd-nat.c: Update.
7215         * fork-child.c: Update.
7216         * gnu-nat.c: Update.
7217         * go32-nat.c: Update.
7218         * inf-ptrace.c: Update.
7219         * infcmd.c: Update.
7220         * inferior.c: Update.
7221         * infrun.c: Update.
7222         * linux-fork.c: Update.
7223         * linux-nat.c: Update.
7224         * nat/aarch64-linux-hw-point.c: Update.
7225         * nat/fork-inferior.c: Update.
7226         * nat/x86-linux-dregs.c: Update.
7227         * nto-procfs.c: Update.
7228         * obsd-nat.c: Update.
7229         * procfs.c: Update.
7230         * progspace.c: Update.
7231         * remote.c: Update.
7232         * rs6000-nat.c: Update.
7233         * s390-linux-nat.c: Update.
7234         * sol-thread.c: Update.
7235         * spu-linux-nat.c: Update.
7236         * target.c: Update.
7237         * top.c: Update.
7238         * tracefile-tfile.c: Update.
7239         * windows-nat.c: Update.
7240
7241 2018-07-03  Tom Tromey  <tom@tromey.com>
7242
7243         * common/ptid.h (ptid_build): Don't declare.
7244         * common/ptid.c (ptid_build): Remove.
7245         * aix-thread.c: Update.
7246         * bsd-kvm.c: Update.
7247         * bsd-uthread.c: Update.
7248         * common/agent.c: Update.
7249         * common/ptid.c: Update.
7250         * common/ptid.h: Update.
7251         * corelow.c: Update.
7252         * darwin-nat.c: Update.
7253         * fbsd-nat.c: Update.
7254         * gnu-nat.c: Update.
7255         * linux-fork.c: Update.
7256         * linux-nat.c: Update.
7257         * linux-thread-db.c: Update.
7258         * nat/linux-osdata.c: Update.
7259         * nat/linux-procfs.c: Update.
7260         * nto-procfs.c: Update.
7261         * obsd-nat.c: Update.
7262         * proc-service.c: Update.
7263         * procfs.c: Update.
7264         * ravenscar-thread.c: Update.
7265         * remote-sim.c: Update.
7266         * remote.c: Update.
7267         * sol-thread.c: Update.
7268         * target.c: Update.
7269         * windows-nat.c: Update.
7270
7271 2018-07-03  Tom Tromey  <tom@tromey.com>
7272
7273         * infrun.c (follow_exec): Use exit_inferior_silent.
7274         * inferior.c (exit_inferior_num_silent): Remove.
7275         * inferior.h (exit_inferior_num_silent): Don't declare.
7276
7277 2018-07-03  Tom Tromey  <tom@tromey.com>
7278
7279         PR cli/23340:
7280         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7281         inferior_ptid on error.
7282
7283 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7284             Simon Marchi  <simon.marchi@polymtl.ca>
7285
7286         PR tdep/8282
7287         * disasm.h (gdb_disassembler): Add
7288         `m_disassembler_options_holder'. member
7289         * disasm.c (get_all_disassembler_options): New function.
7290         (gdb_disassembler::gdb_disassembler): Use it.
7291         (gdb_buffered_insn_length_init_dis): Likewise.
7292         (gdb_buffered_insn_length): Adjust accordingly.
7293         (set_disassembler_options): Handle options with arguments.
7294         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7295         line if showing options with descriptions.
7296         (disassembler_options_completer): Adapt to using the
7297         `disasm_options_and_args_t' structure.
7298         * mips-tdep.c (mips_disassembler_options): New variable.
7299         (mips_disassembler_options_o32): Likewise.
7300         (mips_disassembler_options_n32): Likewise.
7301         (mips_disassembler_options_n64): Likewise.
7302         (gdb_print_insn_mips): Don't set `disassembler_options'.
7303         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7304         functions.
7305         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7306         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7307         `gdbarch_disassembler_options_implicit' and
7308         `gdbarch_valid_disassembler_options'.
7309         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7310         `disasm_options_and_args_t' structure.
7311         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7312         method.
7313         (valid_disassembler_options): Switch from `disasm_options_t' to
7314         the `disasm_options_and_args_t' structure.
7315         * NEWS: Document `set disassembler-options' support for the MIPS
7316         target.
7317         * gdbarch.h: Regenerate.
7318         * gdbarch.c: Regenerate.
7319
7320 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7321
7322         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7323
7324 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7325
7326         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7327         parameter in call to amd64_target_description.
7328         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7329         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7330         (amd64fbsd_init_abi): Likewise.
7331         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7332         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7333         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7334         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7335
7336 2018-06-29  Pedro Alves  <palves@redhat.com>
7337
7338         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7339         "segments" parameter.
7340         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7341         (_initialize_amd64_tdep): Update call to
7342         amd64_create_target_description.
7343         (amd64_target_description): Add "segments" parameter.  Adjust
7344         the implementation to use it.
7345         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7346         call to amd64_create_target_description.
7347         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7348         * gdb/arch/amd64.h (amd64_create_target_description): Add
7349         "segments" register.
7350         * gdb/arch/amd64.c (amd64_create_target_description): Add
7351         "segments" parameter.  Call create_feature_i386_64bit_segments
7352         only if SEGMENTS is true.
7353         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7354         call to amd64_create_target_description.
7355
7356 2018-06-29  Pedro Alves  <palves@redhat.com>
7357
7358         * thread.c (thread_target_id_str): New, factored out from ...
7359         (print_thread_info_1): ... here.  Use it to compute the max
7360         "Target Id" column width.
7361
7362 2018-06-29  Pedro Alves  <palves@redhat.com>
7363
7364         * remote.c (remote_target::extra_thread_info): Delete
7365         'display_buf' and 'n' locals.  from the cache, regardless of
7366         packet mechanims is in use.  Use cache for qThreadExtra and qP
7367         methods too.
7368
7369 2018-06-29  Pedro Alves  <palves@redhat.com>
7370
7371         * blockframe.c (find_pc_sect_containing_function): New function.
7372         * breakpoint.c (print_breakpoint_location): Don't call
7373         find_pc_sect_function.
7374         * linespec.c (create_sals_line_offset): Record the location's
7375         symbol in the sal.
7376         * linespec.c (convert_address_location_to_sals): Fill in sal's
7377         symbol with find_pc_sect_containing_function.
7378         * symtab.c (find_function_start_sal): Rename to ...
7379         (find_function_start_sal_1): ... this.
7380         (find_function_start_sal): Reimplement as wrapper around
7381         find_function_start_sal_1, and use
7382         find_pc_sect_containing_function to fill in the sal's symbol.
7383         (find_function_start_sal(symbol*, bool)): Adjust.
7384         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7385         comments.
7386         (find_pc_sect_containing_function): Declare.
7387
7388 2018-06-29  Pedro Alves  <palves@redhat.com>
7389
7390         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7391         true if the the location has no symbol.
7392
7393 2018-06-28  Tom Tromey  <tom@tromey.com>
7394
7395         * NEWS: Mention --enable-codesign.
7396         * silent-rules.mk (ECHO_SIGN): New variable.
7397         * configure.ac: Add --enable-codesign.
7398         * configure: Rebuild.
7399         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7400         (gdb$(EXEEXT)): Optionally invoke codesign.
7401
7402 2018-06-28  Pedro Alves  <palves@redhat.com>
7403
7404         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7405         comments.
7406         (switch_to_thread_no_regs): Adjust comment.
7407         * infcmd.c (stop_pc): Delete.
7408         (post_create_inferior, info_program_command): Replace references
7409         to stop_pc with references to thread_info->suspend.stop_pc.
7410         * inferior.h (stop_pc): Delete declaration.
7411         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7412         (handle_inferior_event_1, handle_signal_stop)
7413         (process_event_stop_test, keep_going_stepped_thread)
7414         (handle_step_into_function, handle_step_into_function_backward)
7415         (print_stop_location): Replace references to stop_pc with
7416         references to thread_info->suspend.stop_pc.
7417         (struct infcall_suspend_state) <stop_pc>: Delete field.
7418         (save_infcall_suspend_state, restore_infcall_suspend_state):
7419         Remove references to inf_stat->stop_pc.
7420         * linux-fork.c (fork_load_infrun_state): Likewise.
7421         * record-btrace.c (record_btrace_set_replay): Likewise.
7422         * record-full.c (record_full_goto_entry): Likewise.
7423         * remote.c (print_one_stopped_thread): Likewise.
7424         * target.c (target_resume): Extend comment.
7425         * thread.c (set_executing_thread): New.
7426         (set_executing): Use it.
7427         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7428         Remove references to stop_pc.
7429
7430 2018-06-28  Pedro Alves  <palves@redhat.com>
7431
7432         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7433         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7434
7435 2018-06-28  Tom Tromey  <tom@tromey.com>
7436
7437         * coffread.c (coff_symfile_finish): Update.
7438         * xcoffread.c (xcoff_symfile_finish): Update.
7439         * elfread.c (elf_symfile_finish): Update.
7440         * symfile.h (dwarf2_free_objfile): Don't declare.
7441         * dwarf2read.c (_initialize_dwarf2_read): Use
7442         register_objfile_data_with_cleanup.
7443         (dwarf2_free_objfile): Now static.  Change signature.
7444
7445 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7446
7447         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7448         option "-o" to add-symbol-file-load to add an offset to each
7449         section's load address.
7450         * symfile.c (set_objfile_default_section_offset): New function.
7451
7452 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7453
7454         * symfile.c (add_symbol_file_command): Make sure that sections
7455         with the same name are sorted in the same order.
7456
7457 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7458
7459         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7460         require the second argument.  If omitted, load sections at the
7461         addresses specified in the file.
7462
7463 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7464
7465         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7466         (_initialize_symfile): Add option "-o" to symbol-file to add an
7467         offset to each section of the symbol file.
7468
7469 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7470
7471         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7472
7473 2018-06-27  Tom Tromey  <tom@tromey.com>
7474
7475         * stack.c (_initialize_stack): Update "func" help text.
7476
7477 2018-06-27  Tom Tromey  <tom@tromey.com>
7478
7479         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7480         std::vector.
7481         (unwind_infopy_str, pyuw_create_unwind_info)
7482         (unwind_infopy_add_saved_register, pyuw_sniffer)
7483         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7484         Update.
7485         (struct saved_reg): Add constructor.
7486         <value>: Now a gdbpy_ref<>.
7487
7488 2018-06-27  Tom Tromey  <tom@tromey.com>
7489
7490         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7491
7492 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7493
7494         * gdb-gdb.py.in: Format using autopep8.
7495
7496 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7497
7498         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7499         (type_lookup_function): Recognize CORE_ADDR values.
7500
7501 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7502
7503         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7504         print tag_name.
7505
7506 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7507
7508         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7509         <__lt__>: Add.
7510
7511 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7512
7513         * gdb-gdb.py: Move to...
7514         * gdb-gdb.py.in: ... here.
7515         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7516         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7517         dependencies.
7518         (distclean): Remove gdb-gdb.py when cleaning.
7519         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7520         * configure: Re-generate.
7521
7522 2018-06-27  Pedro Alves  <palves@redhat.com>
7523
7524         * proc-service.c (get_ps_regcache): New.
7525         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7526         (ps_lsetfpregs): Use it.
7527
7528 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7529
7530         PR gdb/21695
7531         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7532         declaration.
7533         (dwarf_decode_lines_1): Adjust.
7534
7535 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7536
7537         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7538         override.
7539         <info_proc>: Likewise.
7540
7541 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7542
7543         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7544         to windows_fetch_one_register, and only handle the case of
7545         fetching one register.  Move the code that reloads the context
7546         and iterates over all registers if R is negative to...
7547         (windows_nat_target::fetch_registers): ... here.
7548         (do_windows_store_inferior_registers): Rename to
7549         windows_store_one_register, and only handle the case of storing
7550         one register.  Move the code that handles the case where r is
7551         negative to...
7552         (windows_nat_target::store_registers) ... here.
7553
7554 2018-06-26  Tom Tromey  <tom@tromey.com>
7555
7556         PR rust/22574:
7557         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7558         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7559         Update.
7560         (rust_internal_print_type): Add podata parameter.
7561         (rust_print_type): Update.
7562
7563 2018-06-26  Tom Tromey  <tom@tromey.com>
7564
7565         * typeprint.h (struct print_offset_data) <update, finish,
7566         maybe_print_hole>: New methods.
7567         <indentation>: New constant.
7568         * typeprint.c (print_offset_data::indentation): Define.
7569         (print_offset_data::maybe_print_hole, print_offset_data::update)
7570         (print_offset_data::finish): Move from c-typeprint.c and rename.
7571         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7572         (print_spaces_filtered_with_print_options): Update.
7573         (c_print_type_union_field_offset, maybe_print_hole)
7574         (c_print_type_struct_field_offset): Move to typeprint.c and
7575         rename.
7576         (c_type_print_base_struct_union): Update.
7577
7578 2018-06-25  Pedro Alves  <palves@redhat.com>
7579
7580         * gdbthread.h (thread_info_ref, delete_thread)
7581         (delete_thread_silent, first_thread_of_inferior)
7582         (any_thread_of_inferior, switch_to_thread)
7583         (enable_thread_stack_temporaries)
7584         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7585         (get_last_thread_stack_temporary)
7586         (value_in_thread_stack_temporaries, can_access_registers_thread):
7587         Spell out "struct thread_info" instead of just "thread_info".
7588         * inferior.h (notice_new_inferior): Likewise.
7589
7590 2018-06-25  Pedro Alves  <palves@redhat.com>
7591
7592         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7593         pass thread_info pointer to delete_thread.
7594         (windows_nat_target::detach): Pass inferior pointer to
7595         detach_inferior.
7596         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7597         delete_thread.
7598         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7599         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7600         and pass a thread_info pointer to delete_thread.
7601         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7602         pass thread_info pointer to delete_thread.
7603         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7604         delete_thread_silent call.
7605         * procfs.c (procfs_target::detach): Pass inferior pointer to
7606         detach_inferior.
7607         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7608         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7609         delete_thread_silent call.
7610         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7611         pass thread_info pointer to delete_thread.
7612         (windows_nat_target::detach): Pass inferior pointer to
7613         delete_inferior.
7614
7615 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7616
7617         * regcache.c (readable_regcache::read_part): Fix asserts.
7618         (reg_buffer::raw_collect_part): New function.
7619         (regcache::write_part): Fix asserts.
7620         (reg_buffer::raw_supply_part): New function.
7621         (regcache::transfer_regset_register): New helper function.
7622         (regcache::transfer_regset): Call new functions.
7623         (regcache_supply_regset): Use gdb_byte*.
7624         (regcache::supply_regset): Likewise.
7625         (regcache_collect_regset): Likewise.
7626         (regcache::collect_regset): Likewise.
7627         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7628         (reg_buffer::raw_supply_part): Likewise.
7629         (regcache::transfer_regset_register): Likewise.
7630         (regcache::transfer_regset): Use gdb_byte*.
7631
7632 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7633
7634         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7635
7636 2018-06-21  Pedro Alves  <palves@redhat.com>
7637
7638         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7639         instead of a ptid_t.  All callers adjusted.
7640         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7641         adjusted.
7642         (print_ada_task_info, display_current_task_id, task_command_1):
7643         Adjust.
7644         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7645         inferior_thread.
7646         (breakpoint_kind): Adjust.
7647         (remove_breakpoints_pid): Rename to ...
7648         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7649         pointer.  All callers adjusted.
7650         (bpstat_clear_actions): Use inferior_thread.
7651         (get_bpstat_thread): New.
7652         (bpstat_do_actions): Use it.
7653         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7654         to take a thread_info pointer.  All callers adjusted.
7655         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7656         (breakpoint_re_set_thread): Use inferior_thread.
7657         * breakpoint.h (struct inferior): Forward declare.
7658         (bpstat_stop_status): Update.
7659         (remove_breakpoints_pid): Delete.
7660         (remove_breakpoints_inf): New.
7661         * bsd-uthread.c (bsd_uthread_target::wait)
7662         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7663         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7664         (maint_btrace_packet_history_cmd)
7665         (maint_btrace_clear_packet_history_cmd): Adjust.
7666         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7667         inferior_thread.
7668         * cli/cli-interp.c: Include "inferior.h".
7669         * common/refcounted-object.h (struct
7670         refcounted_object_ref_policy): New.
7671         * compile/compile-object-load.c: Include gdbthread.h.
7672         (store_regs): Use inferior_thread.
7673         * corelow.c (core_target::close): Use current_inferior.
7674         (core_target_open): Adjust to use first_thread_of_inferior and use
7675         the current inferior.
7676         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7677         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7678         <thread>: ... this new field.  All references adjusted.
7679         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7680         Take a thread_info pointer instead of a ptid_t.
7681         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7682         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7683         thread_info pointer instead of a ptid_t.
7684         * elfread.c: Include "inferior.h".
7685         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7686         Use inferior_thread.
7687         * eval.c (evaluate_subexp): Likewise.
7688         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7689         inferior_thread.
7690         * gdb_proc_service.h (struct thread_info): Forward declare.
7691         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7692         <thread>: ... this new field.  All references adjusted.
7693         * gdbarch.h, gdbarch.c: Regenerate.
7694         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7695         'thread' parameter.  All implementations and callers adjusted.
7696         * gdbthread.h (thread_info) <set_running>: New method.
7697         (delete_thread, delete_thread_silent): Take a thread_info pointer
7698         instead of a ptid.
7699         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7700         (first_thread_of_process): Delete, replaced by ...
7701         (first_thread_of_inferior): ... this new function.  All callers
7702         adjusted.
7703         (any_live_thread_of_process): Delete, replaced by ...
7704         (any_live_thread_of_inferior): ... this new function.  All callers
7705         adjusted.
7706         (switch_to_thread, switch_to_no_thread): Declare.
7707         (is_executing): Delete.
7708         (enable_thread_stack_temporaries): Update comment.
7709         <enable_thread_stack_temporaries>: Take a thread_info pointer
7710         instead of a ptid_t.  Incref the thread.
7711         <~enable_thread_stack_temporaries>: Decref the thread.
7712         <m_ptid>: Delete
7713         <m_thr>: New.
7714         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7715         (get_last_thread_stack_temporary)
7716         (value_in_thread_stack_temporaries, can_access_registers_thread):
7717         Take a thread_info pointer instead of a ptid_t.  All callers
7718         adjusted.
7719         * infcall.c (get_call_return_value): Use inferior_thread.
7720         (run_inferior_call): Work with thread pointers instead of ptid_t.
7721         (call_function_by_hand_dummy): Work with thread pointers instead
7722         of ptid_t.  Use thread_info_ref.
7723         * infcmd.c (proceed_thread_callback): Access thread's state
7724         directly.
7725         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7726         access thread's state directly.
7727         (continue_command): Use inferior_thread.
7728         (info_program_command): Use find_thread_ptid and access thread
7729         state directly.
7730         (proceed_after_attach_callback): Use thread state directly.
7731         (notice_new_inferior): Take a thread_info pointer instead of a
7732         ptid_t.  All callers adjusted.
7733         (exit_inferior): Take an inferior pointer instead of a pid.  All
7734         callers adjusted.
7735         (exit_inferior_silent): New.
7736         (detach_inferior): Delete.
7737         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7738         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7739         (detach_inferior_command, kill_inferior_command): Use
7740         find_inferior_id instead of valid_gdb_inferior_id and
7741         gdb_inferior_id_to_pid.
7742         (inferior_command): Use inferior and thread pointers.
7743         * inferior.h (struct thread_info): Forward declare.
7744         (notice_new_inferior): Take a thread_info pointer instead of a
7745         ptid_t.  All callers adjusted.
7746         (detach_inferior): Delete declaration.
7747         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7748         instead of a pid.  All callers adjusted.
7749         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7750         (valid_gdb_inferior_id): Delete.
7751         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7752         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7753         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7754         ...
7755         <inf>: ... this new field.
7756         <step_ptid>: Delete, replaced by ...
7757         <step_thread>: ... this new field.
7758         (get_displaced_stepping_state): Take an inferior pointer instead
7759         of a pid.  All callers adjusted.
7760         (displaced_step_in_progress_any_inferior): Adjust.
7761         (displaced_step_in_progress_thread): Take a thread pointer instead
7762         of a ptid_t.  All callers adjusted.
7763         (displaced_step_in_progress, add_displaced_stepping_state): Take
7764         an inferior pointer instead of a pid.  All callers adjusted.
7765         (get_displaced_step_closure_by_addr): Adjust.
7766         (remove_displaced_stepping_state): Take an inferior pointer
7767         instead of a pid.  All callers adjusted.
7768         (displaced_step_prepare_throw, displaced_step_prepare)
7769         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7770         All callers adjusted.
7771         (start_step_over): Adjust.
7772         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7773         displaced step queue.
7774         (do_target_resume): Adjust.
7775         (fetch_inferior_event): Use inferior_thread.
7776         (context_switch, get_inferior_stop_soon): Take an
7777         execution_control_state pointer instead of a ptid_t.  All callers
7778         adjusted.
7779         (switch_to_thread_cleanup): Delete.
7780         (stop_all_threads): Use scoped_restore_current_thread.
7781         * inline-frame.c: Include "gdbthread.h".
7782         (inline_state) <inline_state>: Take a thread pointer instead of a
7783         ptid_t.  All callers adjusted.
7784         <ptid>: Delete, replaced by ...
7785         <thread>: ... this new field.
7786         (find_inline_frame_state): Take a thread pointer instead of a
7787         ptid_t.  All callers adjusted.
7788         (skip_inline_frames, step_into_inline_frame)
7789         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7790         pointer instead of a ptid_t.  All callers adjusted.
7791         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7792         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7793         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7794         pointers directly.
7795         * linux-nat.c (get_detach_signal): Likewise.
7796         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7797         (thread_db_notice_clone): Adjust.
7798         (thread_db_find_new_threads_silently)
7799         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7800         a thread pointer instead of a ptid_t.  All callers adjusted.
7801         * mi/mi-cmd-var.c: Include "inferior.h".
7802         (mi_cmd_var_update_iter): Update to use thread pointers.
7803         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7804         inferior directly.
7805         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7806         out to ...
7807         (mi_output_running): ... this new function.
7808         (mi_on_resume_1): Adjust to use it.
7809         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7810         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7811         directly.
7812         (interrupt_thread_callback): : Adjust to use thread and inferior
7813         pointers.
7814         * proc-service.c: Include "gdbthread.h".
7815         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7816         * progspace-and-thread.c: Include "inferior.h".
7817         * progspace.c: Include "inferior.h".
7818         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7819         hold a reference to an inferior_object.
7820         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7821         inferior_thread.
7822         * python/py-inferior.c (struct inferior_object): Give the type a
7823         tag name instead of a typedef.
7824         (python_on_normal_stop): No need to check if the current thread is
7825         listed.
7826         (inferior_to_inferior_object): Change return type to
7827         inferior_object.  All callers adjusted.
7828         (find_thread_object): Delete, bits factored out to ...
7829         (thread_to_thread_object): ... this new function.
7830         * python/py-infthread.c (create_thread_object): Use
7831         inferior_to_inferior_object.
7832         (thpy_is_stopped): Use thread pointer directly.
7833         (gdbpy_selected_thread): Use inferior_thread.
7834         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7835         field, replaced with ...
7836         <thread>: ... this new field.  All users adjusted.
7837         (btpy_insn_or_gap_new): Drop const.
7838         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7839         callers adjusted.
7840         * python/py-record.c: Include "gdbthread.h".
7841         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7842         a ptid_t.  All callers adjusted.
7843         (gdbpy_current_recording): Use inferior_thread.
7844         * python/py-record.h (recpy_record_object) <ptid>: Delete
7845         field, replaced with ...
7846         <thread>: ... this new field.  All users adjusted.
7847         (recpy_element_object) <ptid>: Delete
7848         field, replaced with ...
7849         <thread>: ... this new field.  All users adjusted.
7850         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7851         a ptid_t.  All callers adjusted.
7852         * python/py-threadevent.c: Include "gdbthread.h".
7853         (get_event_thread): Use thread_to_thread_object.
7854         * python/python-internal.h (struct inferior_object): Forward
7855         declare.
7856         (find_thread_object, find_inferior_object): Delete declarations.
7857         (thread_to_thread_object, inferior_to_inferior_object): New
7858         declarations.
7859         * record-btrace.c: Include "inferior.h".
7860         (require_btrace_thread): Use inferior_thread.
7861         (record_btrace_frame_sniffer)
7862         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7863         (get_thread_current_frame): Use scoped_restore_current_thread and
7864         switch_to_thread.
7865         (get_thread_current_frame): Use thread pointer directly.
7866         (record_btrace_replay_at_breakpoint): Use thread's inferior
7867         pointer directly.
7868         * record-full.c: Include "inferior.h".
7869         * regcache.c: Include "gdbthread.h".
7870         (get_thread_arch_regcache): Use the inferior's address space
7871         directly.
7872         (get_thread_regcache, registers_changed_thread): New.
7873         * regcache.h (get_thread_regcache(thread_info *thread)): New
7874         overload.
7875         (registers_changed_thread): New.
7876         (remote_target) <remote_detach_1>: Swap order of parameters.
7877         (remote_add_thread): <remote_add_thread>: Return the new thread.
7878         (get_remote_thread_info(ptid_t)): New overload.
7879         (remote_target::remote_notice_new_inferior): Use thread pointers
7880         directly.
7881         (remote_target::process_initial_stop_replies): Use
7882         thread_info::set_running.
7883         (remote_target::remote_detach_1, remote_target::detach)
7884         (extended_remote_target::detach): Adjust.
7885         * stack.c (frame_show_address): Use inferior_thread.
7886         * target-debug.h (target_debug_print_thread_info_pp): New.
7887         * target-delegates.c: Regenerate.
7888         * target.c (default_thread_address_space): Delete.
7889         (memory_xfer_partial_1): Use current_inferior.
7890         (target_detach): Use current_inferior.
7891         (target_thread_address_space): Delete.
7892         (generic_mourn_inferior): Use current_inferior.
7893         * target.h (struct target_ops) <thread_address_space>: Delete.
7894         (target_thread_address_space): Delete.
7895         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7896         pointers directly.
7897         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7898         thread pointer instead of a ptid_t.  Adjust all callers.
7899         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7900         (first_thread_of_process): Delete, replaced by ...
7901         (first_thread_of_inferior): ... this new function.  All callers
7902         adjusted.
7903         (any_thread_of_process): Rename to ...
7904         (any_thread_of_inferior): ... this, and take an inferior pointer.
7905         (any_live_thread_of_process): Rename to ...
7906         (any_live_thread_of_inferior): ... this, and take an inferior
7907         pointer.
7908         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7909         (value_in_thread_stack_temporaries)
7910         (get_last_thread_stack_temporary): Take a thread pointer instead
7911         of a ptid_t.  Adjust all callers.
7912         (thread_info::set_running): New.
7913         (validate_registers_access): Use inferior_thread.
7914         (can_access_registers_ptid): Rename to ...
7915         (can_access_registers_thread): ... this, and take a thread
7916         pointer.
7917         (print_thread_info_1): Adjust to compare thread pointers instead
7918         of ptids.
7919         (switch_to_no_thread, switch_to_thread): Make extern.
7920         (scoped_restore_current_thread::~scoped_restore_current_thread):
7921         Use m_thread pointer directly.
7922         (scoped_restore_current_thread::scoped_restore_current_thread):
7923         Use inferior_thread.
7924         (thread_command): Use thread pointer directly.
7925         (thread_num_make_value_helper): Use inferior_thread.
7926         * top.c (execute_command): Use inferior_thread.
7927         * tui/tui-interp.c: Include "inferior.h".
7928         * varobj.c (varobj_create): Use inferior_thread.
7929         (value_of_root_1): Use find_thread_global_id instead of
7930         global_thread_id_to_ptid.
7931
7932 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7933
7934         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7935         possible.
7936         (regcache::write_part): Likewise.
7937         (readable_regcache::cooked_read_part): Update comment.
7938         (readable_regcache::cooked_write_part): Likewise.
7939         * regcache.h: (readable_regcache::read_part): Likewise.
7940         (regcache::write_part): Likewise.
7941
7942 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7943             Dirk Schubert  <dirk.schubert@arm.com>
7944
7945         * aarch64-linux-nat.c (post_attach): New.
7946         (aarch64_linux_nat_target::post_attach): Override post_attach to
7947         record the number of hardware debug registers.
7948
7949 2018-06-20  Tom Tromey  <tom@tromey.com>
7950
7951         * python/py-param.c (add_setshow_generic): Make parameters const.
7952         (parmpy_init): Update.
7953
7954 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7955
7956         * regcache.h (regcache_cooked_read_ftype): Rename to...
7957         (register_read_ftype): ...this, change type to function_view.
7958         (class reg_buffer) <save>: Remove src parameter.
7959         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7960         parameter non-const in first overload.  Remove src parameter in
7961         second overload.
7962         * regcache.c (do_cooked_read): Remove.
7963         (readonly_detached_regcache::readonly_detached_regcache): Make
7964         parameter non-const, adjust call to other constructor.
7965         (reg_buffer::save): Remove src parameter.
7966         * frame.c (do_frame_register_read): Remove.
7967         (frame_save_as_regcache): Use lambda function.
7968         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7969         parameter to ppu2spu_data *.
7970         (ppu2spu_sniffer): Use lambda function.
7971
7972 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7973
7974         * record-full.c (record_full_target::insert_breakpoint): Remove
7975         "struct" keyword, add const.
7976
7977 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7978
7979         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7980         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7981         * configure.ac: Remove AC_PREREQ, add missing quoting.
7982         * gnulib/configure.ac: Modernize usage of
7983         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7984         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7985         (AUTOMAKE_VERSION): Bump to 1.15.1.
7986         * configure: Re-generate.
7987         * config.in: Re-generate.
7988         * aclocal.m4: Re-generate.
7989         * gnulib/aclocal.m4: Re-generate.
7990         * gnulib/config.in: Re-generate.
7991         * gnulib/configure: Re-generate.
7992         * gnulib/import/Makefile.in: Re-generate.
7993
7994 2018-06-19  Pedro Alves  <palves@redhat.com>
7995
7996         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7997         (lookup_minimal_symbol_by_pc_section): ... here with
7998         gdb_assert_not_reached added.
7999
8000 2018-06-19  Pedro Alves  <palves@redhat.com>
8001
8002         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8003         parameter with a block parameter.  Compare location's block symbol
8004         with the frame's block instead of addresses.
8005         (skip_inline_frames): Pass the current block instead of the
8006         frame's address.  Break out as soon as we determine the frame
8007         should not be skipped.
8008
8009 2018-06-18  Tom Tromey  <tom@tromey.com>
8010
8011         * solib-aix.c (solib_aix_get_section_offsets): Return
8012         unique_xmalloc_ptr.
8013         (solib_aix_solib_create_inferior_hook): Update.
8014
8015 2018-06-18  Tom Tromey  <tom@tromey.com>
8016
8017         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8018
8019 2018-06-18  Tom Tromey  <tom@tromey.com>
8020
8021         * solib-frv.c (frv_relocate_main_executable): Use
8022         unique_xmalloc_ptr.
8023         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8024         unique_xmalloc_ptr.
8025
8026 2018-06-18  Tom Tromey  <tom@tromey.com>
8027
8028         * objfiles.h (inhibit_section_map_updates): Update.
8029         (resume_section_map_updates, resume_section_map_updates_cleanup):
8030         Remove.
8031         * solib-svr4.c (svr4_handle_solib_event): Update.
8032         * objfiles.c (inhibit_section_map_updates): Return
8033         scoped_restore_tmpl<int>.
8034         (resume_section_map_updates, resume_section_map_updates_cleanup):
8035         Remove.
8036
8037 2018-06-18  Tom Tromey  <tom@tromey.com>
8038
8039         * valprint.h (read_string): Update.
8040         * valprint.c (read_string): Change type of "buffer".
8041         (val_print_string): Update.
8042         * python/py-value.c (valpy_string): Update.
8043         * language.h (struct language_defn) <la_get_string>: Change
8044         type of "buffer".
8045         (default_get_string, c_get_string): Update.
8046         * language.c (default_get_string): Change type of "buffer".
8047         * guile/scm-value.c (gdbscm_value_to_string): Update.
8048         * c-lang.c (c_get_string): Change type of "buffer".
8049
8050 2018-06-18  Tom Tromey  <tom@tromey.com>
8051
8052         * ser-mingw.c (struct pipe_state_destroyer): New.
8053         (pipe_state_up): New typedef.
8054         (cleanup_pipe_state): Remove.
8055         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8056
8057 2018-06-18  Tom Tromey  <tom@tromey.com>
8058
8059         * rust-lang.h (rust_yyerror): Don't declare.
8060         * rust-lang.c (rust_language_defn): Update.
8061         * rust-exp.y (yyerror): Now static.
8062         * parse.c (parse_exp_in_context_1): Update.
8063         * p-lang.h (p_yyerror): Don't declare.
8064         * p-lang.c (p_language_defn): Update.
8065         * p-exp.y (yyerror): Now static.
8066         * opencl-lang.c (opencl_language_defn): Update.
8067         * objc-lang.c (objc_language_defn): Update.
8068         * m2-lang.h (m2_yyerror): Don't declare.
8069         * m2-lang.c (m2_language_defn): Update.
8070         * m2-exp.y (yyerror): Now static.
8071         * language.h (struct language_defn) <la_error>: Remove.
8072         * language.c (unk_lang_error): Remove.
8073         (unknown_language_defn, auto_language_defn): Remove.
8074         * go-lang.h (go_yyerror): Don't declare.
8075         * go-lang.c (go_language_defn): Update.
8076         * go-exp.y (yyerror): Now static.
8077         * f-lang.h (f_yyerror): Don't declare.
8078         * f-lang.c (f_language_defn): Update.
8079         * f-exp.y (yyerror): Now static.
8080         * d-lang.h (d_yyerror): Don't declare.
8081         * d-lang.c (d_language_defn): Update.
8082         * d-exp.y (yyerror): Now static.
8083         * c-lang.h (c_yyerror): Don't declare.
8084         * c-lang.c (c_language_defn, cplus_language_defn)
8085         (asm_language_defn, minimal_language_defn): Update.
8086         * c-exp.y (yyerror): Now static.
8087         * ada-lang.h (ada_yyerror): Don't declare.
8088         * ada-lang.c (ada_language_defn): Update.
8089         * ada-exp.y (yyerror): Now static.
8090
8091 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8092
8093         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8094         (store_sveregs_to_thread): Likewise.
8095         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8096         (aarch64_linux_store_inferior_registers): Likewise.
8097         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8098         function.
8099         (aarch64_sve_regs_copy_to_regcache): Likewise.
8100         (aarch64_sve_regs_copy_from_regcache): Likewise.
8101         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8102         declaration.
8103         (aarch64_sve_regs_copy_to_regcache): Likewise.
8104         (aarch64_sve_regs_copy_from_regcache): Likewise.
8105         (sve_context): Structure from Linux headers.
8106         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8107         (SVE_SIG_ZREG_SIZE): Likewise.
8108         (SVE_SIG_PREG_SIZE): Likewise.
8109         (SVE_SIG_FFR_SIZE): Likewise.
8110         (SVE_SIG_REGS_OFFSET): Likewise.
8111         (SVE_SIG_ZREGS_OFFSET): Likewise.
8112         (SVE_SIG_ZREG_OFFSET): Likewise.
8113         (SVE_SIG_ZREGS_SIZE): Likewise.
8114         (SVE_SIG_PREGS_OFFSET): Likewise.
8115         (SVE_SIG_PREG_OFFSET): Likewise.
8116         (SVE_SIG_PREGS_SIZE): Likewise.
8117         (SVE_SIG_FFR_OFFSET): Likewise.
8118         (SVE_SIG_REGS_SIZE): Likewise.
8119         (SVE_SIG_CONTEXT_SIZE): Likewise.
8120         (SVE_PT_REGS_MASK): Likewise.
8121         (SVE_PT_REGS_FPSIMD): Likewise.
8122         (SVE_PT_REGS_SVE): Likewise.
8123         (SVE_PT_VL_INHERIT): Likewise.
8124         (SVE_PT_VL_ONEXEC): Likewise.
8125         (SVE_PT_REGS_OFFSET): Likewise.
8126         (SVE_PT_FPSIMD_OFFSET): Likewise.
8127         (SVE_PT_FPSIMD_SIZE): Likewise.
8128         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8129         (SVE_PT_SVE_PREG_SIZE): Likewise.
8130         (SVE_PT_SVE_FFR_SIZE): Likewise.
8131         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8132         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8133         (__SVE_SIG_TO_PT): Likewise.
8134         (SVE_PT_SVE_OFFSET): Likewise.
8135         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8136         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8137         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8138         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8139         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8140         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8141         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8142         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8143         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8144         (SVE_PT_SVE_SIZE): Likewise.
8145         (SVE_PT_SIZE): Likewise.
8146         (HAS_SVE_STATE): New define.
8147
8148 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8149
8150         * nat/aarch64-sve-linux-sigcontext.h: New file.
8151         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8152         new files.
8153         (SVE_VQ_MIN): Likewise.
8154         (SVE_VQ_MAX): Likewise.
8155         (SVE_VL_MIN): Likewise.
8156         (SVE_VL_MAX): Likewise.
8157         (SVE_NUM_ZREGS): Likewise.
8158         (SVE_NUM_PREGS): Likewise.
8159         (sve_vl_valid): Likewise.
8160         (struct user_sve_header): Likewise.
8161
8162 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8163             Richard Bunt <Richard.Bunt@arm.com>
8164
8165         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8166         was requested by GDB.
8167
8168 2018-06-15  Tom de Vries  <tdevries@suse.de>
8169
8170         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8171
8172 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8173
8174         * gnulib/update-gnulib.sh: Print expected versions of
8175         autoconf/aclocal.
8176
8177 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8178
8179         * arch-utils.c (default_type_align): Use type_length_units.
8180         * gdbtypes.c (type_align): Use type_length_units.
8181
8182 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8183
8184         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8185         of 'define' command.
8186
8187 2018-06-14  Tom de Vries  <tdevries@suse.de>
8188
8189         PR cli/22573
8190         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8191         get_no_prettyformat_print_options.
8192
8193 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8194
8195         * sparc-nat.h: Include target.h.
8196         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8197         <fetch_registers>: Remove this argument in function call.
8198         <store_registers>: Remove this argument in function call, remove
8199         extra semicolon.
8200         <low_forget_process>: Call sparc64_forget_process instead of
8201         sparc_forget_process.
8202
8203 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8204
8205         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8206         (procfs_target::make_corefile_notes): Adjust to new
8207         target_read_alloc return type.
8208
8209 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8210             Stephen Roberts  <stephen.roberts@arm.com>
8211
8212         PR gdb/22882
8213         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8214         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8215         Move should_notify_stop local into more inner scope.
8216
8217 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8218             Stephen Roberts  <stephen.roberts@arm.com>
8219
8220         PR gdb/22882
8221         * infrun.c (resume_1): Add call to mark_async_event_handler.
8222
8223 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8224
8225         * infrun.c (do_target_wait): Change old version of $pc printed.
8226
8227 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8228
8229         * dwarf2read.c (read_index_from_section): Rename to...
8230         (read_gdb_index_from_section): ... this, update all callers.
8231         (dwarf2_read_index): Rename to...
8232         (dwarf2_read_gdb_index): ... this, update all callers.
8233
8234 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8235
8236         * hppa-linux-nat.c
8237         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8238         hppa_linux_nat_target::fetch_registers.
8239
8240 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8241
8242         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8243         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8244         (AARCH64_DWARF_SVE_FFR): Likewise.
8245         (AARCH64_DWARF_SVE_P0): Likewise.
8246         (AARCH64_DWARF_SVE_Z0): Likewise.
8247
8248 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8249
8250         * common/common-regcache.h (raw_compare): New function.
8251         * regcache.c (regcache::raw_compare): Likewise.
8252         * regcache.h (regcache::raw_compare): New declaration.
8253
8254 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8255
8256         * common/common-regcache.h (reg_buffer_common): New structure.
8257         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8258         (reg_buffer::raw_supply): Likewise.
8259         (reg_buffer::raw_supply_integer): Likewise.
8260         (reg_buffer::raw_supply_zeroed): Likewise.
8261         (reg_buffer::raw_collect): Likewise.
8262         (reg_buffer::raw_collect_integer): Likewise.
8263         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8264         (reg_buffer::raw_supply): Likewise.
8265         (reg_buffer::raw_supply_integer): Likewise.
8266         (reg_buffer::raw_supply_zeroed): Likewise.
8267         (reg_buffer::raw_collect): Likewise.
8268         (reg_buffer::raw_collect_integer): Likewise.
8269
8270 2018-06-10  Tom Tromey  <tom@tromey.com>
8271
8272         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8273         (class remote_state) <stop_reply_queue>: Now std::vector.
8274         (remote_state::~remote_state)
8275         (remote_target::stop_reply_queue_length): Update.
8276         (struct queue_iter_param, remove_child_of_pending_fork)
8277         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8278         (check_pending_event_prevents_wildcard_vcont_callback)
8279         (remove_stop_reply_for_inferior)
8280         (remove_stop_reply_of_remote_state)
8281         (remote_notif_remove_once_on_match)
8282         (stop_reply_match_ptid_and_ws)
8283         (remote_kill_child_of_pending_fork): Remove.
8284         (remote_target::remove_new_fork_children)
8285         (remote_target::check_pending_events_prevent_wildcard_vcont)
8286         (remote_target::discard_pending_stop_replies)
8287         (remote_target::discard_pending_stop_replies_in_queue)
8288         (remote_target::remote_notif_remove_queued_reply)
8289         (remote_target::queued_stop_reply)
8290         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8291         (remote_target::wait, remote_target::kill_new_fork_children)
8292         (remote_target::async): Update.
8293
8294 2018-06-10  Tom Tromey  <tom@tromey.com>
8295
8296         * record-full.c (record_full_arch_list_cleanups): Remove.
8297         (record_full_message): Use try/catch.
8298         (record_full_wait_cleanups): Remove.
8299         (record_full_wait_1): Use try/catch.
8300         (record_full_restore): Likewise.
8301
8302 2018-06-10  Tom Tromey  <tom@tromey.com>
8303
8304         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8305         declare VEC.  Add constructor.
8306         <in_target_beneath>: Now bool.
8307         (record_full_breakpoints): Now a std::vector, static.
8308         (record_full_sync_record_breakpoints)
8309         (record_full_init_record_breakpoints)
8310         (record_full_target::insert_breakpoint)
8311         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8312
8313 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8314
8315         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8316         * serial.c (serial_interface_lookup): Remove struct keyword.
8317
8318 2018-06-10  Tom Tromey  <tom@tromey.com>
8319
8320         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8321         method.
8322         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8323         a method.
8324         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8325         method.
8326         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8327         "beneath" as a method.
8328         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8329         Use "beneath" as a method.
8330
8331 2018-06-10  Tom Tromey  <tom@tromey.com>
8332
8333         * tracefile.c (struct trace_file_writer_deleter): New.
8334         <operator()>: Rename from trace_file_writer_xfree.
8335         (trace_file_writer_up): New typedef.
8336         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8337
8338 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8339
8340         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8341         <m_registers, m_register_status>: Change type to
8342         std::unique_ptr.
8343         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8344         XCNEWVEC.
8345
8346 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8347
8348         * common/common-regcache.h (enum register_status): Add
8349         underlying type "signed char".
8350         * regcache.h (reg_buffer) <m_register_status>: Change type to
8351         register_status *.
8352         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8353         register_status instead of signed char.
8354         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8355         (reg_buffer::get_register_status): Remove cast.
8356         (readable_regcache::raw_read): Remove cast.
8357         (readable_regcache::cooked_read): Remove cast.
8358
8359 2018-06-09  Tom Tromey  <tom@tromey.com>
8360
8361         * source.c (reverse_search_command, forward_search_command): Use
8362         scoped_fd.
8363
8364 2018-06-09  Tom Tromey  <tom@tromey.com>
8365
8366         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8367         (serial_ops_list): Now static, std::vector.
8368         (serial_interface_lookup, serial_add_interface): Update.
8369
8370 2018-06-09  Tom Tromey  <tom@tromey.com>
8371
8372         * dwarf2read.c (process_cu_includes): Update.
8373         (process_full_comp_unit): Update.
8374         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8375         std::vector.
8376
8377 2018-06-08  Paul Koning  <paul_koning@dell.com>
8378
8379         PR gdb/23252
8380
8381         * python/python.c (do_start_initialization):
8382         Avoid call to internal Python API.
8383         (init__gdb_module): New function.
8384
8385 2018-06-08  Gary Benson <gbenson@redhat.com>
8386
8387         * linux-thread-db.c (valprint.h): New include.
8388         (struct check_thread_db_info): New structure.
8389         (check_thread_db_on_load, tdb_testinfo): New static globals.
8390         (check_thread_db, check_thread_db_callback): New functions.
8391         (try_thread_db_load_1): Run integrity checks if requested.
8392         (maintenance_check_libthread_db): New function.
8393         (_initialize_thread_db): Register "maint check libthread-db"
8394         and "maint set/show check-libthread-db".
8395         * NEWS: Mention the above new commands.
8396
8397 2018-06-08  Tom Tromey  <tom@tromey.com>
8398
8399         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8400         now a method.
8401
8402 2018-06-08  Tom Tromey  <tom@tromey.com>
8403
8404         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8405
8406 2018-06-08  Tom Tromey  <tom@tromey.com>
8407
8408         * common/btrace-common.h (struct btrace_data): Add constructor,
8409         destructor, move assignment operator.
8410         <empty, clear, fini>: New methods.
8411         <format>: Initialize.
8412         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8413         (btrace_data_empty): Don't declare.
8414         * common/btrace-common.c (btrace_data_init): Remove.
8415         (btrace_data::fini): Rename from btrace_data_fini.
8416         (btrace_data::empty): Rename from btrace_data_empty.
8417         (btrace_data::clear): Rename from btrace_data_clear.  Return
8418         bool.
8419         * btrace.h (make_cleanup_btrace_data): Don't declare.
8420         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8421         (parse_xml_btrace): Update.
8422         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8423         (maint_btrace_clear_packet_history_cmd): Update.
8424
8425 2018-06-07  Pedro Alves  <palves@redhat.com>
8426
8427         * target.h (target_ops) <beneath>: Now a method.  All references
8428         updated.
8429         (class target_stack): New.
8430         * target.c (g_target_stack): New.
8431         (g_current_top_target): Delete.
8432         (current_top_target): Get the top target out of g_target_stack.
8433         (target_stack::push, target_stack::unpush): New.
8434         (push_target, unpush_target): Reimplement.
8435         (target_is_pushed): Reimplement in terms of g_target_stack.
8436         (target_ops::beneath, target_stack::find_beneath): New.
8437
8438 2018-06-07  Pedro Alves  <palves@redhat.com>
8439
8440         * target.h (find_target_beneath): Delete declaration.
8441         * target.c (find_target_beneath): Delete definition.
8442         * aix-thread.c: All callers of find_target_beneath adjusted to
8443         call target_ops::beneath instead.
8444         * bsd-uthread.c: Likewise.
8445         * linux-thread-db.c: Likewise.
8446         * ravenscar-thread.c: Likewise.
8447         * sol-thread.c: Likewise.
8448         * spu-multiarch.c: Likewise.
8449
8450 2018-06-07  Pedro Alves  <palves@redhat.com>
8451
8452         * target.h (target_ops) <beneath>: Now a method.  All references
8453         updated.
8454         (target_ops) <m_beneath>: New.
8455         * target.c (target_ops::beneath): New.
8456         * corelow.c: Adjust all references to target_ops::beneath.
8457         * linux-thread-db.c: Likewise.
8458         * make-target-delegates: Likewise.
8459         * record-btrace.c: Likewise.
8460         * record-full.c: Likewise.
8461         * remote.c: Likewise.
8462         * target.c: Likewise.
8463         * target-delegates.c: Regenerate.
8464
8465 2018-06-07  Pedro Alves  <palves@redhat.com>
8466
8467         * target.h (target_stack): Delete.
8468         (current_top_target): Declare function.
8469         * target.c (target_stack): Delete.
8470         (g_current_top_target): New.
8471         (current_top_target): New function.
8472         * auxv.c: Use current_top_target instead of target_stack
8473         throughout.
8474         * avr-tdep.c: Likewise.
8475         * breakpoint.c: Likewise.
8476         * corefile.c: Likewise.
8477         * elfread.c: Likewise.
8478         * eval.c: Likewise.
8479         * exceptions.c: Likewise.
8480         * frame.c: Likewise.
8481         * gdbarch-selftests.c: Likewise.
8482         * gnu-v3-abi.c: Likewise.
8483         * ia64-tdep.c: Likewise.
8484         * ia64-vms-tdep.c: Likewise.
8485         * infcall.c: Likewise.
8486         * infcmd.c: Likewise.
8487         * infrun.c: Likewise.
8488         * linespec.c: Likewise.
8489         * linux-tdep.c: Likewise.
8490         * minsyms.c: Likewise.
8491         * ppc-linux-nat.c: Likewise.
8492         * ppc-linux-tdep.c: Likewise.
8493         * procfs.c: Likewise.
8494         * regcache.c: Likewise.
8495         * remote.c: Likewise.
8496         * rs6000-tdep.c: Likewise.
8497         * s390-linux-nat.c: Likewise.
8498         * s390-tdep.c: Likewise.
8499         * solib-aix.c: Likewise.
8500         * solib-darwin.c: Likewise.
8501         * solib-dsbt.c: Likewise.
8502         * solib-spu.c: Likewise.
8503         * solib-svr4.c: Likewise.
8504         * solib-target.c: Likewise.
8505         * sparc-tdep.c: Likewise.
8506         * sparc64-tdep.c: Likewise.
8507         * spu-tdep.c: Likewise.
8508         * symfile.c: Likewise.
8509         * symtab.c: Likewise.
8510         * target-descriptions.c: Likewise.
8511         * target-memory.c: Likewise.
8512         * target.c: Likewise.
8513         * target.h: Likewise.
8514         * tracefile-tfile.c: Likewise.
8515         * tracepoint.c: Likewise.
8516         * valops.c: Likewise.
8517         * valprint.c: Likewise.
8518         * value.c: Likewise.
8519         * windows-tdep.c: Likewise.
8520         * mi/mi-main.c: Likewise.
8521
8522 2018-06-07  Tom Tromey  <tom@tromey.com>
8523
8524         * valprint.h (build_address_symbolic): Declare.
8525         * printcmd.c (print_address_symbolic): Update.
8526         (build_address_symbolic): Change "name" and "filename" to
8527         std::string.
8528         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8529         Update.
8530         * defs.h (build_address_symbolic): Remove declaration.
8531
8532 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8533
8534         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8535         (aarch64_vnv_type): Add function.
8536         (aarch64_pseudo_register_name): Add V regs for SVE.
8537         (aarch64_pseudo_register_type): Likewise.
8538         (aarch64_pseudo_register_reggroup_p): Likewise.
8539         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8540         (aarch64_pseudo_read_value): Add V regs for SVE.
8541         (aarch64_pseudo_write_2): Use V0 offset for SVE
8542         (aarch64_pseudo_write): Add V regs for SVE.
8543         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8544
8545 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8546
8547         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8548         (sve_vl_from_vq): Likewise.
8549
8550 2018-06-05  Tom Tromey  <tom@tromey.com>
8551
8552         * cli/cli-cmds.c (show_version): Update.
8553         * top.c (print_gdb_version): Add "interactive" parameter.
8554         Update.
8555         * main.c (captured_main_1): Update.
8556         * top.h (print_gdb_version): Add "interactive" parameter and a
8557         comment.
8558
8559 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8560
8561         * common/enum-flags.h: Add trailing semicolon to example in
8562         comment.
8563
8564 2018-06-05  Tom Tromey  <tom@tromey.com>
8565
8566         PR cli/12326:
8567         * NEWS: Add entry about pager.
8568         * utils.c (pagination_disabled_for_command): New global.
8569         (prompt_for_continue): Allow "c" response to prompt.
8570         (reinitialize_more_filter): Clear
8571         pagination_disabled_for_command.
8572         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8573
8574 2018-06-04  Tom Tromey  <tom@tromey.com>
8575
8576         * ada-lang.h (ada_lookup_symbol_list): Update.
8577         * ada-lang.c (resolve_subexp): Update.
8578         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8579         parameter.
8580         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8581         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8582         results parameter to std::vector.
8583         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8584         Update.
8585         * ada-exp.y (block_lookup): Update.
8586         (select_possible_type_sym): Change type of syms.  Remove nsyms
8587         parameter.
8588         (write_var_or_type, write_name_assoc): Update.
8589
8590 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8591
8592         * windows-nat.c (windows_nat_target::xfer_partial): Return
8593         TARGET_XFER_E_IO if we need to delegate to the target beneath
8594         but BENEATH is NULL.
8595
8596 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8597
8598         * Makefile.in (config.status): Add configure.nat as a
8599         dependency.
8600
8601 2018-06-04  Tom Tromey  <tom@tromey.com>
8602
8603         * cp-name-parser.y (cpname_state): Add method declarations.
8604         (HANDLE_QUAL): Update.
8605         (cpname_state::d_grab, cpname_state::fill_comp)
8606         (cpname_state::make_operator, cpname_state::make_dtor)
8607         (cpname_state::make_builtin_type, cpname_state::make_name)
8608         (cpname_state::d_qualify, cpname_state::d_int_type)
8609         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8610         (%union): Move earlier.
8611
8612 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8613
8614         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8615
8616 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8617
8618         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8619         (aarch64_pseudo_write_1): Likewise.
8620         (aarch64_pseudo_read_value): Use helper.
8621         (aarch64_pseudo_write): Likewise.
8622
8623 2018-06-04  Pedro Alves  <palves@redhat.com>
8624
8625         * darwin-nat.c (darwin_ops): Delete.
8626         (darwin_attach_pid): Use get_native_target.
8627
8628 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8629
8630         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8631         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8632
8633 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8634
8635         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8636         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8637         (aarch64_gdbarch_init): Check for SVE.
8638         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8639
8640 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8641
8642         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8643         * aarch64-tdep.h (aarch64_read_description): Likewise.
8644         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8645         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8646         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8647         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8648         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8649
8650 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8651
8652         * value.c (value_fetch_lazy_bitfield): New.
8653         (value_fetch_lazy_memory): New.
8654         (value_fetch_lazy_register): New.
8655         (value_fetch_lazy): Factor out to smaller functions.
8656
8657 2018-06-01  Tom Tromey  <tom@tromey.com>
8658
8659         * cp-name-parser.y (backslashable, represented): Now const.
8660
8661 2018-06-01  Tom Tromey  <tom@tromey.com>
8662
8663         * cp-name-parser.y: Include parser-defs.h.
8664         (parser_fprintf): Remove declaration.
8665
8666 2018-06-01  Tom Tromey  <tom@tromey.com>
8667
8668         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8669         %parse-param.
8670         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8671         (global_result): Remove globals.
8672         (struct cpname_state): New.
8673         (yyparse): Don't declare.
8674         (yylex, yyerror): Move declarations after %union.
8675         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8676         (make_name): Add state parameter.
8677         Update all callers.
8678         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8679         parameter.
8680         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8681         Update.
8682         (yylex): Add lvalp, state parameters.
8683         (yyerror): Add state parameter.
8684         (cp_demangled_name_to_comp): Update.
8685
8686 2018-06-01  Tom Tromey  <tom@tromey.com>
8687
8688         * cp-name-parser.y (parser_fprintf): Declare.
8689         (GDB_YY_REMAP_PREFIX): Define.
8690         Include yy-remap.h.  Don't redefine yy* identifiers.
8691
8692 2018-06-01  Tom Tromey  <tom@tromey.com>
8693
8694         * python/py-type.c (typy_legacy_template_argument): Update.
8695         * cp-support.h (cp_demangled_name_to_comp): Update.
8696         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8697         parameter to be a "std::string *".
8698         (main): Update.
8699
8700 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8701
8702         * ada-lex.l: Include "diagnostics.h" instead of
8703         "common/diagnostics.h".
8704         * unittests/environ-selftests.c: Likewise.
8705         * common/diagnostics.h: Moved to ../include.
8706
8707 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8708
8709         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8710         to language_mode_manual while calling breakpoint_re_set_one.
8711
8712 2018-06-01  Tom Tromey  <tom@tromey.com>
8713
8714         * valops.c (value_cast_structs, destructor_name_p): Update.
8715         * symtab.c (gdb_mangle_name): Update.
8716         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8717         Update.
8718         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8719         (pascal_object_print_value_fields, pascal_object_print_value):
8720         Update.
8721         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8722         * linespec.c (find_methods): Update.
8723         * gdbtypes.h (type_name_no_tag): Remove.
8724         (type_name_or_error): Rename from type_name_no_tag_or_error.
8725         * gdbtypes.c (type_name_no_tag): Remove.
8726         (type_name_or_error): Rename from type_name_no_tag_or_error.
8727         (lookup_struct_elt_type, check_typedef): Update.
8728         * expprint.c (print_subexp_standard): Update.
8729         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8730         * d-namespace.c (d_lookup_nested_symbol): Update.
8731         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8732         (cp_print_class_member): Update.
8733         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8734         * completer.c (add_struct_fields): Update.
8735         * c-typeprint.c (cp_type_print_derivation_info)
8736         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8737         Update.
8738         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8739         (ada_prefer_type, ada_is_exception_sym): Update.
8740
8741 2018-06-01  Tom Tromey  <tom@tromey.com>
8742
8743         * valops.c (enum_constant_from_type, value_namespace_elt)
8744         (value_maybe_namespace_elt): Update.
8745         * valarith.c (find_size_for_pointer_math): Update.
8746         * target-descriptions.c (make_gdb_type): Update.
8747         * symmisc.c (print_symbol): Update.
8748         * stabsread.c (define_symbol, read_type)
8749         (complain_about_struct_wipeout, add_undefined_type)
8750         (cleanup_undefined_types_1): Update.
8751         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8752         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8753         (rust_internal_print_type, rust_composite_type)
8754         (rust_evaluate_funcall, rust_evaluate_subexp)
8755         (rust_inclusive_range_type_p): Update.
8756         * python/py-type.c (typy_get_tag): Update.
8757         * p-typeprint.c (pascal_type_print_base): Update.
8758         * mdebugread.c (parse_symbol, parse_type): Update.
8759         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8760         Update.
8761         * guile/scm-type.c (gdbscm_type_tag): Update.
8762         * go-lang.c (sixg_string_p): Update.
8763         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8764         Update.
8765         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8766         (TYPE_TAG_NAME): Remove.
8767         * gdbtypes.c (type_name_no_tag): Simplify.
8768         (check_typedef, check_types_equal, recursive_dump_type)
8769         (copy_type_recursive, arch_composite_type): Update.
8770         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8771         in summary mode when needed.
8772         * eval.c (evaluate_funcall): Update.
8773         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8774         (process_structure_scope, read_enumeration_type)
8775         (read_namespace_type, read_module_type, determine_prefix): Update.
8776         * cp-support.c (inspect_type): Update.
8777         * coffread.c (process_coff_symbol, decode_base_type): Update.
8778         * c-varobj.c (c_is_path_expr_parent): Update.
8779         * c-typeprint.c (c_type_print_base_struct_union): Update.
8780         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8781         summary when using C language.
8782         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8783         (gen_maybe_namespace_elt): Update.
8784         * ada-lang.c (ada_type_name): Simplify.
8785         (empty_record, ada_template_to_fixed_record_type_1)
8786         (template_to_static_fixed_type)
8787         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8788
8789 2018-06-01  Tom Tromey  <tom@tromey.com>
8790
8791         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8792         c_print_type.
8793         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8794         (c_print_type): Update.
8795         (c_print_type): New overload.
8796         (c_type_print_varspec_prefix, c_type_print_args)
8797         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8798         (c_type_print_base_struct_union, c_type_print_base_1)
8799         (cp_type_print_method_args): Add "language" parameter.
8800         (c_type_print_base): Update.
8801         * c-lang.h (c_print_type): Add new overload.
8802
8803 2018-06-01  Tom Tromey  <tom@tromey.com>
8804
8805         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8806         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8807
8808 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8809
8810         * aarch64-tdep.c (aarch64_sve_register_names): New const
8811         var.
8812         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8813         (AARCH64_SVE_Z_REGS_NUM): New define.
8814         (AARCH64_SVE_P_REGS_NUM): Likewise.
8815         (AARCH64_SVE_NUM_REGS): Likewise.
8816
8817 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8818
8819         * nat/linux-ptrace.h [__alpha__]
8820         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8821         definitions.
8822
8823 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8824
8825         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8826         the endianness selected.
8827         * NEWS: Document `set endian auto' mode operation update.
8828
8829 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8830
8831         * Makefile.in: Add new header.
8832         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8833         (sve_vl_from_vg): Likewise.
8834         (sve_vq_from_vl): Likewise.
8835         (sve_vl_from_vq): Likewise.
8836         (sve_vq_from_vg): Likewise.
8837         (sve_vg_from_vq): Likewise.
8838         * configure.nat: Add new c file.
8839         * nat/aarch64-sve-linux-ptrace.c: New file.
8840         * nat/aarch64-sve-linux-ptrace.h: New file.
8841
8842 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8843
8844         * aarch64-linux-nat.c (aarch64_linux_read_description):
8845         Add parmeter zero.
8846         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8847         Likewise.
8848         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8849         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8850         (aarch64_gdbarch_init): Add parmeter zero.
8851         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8852         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8853         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8854         parmeter.
8855         * doc/gdb.texinfo: Describe SVE feature
8856         * features/aarch64-sve.c: New file.
8857
8858 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8859
8860         PR gdb/23210
8861         * gdbarch.sh (significant_addr_bit): Default to zero when
8862         not set by target architecture.
8863         * gdbarch.c: Re-generated.
8864         * utils.c (address_significant): Update.
8865
8866 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8867
8868         * stack.c (func_command): Remove trailing newline in call to error.
8869
8870 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8871
8872         * regcache.h (regcache_raw_collect): Remove, update callers to
8873         use regcache::raw_collect.
8874         * regcache.c (regcache_raw_collect): Remove.
8875
8876 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8877
8878         * regcache.h (regcache_raw_supply): Remove, update callers to
8879         use detached_regcache::raw_supply.
8880         * regcache.c (regcache_raw_supply): Remove.
8881
8882 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8883
8884         * regcache.h (regcache_cooked_write_part): Remove, update
8885         callers to use regcache::cooked_write_part.
8886         * regcache.c (regcache_cooked_write_part): Remove.
8887
8888 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8889
8890         * regcache.h (regcache_cooked_read_part): Remove, update callers
8891         to use readable_regcache::cooked_read_part.
8892         * regcache.c (regcache_cooked_read_part): Remove.
8893
8894 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8895
8896         * regcache.h (regcache_cooked_read_value): Remove, update
8897         callers to use readable_regcache::cooked_read_value.
8898         * regcache.c (regcache_cooked_read_value): Remove.
8899
8900 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8901
8902         * regcache.h (regcache_cooked_write): Remove, update callers to
8903         use regcache::cooked_write.
8904         * regcache.c (regcache_cooked_write): Remove.
8905
8906 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8907
8908         * regcache.h (regcache_invalidate): Remove, update callers to
8909         use detached_regcache::invalidate instead.
8910         * regcache.c (regcache_invalidate): Remove.
8911
8912 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8913
8914         * regcache.h (regcache_raw_write_part): Remove, update callers
8915         to use regcache::raw_write_part instead.
8916         * regcache.c (regcache_raw_write_part): Remove.
8917
8918 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8919
8920         * regcache.h (regcache_raw_read_part): Remove, update callers to
8921         use readable_regcache::raw_read_part instead.
8922         * regcache.c (regcache_raw_read_part): Remove.
8923
8924 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8925
8926         * regcache.h (regcache_cooked_read): Remove, update callers to
8927         use readable_regcache::cooked_read instead.
8928         * regcache.c (regcache_cooked_read): Remove.
8929
8930 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8931
8932         * regcache.h (regcache_raw_write): Remove, update callers to use
8933         regcache::raw_write instead.
8934         * regcache.c (regcache_raw_write): Remove.
8935
8936 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8937
8938         * regcache.h (regcache_raw_read): Remove, update callers to use
8939         readable_regcache::raw_read instead.
8940         * regcache.c (regcache_raw_read): Remove.
8941
8942 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8943
8944         * regcache.h (regcache_raw_update): Remove, update callers to
8945         use readable_regcache::raw_update instead.
8946         * regcache.c (regcache_raw_update): Remove.
8947
8948 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8949
8950         * regcache.h (regcache_register_status): Remove, update callers
8951         to use reg_buffer::get_register_status directly instead.
8952         * regcache.c (regcache_register_status): Remove.
8953
8954 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8955
8956         * regcache.h (regcache_get_ptid): Remove, update all callers to
8957         call regcache::ptid instead.
8958         * regcache.c (regcache_get_ptid): Remove.
8959
8960 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8961
8962         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8963
8964 2018-05-30  Pedro Alves  <palves@redhat.com>
8965
8966         * common/common-exceptions.h (exception_rethrow): Use
8967         ATTRIBUTE_NORETURN.
8968
8969 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8970
8971         * breakpoint.c (print_solib_event, check_status_catch_solib):
8972         Remove struct keyword in range-based for loops.
8973         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8974         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8975         Likewise.
8976         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8977         Likewise.
8978         * symfile.c (addr_info_make_relative): Likewise.
8979         * thread.c (value_in_thread_stack_temporaries): Likewise.
8980
8981 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8982
8983         PR gdb/16841
8984         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8985         aggregate type to get its real type before accessing it.
8986
8987 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8988
8989         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8990         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8991         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8992         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8993         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8994         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8995         * printcmd.c (info_address_command): Likewise.
8996
8997 2018-05-29  Tom Tromey  <tom@tromey.com>
8998
8999         * windows-nat.c (handle_exception): Update fall-through comment.
9000
9001 2018-05-29  Tom Tromey  <tom@tromey.com>
9002
9003         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9004         (struct program_space) <added_solibs>: Now a std::vector.
9005         * breakpoint.c (print_solib_event): Update.
9006         (check_status_catch_solib): Update.
9007         * progspace.c (clear_program_space_solib_cache): Update.
9008         * solib.c (update_solib_list): Update.
9009
9010 2018-05-29  Tom Tromey  <tom@tromey.com>
9011
9012         * python/py-type.c (typy_richcompare): Update.
9013         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9014         * gdbtypes.h (types_deeply_equal): Return bool.
9015         (types_equal): Likewise.
9016         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9017         declare VEC.
9018         (check_types_equal): Change worklist to std::vector.  Return
9019         bool.
9020         (struct type_equality_entry): Add constructor.
9021         (compare_maybe_null_strings): Return bool.
9022         (check_types_worklist): Return bool.  Change worklist to
9023         std::vector.
9024         (types_deeply_equal): Use std::vector.
9025         (types_equal): Return bool.
9026         (compare_maybe_null_strings): Simplify.
9027
9028 2018-05-29  Tom Tromey  <tom@tromey.com>
9029
9030         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9031
9032 2018-05-29  Tom Tromey  <tom@tromey.com>
9033
9034         * objc-lang.h: Don't include cp-support.h.
9035         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9036         declare VEC.
9037
9038 2018-05-27  Tom Tromey  <tom@tromey.com>
9039
9040         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9041
9042 2018-05-25  Tom Tromey  <tom@tromey.com>
9043
9044         * value.c (value::location): Initialize.
9045
9046 2018-05-25  Tom Tromey  <tom@tromey.com>
9047
9048         * dbxread.c (init_bincl_list): Remove.
9049         (bincl_list): Now a std::vector.
9050         (bincls_allocated, next_bincl): Remove.
9051         (free_bincl_list, do_free_bincl_list_cleanup)
9052         (make_cleanup_free_bincl_list): Remove.
9053         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9054         unique_xmalloc_ptr.
9055         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9056         (struct header_file_location): Add constructor.
9057         (add_bincl_to_list): Remove.
9058
9059 2018-05-25  Tom Tromey  <tom@tromey.com>
9060
9061         * tui/tui.c (tui_enable): Update.
9062         * mi/mi-interp.c (mi_interp::init): Update.
9063         * interps.h (class interp) <name>: New method.
9064         <m_name>: Rename from name.
9065         (~scoped_restore_interp): Update.
9066         * interps.c (interp::interp): Update.
9067         (interp_add, interp_set, interp_lookup_existing)
9068         (current_interp_named_p): Update.
9069
9070 2018-05-25  Tom Tromey  <tom@tromey.com>
9071
9072         * interps.c (interp_name): Remove.
9073         * mi/mi-interp.c (mi_interp::init): Update.
9074         * interps.h (interp_name): Remove.
9075         (~scoped_restore_interp): Update.
9076         * tui/tui.c (tui_enable): Update.
9077
9078 2018-05-25  Tom Tromey  <tom@tromey.com>
9079
9080         * utils.c (fputs_maybe_filtered): Update.
9081         * linespec.c (decode_line_full): Update.
9082         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9083         (mi_print_breakpoint_for_event, mi_solib_loaded)
9084         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9085         (mi_user_selected_context_changed): Update.
9086         * mi/mi-main.c (mi_execute_command): Update.
9087         * cli/cli-script.c (execute_control_command): Update.
9088         * python/python.c (execute_gdb_command): Update.
9089         * solib.c (info_sharedlibrary_command): Update.
9090         * interps.c (interp_ui_out): Remove.
9091         * interps.h (interp_ui_out): Remove.
9092
9093 2018-05-25  Tom Tromey  <tom@tromey.com>
9094
9095         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9096         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9097         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9098
9099 2018-05-25  Tom Tromey  <tom@tromey.com>
9100
9101         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9102         * interps.c (interp_exec): Use scoped_restore.
9103
9104 2018-05-25  Tom Tromey  <tom@tromey.com>
9105
9106         * remote.c (remote_target::remote_file_get): Use
9107         gdb::byte_vector.
9108         (remote_target::remote_file_put): Likewise.
9109
9110 2018-05-25  Tom Tromey  <tom@tromey.com>
9111
9112         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9113         a std::string.
9114         (get_pe_section_index, add_pe_exported_sym): Update.
9115         (read_pe_exported_syms): Use gdb::def_vector.
9116
9117 2018-05-25  Tom Tromey  <tom@tromey.com>
9118
9119         * frame.c (remove_prev_frame): Remove.
9120         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9121
9122 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9123
9124         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9125         Remove prototypes.
9126         * mips-linux-nat.c (supply_fpregset): Always call
9127         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9128         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9129         `mips_fill_fpregset'.
9130         * mips-linux-tdep.c (mips_supply_fpregset)
9131         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9132         (mips_fill_fpregset_wrapper): Remove functions.
9133         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9134         (mips_linux_fpregset): Remove variable.
9135         (mips_linux_iterate_over_regset_sections): Use
9136         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9137         (mips_linux_o32_sigframe_init): Remove comment.
9138
9139 2018-05-25  Pedro Alves  <palves@redhat.com>
9140
9141         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9142         (struct readahead_cache, struct packet_reg, struct
9143         remote_arch_state, class remote_state): Move higher up in the
9144         file.
9145         (remote_target::m_remote_state): Now an object instead of a pointer.
9146         (remote_target::get_remote_state): Adjust.
9147
9148 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9149
9150         * stack.c (select_and_print_frame): Delete.
9151         (struct function_bounds): Move struct within function.
9152         (func_command): Most content moved into new function
9153         find_frame_for_function, use new function, print result, add
9154         function comment.
9155         (find_frame_for_function): New function, now returns a result.
9156
9157 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9158
9159         * stack.c (iterate_over_block_arg_vars): Fix comment.
9160         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9161
9162 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9163
9164         PR gdb/23203
9165         * frame.c
9166         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9167         Define.
9168         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9169         Define.
9170         * frame.h (class scoped_restore_selected_frame): New class.
9171         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9172         of any exception, use scoped_restore_selected_frame to restore the
9173         frame instead.
9174
9175 2018-05-24  Pedro Alves  <palves@redhat.com>
9176
9177         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9178         override.
9179
9180 2018-05-23  Tom Tromey  <tom@tromey.com>
9181
9182         * complaints.c (struct complaints): Remove.
9183         (symfile_complaint_book): Remove.
9184         (series): New global.
9185         (complaint_internal): Update.
9186         (clear_complaints): Update.
9187
9188 2018-05-23  Tom Tromey  <tom@tromey.com>
9189
9190         * complaints.c (counters): New global.
9191         (struct complain): Remove.
9192         (struct complaints) <root>: Remove.
9193         (complaint_sentinel): Remove.
9194         (symfile_complaint_book): Update.
9195         (find_complaint) Remove.
9196         (complaint_internal, clear_complaints): Update.
9197
9198 2018-05-23  Tom Tromey  <tom@tromey.com>
9199
9200         * complaints.c (struct complain) <file, line>: Remove.
9201         (find_complaint): Remove file, line parameters.
9202         (complaint_internal): Update.
9203
9204 2018-05-23  Tom Tromey  <tom@tromey.com>
9205
9206         * complaints.c (vcomplaint): Remove.
9207         (complaint_internal) Merge in contents of vcomplaint.
9208
9209 2018-05-23  Tom Tromey  <tom@tromey.com>
9210
9211         * complaints.c (struct complaints) <explanation>: Remove.
9212         (symfile_explanations): Remove.
9213         (symfile_complaint_book): Update.
9214         (vcomplaint): Update.
9215         (struct explanation): Remove.
9216
9217 2018-05-23  Tom Tromey  <tom@tromey.com>
9218
9219         * complaints.c (symfile_complaints): Remove.
9220         (complaint_internal): Remove "complaints" parameter.
9221         (clear_complaints, vcomplaint): Remove "c" parameter.
9222         (get_complaints): Remove.
9223         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9224         (dwarf2_debug_line_missing_file_complaint)
9225         (dwarf2_debug_line_missing_end_sequence_complaint)
9226         (dwarf2_complex_location_expr_complaint)
9227         (dwarf2_const_value_length_mismatch_complaint)
9228         (dwarf2_section_buffer_overflow_complaint)
9229         (dwarf2_macro_malformed_definition_complaint)
9230         (dwarf2_invalid_attrib_class_complaint)
9231         (create_addrmap_from_index, dw2_symtab_iter_next)
9232         (dw2_expand_marked_cus)
9233         (dw2_debug_names_iterator::find_vec_in_debug_names)
9234         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9235         (create_debug_type_hash_table, init_cutu_and_read_dies)
9236         (partial_die_parent_scope, add_partial_enumeration)
9237         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9238         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9239         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9240         (create_cus_hash_table, create_dwp_hash_table)
9241         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9242         (dwarf2_rnglists_process, dwarf2_ranges_process)
9243         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9244         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9245         (handle_struct_member_die, process_structure_scope)
9246         (read_array_type, read_common_block, read_module_type)
9247         (read_tag_pointer_type, read_typedef, read_base_type)
9248         (read_subrange_type, load_partial_dies, partial_die_info::read)
9249         (partial_die_info::read, partial_die_info::read)
9250         (partial_die_info::read, read_checked_initial_length_and_offset)
9251         (dwarf2_string_attr, read_formatted_entries)
9252         (dwarf_decode_line_header)
9253         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9254         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9255         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9256         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9257         (get_signatured_type, get_DW_AT_signature_type)
9258         (decode_locdesc, file_file_name, consume_improper_spaces)
9259         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9260         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9261         (dwarf2_symbol_mark_computed, set_die_type)
9262         (read_attribute_value): Update.
9263         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9264         Update.
9265         * dbxread.c (unknown_symtype_complaint)
9266         (lbrac_mismatch_complaint, repeated_header_complaint)
9267         (set_namestring, function_outside_compilation_unit_complaint)
9268         (read_dbx_symtab, process_one_symbol): Update.
9269         * gdbtypes.c (stub_noname_complaint): Update.
9270         * windows-nat.c (handle_unload_dll): Update.
9271         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9272         (decode_base_type): Update.
9273         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9274         (eb_complaint, record_include_begin, record_include_end)
9275         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9276         (process_xcoff_symbol, read_symbol)
9277         (function_outside_compilation_unit_complaint)
9278         (scan_xcoff_symtab): Update.
9279         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9280         * buildsym.c (finish_block_internal, make_blockvector)
9281         (end_symtab_get_static_block, augment_type_symtab): Update.
9282         * dtrace-probe.c (dtrace_process_dof)
9283         (dtrace_static_probe_ops::get_probes): Update.
9284         * complaints.h (struct complaint): Don't declare.
9285         (symfile_complaints): Remove.
9286         (complaint_internal): Remove "complaints" parameter.
9287         (complaint): Likewise.
9288         (clear_complaints): Likewise.
9289         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9290         (reread_symbols): Update.
9291         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9292         (dwarf2_frame_cache, decode_frame_entry): Update.
9293         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9294         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9295         (info_selectors_command): Update.
9296         * macrotab.c (macro_include, check_for_redefinition)
9297         (macro_undef): Update.
9298         * objfiles.c (filter_overlapping_sections): Update.
9299         * stabsread.c (invalid_cpp_abbrev_complaint)
9300         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9301         (define_symbol, error_type, read_type, rs6000_builtin_type)
9302         (stabs_method_name_from_physname, read_member_functions)
9303         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9304         (attach_fields_to_type, complain_about_struct_wipeout)
9305         (read_range_type, read_args, common_block_start)
9306         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9307         Update.
9308         * mdebugread.c (index_complaint, unknown_ext_complaint)
9309         (basic_type_complaint, bad_tag_guess_complaint)
9310         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9311         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9312         (parse_procedure, parse_lines)
9313         (function_outside_compilation_unit_complaint)
9314         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9315         (bad_tag_guess_complaint, reg_value_complaint): Update.
9316         * cp-support.c (demangled_name_complaint): Update.
9317         * macroscope.c (sal_macro_scope): Update.
9318         * dwarf-index-write.c (class debug_names): Update.
9319
9320 2018-05-23  Tom Tromey  <tom@tromey.com>
9321
9322         * complaints.c (clear_complaints): Remove "noisy" parameter.
9323         * complaints.h (clear_complaints): Update.
9324         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9325         (reread_symbols): Update.
9326
9327 2018-05-23  Tom Tromey  <tom@tromey.com>
9328
9329         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9330         SUBSEQUENT_MESSAGE.
9331         (vcomplaint, clear_complaints): Update.
9332         (symfile_explanations): Remove some messages.
9333
9334 2018-05-23  Tom Tromey  <tom@tromey.com>
9335
9336         * complaints.c (internal_complaint): Remove.
9337         * complaints.h (internal_complaint): Remove.
9338
9339 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9340
9341         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9342
9343 2018-05-22  Pedro Alves  <palves@redhat.com>
9344
9345         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9346         (remote_fileio_badfd, remote_fileio_return_errno)
9347         (remote_fileio_return_success, remote_fileio_func_open)
9348         (remote_fileio_func_open, remote_fileio_func_close)
9349         (remote_fileio_func_read, remote_fileio_func_write)
9350         (remote_fileio_func_lseek, remote_fileio_func_rename)
9351         (remote_fileio_func_unlink, remote_fileio_func_stat)
9352         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9353         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9354         remote_target parameter.
9355         (remote_fio_func_map) <func>: Add remote_target parameter.
9356         (do_remote_fileio_request, remote_fileio_request):
9357         * remote-fileio.h (remote_fileio_request):
9358         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9359         remote_target parameter.
9360         (remote_notif_process, handle_notification): Adjust to pass down
9361         the remote.
9362         (remote_notif_state_allocate): Add remote_target parameter.  Save
9363         it.
9364         * remote-notif.h (struct remote_target): Forward declare.
9365         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9366         remote_target parameter.
9367         (struct remote_notif_state) <remote>: New field.
9368         (remote_notif_ack, remote_notif_parse): Add remote_target
9369         parameter.
9370         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9371         remote_target parameter.
9372         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9373         (threads_listing_context, rmt_thread_action, protocol_feature)
9374         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9375         (packet_result, struct threads_listing_context, remote_state):
9376         Move definitions and declarations higher up.
9377         (remote_target) <~remote_target>: Declare.
9378         (remote_download_command_source, remote_file_put, remote_file_get)
9379         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9380         (remote_hostio_pread_vFile, remote_hostio_send_command)
9381         (remote_hostio_set_filesystem, remote_hostio_open)
9382         (remote_hostio_close, remote_hostio_unlink, remote_state)
9383         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9384         (get_memory_write_packet_size, get_memory_read_packet_size)
9385         (append_pending_thread_resumptions, remote_detach_1)
9386         (append_resumption, remote_resume_with_vcont)
9387         (add_current_inferior_and_thread, wait_ns, wait_as)
9388         (process_stop_reply, remote_notice_new_inferior)
9389         (process_initial_stop_replies, remote_add_thread)
9390         (btrace_sync_conf, remote_btrace_maybe_reopen)
9391         (remove_new_fork_children, kill_new_fork_children)
9392         (discard_pending_stop_replies, stop_reply_queue_length)
9393         (check_pending_events_prevent_wildcard_vcont)
9394         (discard_pending_stop_replies_in_queue, stop_reply)
9395         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9396         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9397         (remote_interrupt_as, remote_interrupt_ns)
9398         (remote_get_noisy_reply, remote_query_attached)
9399         (remote_add_inferior, remote_current_thread, get_current_thread)
9400         (set_thread, set_general_thread, set_continue_thread)
9401         (set_general_process, write_ptid)
9402         (remote_unpack_thread_info_response, remote_get_threadinfo)
9403         (parse_threadlist_response, remote_get_threadlist)
9404         (remote_threadlist_iterator, remote_get_threads_with_ql)
9405         (remote_get_threads_with_qxfer)
9406         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9407         (get_offsets, remote_check_symbols, remote_supported_packet)
9408         (remote_query_supported, remote_packet_size)
9409         (remote_serial_quit_handler, remote_detach_pid)
9410         (remote_vcont_probe, remote_resume_with_hc)
9411         (send_interrupt_sequence, interrupt_query)
9412         (remote_notif_get_pending_events, fetch_register_using_p)
9413         (send_g_packet, process_g_packet, fetch_registers_using_g)
9414         (store_register_using_P, store_registers_using_G)
9415         (set_remote_traceframe, check_binary_download)
9416         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9417         (remote_xfer_live_readonly_partial, remote_read_bytes)
9418         (remote_send_printf, remote_flash_write, readchar)
9419         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9420         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9421         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9422         (extended_remote_disable_randomization, extended_remote_run)
9423         (send_environment_packet, extended_remote_environment_support)
9424         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9425         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9426         (packet_command): Now methods of ...
9427         (remote_target): ... this class.
9428         (m_remote_state) <remote_target>: New field.
9429         (struct remote_state) <stop_reply_queue,
9430         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9431         fields.
9432         (remote_state::remote_state): Allocate stop_reply_queue.
9433         (remote_state): Delete global.
9434         (get_remote_state_raw): Delete.
9435         (remote_target::get_remote_state): Allocate m_remote_state on
9436         demand.
9437         (get_current_remote_target): New.
9438         (remote_ops, extended_remote_ops): Delete.
9439         (wait_forever_enabled_p, remote_async_inferior_event_token):
9440         Delete, moved to struct remote_state.
9441         (remote_target::close): Delete self.  Destruction bits split to
9442         ...
9443         (remote_target::~remote_target): ... this.
9444         (show_memory_packet_size): Adjust to use
9445         get_current_remote_target.
9446         (struct protocol_feature) <func>: Add remote_target parameter.
9447         All callers adjusted.
9448         (curr_quit_handler_target): New.
9449         (remote_serial_quit_handler): Reimplement.
9450         (remote_target::open_1): Adjust to use get_current_remote_target.
9451         Heap-allocate remote_target/extended_remote_target instances.
9452         (vcont_builder::vcont_builder): Add remote_target parameter, and
9453         save it in m_remote.  All callers adjusted.
9454         (vcont_builder::m_remote): New field.
9455         (vcont_builder::restart, vcont_builder::flush)
9456         (vcont_builder::push_action): Use it.
9457         (remote_target::commit_resume): Use it.
9458         (struct queue_iter_param) <remote>: New field.
9459         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9460         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9461         (check_pending_event_prevents_wildcard_vcont_callback)
9462         (remote_target::check_pending_events_prevent_wildcard_vcont)
9463         (remote_target::discard_pending_stop_replies)
9464         (remote_target::discard_pending_stop_replies_in_queue)
9465         (remote_target::remote_notif_remove_queued_reply): Fill in
9466         'remote' field.
9467         (remote_notif_get_pending_events): New.
9468         (remote_target::readchar, remote_target::remote_serial_write):
9469         Save/restore curr_quit_handler_target.
9470         (putpkt): New.
9471         (kill_new_fork_children): Fill in 'remote' field.
9472         (packet_command): Use get_current_remote_target, defer to
9473         remote_target method of same name.
9474         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9475         parameter, and save it in m_remote.  All callers adjusted.
9476         (scoped_remote_fd::release): Use m_remote.
9477         (scoped_remote_fd::m_remote): New field.
9478         (remote_file_put, remote_file_get, remote_file_delete): Use
9479         get_current_remote_target, defer to remote_target method of same
9480         name.
9481         (remote_btrace_reset): Add remote_state paremeter.  Update all
9482         callers.
9483         (remote_async_inferior_event_handler). Pass down 'data'.
9484         (remote_new_objfile): Use get_current_remote_target.
9485         (remote_target::vcont_r_supported): New.
9486         (set_range_stepping): Use get_current_remote_target and
9487         remote_target::vcont_r_supported.
9488         (_initialize_remote): Don't allocate 'remote_state' and
9489         'stop_reply_queue' globals.
9490         * remote.h (struct remote_target): Forward declare.
9491         (getpkt, putpkt, remote_notif_get_pending_events): Add
9492         'remote_target' parameter.
9493
9494 2018-05-22  Pedro Alves  <palves@redhat.com>
9495
9496         * remote.c (vcont_builder): Now a class.  Make all data members
9497         private.
9498         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9499         Declare methods.
9500         (vcont_builder_restart): Rename to ...
9501         (vcont_builder::restart): ... this.
9502         (vcont_builder_flush): Rename to ...
9503         (vcont_builder::flush): ... this.
9504         (vcont_builder_push_action): Rename to ...
9505         (vcont_builder::push_action): ... this.
9506         (remote_target::commit_resume): Adjust.
9507
9508 2018-05-22  Pedro Alves  <palves@redhat.com>
9509
9510         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9511         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9512         (get_fixed_memory_packet_size): New.
9513         (get_memory_packet_size): Use it.
9514         (set_memory_packet_size): Don't override the config size with
9515         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9516         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9517         Don't refer to get_memory_packet_size if not connected to a remote
9518         target.  Show "(default)" if configured size is 0.
9519
9520 2018-05-22  Pedro Alves  <palves@redhat.com>
9521
9522         * remote.c (remote_target::mourn_inferior): Move
9523         discard_pending_stop_replies call here from ...
9524         (_initialize_remote): ... here.
9525
9526 2018-05-22  Pedro Alves  <palves@redhat.com>
9527
9528         * remote.c (compare_section_command): Remove set_general_process
9529         call.
9530
9531 2018-05-22  Pedro Alves  <palves@redhat.com>
9532
9533         * remote.c (struct packet_reg, struct remote_arch_state):
9534         Move higher up in the file.
9535         (remote_state) <m_arch_states>: Store remote_arch_state values
9536         instead of remote_arch_state pointers.
9537         (remote_state::get_remote_arch_state): Adjust.
9538
9539 2018-05-22  Pedro Alves  <palves@redhat.com>
9540
9541         * remote.c: Include <unordered_map>.
9542         (remote_state): Now a class.
9543         (remote_state) <get_remote_arch_state>: Declare method.
9544         <get_remote_arch_state>: New field.
9545         (remote_arch_state) <remote_arch_state>: Declare ctor.
9546         <regs>: Now a unique_ptr.
9547         (remote_gdbarch_data_handle): Delete.
9548         (get_remote_arch_state): Delete.
9549         (remote_state::get_remote_arch_state): New.
9550         (get_remote_state): Adjust to call remote_state's
9551         get_remote_arch_state method.
9552         (init_remote_state): Delete, bits factored out to ...
9553         (remote_arch_state::remote_arch_state): ... this new method.
9554         (get_remote_packet_size, get_memory_packet_size)
9555         (process_g_packet, remote_target::fetch_registers)
9556         (remote_target::prepare_to_store, store_registers_using_G)
9557         (remote_target::store_registers, remote_target::get_trace_status):
9558         Adjust to call remote_state's method.
9559         (_initialize_remote): Remove reference to
9560         remote_gdbarch_data_handle.
9561
9562 2018-05-22  Pedro Alves  <palves@redhat.com>
9563
9564         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9565         pread>: New method declarations.
9566         (remote_target::open_1): Adjust.
9567         (readahead_cache_invalidate): Rename to ...
9568         (readahead_cache::invalidate): ... this, and adjust to be a class
9569         method.
9570         (readahead_cache_invalidate_fd): Rename to ...
9571         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9572         class method.
9573         (remote_hostio_pwrite): Adjust.
9574         (remote_hostio_pread_from_cache): Rename to ...
9575         (readahead_cache::pread): ... this, and adjust to be a class
9576         method.
9577         (remote_hostio_close): Adjust.
9578
9579 2018-05-22  Pedro Alves  <palves@redhat.com>
9580
9581         * remote.c (remote_hostio_close_cleanup): Delete.
9582         (class scoped_remote_fd): New.
9583         (remote_file_put, remote_file_get): Use it.
9584
9585 2018-05-22  Pedro Alves  <palves@redhat.com>
9586
9587         (struct vCont_action_support): Use bool and initialize all fields.
9588         (struct readahead_cache): Initialize all fields.
9589         (remote_state): Use bool and initialize all fields.
9590         (remote_state::remote_state, remote_state::~remote_state): New.
9591         (new_remote_state): Delete.
9592         (_initialize_remote): Use new to allocate remote_state.
9593
9594 2018-05-22  Pedro Alves  <palves@redhat.com>
9595             張俊芝  <zjz@zjz.name>
9596
9597         PR gdb/22973
9598         * c-exp.y: Include "c-support.h".
9599         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9600         of tolower.  Use c_ident_is_alpha to scan names.
9601         * c-lang.c: Include "c-support.h".
9602         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9603         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9604         * c-support.h: New file, with bits factored out from ...
9605         * cp-name-parser.y: ... this file.
9606         Include "c-support.h".
9607         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9608         c-support.h and renamed.
9609         (symbol_end, yylex): Adjust.
9610
9611 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9612
9613         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9614         parameter type to CORE_ADDR.
9615         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9616         parameter type in declaration to CORE_ADDR.
9617         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9618         target_auxv_search to get AT_HWCAP and use the result to get the
9619         target description.
9620         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9621         to CORE_ADDR. Remove the cast of the return value to unsigned
9622         long. Fix error predicate of target_auxv_search.
9623         (ppc_linux_nat_target::read_description): Change the type of the
9624         hwcap variable to CORE_ADDR.
9625
9626 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9627
9628         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9629         if the size of fpscr is larger than 32 bits.
9630
9631 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9632
9633         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9634         (ppc32_linux_vsxregmap): New global.
9635         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9636         regcache_supply_regset, and regcache_collect_regset.
9637         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9638         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9639         (fetch_vsx_register, store_vsx_register): Remove.
9640         (fetch_vsx_registers): Add regno parameter. Get regset using
9641         ppc_linux_vsxregset. Use regset to supply registers.
9642         (store_vsx_registers): Add regno parameter. Get regset using
9643         ppc_linux_vsxregset. Use regset to collect registers.
9644         (fetch_register): Call fetch_vsx_registers instead of
9645         fetch_vsx_register.
9646         (store_register): Call store_vsx_registers instead of
9647         store_vsx_register.
9648         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9649         new regno parameter.
9650         (store_ppc_registers): Call store_vsx_registers with -1 for the
9651         new regno parameter.
9652         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9653         (ppc_collect_vsxregset): Remove.
9654
9655 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9656
9657         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9658         offset fields.
9659         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9660         for vector register offset fields.
9661         (ppc64_fbsd_reg_offsets): Likewise.
9662         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9663         to vector register offset fields.
9664         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9665         to vector register offset fields.
9666         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9667         vector register offset fields.
9668         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9669         initializers for vector register offset fields.
9670         (rs6000_aix64_reg_offsets): Likewise.
9671         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9672         (ppc_supply_vrregset): Remove.
9673         (ppc_collect_vrregset): Remove.
9674         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9675         (ppc_linux_vrregset) : New function.
9676         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9677         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9678         (ppc32_linux_vrregset): Remove.
9679         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9680         and use result instead of ppc32_linux_vrregset.
9681         (ppc32_linux_reg_offsets): Remove initializers for vector register
9682         offset fields.
9683         (ppc64_linux_reg_offsets): Likewise.
9684         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9685         * ppc-linux-nat.c: Include regset.h.
9686         (gdb_vrregset_t): Adjust comment to account for little-endian
9687         mode.
9688         (supply_vrregset, fill_vrregset): Remove.
9689         (fetch_altivec_register, store_altivec_register): Remove.
9690         (fetch_altivec_registers): Add regno parameter. Get regset using
9691         ppc_linux_vrregset. Use regset to supply registers.
9692         (store_altivec_registers): Add regno parameter. Get regset using
9693         ppc_linux_vrregset. Use regset to collect registers.
9694         (fetch_register): Call fetch_altivec_registers instead of
9695         fetch_altivec_register.
9696         (store_register): Call store_altivec_registers instead of
9697         store_altivec_register.
9698         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9699         the new regno parameter.
9700         (store_ppc_registers): Call store_altivec_registers with -1 for
9701         the new regno parameter.
9702
9703 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9704
9705         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9706         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9707         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9708         (gdb_vrregset_t): Change array type size to
9709         PPC_LINUX_SIZEOF_VRREGSET.
9710         (gdb_vsxregset_t): Change array type size to
9711         PPC_LINUX_SIZEOF_VSXREGSET.
9712         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9713         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9714         PPC_LINUX_SIZEOF_VSXREGSET.
9715
9716 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9717
9718         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9719         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9720         nat/ppc-linux.c.
9721         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9722         ppc_linux_target_wordsize with tid.
9723         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9724         wordsize with tid.
9725         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9726         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9727         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9728         tid parameter. Remove static specifier.
9729         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9730         (ppc_linux_target_wordsize): New declaration.
9731
9732 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9733
9734         * arch/ppc-linux-common.c: New file.
9735         * arch/ppc-linux-common.h: New file.
9736         * arch/ppc-linux-tdesc.h: New file.
9737         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9738         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9739         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9740         arch/ppc-linux-tdesc.h.
9741         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9742         arch/ppc-linux-tdesc.h.
9743         (ppc_linux_nat_target::read_description): Remove target
9744         description matching code. Fill a ppc_linux_features struct and
9745         call ppc_linux_match_description with it. Move comment about ISA
9746         2.05 to ppc-linux-common.c.
9747         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9748         arch/ppc-linux-tdesc.h.
9749         (ppc_linux_core_read_description): Remove target description
9750         matching code. Fill a ppc_linux_features struct and call
9751         ppc_linux_match_description with it.
9752         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9753         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9754         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9755         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9756         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9757         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9758         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9759         (tdesc_powerpc_e500l): Remove.
9760
9761 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9762
9763         * ada-lang.c (catch_assert_command): Pass empty string instead
9764         of NULL for excep_string argument.
9765
9766 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9767
9768         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9769         the width of the requested register exceeds the width of the
9770         `ptrace' data type.
9771
9772 2018-05-21  Tom Tromey  <tom@tromey.com>
9773
9774         * printcmd.c (output_command): Remove.
9775         (output_command_const): Rename to output_command.
9776         * valprint.h (output_command): Rename from output_command_const.
9777         * tracepoint.c (trace_dump_actions): Call output_command.
9778
9779 2018-05-21  Tom Tromey  <tom@tromey.com>
9780
9781         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9782         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9783         * ada-lang.h (create_ada_exception_catchpoint): Update.
9784         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9785         std::string.
9786         (create_excep_cond_exprs, ~ada_catchpoint)
9787         (should_stop_exception, print_one_exception)
9788         (print_mention_exception, print_recreate_exception): Update.
9789         (ada_get_next_arg): Remove.
9790         (catch_ada_exception_command_split): Use std::string.  Change type
9791         of "excep_string", "cond_string".
9792         (catch_ada_exception_command): Update.
9793         (create_ada_exception_catchpoint): Change type of excep_string.
9794         (ada_exception_sal): Remove excep_string parameter.
9795         (~ada_catchpoint): Remove.
9796
9797 2018-05-21  Tom Tromey  <tom@tromey.com>
9798
9799         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9800         cleanup.
9801
9802 2018-05-21  Tom Tromey  <tom@tromey.com>
9803
9804         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9805         Return unique_xmalloc_ptr.
9806         (print_it_exception): Update.
9807
9808 2018-05-21  Tom Tromey  <tom@tromey.com>
9809
9810         * tracepoint.c (trace_dump_actions): Use std::string.
9811
9812 2018-05-21  Tom Tromey  <tom@tromey.com>
9813
9814         * symfile.c (reread_symbols): Use std::string for original_name.
9815
9816 2018-05-21  Tom Tromey  <tom@tromey.com>
9817
9818         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9819         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9820         constructor.
9821
9822 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9823
9824         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9825         instance to...
9826         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9827         * objfiles.c (get_objfile_bfd_data): Allocate
9828         objfile_per_bfd_storage with obstack_new when allocating on
9829         obstack.
9830
9831 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9832
9833         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9834         OBSTACK_ZALLOC.
9835         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9836         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9837         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9838         (add_pending): Likewise.
9839         (parse_symbol): Likewise.
9840         (parse_partial_symbols): Likewise.
9841         (psymtab_to_symtab_1): Likewise.
9842         (new_psymtab): Likewise.
9843         (elfmdebug_build_psymtabs): Likewise.
9844         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9845         * objfiles.c (get_objfile_bfd_data): Likewise.
9846         (objfile_register_static_link): Likewise.
9847         * psymtab.c (allocate_psymtab): Likewise.
9848         * stabsread.c (read_member_functions): Likewise.
9849         * xcoffread.c (xcoff_end_psymtab): Likewise.
9850
9851 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9852
9853         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9854         compiler supports std::is_trivially_constructible.
9855         * common/poison.h: Include obstack.h.
9856         (IsMallocable): Define to is_trivially_constructible if the
9857         compiler supports it, define to true_type otherwise.
9858         (xobnew): New.
9859         (XOBNEW): Redefine.
9860         (xobnewvec): New.
9861         (XOBNEWVEC): Redefine.
9862         * gdb_obstack.h (obstack_zalloc): New.
9863         (OBSTACK_ZALLOC): Redefine.
9864         (obstack_calloc): New.
9865         (OBSTACK_CALLOC): Redefine.
9866         (obstack_new): New.
9867         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9868         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9869         gdbarch.c.
9870         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9871         obstack_calloc/obstack_zalloc.
9872         (gdbarch_obstack_zalloc): Remove.
9873         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9874
9875 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9876
9877         * stack.c (backtrace_command_1): Remove useless variable int i.
9878
9879 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9880
9881         * stack.c (print_frame_info): Fix comment.
9882
9883 2018-05-18  Tom Tromey  <tom@tromey.com>
9884
9885         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9886         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9887         (~dwarf2_per_objfile): Update
9888         (dwarf2_get_dwz_file): Use new.
9889         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9890         unique_ptr.
9891
9892 2018-05-18  Tom Tromey  <tom@tromey.com>
9893
9894         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9895         unique_ptr.
9896         * dwarf2read.c (struct dwp_file): Add constructor and
9897         initializers.
9898         (open_and_init_dwp_file): Return a unique_ptr.
9899         (dwarf2_per_objfile, create_dwp_hash_table)
9900         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9901         (lookup_dwo_unit_in_dwp): Update.
9902         (open_and_init_dwp_file, get_dwp_file): Update.
9903
9904 2018-05-18  Tom Tromey  <tom@tromey.com>
9905
9906         * dwarf2read.c (dwarf2_per_objfile): Update.
9907         (struct mapped_index): Add initializers.
9908         (dwarf2_read_index): Use new.
9909         (dw2_symtab_iter_init): Update.
9910         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9911         unique_ptr.
9912
9913 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9914
9915         * dwarf2read.c (mapped_index) <total_size>: Remove.
9916
9917 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9918
9919         * unittests/format_pieces-selftests.c (test_format_specifier):
9920         Add ARI comments.
9921
9922 2018-05-18  Tom Tromey  <tom@tromey.com>
9923
9924         * c-typeprint.c (maybe_print_hole): New function.
9925         (c_print_type_struct_field_offset): Update.
9926         (c_type_print_base_struct_union): Call maybe_print_hole.
9927
9928 2018-05-17  Keith Seitz  <keiths@redhat.com>
9929
9930         * breakpoint.c (build_bpstat_chain): New function, moved from
9931         bpstat_stop_status.
9932         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9933         If no stop chain is passed, call build_bpstat_chain to build it.
9934         * breakpoint.h (build_bpstat_chain): Declare.
9935         (bpstat_stop_status): Move documentation here from breakpoint.c.
9936         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9937         build the stop chain and pass it to skip_inline_frames.
9938         Pass this stop chain to bpstat_stop_status.
9939         * inline-frame.c: Include breakpoint.h.
9940         (stopped_by_user_bp_inline_frame): New function.
9941         (skip_inline_frames): Add parameter `stop_chain'.
9942         Move documention to inline-frame.h.
9943         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9944         whether the frame should be elided.
9945         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9946         Add moved documentation and update for new parameter.
9947
9948 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9949
9950         PR cli/14975
9951         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9952         unittests/format_pieces-selftests.c.
9953         * common/format.h (format_piece) <operator==>: New.
9954         (format_pieces) <operator[]>: Remove.
9955         * common/format.c (format_pieces::format_pieces): Handle \e.
9956         * unittests/format_pieces-selftests.c: New.
9957
9958 2018-05-17  Tom Tromey  <tom@tromey.com>
9959
9960         PR symtab/23010:
9961         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9962         (dw2_instantiate_symtab): Add skip_partial parameter.
9963         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9964         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9965         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9966         (dw2_expand_symtabs_matching_one)
9967         (dw2_find_pc_sect_compunit_symtab)
9968         (dw2_debug_names_lookup_symbol)
9969         (dw2_debug_names_expand_symtabs_for_function): Update.
9970         (init_cutu_and_read_dies): Add skip_partial parameter.
9971         (process_psymtab_comp_unit, build_type_psymtabs_1)
9972         (process_skeletonless_type_unit, load_partial_comp_unit)
9973         (psymtab_to_symtab_1): Update.
9974         (load_full_comp_unit): Add skip_partial parameter.
9975         (process_imported_unit_die, dwarf2_read_addr_index)
9976         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9977         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9978         (read_signatured_type): Update.
9979
9980 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9981
9982         * value.c (release_value): Remove unused variable.
9983         (record_latest_value): Likewise.
9984         (access_value_history): Likewise.
9985         (preserve_values): Likewise.
9986
9987 2018-05-17  Tom Tromey  <tom@tromey.com>
9988
9989         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9990         Initialize.
9991
9992 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9993
9994         PR gdb/22286
9995         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9996         Also handle registers whose width is not a multiple of
9997         PTRACE_TYPE_RET.
9998         (linux_nat_trad_target::store_register): Likewise.
9999
10000 2018-05-16  Tom Tromey  <tom@tromey.com>
10001
10002         * gdbcore.h (core_bfd): Redefine.
10003         * corelow.c (core_target::close): Update.
10004         (core_target_open): Update.
10005         * progspace.h (struct program_space) <cbfd>: Now a
10006         gdb_bfd_ref_ptr.
10007
10008 2018-05-16  Tom Tromey  <tom@tromey.com>
10009
10010         PR cli/19551:
10011         * symfile-add-flags.h (enum symfile_add_flags)
10012         <SYMFILE_NOT_FILENAME>: New constant.
10013         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10014         objfile name from BFD.
10015         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10016         * minidebug.c (find_separate_debug_file_in_section): Put
10017         ".gnu_debugdata" into BFD's file name.
10018
10019 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10020
10021         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10022         Remove.
10023
10024 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10025
10026         PR binutils/21446
10027         * aarch64-tdep.c (aarch64_analyze_prologue,
10028         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10029         Indicate not interested in errors.
10030
10031 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10032
10033         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10034         Supply the MIPS_ZERO_REGNUM register.
10035
10036 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10037
10038         * mips-tdep.c (mask_address_var): Make variable static.
10039
10040 2018-05-14  Tom Tromey  <tom@tromey.com>
10041
10042         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10043
10044 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10045
10046         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10047         FXSAVE_ADDR for the mxcsr register.
10048
10049 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10050
10051         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10052
10053 2018-05-11  Pedro Alves  <palves@redhat.com>
10054
10055         * corelow.c (core_target) <core_target>: No longer inline.
10056         Initialize m_core_gdbarch, m_core_vec and build the section table
10057         here.
10058         <~core_target>: New.
10059         <core_gdbarch, get_core_register_section>: New methods.
10060         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10061         factored out from ...
10062         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10063         (core_ops): Delete.
10064         (sniff_core_bfd): Add gdbarch parameter.
10065         (core_close): Delete, merged into ...
10066         (core_target::close): ... here.  Delete self.
10067         (core_close_cleanup): Delete.
10068         (core_target_open): Allocate a core_target on the heap.  Use a
10069         unique_ptr instead of a cleanup.  Bits moved into the core_target
10070         ctor.  Adjust to use core_target methods instead of globals.
10071         (get_core_register_section): Rename to ...
10072         (core_target::get_core_register_section): ... this and adjust.
10073         (struct get_core_registers_cb_data): New.
10074         (get_core_registers_cb): Use it.  Use bool.
10075         (core_target::fetch_registers, core_target::files_info)
10076         (core_target::xfer_partial, core_target::read_description)
10077         (core_target::pid_to, core_target::thread_name): Adjust to
10078         reference class fields instead of globals.
10079         * target.h (struct target_ops_deleter, target_ops_up): New.
10080
10081 2018-05-11  Pedro Alves  <palves@redhat.com>
10082
10083         * corefile.c (core_file_command): Move to corelow.c.
10084         * corelow.c (the_core_target): Delete.
10085         (core_file_command): Moved from corefile.c.  Check exec_bfd
10086         instead of the_core_target.  Use target_detach instead of calling
10087         into the_core_target directly.
10088         (maybe_say_no_core_file_now): New.
10089         (core_target::detach): Use it.
10090         (_initialize_corelow): Remove references to the_core_target.
10091         * gdbcore.h (the_core_target): Delete.
10092
10093 2018-05-11  Tom Tromey  <tromey@redhat.com>
10094             Pedro Alves  <palves@redhat.com>
10095
10096         * corefile.c (core_bfd): Remove.
10097         * gdbcore.h (core_bfd): Now a macro.
10098         * progspace.h (struct program_space) <cbfd>: New field.
10099
10100 2018-05-11  Tom Tromey  <tom@tromey.com>
10101
10102         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10103         gdb::def_vector.
10104
10105 2018-05-10  Tom Tromey  <tom@tromey.com>
10106
10107         * configure: Rebuild.
10108         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10109
10110 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10111
10112         PR server/23158:
10113         * regformats/regdat.sh: Adjust script, following the addition
10114         of the new expedite_regs parameter to init_target_desc.
10115
10116 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10117     
10118         PR gdb/23127
10119         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10120         set_gdbarch_significant_addr_bit.
10121         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10122         set_gdbarch_significant_addr_bit.
10123         * utils.c (address_significant): Update to sign extend addr.
10124
10125 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10126
10127         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10128         (xtensa_linux_init_abi): Limit tdep->num_regs by
10129         tdep->num_nopriv_regs.
10130         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10131         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10132         not initialized.
10133
10134 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10135
10136         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10137
10138 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10139
10140         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10141         (I387_MXCSR_INIT_VAL): New constant.
10142         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10143         buffer if it was supplied by the inferior.
10144         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10145         (i387_xsave_get_clear_bv): New function.
10146         (i387_supply_xsave): Only read x87 control registers from the
10147         xsave buffer if the feature is enabled, and the state will have
10148         been written, otherwise, provide a suitable default.
10149         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10150         including x87 control registers.  Update control registers if they
10151         have changed from the default value, and mark features as enabled
10152         as required.
10153         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10154
10155 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10156
10157         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10158
10159 2018-05-07  Tom Tromey  <tom@tromey.com>
10160
10161         * configure: Rebuild.
10162         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10163
10164 2018-05-07  Tom Tromey  <tom@tromey.com>
10165
10166         PR tdep/20362:
10167         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10168         bit.  Use correct value for VDIV.
10169
10170 2018-05-04  Tom Tromey  <tom@tromey.com>
10171
10172         * configure: Rebuild.
10173         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10174
10175 2018-05-04  Tom Tromey  <tom@tromey.com>
10176
10177         * linux-record.c (record_linux_system_call) <case
10178         RECORD_SYS_RECVFROM>: Add "break".
10179
10180 2018-05-04  Tom Tromey  <tom@tromey.com>
10181
10182         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10183         Add missing "break".
10184         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10185         Add missing "break".
10186
10187 2018-05-04  Tom Tromey  <tom@tromey.com>
10188
10189         * rs6000-tdep.c (ppc_process_record_op4)
10190         (ppc_process_record_op63): Add fall-through comment.
10191
10192 2018-05-04  Tom Tromey  <tom@tromey.com>
10193
10194         * i386-tdep.c (i386_process_record): Add fall-through comment.
10195
10196 2018-05-04  Tom Tromey  <tom@tromey.com>
10197
10198         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10199         comment.
10200
10201 2018-05-04  Tom Tromey  <tom@tromey.com>
10202
10203         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10204         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10205         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10206         comment.
10207         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10208         comment.
10209         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10210         comment.
10211
10212 2018-05-04  Tom Tromey  <tom@tromey.com>
10213
10214         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10215
10216 2018-05-04  Tom Tromey  <tom@tromey.com>
10217
10218         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10219         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10220         * symfile.c (section_is_mapped): Fix fall-through comment.
10221         * stabsread.c (define_symbol, read_member_functions): Fix
10222         fall-through comment.
10223         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10224         comment.
10225         * remote.c (remote_wait_as): Fix fall-through comment.
10226         * p-exp.y (yylex): Fix fall-through comment.
10227         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10228         comment.
10229         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10230         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10231         * jv-exp.y (yylex): Fix fall-through comment.
10232         * go-exp.y (lex_one_token): Fix fall-through comment.
10233         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10234         fall-through comment.
10235         * f-exp.y (yylex): Fix fall-through comment.
10236         * dwarf2read.c (process_die): Fix fall-through comments.
10237         * dbxread.c (process_one_symbol): Fix fall-through comment.
10238         * d-exp.y (lex_one_token): Fix fall-through comment.
10239         * cp-name-parser.y (yylex): Fix fall-through comment.
10240         * coffread.c (coff_symtab_read): Fix fall-through comment.
10241         * c-exp.y (lex_one_token): Fix fall-through comment.
10242         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10243         comment.
10244         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10245         comment.
10246
10247 2018-05-04  Tom Tromey  <tom@tromey.com>
10248
10249         PR python/22730:
10250         * NEWS: Mention gdb.execute change.
10251         * gdbcmd.h (execute_control_command): Don't declare.
10252         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10253         execute_control_commands, execute_control_commands_to_string.
10254         * cli/cli-script.h (execute_control_commands)
10255         (execute_control_commands_to_string): Declare.
10256         (execute_control_command): Add from_tty parameter.
10257         * cli/cli-script.c (execute_control_commands)
10258         (execute_control_commands_to_string): New functions.
10259         (execute_user_command): Use execute_control_commands.
10260         (execute_control_command_1): Add "from_tty" parameter.  Update.
10261         (execute_control_command): Likewise.
10262
10263 2018-05-04  Tom Tromey  <tom@tromey.com>
10264
10265         PR python/22731:
10266         * NEWS: Mention that breakpoint commands are writable.
10267         * python/py-breakpoint.c (bppy_set_commands): New function.
10268         (breakpoint_object_getset) <"commands">: Use it.
10269
10270 2018-05-04  Tom Tromey  <tom@tromey.com>
10271
10272         * tracepoint.c (actions_command): Update.
10273         * mi/mi-cmd-break.c (mi_command_line_array)
10274         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10275         (mi_read_next_line): Remove.
10276         (mi_cmd_break_commands): Update.
10277         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10278         function_view.
10279         * cli/cli-script.c (get_command_line): Update.
10280         (process_next_line): Use function_view.  Constify.
10281         (recurse_read_control_structure, read_command_lines)
10282         (read_command_lines_1): Change argument types to function_view.
10283         (do_define_command, document_command): Update.
10284         * breakpoint.h (check_tracepoint_command): Don't declare.
10285         * breakpoint.c (check_tracepoint_command): Remove.
10286         (commands_command_1, create_tracepoint_from_upload): Update.
10287
10288 2018-05-04  Tom Tromey  <tom@tromey.com>
10289
10290         PR gdb/11750:
10291         * cli/cli-script.h (enum command_control_type) <define_control>:
10292         New constant.
10293         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10294         (build_command_line, execute_control_command_1)
10295         (process_next_line): Likewise.
10296         (do_define_command): New function, extracted from define_command.
10297         (define_command): Use it.
10298
10299 2018-05-04  Tom Tromey  <tom@tromey.com>
10300
10301         * tracepoint.c (actions_command): Update.
10302         * cli/cli-script.h (read_command_lines): Update.
10303         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10304         (MAX_TMPBUF): Remove define.
10305         (define_command): Use string_printf.
10306         (document_command): Likewise.
10307         * breakpoint.c (commands_command_1): Update.
10308
10309 2018-05-04  Tom Tromey  <tom@tromey.com>
10310
10311         * top.c (execute_command): Update.
10312         * cli/cli-script.h (print_command_lines): Now varargs.
10313         * cli/cli-script.c (print_command_lines): Now varargs.
10314         (execute_control_command_1) <case while_control, case if_control>:
10315         Update.
10316
10317 2018-05-04  Tom Tromey  <tom@tromey.com>
10318
10319         * tracepoint.c (all_tracepoint_actions): Rename from
10320         all_tracepoint_actions_and_cleanup.  Change return type.
10321         (actions_command, encode_actions_1, encode_actions)
10322         (trace_dump_actions, tdump_command): Update.
10323         * remote.c (remote_download_command_source): Update.
10324         * python/python.c (gdbpy_eval_from_control_command)
10325         (python_command, python_interactive_command): Update.
10326         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10327         * guile/guile.c (guile_command)
10328         (gdbscm_eval_from_control_command, guile_command): Update.
10329         * compile/compile.c (compile_code_command)
10330         (compile_print_command, compile_to_object): Update.
10331         * cli/cli-script.h (struct command_lines_deleter): New.
10332         (counted_command_line): New typedef.
10333         (struct command_line): Add constructor, destructor.
10334         <body_list>: Remove.
10335         <body_list_0, body_list_1>: New members.
10336         (command_line_up): Remove typedef.
10337         (read_command_lines, read_command_lines_1, get_command_line):
10338         Update.
10339         (copy_command_lines): Don't declare.
10340         * cli/cli-script.c (build_command_line): Use "new".
10341         (get_command_line): Return counted_command_line.
10342         (print_command_lines, execute_user_command)
10343         (execute_control_command_1, while_command, if_command): Update.
10344         (realloc_body_list): Remove.
10345         (process_next_line, recurse_read_control_structure): Update.
10346         (read_command_lines, read_command_lines_1): Return counted_command_line.
10347         (free_command_lines): Use "delete".
10348         (copy_command_lines): Remove.
10349         (define_command, document_command, show_user_1): Update.
10350         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10351         a counted_command_line.
10352         * breakpoint.h (counted_command_line): Remove typedef.
10353         (breakpoint_set_commands): Update.
10354         * breakpoint.c (check_no_tracepoint_commands)
10355         (validate_commands_for_breakpoint): Update.
10356         (breakpoint_set_commands): Change commands to be a
10357         counted_command_line.
10358         (commands_command_1, update_dprintf_command_list)
10359         (create_tracepoint_from_upload): Update.
10360
10361 2018-05-04  Tom Tromey  <tom@tromey.com>
10362
10363         * cli/cli-decode.h (cmd_list_element): New constructor.
10364         (~cmd_list_element): New destructor.
10365         (struct cmd_list_element): Add initializers.
10366         * cli/cli-decode.c (do_add_cmd): Use "new".
10367         (delete_cmd): Use "delete".
10368
10369 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10370             Pedro Alves <palves@redhat.com>
10371
10372         PR breakpoints/19806 and support for PR external/20207.
10373         * NEWS: Mention Aarch64 watchpoint improvements.
10374         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10375         watchpoints and PR external/20207 watchpoints.
10376         * nat/aarch64-linux-hw-point.c
10377         (kernel_supports_any_contiguous_range): New.
10378         (aarch64_watchpoint_offset): New.
10379         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10380         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10381         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10382         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10383         next_addr_orig_p.  Support PR external/20207 watchpoints.
10384         (aarch64_downgrade_regs): New.
10385         (aarch64_dr_state_insert_one_point): New parameters offset and
10386         addr_orig.
10387         (aarch64_dr_state_remove_one_point): Likewise.
10388         (aarch64_handle_breakpoint): Update caller.
10389         (aarch64_handle_aligned_watchpoint): Likewise.
10390         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10391         aligned_offset.
10392         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10393         aarch64_downgrade_regs.
10394         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10395         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10396         (DR_CONTROL_MASK): ... this.
10397         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10398         (unsigned int aarch64_watchpoint_offset): New prototype.
10399         (aarch64_linux_set_debug_regs): Remove const from state.
10400         * utils.c (align_up, align_down): Move to ...
10401         * common/common-utils.c (align_up, align_down): ... here.
10402         * utils.h (align_up, align_down): Move to ...
10403         * common/common-utils.h (align_up, align_down): ... here.
10404
10405 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10406
10407         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10408         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10409         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10410         Re-implement to match the ABI as summarized in GCC's
10411         gcc/config/sparc/sparc.c.  All callers updated.
10412         (sparc32_store_arguments): Remove assertion.
10413
10414 2018-05-04  Tom Tromey  <tom@tromey.com>
10415
10416         * printcmd.c: Don't include tui.h.
10417         (decode_format): Use skip_spaces.
10418
10419 2018-05-04  Tom Tromey  <tom@tromey.com>
10420
10421         PR gdb/22619:
10422         * printcmd.c (last_count): New global.
10423         (x_command): Use saved count when repeating.
10424
10425 2018-05-04  Tom Tromey  <tom@tromey.com>
10426
10427         * nto-procfs.c (do_closedir_cleanup): Remove.
10428         (procfs_pidlist): Use gdb_dir_up.
10429         * procfs.c (do_closedir_cleanup): Remove.
10430         (proc_update_threads): Use gdb_dir_up.
10431         * common/filestuff.h (struct gdb_dir_deleter): New.
10432         (gdb_dir_up): New typedef.
10433
10434 2018-05-04  Tom Tromey  <tom@tromey.com>
10435
10436         * ada-lang.c (print_mention_exception): Use std::string.
10437
10438 2018-05-04  Tom Tromey  <tom@tromey.com>
10439
10440         * ada-lang.c (create_excep_cond_exprs): Update.
10441         (ada_exception_catchpoint_cond_string): Use std::string.
10442
10443 2018-05-04  Tom Tromey  <tom@tromey.com>
10444
10445         * ada-lang.c (xget_renaming_scope): Return std::string.
10446         (old_renaming_is_invisible): Update.
10447
10448 2018-05-04  Tom Tromey  <tom@tromey.com>
10449
10450         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10451         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10452
10453 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10454
10455         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10456
10457 2018-05-04  Tom Tromey  <tom@tromey.com>
10458
10459         * remote.c (remote_query_supported_append): Change type.
10460         (remote_check_symbols): Update.
10461
10462 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10463
10464         PR gdb/11420
10465         * configure.ac: Prepend libpython.
10466         * python/python-config.py: Likewise.
10467         * configure: Regenerate.
10468
10469 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10470
10471         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10472
10473 2018-05-03  Pedro Alves  <palves@redhat.com>
10474
10475         * s390-linux-nat.c
10476         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10477         override.  Write 'true' instead of '1'.
10478         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10479         declaration.
10480
10481 2018-05-02  Pedro Alves  <palves@redhat.com>
10482
10483         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10484         add_inf_child_target.
10485         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10486         add_inf_child_target.
10487         * aix-thread.c (aix_thread_target_info): New.
10488         (aix_thread_target) <shortname, longname, doc>: Delete.
10489         <info>: New.
10490         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10491         add_inf_child_target.
10492         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10493         add_inf_child_target.
10494         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10495         add_inf_child_target.
10496         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10497         add_inf_child_target.
10498         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10499         add_inf_child_target.
10500         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10501         add_inf_child_target.
10502         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10503         add_inf_child_target.
10504         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10505         add_inf_child_target.
10506         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10507         add_inf_child_target.
10508         * bfd-target.c (target_bfd_target_info): New.
10509         (target_bfd) <shortname, longname, doc>: Delete.
10510         <info>: New.
10511         * bsd-kvm.c (bsd_kvm_target_info): New.
10512         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10513         <info>: New.
10514         (bsd_kvm_target::open): Rename to ...
10515         (bsd_kvm_target_open): ... this.  Adjust.
10516         * bsd-uthread.c (bsd_uthread_target_info): New.
10517         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10518         <info>: New.
10519         * corefile.c (core_file_command): Adjust.
10520         * corelow.c (core_target_info): New.
10521         (core_target) <shortname, longname, doc>: Delete.
10522         <info>: New.
10523         (core_target::open): Rename to ...
10524         (core_target_open): ... this.  Adjust.
10525         * ctf.c (ctf_target_info): New.
10526         (ctf_target) <shortname, longname, doc>: Delete.
10527         <info>: New.
10528         (ctf_target::open): Rename to ...
10529         (ctf_target_open): ... this.
10530         (_initialize_ctf): Adjust.
10531         * exec.c (exec_target_info): New.
10532         (exec_target) <shortname, longname, doc>: Delete.
10533         <info>: New.
10534         (exec_target::open): Rename to ...
10535         (exec_target_open): ... this.
10536         * gdbcore.h (core_target_open): Declare.
10537         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10538         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10539         add_inf_child_target.
10540         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10541         add_inf_child_target.
10542         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10543         add_inf_child_target.
10544         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10545         add_inf_child_target.
10546         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10547         add_inf_child_target.
10548         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10549         add_inf_child_target.
10550         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10551         add_inf_child_target.
10552         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10553         add_inf_child_target.
10554         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10555         add_inf_child_target.
10556         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10557         add_inf_child_target.
10558         * inf-child.c (inf_child_target_info): New.
10559         (inf_child_target::info): New.
10560         (inf_child_open_target): Remove 'target' parameter.  Use
10561         get_native_target instead.
10562         (inf_child_target::open): Delete.
10563         (add_inf_child_target): New.
10564         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10565         Delete.
10566         <info>: New.
10567         (add_inf_child_target): Declare.
10568         (inf_child_open_target): Declare.
10569         * linux-thread-db.c (thread_db_target_info): New.
10570         (thread_db_target) <shortname, longname, doc>: Delete.
10571         <info>: New.
10572         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10573         add_inf_child_target.
10574         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10575         add_inf_child_target.
10576         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10577         add_inf_child_target.
10578         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10579         add_inf_child_target.
10580         * make-target-delegates (print_class): Adjust.
10581         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10582         add_inf_child_target.
10583         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10584         add_inf_child_target.
10585         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10586         add_inf_child_target.
10587         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10588         add_inf_child_target.
10589         * nto-procfs.c (nto_native_target_info): New.
10590         (nto_procfs_target_native) <shortname, longname, doc>:
10591         Delete.
10592         <info>: New.
10593         (nto_procfs_target_info): New.
10594         (nto_procfs_target_procfs) <shortname, longname, doc>:
10595         Delete.
10596         <info>: New.
10597         (init_procfs_targets): Adjust.
10598         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10599         add_inf_child_target.
10600         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10601         add_inf_child_target.
10602         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10603         add_inf_child_target.
10604         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10605         add_inf_child_target.
10606         * ravenscar-thread.c (ravenscar_target_info): New.
10607         (ravenscar_thread_target) <shortname, longname, doc>:
10608         Delete.
10609         <info>: New.
10610         * record-btrace.c (record_btrace_target_info):
10611         (record_btrace_target) <shortname, longname, doc>: Delete.
10612         <info>: New.
10613         (record_btrace_target::open): Rename to ...
10614         (record_btrace_target_open): ... this.  Adjust.
10615         * record-full.c (record_longname, record_doc): New.
10616         (record_full_base_target) <shortname, longname, doc>: Delete.
10617         <info>: New.
10618         (record_full_target_info): New.
10619         (record_full_target): <shortname>: Delete.
10620         <info>: New.
10621         (record_full_core_open_1, record_full_open_1): Update comments.
10622         (record_full_base_target::open): Rename to ...
10623         (record_full_open): ... this.
10624         (cmd_record_full_restore): Update.
10625         (_initialize_record_full): Update.
10626         * remote-sim.c (remote_sim_target_info): New.
10627         (gdbsim_target) <shortname, longname, doc>: Delete.
10628         <info>: New.
10629         (gdbsim_target::open): Rename to ...
10630         (gdbsim_target_open): ... this.
10631         (_initialize_remote_sim): Adjust.
10632         * remote.c (remote_doc): New.
10633         (remote_target_info): New.
10634         (remote_target) <shortname, longname, doc>: Delete.
10635         <info>: New.
10636         (extended_remote_target_info): New.
10637         (extended_remote_target) <shortname, longname, doc>: Delete.
10638         <info>: New.
10639         (remote_target::open_1): Make static.  Adjust.
10640         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10641         * s390-linux-nat.c (_initialize_s390_nat): Use
10642         add_inf_child_target.
10643         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10644         add_inf_child_target.
10645         * sol-thread.c (thread_db_target_info): New.
10646         (sol_thread_target) <shortname, longname, doc>: Delete.
10647         <info>: New.
10648         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10649         add_inf_child_target.
10650         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10651         add_inf_child_target.
10652         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10653         add_inf_child_target.
10654         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10655         add_inf_child_target.
10656         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10657         add_inf_child_target.
10658         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10659         add_inf_child_target.
10660         * spu-linux-nat.c (_initialize_spu_nat): Use
10661         add_inf_child_target.
10662         * spu-multiarch.c (spu_multiarch_target_info): New.
10663         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10664         <info>: New.
10665         * target-delegates.c: Regenerate.
10666         * target.c: Include <unordered_map>.
10667         (target_ops_p): Delete.
10668         (DEF_VEC_P(target_ops_p)): Delete.
10669         (target_factories): New.
10670         (test_target_info): New.
10671         (test_target_ops::info): New.
10672         (open_target): Adjust to use target_factories.
10673         (add_target_with_completer): Rename to ...
10674         (add_target): ... this.  Change prototype.  Register target_info
10675         and open callback in target_factories.  Register target_info in
10676         command context instead of target_ops.
10677         (add_target): Delete old implementation.
10678         (add_deprecated_target_alias): Change prototype.  Adjust.
10679         (the_native_target): New.
10680         (set_native_target, get_native_target): New.
10681         (find_default_run_target): Use the_native_target.
10682         (find_attach_target, find_run_target): Simplify.
10683         (target_ops::open): Delete.
10684         (dummy_target_info): New.
10685         (dummy_target::shortname, dummy_target::longname)
10686         (dummy_target::doc): Delete.
10687         (dummy_target::info): New.
10688         (debug_target::shortname, debug_target::longname)
10689         (debug_target::doc): Delete.
10690         (debug_target::info): New.
10691         * target.h (struct target_info): New.
10692         (target_ops::~target_ops): Add comment.
10693         (target_ops::info): New.
10694         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10695         longer virtual.  Implement in terms of target_info.
10696         (set_native_target, get_native_target): Declare.
10697         (target_open_ftype): New.
10698         (add_target, add_target_with_completer)
10699         (add_deprecated_target_alias): Change prototype.
10700         (test_target) <shortname, longname, doc>: Delete.
10701         <info>: New.
10702         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10703         add_inf_child_target.
10704         * tracefile-tfile.c (tfile_target_info): New.
10705         (tfile_target) <shortname, longname, doc>: Delete.
10706         <info>: New.
10707         (tfile_target::open): Rename to ...
10708         (tfile_target_open): ... this.
10709         (_initialize_tracefile_tfile): Adjust.
10710         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10711         add_inf_child_target.
10712         * windows-nat.c (_initialize_windows_nat): Use
10713         add_inf_child_target.
10714         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10715         add_inf_child_target.
10716
10717 2018-05-02  Pedro Alves  <palves@redhat.com>
10718
10719         * linux-nat.h (linux_nat_target) <low_new_thread,
10720         low_delete_thread, low_new_fork, low_forget_process,
10721         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10722         New virtual methods.
10723         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10724         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10725         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10726         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10727         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10728         Delete.
10729         * linux-fork.c (delete_fork): Adjust to call low method.
10730         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10731         (linux_nat_new_fork, linux_nat_forget_process_hook)
10732         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10733         (linux_nat_status_is_event):
10734         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10735         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10736         to call low method.
10737         (sigtrap_is_event): Rename to ...
10738         (linux_nat_target::low_status_is_event): ... this.
10739         (linux_nat_set_status_is_event): Delete.
10740         (save_stop_reason, linux_nat_wait_1)
10741         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10742         low methods.
10743         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10744         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10745         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10746         (linux_nat_set_prepare_to_resume): Delete.
10747         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10748         low virtual methods.
10749         * amd64-linux-nat.c: Likewise.
10750         * arm-linux-nat.c: Likewise.
10751         * i386-linux-nat.c: Likewise.
10752         * ia64-linux-nat.c: Likewise.
10753         * mips-linux-nat.c: Likewise.
10754         * ppc-linux-nat.c: Likewise.
10755         * s390-linux-nat.c: Likewise.
10756         * sparc64-linux-nat.c: Likewise.
10757         * x86-linux-nat.c: Likewise.
10758         * x86-linux-nat.h: Include "nat/x86-linux.h".
10759         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10760         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10761         Override methods.
10762
10763 2018-05-02  Pedro Alves  <palves@redhat.com>
10764
10765         * target.h (target_ops)
10766         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10767         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10768         stopped_by_watchpoint, have_continuable_watchpoint,
10769         stopped_data_address, watchpoint_addr_within_range,
10770         can_accel_watchpoint_condition, can_run, thread_alive,
10771         has_all_memory, has_memory, has_stack, has_registers,
10772         has_execution, can_async_p, is_async_p, supports_non_stop,
10773         always_non_stop_p, can_execute_reverse, supports_multi_process,
10774         supports_enable_disable_tracepoint,
10775         supports_disable_randomization, supports_string_tracing,
10776         supports_evaluation_of_breakpoint_conditions,
10777         can_run_breakpoint_commands, filesystem_is_local,
10778         can_download_tracepoint, get_trace_state_variable_value,
10779         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10780         record_is_replaying, record_will_replay,
10781         augmented_libraries_svr4_read>: Adjust to return bool.
10782         * aarch64-linux-nat.c: All implementations adjusted.
10783         * aix-thread.c: All implementations adjusted.
10784         * arm-linux-nat.c: All implementations adjusted.
10785         * breakpoint.c: All implementations adjusted.
10786         * bsd-kvm.c: All implementations adjusted.
10787         * bsd-uthread.c: All implementations adjusted.
10788         * corelow.c: All implementations adjusted.
10789         * ctf.c: All implementations adjusted.
10790         * darwin-nat.c: All implementations adjusted.
10791         * darwin-nat.h: All implementations adjusted.
10792         * exec.c: All implementations adjusted.
10793         * fbsd-nat.c: All implementations adjusted.
10794         * fbsd-nat.h: All implementations adjusted.
10795         * gnu-nat.c: All implementations adjusted.
10796         * gnu-nat.h: All implementations adjusted.
10797         * go32-nat.c: All implementations adjusted.
10798         * ia64-linux-nat.c: All implementations adjusted.
10799         * inf-child.c: All implementations adjusted.
10800         * inf-child.h: All implementations adjusted.
10801         * inf-ptrace.c: All implementations adjusted.
10802         * inf-ptrace.h: All implementations adjusted.
10803         * linux-nat.c: All implementations adjusted.
10804         * linux-nat.h: All implementations adjusted.
10805         * mips-linux-nat.c: All implementations adjusted.
10806         * nto-procfs.c: All implementations adjusted.
10807         * ppc-linux-nat.c: All implementations adjusted.
10808         * procfs.c: All implementations adjusted.
10809         * ravenscar-thread.c: All implementations adjusted.
10810         * record-btrace.c: All implementations adjusted.
10811         * record-full.c: All implementations adjusted.
10812         * remote-sim.c: All implementations adjusted.
10813         * remote.c: All implementations adjusted.
10814         * s390-linux-nat.c: All implementations adjusted.
10815         * sol-thread.c: All implementations adjusted.
10816         * spu-multiarch.c: All implementations adjusted.
10817         * target-delegates.c: All implementations adjusted.
10818         * target.c: All implementations adjusted.
10819         * target.h: All implementations adjusted.
10820         * tracefile-tfile.c: All implementations adjusted.
10821         * tracefile.c: All implementations adjusted.
10822         * tracefile.h: All implementations adjusted.
10823         * windows-nat.c: All implementations adjusted.
10824         * x86-linux-nat.h: All implementations adjusted.
10825         * x86-nat.h: All implementations adjusted.
10826
10827 2018-05-02  Pedro Alves  <palves@redhat.com>
10828
10829         * make-target-delegates (scan_target_h): Don't trim lines here.
10830         Replace sequences of tabs and/or whitespace with a single
10831         whitespace.
10832         (top level, parsing methods): Trim each line before processing it
10833         here.
10834
10835 2018-05-02  Pedro Alves  <palves@redhat.com>
10836             John Baldwin  <jhb@freebsd.org>
10837
10838         * target.h (enum strata) <debug_stratum>: New.
10839         (struct target_ops) <all delegation methods>: Replace by C++
10840         virtual methods, and drop "to_" prefix.  All references updated
10841         throughout.
10842         <to_shortname, to_longname, to_doc, to_data,
10843         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10844         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10845         virtual methods.  All references updated throughout.
10846         <can_attach, supports_terminal_ours, can_create_inferior,
10847         get_thread_control_capabilities, attach_no_wait>: New
10848         virtual methods.
10849         <insert_breakpoint, remove_breakpoint>: Now
10850         TARGET_DEFAULT_NORETURN methods.
10851         <info_proc>: Now returns bool.
10852         <to_magic>: Delete.
10853         (OPS_MAGIC): Delete.
10854         (current_target): Delete.  All references replaced by references
10855         to ...
10856         (target_stack): ... this.  New.
10857         (target_shortname, target_longname): Adjust.
10858         (target_can_run): Now a function declaration.
10859         (default_child_has_all_memory, default_child_has_memory)
10860         (default_child_has_stack, default_child_has_registers)
10861         (default_child_has_execution): Remove target_ops parameter.
10862         (complete_target_initialization): Delete.
10863         (memory_breakpoint_target): New template class.
10864         (test_target_ops): Refactor as a C++ class with virtual methods.
10865         * make-target-delegates (NAME_PART): Tighten.
10866         (POINTER_PART, CP_SYMBOL): New.
10867         (SIMPLE_RETURN_PART): Reimplement.
10868         (VEC_RETURN_PART): Expect less.
10869         (RETURN_PART, VIRTUAL_PART): New.
10870         (METHOD): Adjust to C++ virtual methods.
10871         (scan_target_h): Remove reference to C99.
10872         (dname): Output "target_ops::" prefix.
10873         (write_function_header): Adjust to output a C++ class method.
10874         (write_declaration): New.
10875         (write_delegator): Adjust to output a C++ class method.
10876         (tdname): Output "dummy_target::" prefix.
10877         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10878         method.
10879         (tdefault_names, debug_names): Delete.
10880         (return_types, tdefaults, styles, argtypes_array): New.
10881         (top level): All methods are delegators.
10882         (print_class): New.
10883         (top level): Print dummy_target and debug_target classes.
10884         * target-delegates.c: Regenerate.
10885         * target-debug.h (target_debug_print_enum_info_proc_what)
10886         (target_debug_print_thread_control_capabilities)
10887         (target_debug_print_thread_info_p): New.
10888         * target.c (dummy_target): Delete.
10889         (the_dummy_target, the_debug_target): New.
10890         (target_stack): Now extern.
10891         (set_targetdebug): Push/unpush debug target.
10892         (default_child_has_all_memory, default_child_has_memory)
10893         (default_child_has_stack, default_child_has_registers)
10894         (default_child_has_execution): Remove target_ops parameter.
10895         (complete_target_initialization): Delete.
10896         (add_target_with_completer): No longer call
10897         complete_target_initialization.
10898         (target_supports_terminal_ours): Use regular delegation.
10899         (update_current_target): Delete.
10900         (push_target): No longer check magic number.  Don't call
10901         update_current_target.
10902         (unpush_target): Don't call update_current_target.
10903         (target_is_pushed): No longer check magic number.
10904         (target_require_runnable): Skip for all stratums over
10905         process_stratum.
10906         (target_ops::info_proc): New.
10907         (target_info_proc): Use find_target_at and
10908         find_default_run_target.
10909         (target_supports_disable_randomization): Use regular delegation.
10910         (target_get_osdata): Use find_target_at.
10911         (target_ops::open, target_ops::close, target_ops::can_attach)
10912         (target_ops::attach, target_ops::can_create_inferior)
10913         (target_ops::create_inferior, target_ops::can_run)
10914         (target_can_run): New.
10915         (default_fileio_target): Use regular delegation.
10916         (target_ops::fileio_open, target_ops::fileio_pwrite)
10917         (target_ops::fileio_pread, target_ops::fileio_fstat)
10918         (target_ops::fileio_close, target_ops::fileio_unlink)
10919         (target_ops::fileio_readlink): New.
10920         (target_fileio_open_1, target_fileio_unlink)
10921         (target_fileio_readlink): Always call the target method.  Handle
10922         FILEIO_ENOSYS.
10923         (return_zero, return_zero_has_execution): Delete.
10924         (init_dummy_target): Delete.
10925         (dummy_target::dummy_target, dummy_target::shortname)
10926         (dummy_target::longname, dummy_target::doc)
10927         (debug_target::debug_target, debug_target::shortname)
10928         (debug_target::longname, debug_target::doc): New.
10929         (target_supports_delete_record): Use regular delegation.
10930         (setup_target_debug): Delete.
10931         (maintenance_print_target_stack): Skip debug_stratum.
10932         (initialize_targets): Instantiate the_dummy_target and
10933         the_debug_target.
10934         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10935         use target_stack.
10936         (target_auxv_search, fprint_target_auxv): Adjust.
10937         (info_auxv_command): Adjust to use target_stack.
10938         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10939         * exceptions.c (print_flush): Handle a NULL target_stack.
10940         * regcache.c (target_ops_no_register): Refactor as class with
10941         virtual methods.
10942
10943         * exec.c (exec_target): New class.
10944         (exec_ops): Now an exec_target.
10945         (exec_open, exec_close_1, exec_get_section_table)
10946         (exec_xfer_partial, exec_files_info, exec_has_memory)
10947         (exec_make_note_section): Refactor as exec_target methods.
10948         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10949         Delete.
10950         (exec_target::find_memory_regions): New.
10951         (_initialize_exec): Don't call init_exec_ops.
10952         * gdbcore.h (exec_file_clear): Delete.
10953
10954         * corefile.c (core_target): Delete.
10955         (core_file_command): Adjust.
10956         * corelow.c (core_target): New class.
10957         (the_core_target): New.
10958         (core_close): Remove target_ops parameter.
10959         (core_close_cleanup): Adjust.
10960         (core_target::close): New.
10961         (core_open, core_detach, get_core_registers, core_files_info)
10962         (core_xfer_partial, core_thread_alive, core_read_description)
10963         (core_pid_to_str, core_thread_name, core_has_memory)
10964         (core_has_stack, core_has_registers, core_info_proc): Rework as
10965         core_target methods.
10966         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10967         (_initialize_corelow): Initialize the_core_target.
10968         * gdbcore.h (core_target): Delete.
10969         (the_core_target): New.
10970
10971         * ctf.c: (ctf_target): New class.
10972         (ctf_ops): Now a ctf_target.
10973         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10974         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10975         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10976         methods.
10977         (init_ctf_ops): Delete.
10978         (_initialize_ctf): Don't call it.
10979         * tracefile-tfile.c (tfile_target): New class.
10980         (tfile_ops): Now a tfile_target.
10981         (tfile_open, tfile_close, tfile_files_info)
10982         (tfile_get_tracepoint_status, tfile_trace_find)
10983         (tfile_fetch_registers, tfile_xfer_partial)
10984         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10985         Refactor as tfile_target methods.
10986         (tfile_xfer_partial_features): Remove target_ops parameter.
10987         (init_tfile_ops): Delete.
10988         (_initialize_tracefile_tfile): Don't call it.
10989         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10990         (tracefile_has_stack, tracefile_has_registers)
10991         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10992         tracefile_target methods.
10993         (init_tracefile_ops): Delete.
10994         (tracefile_target::tracefile_target): New.
10995         * tracefile.h: Include "target.h".
10996         (tracefile_target): New class.
10997         (init_tracefile_ops): Delete.
10998
10999         * spu-multiarch.c (spu_multiarch_target): New class.
11000         (spu_ops): Now a spu_multiarch_target.
11001         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11002         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11003         (spu_search_memory, spu_mourn_inferior): Refactor as
11004         spu_multiarch_target methods.
11005         (init_spu_ops): Delete.
11006         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11007         complete_target_initialization.
11008
11009         * ravenscar-thread.c (ravenscar_thread_target): New class.
11010         (ravenscar_ops): Now a ravenscar_thread_target.
11011         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11012         (ravenscar_thread_alive, ravenscar_pid_to_str)
11013         (ravenscar_fetch_registers, ravenscar_store_registers)
11014         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11015         (ravenscar_stopped_by_hw_breakpoint)
11016         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11017         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11018         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11019         methods.
11020         (init_ravenscar_thread_ops): Delete.
11021         (_initialize_ravenscar): Remove references to
11022         init_ravenscar_thread_ops and complete_target_initialization.
11023
11024         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11025         (bsd_uthread_target): New class.
11026         (bsd_uthread_ops): Now a bsd_uthread_target.
11027         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11028         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11029         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11030         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11031         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11032         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11033         (bsd_uthread_target): Delete function.
11034         (_initialize_bsd_uthread): Remove reference to
11035         complete_target_initialization.
11036
11037         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11038         (target_bfd): ... this new class.
11039         (target_bfd_xfer_partial, target_bfd_get_section_table)
11040         (target_bfd_close): Refactor as target_bfd methods.
11041         (target_bfd::~target_bfd): New.
11042         (target_bfd_reopen): Adjust.
11043         (target_bfd::close): New.
11044
11045         * record-btrace.c (record_btrace_target): New class.
11046         (record_btrace_ops): Now a record_btrace_target.
11047         (record_btrace_open, record_btrace_stop_recording)
11048         (record_btrace_disconnect, record_btrace_close)
11049         (record_btrace_async, record_btrace_info)
11050         (record_btrace_insn_history, record_btrace_insn_history_range)
11051         (record_btrace_insn_history_from, record_btrace_call_history)
11052         (record_btrace_call_history_range)
11053         (record_btrace_call_history_from, record_btrace_record_method)
11054         (record_btrace_is_replaying, record_btrace_will_replay)
11055         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11056         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11057         (record_btrace_store_registers, record_btrace_prepare_to_store)
11058         (record_btrace_to_get_unwinder)
11059         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11060         (record_btrace_commit_resume, record_btrace_wait)
11061         (record_btrace_stop, record_btrace_can_execute_reverse)
11062         (record_btrace_stopped_by_sw_breakpoint)
11063         (record_btrace_supports_stopped_by_sw_breakpoint)
11064         (record_btrace_stopped_by_hw_breakpoint)
11065         (record_btrace_supports_stopped_by_hw_breakpoint)
11066         (record_btrace_update_thread_list, record_btrace_thread_alive)
11067         (record_btrace_goto_begin, record_btrace_goto_end)
11068         (record_btrace_goto, record_btrace_stop_replaying_all)
11069         (record_btrace_execution_direction)
11070         (record_btrace_prepare_to_generate_core)
11071         (record_btrace_done_generating_core): Refactor as
11072         record_btrace_target methods.
11073         (init_record_btrace_ops): Delete.
11074         (_initialize_record_btrace): Remove reference to
11075         init_record_btrace_ops.
11076         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11077         the execution_direction global.
11078         (record_full_base_target, record_full_target)
11079         (record_full_core_target): New classes.
11080         (record_full_ops): Now a record_full_target.
11081         (record_full_core_ops): Now a record_full_core_target.
11082         (record_full_target::detach, record_full_target::disconnect)
11083         (record_full_core_target::disconnect)
11084         (record_full_target::mourn_inferior, record_full_target::kill):
11085         New.
11086         (record_full_open, record_full_close, record_full_async): Refactor
11087         as methods of the record_full_base_target class.
11088         (record_full_resume, record_full_commit_resume): Refactor
11089         as methods of the record_full_target class.
11090         (record_full_wait, record_full_stopped_by_watchpoint)
11091         (record_full_stopped_data_address)
11092         (record_full_stopped_by_sw_breakpoint)
11093         (record_full_supports_stopped_by_sw_breakpoint)
11094         (record_full_stopped_by_hw_breakpoint)
11095         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11096         methods of the record_full_base_target class.
11097         (record_full_store_registers, record_full_xfer_partial)
11098         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11099         Refactor as methods of the record_full_target class.
11100         (record_full_can_execute_reverse, record_full_get_bookmark)
11101         (record_full_goto_bookmark, record_full_execution_direction)
11102         (record_full_record_method, record_full_info, record_full_delete)
11103         (record_full_is_replaying, record_full_will_replay)
11104         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11105         (record_full_stop_replaying): Refactor as methods of the
11106         record_full_base_target class.
11107         (record_full_core_resume, record_full_core_kill)
11108         (record_full_core_fetch_registers)
11109         (record_full_core_prepare_to_store)
11110         (record_full_core_store_registers, record_full_core_xfer_partial)
11111         (record_full_core_insert_breakpoint)
11112         (record_full_core_remove_breakpoint)
11113         (record_full_core_has_execution): Refactor
11114         as methods of the record_full_core_target class.
11115         (record_full_base_target::supports_delete_record): New.
11116         (init_record_full_ops): Delete.
11117         (init_record_full_core_ops): Delete.
11118         (record_full_save): Refactor as method of the
11119         record_full_base_target class.
11120         (_initialize_record_full): Remove references to
11121         init_record_full_ops and init_record_full_core_ops.
11122
11123         * remote.c (remote_target, extended_remote_target): New classes.
11124         (remote_ops): Now a remote_target.
11125         (extended_remote_ops): Now an extended_remote_target.
11126         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11127         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11128         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11129         (remote_pass_signals, remote_set_syscall_catchpoint)
11130         (remote_program_signals, )
11131         (remote_thread_always_alive): Remove target_ops parameter.
11132         (remote_thread_alive, remote_thread_name)
11133         (remote_update_thread_list, remote_threads_extra_info)
11134         (remote_static_tracepoint_marker_at)
11135         (remote_static_tracepoint_markers_by_strid)
11136         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11137         (remote_open): Refactor as methods of remote_target.
11138         (extended_remote_open, extended_remote_detach)
11139         (extended_remote_attach, extended_remote_post_attach):
11140         (extended_remote_supports_disable_randomization)
11141         (extended_remote_create_inferior): : Refactor as method of
11142         extended_remote_target.
11143         (remote_set_permissions, remote_open_1, remote_detach)
11144         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11145         (remote_resume, remote_commit_resume, remote_stop)
11146         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11147         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11148         (remote_prepare_to_store, remote_store_registers)
11149         (remote_flash_erase, remote_flash_done, remote_files_info)
11150         (remote_kill, remote_mourn, remote_insert_breakpoint)
11151         (remote_remove_breakpoint, remote_insert_watchpoint)
11152         (remote_watchpoint_addr_within_range)
11153         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11154         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11155         (remote_supports_stopped_by_sw_breakpoint)
11156         (remote_stopped_by_hw_breakpoint)
11157         (remote_supports_stopped_by_hw_breakpoint)
11158         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11159         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11160         (remote_verify_memory): Refactor as methods of remote_target.
11161         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11162         parameter.
11163         (remote_xfer_partial, remote_get_memory_xfer_limit)
11164         (remote_search_memory, remote_rcmd, remote_memory_map)
11165         (remote_pid_to_str, remote_get_thread_local_address)
11166         (remote_get_tib_address, remote_read_description): Refactor as
11167         methods of remote_target.
11168         (remote_target::fileio_open, remote_target::fileio_pwrite)
11169         (remote_target::fileio_pread, remote_target::fileio_close): New.
11170         (remote_hostio_readlink, remote_hostio_fstat)
11171         (remote_filesystem_is_local, remote_can_execute_reverse)
11172         (remote_supports_non_stop, remote_supports_disable_randomization)
11173         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11174         (remote_supports_enable_disable_tracepoint)
11175         (remote_supports_string_tracing)
11176         (remote_can_run_breakpoint_commands, remote_trace_init)
11177         (remote_download_tracepoint, remote_can_download_tracepoint)
11178         (remote_download_trace_state_variable, remote_enable_tracepoint)
11179         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11180         (remote_trace_start, remote_get_trace_status)
11181         (remote_get_tracepoint_status, remote_trace_stop)
11182         (remote_trace_find, remote_get_trace_state_variable_value)
11183         (remote_save_trace_data, remote_get_raw_trace_data)
11184         (remote_set_disconnected_tracing, remote_core_of_thread)
11185         (remote_set_circular_trace_buffer, remote_traceframe_info)
11186         (remote_get_min_fast_tracepoint_insn_len)
11187         (remote_set_trace_buffer_size, remote_set_trace_notes)
11188         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11189         (remote_disable_btrace, remote_teardown_btrace)
11190         (remote_read_btrace, remote_btrace_conf)
11191         (remote_augmented_libraries_svr4_read, remote_load)
11192         (remote_pid_to_exec_file, remote_can_do_single_step)
11193         (remote_execution_direction, remote_thread_handle_to_thread_info):
11194         Refactor as methods of remote_target.
11195         (init_remote_ops, init_extended_remote_ops): Delete.
11196         (remote_can_async_p, remote_is_async_p, remote_async)
11197         (remote_thread_events, remote_upload_tracepoints)
11198         (remote_upload_trace_state_variables): Refactor as methods of
11199         remote_target.
11200         (_initialize_remote): Remove references to init_remote_ops and
11201         init_extended_remote_ops.
11202
11203         * remote-sim.c (gdbsim_target): New class.
11204         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11205         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11206         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11207         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11208         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11209         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11210         Refactor as methods of gdbsim_target.
11211         (gdbsim_ops): Now a gdbsim_target.
11212         (init_gdbsim_ops): Delete.
11213         (gdbsim_cntrl_c): Adjust.
11214         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11215
11216         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11217         (the_amd64_linux_nat_target): New.
11218         (amd64_linux_fetch_inferior_registers)
11219         (amd64_linux_store_inferior_registers): Refactor as methods of
11220         amd64_linux_nat_target.
11221         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11222         * i386-linux-nat.c: Don't include "linux-nat.h".
11223         (i386_linux_nat_target): New class.
11224         (the_i386_linux_nat_target): New.
11225         (i386_linux_fetch_inferior_registers)
11226         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11227         as methods of i386_linux_nat_target.
11228         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11229         * inf-child.c (inf_child_ops): Delete.
11230         (inf_child_fetch_inferior_registers)
11231         (inf_child_store_inferior_registers): Delete.
11232         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11233         methods of inf_child_target.
11234         (inf_child_target::supports_terminal_ours)
11235         (inf_child_target::terminal_init)
11236         (inf_child_target::terminal_inferior)
11237         (inf_child_target::terminal_ours_for_output)
11238         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11239         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11240         New.
11241         (inf_child_open, inf_child_disconnect, inf_child_close)
11242         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11243         (inf_child_post_startup_inferior, inf_child_can_run)
11244         (inf_child_pid_to_exec_file): Refactor as methods of
11245         inf_child_target.
11246         (inf_child_follow_fork): Delete.
11247         (inf_child_target::can_create_inferior)
11248         (inf_child_target::can_attach): New.
11249         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11250         (inf_child_target::has_stack, inf_child_target::has_registers)
11251         (inf_child_target::has_execution): New.
11252         (inf_child_fileio_open, inf_child_fileio_pwrite)
11253         (inf_child_fileio_pread, inf_child_fileio_fstat)
11254         (inf_child_fileio_close, inf_child_fileio_unlink)
11255         (inf_child_fileio_readlink, inf_child_use_agent)
11256         (inf_child_can_use_agent): Refactor as methods of
11257         inf_child_target.
11258         (return_zero, inf_child_target): Delete.
11259         (inf_child_target::inf_child_target): New.
11260         * inf-child.h: Include "target.h".
11261         (inf_child_target): Delete function prototype.
11262         (inf_child_target): New class.
11263         (inf_child_open_target, inf_child_mourn_inferior)
11264         (inf_child_maybe_unpush_target): Delete.
11265         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11266         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11267         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11268         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11269         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11270         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11271         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11272         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11273         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11274         methods of inf_ptrace_target.
11275         (inf_ptrace_target): Delete function.
11276         * inf-ptrace.h: Include "inf-child.h".
11277         (inf_ptrace_target): Delete function declaration.
11278         (inf_ptrace_target): New class.
11279         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11280         * linux-nat.c (linux_target): New.
11281         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11282         (linux_nat_target::~linux_nat_target): New.
11283         (linux_child_post_attach, linux_child_post_startup_inferior)
11284         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11285         (linux_child_remove_fork_catchpoint)
11286         (linux_child_insert_vfork_catchpoint)
11287         (linux_child_remove_vfork_catchpoint)
11288         (linux_child_insert_exec_catchpoint)
11289         (linux_child_remove_exec_catchpoint)
11290         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11291         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11292         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11293         (linux_nat_stopped_data_address)
11294         (linux_nat_stopped_by_sw_breakpoint)
11295         (linux_nat_supports_stopped_by_sw_breakpoint)
11296         (linux_nat_stopped_by_hw_breakpoint)
11297         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11298         (linux_nat_kill, linux_nat_mourn_inferior)
11299         (linux_nat_xfer_partial, linux_nat_thread_alive)
11300         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11301         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11302         (linux_child_static_tracepoint_markers_by_strid)
11303         (linux_nat_is_async_p, linux_nat_can_async_p)
11304         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11305         (linux_nat_supports_multi_process)
11306         (linux_nat_supports_disable_randomization, linux_nat_async)
11307         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11308         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11309         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11310         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11311         methods of linux_nat_target.
11312         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11313         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11314         parameter.
11315         (check_stopped_by_watchpoint): Adjust.
11316         (linux_xfer_partial): Delete.
11317         (linux_target_install_ops, linux_target, linux_nat_add_target):
11318         Delete.
11319         (linux_nat_target::linux_nat_target): New.
11320         * linux-nat.h: Include "inf-ptrace.h".
11321         (linux_nat_target): New.
11322         (linux_target, linux_target_install_ops, linux_nat_add_target):
11323         Delete function declarations.
11324         (linux_target): Declare global.
11325         * linux-thread-db.c (thread_db_target): New.
11326         (thread_db_target::thread_db_target): New.
11327         (thread_db_ops): Delete.
11328         (the_thread_db_target): New.
11329         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11330         (thread_db_update_thread_list, thread_db_pid_to_str)
11331         (thread_db_extra_thread_info)
11332         (thread_db_thread_handle_to_thread_info)
11333         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11334         (thread_db_resume): Refactor as methods of thread_db_target.
11335         (init_thread_db_ops): Delete.
11336         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11337         * x86-linux-nat.c: Don't include "linux-nat.h".
11338         (super_post_startup_inferior): Delete.
11339         (x86_linux_nat_target::~x86_linux_nat_target): New.
11340         (x86_linux_child_post_startup_inferior)
11341         (x86_linux_read_description, x86_linux_enable_btrace)
11342         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11343         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11344         methods of x86_linux_nat_target.
11345         (x86_linux_create_target): Delete.  Bits folded ...
11346         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11347         pointer.
11348         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11349         (x86_linux_nat_target): New class.
11350         (x86_linux_create_target): Delete.
11351         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11352         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11353         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11354         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11355         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11356         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11357         make extern.
11358         (x86_use_watchpoints): Delete.
11359         * x86-nat.h: Include "breakpoint.h" and "target.h".
11360         (x86_use_watchpoints): Delete.
11361         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11362         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11363         (x86_insert_watchpoint, x86_remove_watchpoint)
11364         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11365         (x86_stopped_by_hw_breakpoint): New declarations.
11366         (x86_nat_target): New template class.
11367
11368         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11369         (the_ppc_linux_nat_target): New.
11370         (ppc_linux_fetch_inferior_registers)
11371         (ppc_linux_can_use_hw_breakpoint)
11372         (ppc_linux_region_ok_for_hw_watchpoint)
11373         (ppc_linux_ranged_break_num_registers)
11374         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11375         (ppc_linux_insert_mask_watchpoint)
11376         (ppc_linux_remove_mask_watchpoint)
11377         (ppc_linux_can_accel_watchpoint_condition)
11378         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11379         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11380         (ppc_linux_watchpoint_addr_within_range)
11381         (ppc_linux_masked_watch_num_registers)
11382         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11383         (ppc_linux_read_description): Refactor as methods of
11384         ppc_linux_nat_target.
11385         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11386
11387         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11388         (procfs_target): New class.
11389         (the_procfs_target): New.
11390         (procfs_target): Delete function.
11391         (procfs_auxv_parse, procfs_attach, procfs_detach)
11392         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11393         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11394         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11395         (procfs_create_inferior, procfs_update_thread_list)
11396         (procfs_thread_alive, procfs_pid_to_str)
11397         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11398         (procfs_stopped_data_address, procfs_insert_watchpoint)
11399         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11400         (proc_find_memory_regions, procfs_info_proc)
11401         (procfs_make_note_section): Refactor as methods of procfs_target.
11402         (_initialize_procfs): Adjust.
11403         * sol-thread.c (sol_thread_target): New class.
11404         (sol_thread_ops): Now a sol_thread_target.
11405         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11406         (sol_thread_fetch_registers, sol_thread_store_registers)
11407         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11408         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11409         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11410         (init_sol_thread_ops): Delete.
11411         (_initialize_sol_thread): Adjust.  Remove references to
11412         init_sol_thread_ops and complete_target_initialization.
11413
11414         * windows-nat.c (windows_nat_target): New class.
11415         (windows_fetch_inferior_registers)
11416         (windows_store_inferior_registers, windows_resume, windows_wait)
11417         (windows_attach, windows_detach, windows_pid_to_exec_file)
11418         (windows_files_info, windows_create_inferior)
11419         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11420         (windows_close, windows_pid_to_str, windows_xfer_partial)
11421         (windows_get_tib_address, windows_get_ada_task_ptid)
11422         (windows_thread_name, windows_thread_alive): Refactor as
11423         windows_nat_target methods.
11424         (do_initial_windows_stuff): Adjust.
11425         (windows_target): Delete function.
11426         (_initialize_windows_nat): Adjust.
11427
11428         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11429         (darwin_mourn_inferior, darwin_kill_inferior)
11430         (darwin_create_inferior, darwin_attach, darwin_detach)
11431         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11432         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11433         (darwin_supports_multi_process): Refactor as darwin_nat_target
11434         methods.
11435         (darwin_resume_to, darwin_files_info): Delete.
11436         (_initialize_darwin_inferior): Rename to ...
11437         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11438         * darwin-nat.h: Include "inf-child.h".
11439         (darwin_nat_target): New class.
11440         (darwin_complete_target): Delete.
11441         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11442         (darwin_target): New.
11443         (i386_darwin_fetch_inferior_registers)
11444         (i386_darwin_store_inferior_registers): Refactor as methods of
11445         darwin_nat_target.
11446         (darwin_complete_target): Delete, with ...
11447         (_initialize_i386_darwin_nat): ... bits factored out here.
11448
11449         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11450         (the_alpha_linux_nat_target): New.
11451         (alpha_linux_register_u_offset): Refactor as
11452         alpha_linux_nat_target method.
11453         (_initialize_alpha_linux_nat): Adjust.
11454         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11455         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11456         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11457         methods of linux_nat_trad_target.
11458         (linux_trad_target): Delete.
11459         * linux-nat-trad.h (linux_trad_target): Delete function.
11460         (linux_nat_trad_target): New class.
11461         * mips-linux-nat.c (mips_linux_nat_target): New class.
11462         (super_fetch_registers, super_store_registers, super_close):
11463         Delete.
11464         (the_mips_linux_nat_target): New.
11465         (mips64_linux_regsets_fetch_registers)
11466         (mips64_linux_regsets_store_registers)
11467         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11468         (mips_linux_register_u_offset, mips_linux_read_description)
11469         (mips_linux_can_use_hw_breakpoint)
11470         (mips_linux_stopped_by_watchpoint)
11471         (mips_linux_stopped_data_address)
11472         (mips_linux_region_ok_for_hw_watchpoint)
11473         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11474         (mips_linux_close): Refactor as methods of mips_linux_nat.
11475         (_initialize_mips_linux_nat): Adjust to C++ification.
11476
11477         * aix-thread.c (aix_thread_target): New class.
11478         (aix_thread_ops): Now an aix_thread_target.
11479         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11480         (aix_thread_fetch_registers, aix_thread_store_registers)
11481         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11482         (aix_thread_thread_alive, aix_thread_pid_to_str)
11483         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11484         Refactor as methods of aix_thread_target.
11485         (init_aix_thread_ops): Delete.
11486         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11487         and complete_target_initialization.
11488         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11489         (rs6000_nat_target): New class.
11490         (the_rs6000_nat_target): New.
11491         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11492         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11493         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11494         (super_create_inferior): Delete.
11495         (_initialize_rs6000_nat): Adjust to C++ification.
11496
11497         * arm-linux-nat.c (arm_linux_nat_target): New class.
11498         (the_arm_linux_nat_target): New.
11499         (arm_linux_fetch_inferior_registers)
11500         (arm_linux_store_inferior_registers, arm_linux_read_description)
11501         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11502         (arm_linux_remove_hw_breakpoint)
11503         (arm_linux_region_ok_for_hw_watchpoint)
11504         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11505         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11506         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11507         arm_linux_nat_target.
11508         (_initialize_arm_linux_nat): Adjust to C++ification.
11509
11510         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11511         (the_aarch64_linux_nat_target): New.
11512         (aarch64_linux_fetch_inferior_registers)
11513         (aarch64_linux_store_inferior_registers)
11514         (aarch64_linux_child_post_startup_inferior)
11515         (aarch64_linux_read_description)
11516         (aarch64_linux_can_use_hw_breakpoint)
11517         (aarch64_linux_insert_hw_breakpoint)
11518         (aarch64_linux_remove_hw_breakpoint)
11519         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11520         (aarch64_linux_region_ok_for_hw_watchpoint)
11521         (aarch64_linux_stopped_data_address)
11522         (aarch64_linux_stopped_by_watchpoint)
11523         (aarch64_linux_watchpoint_addr_within_range)
11524         (aarch64_linux_can_do_single_step): Refactor as methods of
11525         aarch64_linux_nat_target.
11526         (super_post_startup_inferior): Delete.
11527         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11528
11529         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11530         (the_hppa_linux_nat_target): New.
11531         (hppa_linux_fetch_inferior_registers)
11532         (hppa_linux_store_inferior_registers): Refactor as methods of
11533         hppa_linux_nat_target.
11534         (_initialize_hppa_linux_nat): Adjust to C++ification.
11535
11536         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11537         (the_ia64_linux_nat_target): New.
11538         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11539         (ia64_linux_stopped_data_address)
11540         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11541         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11542         ia64_linux_nat_target methods.
11543         (super_xfer_partial): Delete.
11544         (_initialize_ia64_linux_nat): Adjust to C++ification.
11545
11546         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11547         (the_m32r_linux_nat_target): New.
11548         (m32r_linux_fetch_inferior_registers)
11549         (m32r_linux_store_inferior_registers): Refactor as
11550         m32r_linux_nat_target methods.
11551         (_initialize_m32r_linux_nat): Adjust to C++ification.
11552
11553         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11554         (the_m68k_linux_nat_target): New.
11555         (m68k_linux_fetch_inferior_registers)
11556         (m68k_linux_store_inferior_registers): Refactor as
11557         m68k_linux_nat_target methods.
11558         (_initialize_m68k_linux_nat): Adjust to C++ification.
11559
11560         * s390-linux-nat.c (s390_linux_nat_target): New class.
11561         (the_s390_linux_nat_target): New.
11562         (s390_linux_fetch_inferior_registers)
11563         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11564         (s390_insert_watchpoint, s390_remove_watchpoint)
11565         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11566         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11567         (s390_auxv_parse, s390_read_description): Refactor as methods of
11568         s390_linux_nat_target.
11569         (_initialize_s390_nat): Adjust to C++ification.
11570
11571         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11572         (the_sparc_linux_nat_target): New.
11573         (_initialize_sparc_linux_nat): Adjust to C++ification.
11574         * sparc-nat.c (sparc_fetch_inferior_registers)
11575         (sparc_store_inferior_registers): Remove target_ops parameter.
11576         * sparc-nat.h (sparc_fetch_inferior_registers)
11577         (sparc_store_inferior_registers): Remove target_ops parameter.
11578         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11579         (the_sparc64_linux_nat_target): New.
11580         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11581
11582         * spu-linux-nat.c (spu_linux_nat_target): New class.
11583         (the_spu_linux_nat_target): New.
11584         (spu_child_post_startup_inferior, spu_child_post_attach)
11585         (spu_child_wait, spu_fetch_inferior_registers)
11586         (spu_store_inferior_registers, spu_xfer_partial)
11587         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11588         methods.
11589         (_initialize_spu_nat): Adjust to C++ification.
11590
11591         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11592         (the_tilegx_linux_nat_target): New.
11593         (fetch_inferior_registers, store_inferior_registers):
11594         Refactor as methods.
11595         (_initialize_tile_linux_nat): Adjust to C++ification.
11596
11597         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11598         (the_xtensa_linux_nat_target): New.
11599         (xtensa_linux_fetch_inferior_registers)
11600         (xtensa_linux_store_inferior_registers): Refactor as
11601         xtensa_linux_nat_target methods.
11602         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11603
11604         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11605         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11606         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11607         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11608         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11609         (fbsd_stopped_by_sw_breakpoint)
11610         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11611         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11612         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11613         (fbsd_post_startup_inferior, fbsd_post_attach)
11614         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11615         (fbsd_set_syscall_catchpoint)
11616         (super_xfer_partial, super_resume, super_wait)
11617         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11618         (fbsd_handle_debug_trap): Remove target_ops parameter.
11619         (fbsd_nat_add_target): Delete.
11620         * fbsd-nat.h: Include "inf-ptrace.h".
11621         (fbsd_nat_add_target): Delete.
11622         (USE_SIGTRAP_SIGINFO): Define.
11623         (fbsd_nat_target): New class.
11624
11625         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11626         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11627         (amd64bsd_target): Delete.
11628         * amd64-bsd-nat.h: New file.
11629         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11630         "x86-bsd-nat.h".
11631         (amd64_fbsd_nat_target): New class.
11632         (the_amd64_fbsd_nat_target): New.
11633         (amd64fbsd_read_description): Refactor as method of
11634         amd64_fbsd_nat_target.
11635         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11636         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11637         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11638         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11639         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11640         (i386bsd_target): Delete.
11641         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11642         (i386bsd_fetch_inferior_registers)
11643         (i386bsd_store_inferior_registers): Declare.
11644         (i386_bsd_nat_target): New class.
11645         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11646         (the_i386_fbsd_nat_target): New.
11647         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11648         i386_fbsd_nat_target methods.
11649         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11650         (_initialize_i386fbsd_nat): Adjust to C++ification.
11651         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11652         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11653         (_initialize_x86_bsd_nat): Adjust to C++ification.
11654         * x86-bsd-nat.h: Include "x86-nat.h".
11655         (x86bsd_target): Delete declaration.
11656         (x86bsd_nat_target): New class.
11657
11658         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11659         (the_aarch64_fbsd_nat_target): New.
11660         (aarch64_fbsd_fetch_inferior_registers)
11661         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11662         aarch64_fbsd_nat_target.
11663         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11664         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11665         (the_alpha_bsd_nat_target): New.
11666         (alphabsd_fetch_inferior_registers)
11667         (alphabsd_store_inferior_registers): Refactor as
11668         alpha_bsd_nat_target methods.
11669         (_initialize_alphabsd_nat): Refactor as methods of
11670         alpha_bsd_nat_target.
11671         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11672         (the_amd64_nbsd_nat_target): New.
11673         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11674         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11675         (the_amd64_obsd_nat_target): New.
11676         (_initialize_amd64obsd_nat): Adjust to C++ification.
11677         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11678         (the_arm_fbsd_nat_target): New.
11679         (arm_fbsd_fetch_inferior_registers)
11680         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11681         (_initialize_arm_fbsd_nat): Refactor as methods of
11682         arm_fbsd_nat_target.
11683         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11684         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11685         (the_arm_netbsd_nat_target): New.
11686         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11687         arm_netbsd_nat_target.
11688         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11689         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11690         (the_hppa_nbsd_nat_target): New.
11691         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11692         hppa_nbsd_nat_target methods.
11693         (_initialize_hppanbsd_nat): Adjust to C++ification.
11694         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11695         (the_hppa_obsd_nat_target): New.
11696         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11697         methods of hppa_obsd_nat_target.
11698         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11699         add_target.
11700         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11701         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11702         add_target.
11703         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11704         (_initialize_i386obsd_nat): Use add_target.
11705         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11706         (the_m68k_bsd_nat_target): New.
11707         (m68kbsd_fetch_inferior_registers)
11708         (m68kbsd_store_inferior_registers): Refactor as methods of
11709         m68k_bsd_nat_target.
11710         (_initialize_m68kbsd_nat): Adjust to C++ification.
11711         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11712         (the_mips_fbsd_nat_target): New.
11713         (mips_fbsd_fetch_inferior_registers)
11714         (mips_fbsd_store_inferior_registers): Refactor as methods of
11715         mips_fbsd_nat_target.
11716         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11717         add_target.
11718         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11719         (the_mips_nbsd_nat_target): New.
11720         (mipsnbsd_fetch_inferior_registers)
11721         (mipsnbsd_store_inferior_registers): Refactor as methods of
11722         mips_nbsd_nat_target.
11723         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11724         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11725         (the_mips64_obsd_nat_target): New.
11726         (mips64obsd_fetch_inferior_registers)
11727         (mips64obsd_store_inferior_registers): Refactor as methods of
11728         mips64_obsd_nat_target.
11729         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11730         add_target.
11731         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11732         nbsd_nat_target.
11733         * nbsd-nat.h: Include "inf-ptrace.h".
11734         (nbsd_nat_target): New class.
11735         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11736         (obsd_wait): Refactor as methods of obsd_nat_target.
11737         (obsd_add_target): Delete.
11738         * obsd-nat.h: Include "inf-ptrace.h".
11739         (obsd_nat_target): New class.
11740         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11741         (the_ppc_fbsd_nat_target): New.
11742         (ppcfbsd_fetch_inferior_registers)
11743         (ppcfbsd_store_inferior_registers): Refactor as methods of
11744         ppc_fbsd_nat_target.
11745         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11746         add_target.
11747         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11748         (the_ppc_nbsd_nat_target): New.
11749         (ppcnbsd_fetch_inferior_registers)
11750         (ppcnbsd_store_inferior_registers): Refactor as methods of
11751         ppc_nbsd_nat_target.
11752         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11753         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11754         (the_ppc_obsd_nat_target): New.
11755         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11756         methods of ppc_obsd_nat_target.
11757         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11758         add_target.
11759         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11760         (the_sh_nbsd_nat_target): New.
11761         (shnbsd_fetch_inferior_registers)
11762         (shnbsd_store_inferior_registers): Refactor as methods of
11763         sh_nbsd_nat_target.
11764         (_initialize_shnbsd_nat): Adjust to C++ification.
11765         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11766         (inf_ptrace_xfer_partial): Delete.
11767         (sparc_xfer_partial, sparc_target): Delete.
11768         * sparc-nat.h (sparc_fetch_inferior_registers)
11769         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11770         (sparc_target): Delete function declaration.
11771         (sparc_target): New template class.
11772         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11773         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11774         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11775         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11776         add_target.
11777         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11778         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11779         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11780         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11781         add_target.
11782         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11783         (the_vax_bsd_nat_target): New.
11784         (vaxbsd_fetch_inferior_registers)
11785         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11786         methods.
11787         (_initialize_vaxbsd_nat): Adjust to C++ification.
11788
11789         * bsd-kvm.c (bsd_kvm_target): New class.
11790         (bsd_kvm_ops): Now a bsd_kvm_target.
11791         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11792         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11793         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11794         bsd_kvm_target.
11795         (bsd_kvm_return_one): Delete.
11796         (bsd_kvm_add_target): Adjust to C++ification.
11797
11798         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11799         (nto_procfs_target_procfs): New classes.
11800         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11801         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11802         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11803         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11804         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11805         (procfs_remove_hw_breakpoint, procfs_resume)
11806         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11807         (procfs_kill_inferior, procfs_store_registers)
11808         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11809         as methods of nto_procfs_target.
11810         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11811         (nto_native_ops): Delete.
11812         (procfs_open, procfs_native_open): Delete.
11813         (nto_native_ops): Now an nto_procfs_target_native.
11814         (init_procfs_targets): Adjust to C++ification.
11815         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11816         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11817         Refactor as methods of nto_procfs_target.
11818
11819         * go32-nat.c (go32_nat_target): New class.
11820         (the_go32_nat_target): New.
11821         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11822         (go32_store_registers, go32_xfer_partial, go32_files_info)
11823         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11824         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11825         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11826         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11827         (go32_target): Delete.
11828         (_initialize_go32_nat): Adjust to C++ification.
11829
11830         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11831         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11832         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11833         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11834         gnu_nat_target.
11835         (gnu_target): Delete.
11836         * gnu-nat.h (gnu_target): Delete.
11837         (gnu_nat_target): New class.
11838         * i386-gnu-nat.c (gnu_base_target): New.
11839         (i386_gnu_nat_target): New class.
11840         (the_i386_gnu_nat_target): New.
11841         (_initialize_i386gnu_nat): Adjust to C++ification.
11842
11843 2018-05-02  Pedro Alves  <palves@redhat.com>
11844
11845         * bfd-target.c (target_bfd_xclose): Rename to ...
11846         (target_bfd_close): ... this.
11847         (target_bfd_reopen): Adjust.
11848         * target.c (target_close): Remove references to to_xclose.
11849         * target.h (target_ops::to_xclose): Delete.
11850         (target_ops::to_close): Update comments.
11851
11852 2018-05-02  Pedro Alves  <palves@redhat.com>
11853
11854         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11855         "linux-nat.h".
11856         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11857         * inf-ptrace.c (inf_ptrace_register_u_offset)
11858         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11859         (inf_ptrace_store_register, inf_ptrace_store_registers)
11860         (inf_ptrace_trad_target): Move to ...
11861         * linux-nat-trad.c: ... this new file.
11862         * linux-nat-trad.h: New file.
11863         * linux-nat.c (linux_target_install_ops): Make extern.
11864         (linux_trad_target): Delete.
11865         * linux-nat.h (linux_trad_target): Delete declaration.
11866         (linux_target_install_ops): Declare.
11867         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11868         "linux-nat.h".
11869
11870 2018-05-02  Pedro Alves  <palves@redhat.com>
11871
11872         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11873         procfs_target/add_target here.
11874         * procfs.c (procfs_target): Make static.
11875         (_initialize_procfs): Call add_target here.
11876         * procfs.h (struct target_ops): Remove forward declaration.
11877         (procfs_target): Remove declaration.
11878         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11879
11880 2018-05-02  Pedro Alves  <palves@redhat.com>
11881
11882         * procfs.c (procfs_stopped_by_watchpoint)
11883         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11884         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11885         Forward declare.
11886         (procfs_use_watchpoints): Delete, move contents...
11887         (procfs_target): ... here.
11888         * procfs.h (procfs_use_watchpoints): Delete declaration.
11889         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11890         procfs_use_watchpoints.
11891         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11892         procfs_use_watchpoints.
11893
11894 2018-05-02  Tom Tromey  <tom@tromey.com>
11895
11896         PR python/20084:
11897         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11898         and var_zuinteger_unlimited.
11899         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11900         and PARAM_ZUINTEGER_UNLIMITED.
11901         (set_parameter_value): Handle var_zuinteger and
11902         var_zuinteger_unlimited.
11903         (add_setshow_generic): Likewise.
11904         (parmpy_init): Likewise.
11905
11906 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11907
11908         PR rust/23124
11909         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11910         pointer is not null before dereferencing it.
11911
11912 2018-04-30  Tom Tromey  <tom@tromey.com>
11913
11914         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11915         is_mi_like_p.
11916
11917 2018-04-30  Tom Tromey  <tom@tromey.com>
11918
11919         * breakpoint.c (mention): Remove use of is_mi_like_p.
11920         (print_mention_ranged_breakpoint): Likewise.
11921         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11922         of is_mi_like_p.
11923
11924 2018-04-30  Tom Tromey  <tom@tromey.com>
11925
11926         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11927
11928 2018-04-30  Tom Tromey  <tom@tromey.com>
11929
11930         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11931         (info_spu_event_command): Remove some uses of is_mi_like_p.
11932
11933 2018-04-30  Tom Tromey  <tom@tromey.com>
11934
11935         * python/py-framefilter.c (py_print_single_arg)
11936         (enumerate_locals, py_print_args, py_print_frame): Remove some
11937         uses of is_mi_like_p.
11938
11939 2018-04-30  Tom Tromey  <tom@tromey.com>
11940
11941         * ui-out.c: Update.
11942         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11943         * ui-out.h (ui_out::is_mi_like_p): Now const.
11944         (ui_out::do_is_mi_like_p): Now const.
11945         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11946
11947 2018-04-30  Tom Tromey  <tom@tromey.com>
11948
11949         * varobj.c (varobj_set_visualizer): Use new_reference.
11950         * python/python.c (gdbpy_decode_line): Use new_reference.
11951         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11952         new_reference.
11953
11954 2018-04-30  Tom Tromey  <tom@tromey.com>
11955
11956         * varobj.c (install_new_value): Use new_reference.
11957         * value.h (value_incref): Return void.  Swap intro comment with
11958         value_decref.
11959         * value.c (set_value_parent): Use new_reference.
11960         (value_incref): Return void.  Update intro comment.
11961         (release_value): Use new_reference.
11962         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11963
11964 2018-04-30  Tom Tromey  <tom@tromey.com>
11965
11966         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11967         * gdb_bfd.h (new_bfd_ref): Remove.
11968         (gdb_bfd_open): Update comment.
11969         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11970         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11971         (gdb_bfd_fdopenr): Use new_reference.
11972         * exec.c (exec_file_attach): Use new_reference.
11973
11974 2018-04-30  Tom Tromey  <tom@tromey.com>
11975
11976         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11977         method.
11978
11979 2018-04-30  Tom Tromey  <tom@tromey.com>
11980
11981         * jit.c (jit_read_code_entry): Use type_align.
11982         * i386-tdep.c (i386_gdbarch_init): Don't call
11983         set_gdbarch_long_long_align_bit.
11984         * gdbarch.sh: Remove long_long_align_bit.
11985         * gdbarch.c, gdbarch.h: Rebuild.
11986         * arc-tdep.c (arc_type_align): New function.
11987         (arc_gdbarch_init): Use arc_type_align.  Don't call
11988         set_gdbarch_long_long_align_bit.
11989
11990 2018-04-30  Tom Tromey  <tom@tromey.com>
11991
11992         * rust-lang.c (rust_type_alignment): Remove.
11993         (rust_composite_type): Use type_align.
11994
11995 2018-04-30  Tom Tromey  <tom@tromey.com>
11996
11997         * NEWS: Mention Type.align.
11998         * python/py-type.c (typy_get_alignof): New function.
11999         (type_object_getset): Add "alignof".
12000
12001 2018-04-30  Tom Tromey  <tom@tromey.com>
12002
12003         PR exp/17095:
12004         * NEWS: Update.
12005         * std-operator.def (UNOP_ALIGNOF): New operator.
12006         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12007         New.
12008         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12009         * c-lang.c (c_op_print_tab): Add alignof.
12010         * c-exp.y (ALIGNOF): New token.
12011         (exp): Add "ALIGNOF" production.
12012         (ident_tokens): Add _Alignof and alignof.
12013
12014 2018-04-30  Tom Tromey  <tom@tromey.com>
12015
12016         * i386-tdep.c (i386_type_align): New function.
12017         (i386_gdbarch_init): Update.
12018         * gdbarch.sh (type_align): New method.
12019         * gdbarch.c, gdbarch.h: Rebuild.
12020         * arch-utils.h (default_type_align): Declare.
12021         * arch-utils.c (default_type_align): New function.
12022         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12023         (struct type) <align_log2>: New field.
12024         <instance_flags>: Now a bitfield.
12025         (TYPE_RAW_ALIGN): New macro.
12026         (type_align, type_raw_align, set_type_align): Declare.
12027         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12028         functions.
12029         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12030         (get_alignment, maybe_set_alignment): New functions.
12031         (read_structure_type, read_enumeration_type, read_array_type)
12032         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12033         (read_subrange_type, read_base_type): Set type alignment.
12034
12035 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12036
12037         * dwarf2read.c (read_index_from_section): Use bool.
12038
12039 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12040
12041         PR gdb/22950
12042         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12043         with #ifdef.
12044
12045 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12046
12047         PR build/22873
12048         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12049         last step, and do it atomically.
12050
12051 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12052
12053         * compile/compile-c-types.c (convert_int, convert_float):
12054         Update for C FE v1.
12055
12056 2018-04-27  Tom Tromey  <tom@tromey.com>
12057
12058         PR rust/22545:
12059         * rust-lang.c (rust_inclusive_range_type_p): New function.
12060         (rust_range): Handle inclusive ranges.
12061         (rust_compute_range): Likewise.
12062         * rust-exp.y (struct rust_op) <inclusive>: New field.
12063         (DOTDOTEQ): New constant.
12064         (range_expr): Add "..=" productions.
12065         (operator_tokens): Add "..=" token.
12066         (ast_range): Add "inclusive" parameter.
12067         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12068         ranges.
12069         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12070         bounds values.
12071         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12072         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12073         Update comments.
12074         * expprint.c (print_subexp_standard): Handle new bounds values.
12075         (dump_subexp_body_standard): Likewise.
12076
12077 2018-04-27  Tom Tromey  <tom@tromey.com>
12078
12079         * configure: Rebuild.
12080         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12081         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12082         "OVERRIDE".
12083         (class symbol_needs_eval_context): Likewise.
12084         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12085         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12086         "virtual".
12087         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12088         "override".
12089         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12090         * aarch64-tdep.c (instruction_reader::read): Use "override".
12091         (instruction_reader_test::read): Likewise.
12092         * arm-tdep.c (instruction_reader::read): Use "override".
12093         (instruction_reader_thumb::read): Likewise.
12094
12095 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12096
12097         PR remote/9665
12098         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12099         instead of remote_send.
12100         (remote_send): Remove.
12101
12102 2018-04-26  Pedro Alves  <palves@redhat.com>
12103
12104         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12105         find_function_start_sal instead of find_pc_line.
12106
12107 2018-04-26  Pedro Alves  <palves@redhat.com>
12108
12109         * breakpoint.c (set_breakpoint_location_function): Handle
12110         mst_data_gnu_ifunc.
12111         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12112         * elfread.c (elf_symtab_read): Give data symbols with
12113         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12114         (elf_rel_plt_read): Update comment.
12115         * linespec.c (convert_linespec_to_sals): Handle
12116         mst_data_gnu_ifunc.
12117         (minsym_found): Handle mst_data_gnu_ifunc.
12118         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12119         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12120         * parse.c (find_minsym_type_and_address): Handle
12121         mst_data_gnu_ifunc.
12122         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12123         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12124         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12125         comment.
12126         <mst_data_gnu_ifunc>: New enumerator.
12127
12128 2018-04-26  Pedro Alves  <palves@redhat.com>
12129
12130         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12131         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12132         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12133         Handle it.
12134         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12135         (lookup_minimal_symbol_by_pc): Adjust.
12136         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12137         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12138         * minsyms.h (lookup_msym_prefer): New enum.
12139         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12140         parameter by a lookup_msym_prefer parameter.
12141
12142 2018-04-26  Pedro Alves  <palves@redhat.com>
12143
12144         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12145         ends in "@plt" instead of looking at the symbol's section.
12146
12147 2018-04-26  Pedro Alves  <palves@redhat.com>
12148
12149         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12150         all references.
12151         (find_pc_partial_function_gnu_ifunc): Rename to ...
12152         (find_pc_partial_function): ... this, and remove references to
12153         'is_gnu_ifunc_p'.
12154         (find_pc_partial_function): Delete old implementation.
12155         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12156
12157 2018-04-26  Pedro Alves  <palves@redhat.com>
12158
12159         * linespec.c (struct bound_minimal_symbol_search_key): New.
12160         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12161         skip first line if we found a GNU ifunc minimal symbol by name.
12162         (compare_msymbols): Change parameters to work with a destructured
12163         lhs minsym.
12164         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12165         functions.
12166
12167 2018-04-26  Pedro Alves  <palves@redhat.com>
12168
12169         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12170         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12171         address/name.
12172         (add_location_to_breakpoint): Store the minsym and the objfile in
12173         the breakpoint location.
12174         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12175         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12176         Record the minsym in the sal.
12177         * symtab.h (symtab_and_line) <msymbol>: New field.
12178
12179 2018-04-26  Pedro Alves  <palves@redhat.com>
12180
12181         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12182         unless we actually resolved the ifunc.
12183
12184 2018-04-26  Pedro Alves  <palves@redhat.com>
12185
12186         * c-exp.y (variable production): Prefer ifunc minsyms over
12187         regular function symbols.
12188         * symtab.c (find_gnu_ifunc): New function.
12189         * minsyms.h (lookup_msym_prefer): New enum.
12190         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12191         parameter by a lookup_msym_prefer parameter.
12192         * symtab.h (find_gnu_ifunc): New declaration.
12193
12194 2018-04-26  Pedro Alves  <palves@redhat.com>
12195
12196         * blockframe.c (find_gnu_ifunc_target_type): New function.
12197         (find_function_type): New.
12198         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12199         return a value with a memory address.
12200         (eval_call): For calls to GNU ifunc functions, try to find the
12201         type of the target function from the type that the resolver
12202         returns.
12203         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12204         symbols.
12205         * infcall.c (find_function_return_type): Delete.
12206         (find_function_addr): Add 'function_type' parameter.  For calls to
12207         GNU ifunc functions, try to find the type of the target function
12208         from the type that the resolver returns, and return it via
12209         FUNCTION_TYPE.
12210         (call_function_by_hand_dummy): Adjust to use the function type
12211         returned by find_function_addr.
12212         (find_function_addr): Add 'function_type' parameter and move
12213         description here.
12214         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12215         declarations.
12216
12217 2018-04-26  Pedro Alves  <palves@redhat.com>
12218
12219         * c-exp.y (variable production): Skip finding an alias for ifunc
12220         symbols.
12221
12222 2018-04-26  Pedro Alves  <palves@redhat.com>
12223
12224         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12225
12226 2018-04-25  Pedro Alves  <palves@redhat.com>
12227
12228         * infcmd.c (kill_command): Print the pid as string, not the whole
12229         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12230         message.
12231         * remote.c (remote_detach_1): Print the pid as string, not the
12232         whole thread's ptid.
12233
12234 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12235             Sergio Durigan Junior  <sergiodj@redhat.com>
12236             Pedro Alves  <palves@redhat.com>
12237
12238         * infcmd.c (kill_command): Print message when inferior has
12239         been killed.
12240         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12241         '1'.
12242         (add_inferior): Improve message printed when
12243         'print_inferior_events' is on.
12244         (exit_inferior): Remove message printed when
12245         'print_inferior_events' is on.
12246         (detach_inferior): Improve message printed when
12247         'print_inferior_events' is on.
12248         (initialize_inferiors): Use 'add_inferior_silent' to set
12249         'current_inferior_'.
12250         * inferior.h (print_inferior_events): Declare here as
12251         'extern'.
12252         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12253         '[Detaching...]' messages when 'print_inferior_events' is on.
12254         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12255         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12256         'Detaching after fork from child...', replace it by '... from
12257         parent...'.
12258         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12259         prefix/suffix when printing 'Detaching...' messages.  Print
12260         them when 'print_inferior_events' is on.
12261         * remote.c (remote_detach_1): Print message when detaching
12262         from inferior and '!is_fork_parent'.
12263
12264 2018-04-24  Tom Tromey  <tom@tromey.com>
12265
12266         * cli-out.h: Reindent.
12267
12268 2018-04-24  Tom Tromey  <tom@tromey.com>
12269
12270         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12271         (cli_ui_out::do_field_string): Use fputs_filtered.
12272         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12273
12274 2018-04-23  Tom Tromey  <tom@tromey.com>
12275
12276         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12277         gdb::unique_xmalloc_ptr.
12278
12279 2018-04-23  Tom Tromey  <tom@tromey.com>
12280
12281         * configure: Rebuild.
12282
12283 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12284
12285         PR gdb/23095
12286         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12287         prepare_for_testing.  Set normal_bp to r_debug_state if target
12288         is bsd.
12289
12290 2018-04-21  Pedro Alves  <palves@redhat.com>
12291             Rajendra SY  <rajendra.sy@gmail.com>
12292
12293         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12294         * remote.c (extended_remote_attach): In all-stop mode, mark the
12295         thread as executing.
12296
12297 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12298
12299         * thread.c (thread_apply_all_command): Fix comment.
12300         (thread_command): Fix comment.
12301
12302 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12303
12304         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12305         parameter.
12306         * features/aarch64-core.c (create_feature_aarch64_core):
12307         Regenerate.
12308         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12309         Likewise.
12310         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12311         Likewise.
12312         * features/i386/32bit-avx512.c
12313         (create_feature_i386_32bit_avx512): Likewise.
12314         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12315         Likewise.
12316         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12317         Likewise.
12318         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12319         Likewise.
12320         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12321         Likewise.
12322         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12323         Likewise.
12324         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12325         Likewise.
12326         * features/i386/64bit-avx512.c
12327         (create_feature_i386_64bit_avx512): Likewise.
12328         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12329         Likewise.
12330         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12331         Likewise.
12332         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12333         Likewise.
12334         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12335         Likewise.
12336         * features/i386/64bit-segments.c
12337         (create_feature_i386_64bit_segments): Likewise.
12338         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12339         Likewise.
12340         * features/i386/x32-core.c
12341         (create_feature_i386_x32_core): Likewise.
12342         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12343         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12344         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12345         * target-descriptions.c: In generated code, don't pass xml
12346         filename.
12347
12348 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12349
12350         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12351         (print_xml_feature::visit_post): Likewise.
12352         (print_xml_feature::visit): Likewise.
12353         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12354         (print_xml_feature): Add new class.
12355         * regformats/regdat.sh: Null xmltarget on feature targets.
12356         * target-descriptions.c (struct target_desc): Add xmltarget.
12357         (maintenance_check_tdesc_xml_convert): Add unittest function.
12358         (tdesc_get_features_xml): Add function to get xml.
12359         (maintenance_check_xml_descriptions): Test xml generation.
12360         * xml-tdesc.c (string_read_description_xml): Add function.
12361         * xml-tdesc.h (string_read_description_xml): Add declaration.
12362
12363 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12364
12365         * features/Makefile: Add feature marker to targets with new style
12366         target descriptions.
12367         * regformats/aarch64.dat: Regenerate.
12368         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12369         * regformats/i386/amd64-avx-linux.dat: Likewise.
12370         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12371         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12372         * regformats/i386/amd64-linux.dat: Likewise.
12373         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12374         * regformats/i386/amd64.dat: Likewise.
12375         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12376         * regformats/i386/i386-avx-linux.dat: Likewise.
12377         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12378         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12379         * regformats/i386/i386-linux.dat: Likewise.
12380         * regformats/i386/i386-mmx-linux.dat: Likewise.
12381         * regformats/i386/i386-mpx-linux.dat: Likewise.
12382         * regformats/i386/i386.dat: Likewise.
12383         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12384         * regformats/i386/x32-avx-linux.dat: Likewise.
12385         * regformats/i386/x32-linux.dat: Likewise.
12386         * regformats/tic6x-c62x-linux.dat: Likewise.
12387         * regformats/tic6x-c64x-linux.dat: Likewise.
12388         * regformats/tic6x-c64xp-linux.dat: Likewise.
12389         * regformats/regdat.sh: Parse feature marker.
12390
12391 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12392
12393         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12394         (tdesc_osabi_name): Likewise.
12395         * target-descriptions.c (tdesc_architecture_name): Add new
12396         function.
12397         (tdesc_osabi_name): Likewise.
12398
12399 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12400
12401         * common/tdesc.c (tdesc_predefined_type): Move to here.
12402         (tdesc_named_type): Likewise.
12403         (tdesc_create_vector): Likewise.
12404         (tdesc_create_struct): Likewise.
12405         (tdesc_set_struct_size): Likewise.
12406         (tdesc_create_union): Likewise.
12407         (tdesc_create_flags): Likewise.
12408         (tdesc_create_enum): Likewise.
12409         (tdesc_add_field): Likewise.
12410         (tdesc_add_typed_bitfield): Likewise.
12411         (tdesc_add_bitfield): Likewise.
12412         (tdesc_add_flag): Likewise.
12413         (tdesc_add_enum_value): Likewise.
12414         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12415         (struct tdesc_type_vector): Likewise.
12416         (struct tdesc_type_field): Likewise.
12417         (struct tdesc_type_with_fields): Likewise.
12418         (tdesc_create_enum): Add declaration.
12419         (tdesc_add_typed_bitfield): Likewise.
12420         (tdesc_add_enum_value): Likewise.
12421         * target-descriptions.c (tdesc_type_field): Move from here.
12422         (tdesc_type_builtin): Likewise.
12423         (tdesc_type_vector): Likewise.
12424         (tdesc_type_with_fields): Likewise.
12425         (tdesc_predefined_types): Likewise.
12426         (tdesc_named_type): Likewise.
12427         (tdesc_create_vector): Likewise.
12428         (tdesc_create_struct): Likewise.
12429         (tdesc_set_struct_size): Likewise.
12430         (tdesc_create_union): Likewise.
12431         (tdesc_create_flags): Likewise.
12432         (tdesc_create_enum): Likewise.
12433         (tdesc_add_field): Likewise.
12434         (tdesc_add_typed_bitfield): Likewise.
12435         (tdesc_add_bitfield): Likewise.
12436         (tdesc_add_flag): Likewise.
12437         (tdesc_add_enum_value): Likewise.
12438         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12439         (tdesc_add_typed_bitfield): Likewise.
12440         (tdesc_add_enum_value): Likewise.
12441
12442 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12443
12444         * common/tdesc.c (tdesc_feature::accept): Move to here.
12445         (tdesc_feature::operator==): Likewise.
12446         (tdesc_create_reg): Likewise.
12447         * common/tdesc.h (tdesc_type_kind): Likewise.
12448         (struct tdesc_type): Likewise.
12449         (struct tdesc_feature): Likewise.
12450         * regformats/regdat.sh: Create a feature.
12451         * target-descriptions.c (tdesc_type_kind): Move from here.
12452         (tdesc_type): Likewise.
12453         (tdesc_type_up): Likewise.
12454         (tdesc_feature): Likewise.
12455         (tdesc_create_reg): Likewise.
12456
12457 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12458
12459         * Makefile.in: Add arch/tdesc.c
12460         * common/tdesc.c: New file.
12461         * common/tdesc.h (tdesc_element_visitor): Move to here.
12462         (tdesc_element): Likewise.
12463         (tdesc_reg): Likewise.
12464         (tdesc_reg_up): Likewise.
12465         * regformats/regdef.h (reg): Add offset to constructors.
12466         * target-descriptions.c (tdesc_element_visitor): Move from here.
12467         (tdesc_element): Likewise.
12468         (tdesc_reg): Likewise.
12469         (tdesc_reg_up): Likewise.
12470
12471 2018-04-17  Tom Tromey  <tom@tromey.com>
12472
12473         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12474         discriminant field.
12475
12476 2018-04-17  Tom Tromey  <tom@tromey.com>
12477
12478         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12479
12480 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12481
12482         * symtab.c (print_symbol_info): Skip printing filename and line
12483         number when `last' is NULL.
12484         (symtab_symbol_info): Use empty string instead of NULL for first
12485         invocation of print_symbol_info.
12486         (rbreak_command): Pass NULL to `last' parameter of
12487         print_symbol_info.
12488
12489 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12490
12491         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12492         instead of nullptr.
12493
12494 2018-04-16  Pedro Alves  <palves@redhat.com>
12495
12496         * MAINTAINERS (sh): Remove.
12497         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12498         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12499         (ALLDEPFILES): Remove sh64-tdep.c.
12500         * NEWS: Mentions that support for SH-5/SH64 is removed.
12501         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12502         (sh*-*-openbsd*): Ditto.
12503         (sh64-*-elf*): Remove.
12504         (sh*): Remove.
12505         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12506         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12507         * sh-tdep.c: No longer include "sh64-tdep.h".
12508         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12509         * sh64-tdep.c, sh64-tdep.h: Remove files.
12510
12511 2018-04-16  Pedro Alves  <palves@redhat.com>
12512
12513         * MAINTAINERS: Remove m88k.
12514         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12515         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12516         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12517         * NEWS: Mention that support for m88k was removed.
12518         * configure.host (m88*-*-*): Remove support.
12519         * configure.nat (m88k-*-*): Remove support.
12520         * configure.tgt (m88*-*-openbsd*): Remove.
12521         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12522
12523 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12524
12525         * configure.tgt (x86_tobjs): New variable.
12526         (amd64_tobjs, i386_tobjs): Use it.
12527
12528 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12529
12530         * symtab.c (print_symbol_info): Precede the symbol definition by
12531         the line number when available.
12532         * NEWS: Advertise this enhancement.
12533
12534 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12535
12536         * NEWS (New options): announce set/show record btrace cpu.
12537         * btrace.c: Include record-btrace.h.
12538         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12539         the vendor is unknown.
12540         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12541         Maybe overwrite the btrace configuration's cpu.
12542         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12543         (btrace_fetch): Add cpu parameter.  Update callers.
12544         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12545         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12546         errata workarounds if the vendor is unknown.
12547         * python/py-record-btrace.c: Include record-btrace.h.
12548         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12549         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12550         * record-btrace.c (record_btrace_cpu_state_kind): New.
12551         (record_btrace_cpu): New.
12552         (set_record_btrace_cpu_cmdlist): New.
12553         (record_btrace_get_cpu): New.
12554         (require_btrace_thread, record_btrace_info)
12555         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12556         (cmd_set_record_btrace_cpu_none): New.
12557         (cmd_set_record_btrace_cpu_auto): New.
12558         (cmd_set_record_btrace_cpu): New.
12559         (cmd_show_record_btrace_cpu): New.
12560         (_initialize_record_btrace): Initialize set/show record btrace cpu
12561         commands.
12562         * record-btrace.h (record_btrace_get_cpu): New.
12563
12564 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12565
12566         * record.c (set_record_command): Fix typo in message.
12567
12568 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12569
12570         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12571
12572 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12573
12574         * infrun.c (process_event_stop_test): Call
12575         gdbarch_in_indirect_branch_thunk.
12576         * gdbarch.sh (in_indirect_branch_thunk): New.
12577         * gdbarch.c: Regenerated.
12578         * gdbarch.h: Regenerated.
12579         * x86-tdep.h: New.
12580         * x86-tdep.c: New.
12581         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12582         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12583         (ALLDEPFILES): Add x86-tdep.c.
12584         * arch-utils.h (default_in_indirect_branch_thunk): New.
12585         * arch-utils.c (default_in_indirect_branch_thunk): New.
12586         * i386-tdep: Include x86-tdep.h.
12587         (i386_in_indirect_branch_thunk): New.
12588         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12589         function.
12590         * amd64-tdep: Include x86-tdep.h.
12591         (amd64_in_indirect_branch_thunk): New.
12592         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12593
12594 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12595
12596         PR gdb/23053
12597         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12598         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12599         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12600         regression.
12601
12602 2018-04-12  Tom Tromey  <tom@tromey.com>
12603
12604         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12605         (rust_evaluate_subexp): Likewise.
12606
12607 2018-04-12  Pedro Alves  <palves@redhat.com>
12608
12609         * procfs.c (procfs_detach): Make forward declaration's prototype
12610         match definition's protototype.
12611         (proc_get_LDT_entry): Remove stale do_cleanups call.
12612
12613 2018-04-12  Pedro Alves  <palves@redhat.com>
12614
12615         * target.h (target_ops::to_has_exited): Delete.
12616         (target_has_exited): Delete.
12617         * target-delegates.c: Regenerate.
12618
12619 2018-04-11  Pedro Alves  <palves@redhat.com>
12620
12621         * target.c (fileio_fh_t::t): Add comment.
12622         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12623         (target_fileio_close): Handle a NULL target.
12624         (invalidate_fileio_fh): New.
12625         (target_close): Call it.
12626         * remote.c (remote_hostio_send_command): No longer check whether
12627         remote_desc is open.
12628
12629 2018-04-11  Pedro Alves  <palves@redhat.com>
12630
12631         * target.c (fileio_fh_t): Make it a named struct instead of a
12632         typedef.
12633         (fileio_fh_t::is_closed): New method.
12634         (DEF_VEC_O (fileio_fh_t)): Remove.
12635         (fileio_fhandles): Now a std::vector.
12636         (is_closed_fileio_fh): Delete.
12637         (acquire_fileio_fd): Adjust.  Rename parameters.
12638         (release_fileio_fd): Adjust.
12639         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12640         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12641         (target_fileio_close): Adjust.
12642
12643 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12644
12645         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12646         index.
12647
12648 2018-04-10  Pedro Alves  <palves@redhat.com>
12649
12650         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12651         (scoped_finish_thread_state): New class.
12652         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12653         cleanup.
12654         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12655         (fetch_inferior_event, normal_stop): Likewise.
12656         * thread.c (finish_thread_state_cleanup): Delete.
12657
12658 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12659             Pedro Alves  <palves@redhat.com>
12660
12661         * value.c: Include "selftest.h" and "common/array-view.h".
12662         (struct range) <operator ==>: New.
12663         (test_ranges_contain): New.
12664         (check_ranges_vector): New.
12665         (test_insert_into_bit_range_vector): New.
12666         (_initialize_values): Register selftests.
12667         * common/array-view.h (operator==, operator!=): New.
12668
12669 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12670
12671         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12672         an iterator.
12673         * inline-frame.c: Include <algorithm>.
12674         (struct inline_state): Add constructor.
12675         (inline_state_s): Remove.
12676         (DEF_VEC_O(inline_state_s)): Remove.
12677         (inline_states): Change type to std::vector.
12678         (find_inline_frame_state): Adjust to std::vector.
12679         (allocate_inline_frame_state): Remove.
12680         (clear_inline_frame_state): Adjust to std::vector.
12681         (skip_inline_frames): Adjust to std::vector.
12682
12683 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12684
12685         * tracepoint.h (struct trace_state_variable): Add constructor.
12686         <name>: Change type to std::string.
12687         * tracepoint.c (tsv_s): Remove.
12688         (DEF_VEC_O(tsv_s)): Remove.
12689         (tvariables): Change to std::vector.
12690         (create_trace_state_variable): Adjust to std::vector.
12691         (find_trace_state_variable): Likewise.
12692         (find_trace_state_variable_by_number): Likewise.
12693         (delete_trace_state_variable): Likewise.
12694         (trace_variable_command): Adjust to std::string.
12695         (delete_trace_variable_command): Likewise.
12696         (tvariables_info_1): Adjust to std::vector.
12697         (save_trace_state_variables): Likewise.
12698         (start_tracing): Likewise.
12699         (merge_uploaded_trace_state_variables): Adjust to std::vector
12700         and std::string.
12701         * target.h (struct target_ops)
12702         <to_download_trace_state_variable>: Pass reference to
12703         trace_state_variable.
12704         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12705         * target-delegates.c: Re-generate.
12706         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12707         (mi_tsv_deleted): Likewise.
12708         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12709         * remote.c (remote_download_trace_state_variable): Change
12710         pointer to reference and adjust.
12711         * make-target-delegates (parse_argtypes): Handle references.
12712         (write_function_header): Likewise.
12713         (munge_type): Likewise.
12714
12715 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12716
12717         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12718         string_view-selftests.c.
12719         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12720         testsuite.
12721         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12722         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12723         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12724         * unittests/basic_string_view/element_access/char/1.cc:
12725         Likewise.
12726         * unittests/basic_string_view/element_access/char/empty.cc:
12727         Likewise.
12728         * unittests/basic_string_view/element_access/char/front_back.cc:
12729         Likewise.
12730         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12731         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12732         Likewise.
12733         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12734         Likewise.
12735         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12736         Likewise.
12737         * unittests/basic_string_view/operations/compare/char/1.cc:
12738         Likewise.
12739         * unittests/basic_string_view/operations/compare/char/13650.cc:
12740         Likewise.
12741         * unittests/basic_string_view/operations/copy/char/1.cc:
12742         Likewise.
12743         * unittests/basic_string_view/operations/data/char/1.cc:
12744         Likewise.
12745         * unittests/basic_string_view/operations/find/char/1.cc:
12746         Likewise.
12747         * unittests/basic_string_view/operations/find/char/2.cc:
12748         Likewise.
12749         * unittests/basic_string_view/operations/find/char/3.cc:
12750         Likewise.
12751         * unittests/basic_string_view/operations/find/char/4.cc:
12752         Likewise.
12753         * unittests/basic_string_view/operations/rfind/char/1.cc:
12754         Likewise.
12755         * unittests/basic_string_view/operations/rfind/char/2.cc:
12756         Likewise.
12757         * unittests/basic_string_view/operations/rfind/char/3.cc:
12758         Likewise.
12759         * unittests/basic_string_view/operations/substr/char/1.cc:
12760         Likewise.
12761         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12762         * unittests/string_view-selftests.c: New file.
12763
12764 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12765
12766         * unittests/basic_string_view/capacity/1.cc: New file.
12767         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12768         * unittests/basic_string_view/cons/char/1.cc: New file.
12769         * unittests/basic_string_view/cons/char/2.cc: New file.
12770         * unittests/basic_string_view/cons/char/3.cc: New file.
12771         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12772         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12773         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12774         * unittests/basic_string_view/element_access/char/1.cc: New file.
12775         * unittests/basic_string_view/element_access/char/2.cc: New file.
12776         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12777         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12778         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12779         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12780         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12781         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12782         * unittests/basic_string_view/include.cc: New file.
12783         * unittests/basic_string_view/inserters/char/1.cc: New file.
12784         * unittests/basic_string_view/inserters/char/2.cc: New file.
12785         * unittests/basic_string_view/inserters/char/3.cc: New file.
12786         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12787         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12788         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12789         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12790         * unittests/basic_string_view/literals/types.cc: New file.
12791         * unittests/basic_string_view/literals/values.cc: New file.
12792         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12793         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12794         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12795         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12796         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12797         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12798         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12799         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12800         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12801         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12802         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12803         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12804         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12805         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12806         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12807         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12808         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12809         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12810         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12811         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12812         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12813         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12814         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12815         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12816         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12817         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12818         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12819         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12820         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12821         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12822         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12823         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12824         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12825         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12826         * unittests/basic_string_view/operators/char/2.cc: New file.
12827         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12828         * unittests/basic_string_view/range_access/char/1.cc: New file.
12829         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12830         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12831         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12832         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12833         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12834         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12835         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12836         * unittests/basic_string_view/typedefs.cc: New file.
12837         * unittests/basic_string_view/types/1.cc: New file.
12838
12839 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12840
12841         * common/gdb_string_view.h: Remove libstdc++ implementation
12842         details, adjust to gdb reality.
12843         * common/gdb_string_view.tcc: Likewise.
12844         * cli/cli-script.c (struct string_view): Remove.
12845         (user_args) <m_args>: Change element type to gdb::string_view.
12846         (user_args::insert_args): Adjust.
12847
12848 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12849
12850         * common/gdb_string_view.h: New file.
12851         * common/gdb_string_view.tcc: New file.
12852
12853 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12854
12855         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12856         * configure: Re-generate.
12857
12858 2018-04-09  Pedro Alves  <palves@redhat.com>
12859
12860         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12861         (set_target_gdbarch): Call
12862         gdb::observers::architecture_changed.notify instead of
12863         observer_notify_architecture_changed.
12864
12865 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12866
12867         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12868         (do_restore_current_traceframe_cleanup): Remove.
12869         (restore_current_traceframe_cleanup_dtor): Remove.
12870         (make_cleanup_restore_current_traceframe): Remove.
12871         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12872         New.
12873         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12874         * infrun.c (fetch_inferior_event): Use
12875         scoped_restore_current_traceframe.
12876
12877 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12878
12879         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12880         Remove.
12881         <n_allocated_type_units>: Remove.
12882         <all_type_units>: Change to std::vector.
12883         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12884         to std::vector change.
12885         (dwarf2_per_objfile::get_cutu): Likewise.
12886         (dwarf2_per_objfile::get_tu): Likewise.
12887         (create_signatured_type_table_from_index): Likewise.
12888         (create_signatured_type_table_from_debug_names): Likewise.
12889         (dw2_symtab_iter_next): Likewise.
12890         (dw2_print_stats): Likewise.
12891         (dw2_expand_all_symtabs): Likewise.
12892         (dw2_expand_marked_cus): Likewise.
12893         (dw2_debug_names_iterator::next): Likewise.
12894         (dwarf2_initialize_objfile): Likewise.
12895         (add_signatured_type_cu_to_table): Likewise.
12896         (create_all_type_units): Likewise.
12897         (add_type_unit): Likewise.
12898         (struct tu_abbrev_offset): Add constructor.
12899         (build_type_psymtabs_1): Adjust to std::vector change.
12900         (print_tu_stats): Likewise.
12901         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12902         (write_debug_names): Likewise.
12903
12904 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12905
12906         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12907         Make an std::vector.
12908         <n_comp_units>: Remove.
12909         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12910         to std::vector change.
12911         (dwarf2_per_objfile::get_cutu): Likewise.
12912         (dwarf2_per_objfile::get_cu): Likewise.
12913         (create_cus_from_index): Likewise.
12914         (create_addrmap_from_index): Likewise.
12915         (create_addrmap_from_aranges): Likewise.
12916         (dwarf2_read_index): Likewise.
12917         (dw2_find_last_source_symtab): Likewise.
12918         (dw2_map_symtabs_matching_filename): Likewise.
12919         (dw2_symtab_iter_next): Likewise.
12920         (dw2_print_stats): Likewise.
12921         (dw2_expand_all_symtabs): Likewise.
12922         (dw2_expand_symtabs_with_fullname): Likewise.
12923         (dw2_expand_marked_cus): Likewise.
12924         (dw2_map_symbol_filenames): Likewise.
12925         (create_cus_from_debug_names): Likewise.
12926         (dwarf2_read_debug_names): Likewise.
12927         (dw2_debug_names_iterator::next): Likewise.
12928         (dwarf2_initialize_objfile): Likewise.
12929         (set_partial_user): Likewise.
12930         (dwarf2_build_psymtabs_hard): Likewise.
12931         (read_comp_units_from_section): Remove arguments, adjust to
12932         std::vector change.
12933         (create_all_comp_units): Adjust to std::vector and
12934         read_comp_units_from_section changes.
12935         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12936         change.
12937         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12938         (psyms_seen_size): Likewise.
12939         (write_gdbindex): Likewise.
12940         (write_debug_names): Likewise.
12941
12942 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12943
12944         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12945         with dwarf2_per_objfile.
12946         (create_cus_from_index): Likewise.
12947         (create_signatured_type_table_from_index): Likewise.
12948         (dwarf2_read_index): Likewise.
12949         (dwarf2_initialize_objfile): Likewise.
12950         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12951         per_cu rather than get_dwarf2_per_objfile.
12952
12953 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12954
12955         * dwarf2read.h (struct signatured_type): Forward declare.
12956         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12957         New methods.
12958         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12959         (dw2_get_cutu): ...this.
12960         (dwarf2_per_objfile::get_cu): Rename from...
12961         (dw2_get_cu): ...this.
12962         (dwarf2_per_objfile::get_tu): New.
12963         (create_addrmap_from_index): Adjust.
12964         (create_addrmap_from_aranges): Adjust.
12965         (dw2_find_last_source_symtab): Adjust.
12966         (dw2_map_symtabs_matching_filename): Adjust.
12967         (dw2_symtab_iter_next): Adjust.
12968         (dw2_print_stats): Adjust.
12969         (dw2_expand_all_symtabs): Adjust.
12970         (dw2_expand_symtabs_with_fullname): Adjust.
12971         (dw2_expand_marked_cus): Adjust.
12972         (dw_expand_symtabs_matching_file_matcher): Adjust.
12973         (dw2_map_symbol_filenames): Adjust.
12974         (dw2_debug_names_iterator::next): Adjust.
12975         (dwarf2_initialize_objfile): Adjust.
12976         (set_partial_user): Adjust.
12977         (dwarf2_build_psymtabs_hard): Adjust.
12978
12979 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12980
12981         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12982         Remove unused variables.
12983         (dw2_map_symtabs_matching_filename): Likewise.
12984         (dwarf2_record_block_ranges): Likewise.
12985         (dwarf2_read_addr_index): Likewise.
12986         (follow_die_offset): Likewise.
12987
12988 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12989
12990         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12991         to symbol_file_add_main.
12992
12993 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12994
12995         PR mi/22299
12996         * mi/mi-console.c (do_fputc_async_safe): New.
12997         (mi_console_file::write_async_safe): New.
12998         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12999         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13000         New.
13001         * ui-file.c (ui_file::putstrn): Adjust call to
13002         fputstrn_unfiltered.
13003         * utils.c (printchar): Replace do_fputs and do_fprintf
13004         parameters by do_fputc.
13005         (fputstr_filtered): Adjust call to printchar.
13006         (fputstr_unfiltered): Likewise.
13007         (fputstrn_filtered): Likewise.
13008         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13009         printchar.
13010         * utils.h (do_fputc_ftype): New typedef.
13011         (fputstrn_unfiltered): Add do_fputc parameter.
13012
13013 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13014
13015         * regformats/i386/i386-avx.dat: Remove.
13016
13017 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13018
13019         PR gdb/22979
13020         * amd64-tdep.c (amd64_none_init_abi): New function.
13021         (amd64_x32_none_init_abi): New function.
13022         (_initialize_amd64_tdep): Register handlers for x86-64 and
13023         x64_32 with GDB_OSABI_NONE.
13024         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13025         GDB_OSABI_NONE osabi.
13026
13027 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13028
13029         PR gdb/22980
13030         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13031         GDB_OSABI_NONE.
13032         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13033         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13034
13035 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13036
13037         * common/byte-vector.h (char_vector): New type.
13038         * target.h (target_read_alloc): Return
13039         gdb::optional<byte_vector>.
13040         (target_read_stralloc): Return gdb::optional<char_vector>.
13041         (target_get_osdata): Return gdb::optional<char_vector>.
13042         * target.c (target_read_alloc_1): Templatize.  Replacement
13043         manual memory management with vector.
13044         (target_read_alloc): Change return type, adjust.
13045         (target_read_stralloc): Change return type, adjust.
13046         (target_get_osdata): Change return type, adjust.
13047         * auxv.c (struct auxv_info) <length>: Remove.
13048         <data>: Change type to gdb::optional<byte_vector>.
13049         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13050         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13051         (target_auxv_search): Adjust.
13052         (fprint_target_auxv): Adjust.
13053         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13054         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13055         (linux_make_corefile_notes): Adjust.
13056         * osdata.c (get_osdata): Adjust.
13057         * remote.c (remote_get_threads_with_qxfer): Adjust.
13058         (remote_memory_map): Adjust.
13059         (remote_traceframe_info): Adjust.
13060         (btrace_read_config): Adjust.
13061         (remote_read_btrace): Adjust.
13062         (remote_pid_to_exec_file): Adjust.
13063         * solib-aix.c (solib_aix_get_library_list): Adjust.
13064         * solib-dsbt.c (decode_loadmap): Don't free buf.
13065         (dsbt_get_initial_loadmaps): Adjust.
13066         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13067         * solib-target.c (solib_target_current_sos): Adjust.
13068         * tracepoint.c (sdata_make_value): Adjust.
13069         * xml-support.c (xinclude_start_include): Adjust.
13070         (xml_fetch_content_from_file): Adjust.
13071         * xml-support.h (xml_fetch_another): Change return type.
13072         (xml_fetch_content_from_file): Change return type.
13073         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13074         * xml-tdesc.c (file_read_description_xml): Adjust.
13075         (fetch_available_features_from_target): Change return type.
13076         (target_fetch_description_xml): Adjust.
13077         (target_read_description_xml): Adjust.
13078
13079 2018-04-06  Tom Tromey  <tom@tromey.com>
13080
13081         * value.c (~value): Update.
13082         (struct value) <contents>: Now unique_xmalloc_ptr.
13083         (value_contents_bits_eq, allocate_value_contents)
13084         (value_contents_raw, value_contents_all_raw)
13085         (value_contents_for_printing, value_contents_for_printing_const)
13086         (set_value_enclosing_type): Update.
13087
13088 2018-04-06  Tom Tromey  <tom@tromey.com>
13089
13090         * value.c (range_s): Remove typedef, VEC.
13091         (struct range): Add operator<.
13092         (range_lessthan): Remove.
13093         (ranges_contain): Change type.
13094         (~value): Update.
13095         (struct value) <unavailable, optimized_out>: Now std::vector.
13096         (value_entirely_available)
13097         (value_entirely_covered_by_range_vector)
13098         (value_entirely_unavailable, value_entirely_optimized_out):
13099         Update.
13100         (insert_into_bit_range_vector): Change argument type.
13101         (find_first_range_overlap): Likewise.
13102         (struct ranges_and_idx, value_contents_bits_eq)
13103         (require_not_optimized_out, require_available): Update.
13104         (ranges_copy_adjusted): Change argument types.
13105         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13106
13107 2018-04-06  Tom Tromey  <tom@tromey.com>
13108
13109         * value.c (~value): Update.
13110         (struct value) <parent>: Now a value_ref_ptr.
13111         (value_parent, set_value_parent, value_address, value_copy):
13112         Update.
13113
13114 2018-04-06  Tom Tromey  <tom@tromey.com>
13115
13116         * value.c (struct value): Add constructor, destructor, and member
13117         initializers.
13118         (allocate_value_lazy, value_decref): Update.
13119
13120 2018-04-06  Tom Tromey  <tom@tromey.com>
13121
13122         * value.c (struct value) <released, next>: Remove.
13123         (all_values): Now a std::vector.
13124         (allocate_value_lazy): Update.
13125         (value_next): Remove.
13126         (value_mark, value_free_to_mark, release_value)
13127         (value_release_to_mark): Update.
13128
13129 2018-04-06  Tom Tromey  <tom@tromey.com>
13130
13131         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13132         (free_value_chain): Remove.
13133         * value.c (free_value_chain): Remove.
13134         (value_release_to_mark): Return a std::vector.
13135         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13136         std::vector.
13137         (check_condition): Update.
13138         * eval.c (fetch_subexp_value): Change "val_chain" to a
13139         std::vector.
13140         * breakpoint.c (update_watchpoint): Update.
13141         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13142
13143 2018-04-06  Tom Tromey  <tom@tromey.com>
13144
13145         * value.h (free_all_values): Remove.
13146         * value.c (free_all_values): Remove.
13147
13148 2018-04-06  Tom Tromey  <tom@tromey.com>
13149
13150         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13151         (value_history_chain, value_history_count): Remove.
13152         (value_history): New global.
13153         (record_latest_value, access_value_history, show_values)
13154         (preserve_values): Update.
13155
13156 2018-04-06  Tom Tromey  <tom@tromey.com>
13157
13158         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13159         * varobj.c (varobj_set_display_format, varobj_set_value)
13160         (install_default_visualizer, construct_visualizer)
13161         (install_new_value, ~varobj, varobj_get_value_type)
13162         (my_value_of_variable, varobj_editable_p): Update.
13163         * c-varobj.c (c_describe_child, c_value_of_variable)
13164         (cplus_number_of_children, cplus_describe_child): Update.
13165         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13166         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13167         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13168
13169 2018-04-06  Tom Tromey  <tom@tromey.com>
13170
13171         * printcmd.c (last_examine_address): Change type to
13172         value_ref_ptr.
13173         (do_examine, x_command): Update.
13174
13175 2018-04-06  Tom Tromey  <tom@tromey.com>
13176
13177         * value.c (release_value): Update.
13178         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13179         (struct bpstats) <val>: Now a value_ref_ptr.
13180         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13181         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13182         (~watchpoint, print_it_watchpoint, watch_command_1)
13183         (invalidate_bp_value_on_memory_change): Update.
13184
13185 2018-04-06  Tom Tromey  <tom@tromey.com>
13186
13187         * varobj.c (varobj_clear_saved_item)
13188         (update_dynamic_varobj_children, install_new_value, ~varobj):
13189         Update.
13190         * value.h (value_incref): Move declaration earlier.
13191         (value_decref): Rename from value_free.
13192         (struct value_ref_policy): New.
13193         (value_ref_ptr): New typedef.
13194         (struct value_deleter): Remove.
13195         (gdb_value_up): Remove typedef.
13196         (release_value): Change return type.
13197         (release_value_or_incref): Remove.
13198         * value.c (set_value_parent): Update.
13199         (value_incref): Change return type.
13200         (value_decref): Rename from value_free.
13201         (value_free_to_mark, free_all_values, free_value_chain): Update.
13202         (release_value): Return value_ref_ptr.
13203         (release_value_or_incref): Remove.
13204         (record_latest_value, set_internalvar, clear_internalvar):
13205         Update.
13206         * stack.c (info_frame_command): Don't call value_free.
13207         * python/py-value.c (valpy_dealloc, valpy_new)
13208         (value_to_value_object): Update.
13209         * printcmd.c (do_examine): Update.
13210         * opencl-lang.c (lval_func_free_closure): Update.
13211         * mi/mi-main.c (register_changed_p): Don't call value_free.
13212         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13213         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13214         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13215         value_free.
13216         * guile/scm-value.c (vlscm_free_value_smob)
13217         (vlscm_scm_from_value): Update.
13218         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13219         (frame_unwind_register_unsigned, get_frame_register_bytes)
13220         (put_frame_register_bytes): Don't call value_free.
13221         * findvar.c (address_from_register): Don't call value_free.
13222         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13223         * dwarf2loc.c (entry_data_value_free_closure)
13224         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13225         (dwarf2_evaluate_loc_desc_full): Update.
13226         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13227         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13228         (~watchpoint, watch_command_1)
13229         (invalidate_bp_value_on_memory_change): Update.
13230         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13231
13232 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13233
13234         PR gdb/23022
13235         * warning.m4: Add -Wno-error=deprecated-register.
13236         * configure: Re-generate.
13237
13238 2018-04-05  Tom Tromey  <tom@tromey.com>
13239
13240         * linespec.h: Remove include of "vec.h".
13241
13242 2018-04-05  Tom Tromey  <tom@tromey.com>
13243
13244         * linespec.c (typep): Remove typedef.
13245         (find_methods, find_superclass_methods): Take a std::vector.
13246         (find_method): Use std::vector.
13247
13248 2018-04-05  Tom Tromey  <tom@tromey.com>
13249
13250         * utils.c (compare_strings): Remove.
13251         * utils.h (compare_strings): Remove.
13252         * objc-lang.h (find_imps): Update.
13253         * objc-lang.c (find_methods): Take a std::vector.
13254         (uniquify_strings, find_imps): Likewise.
13255         * linespec.c (find_methods): Take a std::vector.
13256         (decode_objc): Use std::vector.
13257         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13258         a std::vector.
13259         (find_method, find_function_symbols): Use std::vector.
13260
13261 2018-04-05  Tom Tromey  <tom@tromey.com>
13262
13263         * completer.c (completion_tracker::completion_tracker): Remove
13264         cast.
13265         (completion_tracker::discard_completions): Likewise.
13266         * breakpoint.c (ambiguous_names_p): Remove cast.
13267         * ada-lang.c (_initialize_ada_language): Remove cast.
13268         * utils.h (streq): Update.
13269         (streq_hash): Add new declaration.
13270         * utils.c (streq): Return bool.
13271         (streq_hash): New function.
13272
13273 2018-04-05  Tom Tromey  <tom@tromey.com>
13274
13275         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13276         Remove a string copy.
13277
13278 2018-04-05  Tom Tromey  <tom@tromey.com>
13279
13280         * linespec.c (filter_results): Use std::vector.
13281         (decode_line_2, decode_line_full): Update.
13282
13283 2018-04-05  Tom Tromey  <tom@tromey.com>
13284
13285         * linespec.c (canonical_to_fullform): Return std::string.
13286         (filter_results): Update.
13287         (struct decode_line_2_item): Add constructor.
13288         <fullform, displayform>: Now std::string.
13289         (decode_line_2_compare_items): Now a std::sort comparator.
13290         (decode_line_2): Update.
13291
13292 2018-04-05  Tom Tromey  <tom@tromey.com>
13293
13294         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13295         (unexpected_linespec_error): Update.
13296         (linespec_parse_basic, parse_linespec): Update.
13297
13298 2018-04-05  Tom Tromey  <tom@tromey.com>
13299
13300         * linespec.c (linespec_parse_basic): Reindent.
13301
13302 2018-04-05  Tom Tromey  <tom@tromey.com>
13303
13304         * minsyms.h (iterate_over_minimal_symbols): Update.
13305         * minsyms.c (iterate_over_minimal_symbols): Take a
13306         gdb::function_view.
13307         * linespec.c (struct collect_minsyms): Remove.
13308         (compare_msyms): Now a std::sort comparator.
13309         (add_minsym): Add parameters.
13310         (search_minsyms_for_name): Update.  Use std::vector.
13311
13312 2018-04-03  Tom Tromey  <tom@tromey.com>
13313
13314         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13315         gdb::byte_vector.
13316
13317 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13318
13319         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13320
13321 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13322
13323         PR gdb/16959
13324         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13325         printing static type.
13326
13327 2018-04-01  Tom Tromey  <tom@tromey.com>
13328
13329         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13330         (rs6000_xfer_shared_libraries): Update.
13331
13332 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13333
13334         * common/gdb_vecs.h (char_ptr): Remove.
13335         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13336
13337 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13338
13339         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13340         with std::vector.
13341         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13342
13343 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13344
13345         * tracepoint.h (struct uploaded_tp): Initialize fields.
13346         <actions, step_actions, cmd_strings>: Change type to
13347         std::vector<char *>.
13348         * tracepoint.c (get_uploaded_tp): Allocate with new.
13349         (free_uploaded_tps): Free with delete.
13350         (parse_tracepoint_definition): Adjust to std::vector change.
13351         * breakpoint.c (read_uploaded_action): Likewise.
13352         (create_tracepoint_from_upload): Likewise.
13353         * ctf.c (ctf_write_uploaded_tp): Likewise.
13354         (SET_ARRAY_FIELD): Likewise.
13355         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13356
13357 2018-03-30  Tom Tromey  <tom@tromey.com>
13358
13359         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13360         std::unique_ptr.
13361         (svr4_keep_data_in_core): Update.
13362         (svr4_read_so_list): Update.
13363
13364 2018-03-30  Tom Tromey  <tom@tromey.com>
13365
13366         * windows-nat.c (handle_output_debug_string, handle_exception):
13367         Update.
13368         * target.h (target_read_string): Update.
13369         * target.c (target_read_string): Change "string" to
13370         unique_xmalloc_ptr.
13371         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13372         Update.
13373         * solib-frv.c (frv_current_sos): Update.
13374         * solib-dsbt.c (dsbt_current_sos): Update.
13375         * solib-darwin.c (darwin_current_sos): Update.
13376         * linux-thread-db.c (inferior_has_bug): Update.
13377         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13378         Update.  Remove alloca.
13379         * ada-lang.c (ada_main_name): Update.
13380
13381 2018-03-30  Tom Tromey  <tom@tromey.com>
13382
13383         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13384         (struct dwo_file_deleter): New.
13385         (dwo_file_up): New typedef.
13386         (open_and_init_dwo_file): Use dwo_file_up.
13387         (free_dwo_file_cleanup): Remove.
13388
13389 2018-03-30  Tom Tromey  <tom@tromey.com>
13390
13391         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13392         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13393
13394 2018-03-30  Tom Tromey  <tom@tromey.com>
13395
13396         * dwarf2read.c (class free_cached_comp_units): New class.
13397         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13398         (free_cached_comp_units): Remove function.
13399
13400 2018-03-30  Tom Tromey  <tom@tromey.com>
13401
13402         * utils.h (make_cleanup_unpush_target): Remove.
13403         * inf-ptrace.c (struct target_unpusher): New.
13404         (target_unpush_up) New typedef.
13405         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13406         target_unpush_up.
13407         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13408
13409 2018-03-27  Tom Tromey  <tom@tromey.com>
13410
13411         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13412
13413 2018-03-27  Pedro Alves  <palves@redhat.com>
13414             Tom Tromey  <tom@tromey.com>
13415
13416         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13417         destructor.  Now a class.
13418         (gdb_readline_wrapper_cleanup): Remove function.
13419         (gdb_readline_wrapper): Remove cleanups.
13420
13421 2018-03-27  Tom Tromey  <tom@tromey.com>
13422
13423         * typeprint.h (struct type_print_options) <local_typedefs,
13424         global_typedefs>: Remove "struct" keyword.
13425         (class typedef_hash_table): New class.
13426         (recursively_update_typedef_hash, add_template_parameters)
13427         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13428         (find_typedef_in_hash): Don't declare.
13429         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13430         (typedef_hash_table::recursively_update): Rename from
13431         recursively_update_typedef_hash.  Now a member.
13432         (typedef_hash_table::add_template_parameters): Rename from
13433         add_template_parameters.  Now a member.
13434         (typedef_hash_table::typedef_hash_table): Now a constructor;
13435         rename from create_typedef_hash.
13436         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13437         rename from free_typedef_hash.
13438         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13439         (do_free_global_table): Remove.
13440         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13441         from copy_type_recursive.
13442         (create_global_typedef_table): Remove.
13443         (typedef_hash_table::find_global_typedef): Now a member of
13444         typedef_hash_table.
13445         (typedef_hash_table::find_typedef): Rename from
13446         find_typedef_in_hash; now a member.
13447         (whatis_exp): Update.
13448         * extension.h (struct ext_lang_type_printers): Add constructor and
13449         destructor.
13450         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13451         declare.
13452         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13453         Now a constructor; rename from start_ext_lang_type_printers.
13454         (ext_lang_type_printers): Now a destructor; rename from
13455         free_ext_lang_type_printers.
13456         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13457         Update.
13458         (c_type_print_base_struct_union): Update.  Remove cleanups.
13459
13460 2018-03-27  Tom Tromey  <tom@tromey.com>
13461
13462         * dwarf-index-write.c: Include <cmath>.
13463
13464 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13465
13466         * NEWS: Add entry describing new "set|show varsize-limit" command.
13467         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13468         command.
13469         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13470         "set variable".
13471
13472 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13473
13474         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13475         dwarf-index-write.c
13476         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13477         * dwarf-index-common.c: New file.
13478         * dwarf-index-common.h: New file.
13479         * dwarf-index-write.c: New file.
13480         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13481         (struct dwarf2_section_info): Move from here.
13482         (dwarf2_section_info_def): Likewise.
13483         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13484         (offset_type): Likewise.
13485         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13486         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13487         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13488         (byte_swap): Likewise.
13489         (MAYBE_SWAP): Likewise.
13490         (dwarf2_per_cu_ptr): Likewise.
13491         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13492         (struct tu_stats): Likewise.
13493         (struct dwarf2_per_objfile): Likewise.
13494         (struct dwarf2_per_cu_data): Likewise.
13495         (struct signatured_type): Likewise.
13496         (sig_type_ptr): Likewise.
13497         (DEF_VEC_P (sig_type_ptr)): Likewise.
13498         (INDEX4_SUFFIX): Likewise.
13499         (INDEX5_SUFFIX): Likewise.
13500         (DEBUG_STR_SUFFIX): Likewise.
13501         (dwarf2_read_section): Make non-static.
13502         (mapped_index_string_hash): Move from here.
13503         (dwarf5_djb_hash): Likewise.
13504         (file_write): Likewise.
13505         (class data_buf): Likewise.
13506         (struct symtab_index_entry): Likewise.
13507         (struct mapped_symtab): Likewise.
13508         (find_slot): Likewise.
13509         (hash_expand): Likewise.
13510         (add_index_entry): Likewise.
13511         (uniquify_cu_indices): Likewise.
13512         (class c_str_view): Likewise.
13513         (class c_str_view_hasher): Likewise.
13514         (class vector_hasher): Likewise.
13515         (write_hash_table): Likewise.
13516         (psym_index_map): Likewise.
13517         (struct addrmap_index_data): Likewise.
13518         (add_address_entry): Likewise.
13519         (add_address_entry_worker): Likewise.
13520         (write_address_map): Likewise.
13521         (symbol_kind): Likewise.
13522         (write_psymbols): Likewise.
13523         (struct signatured_type_index_data): Likewise.
13524         (write_one_signatured_type): Likewise.
13525         (recursively_count_psymbols): Likewise.
13526         (recursively_write_psymbols): Likewise.
13527         (class debug_names): Likewise.
13528         (check_dwarf64_offsets): Likewise.
13529         (psyms_seen_size): Likewise.
13530         (write_gdbindex): Likewise.
13531         (write_debug_names): Likewise.
13532         (assert_file_size): Likewise.
13533         (write_psymtabs_to_index): Likewise.
13534         (save_gdb_index_command): Likewise.
13535         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13536         command.
13537         * dwarf2read.h: New file.
13538
13539 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13540
13541         PR gdb/22670
13542         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13543         symbol name if the CU's language stores symbol names in linkage
13544         format.
13545         * language.h (struct language_defn)
13546         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13547         all instances of this struct.
13548
13549 2018-03-26  Tom Tromey  <tom@tromey.com>
13550
13551         * stack.c (backtrace_command_1): Remove verbose code.
13552
13553 2018-03-26  Tom Tromey  <tom@tromey.com>
13554
13555         * python/py-framefilter.c (py_print_type): Don't catch
13556         exceptions.  Return void.
13557         (py_print_value): Likewise.
13558         (py_print_single_arg): Likewise.
13559         (enumerate_args): Don't catch exceptions.
13560         (py_print_args): Likewise.
13561         (py_print_frame): Likewise.
13562         (gdbpy_apply_frame_filter): Catch exceptions here.
13563
13564 2018-03-26  Tom Tromey  <tom@tromey.com>
13565
13566         * stack.c (_initialize_stack): Remove trailing newlines from help
13567         text.  Add "Usage" line to "backtrace" help.
13568
13569 2018-03-26  Tom Tromey  <tom@tromey.com>
13570
13571         PR python/16486:
13572         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13573
13574 2018-03-26  Tom Tromey  <tom@tromey.com>
13575
13576         * python/py-framefilter.c (py_print_single_arg): Return
13577         EXT_LANG_BT_ERROR from catch.
13578
13579 2018-03-26  Tom Tromey  <tom@tromey.com>
13580
13581         PR backtrace/15584:
13582         * stack.c (backtrace_command_1): Move some code into no-filters
13583         "if".
13584
13585 2018-03-26  Tom Tromey  <tom@tromey.com>
13586
13587         * python/py-framefilter.c (throw_quit_or_print_exception): New
13588         function.
13589         (gdbpy_apply_frame_filter): Use it.
13590
13591 2018-03-26  Tom Tromey  <tom@tromey.com>
13592
13593         PR cli/17716:
13594         * python/py-framefilter.c (py_print_type, py_print_value)
13595         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13596         RETURN_MASK_ERROR.
13597
13598 2018-03-26  Tom Tromey  <tom@tromey.com>
13599
13600         * python/py-framefilter.c (enumerate_args): Use
13601         gdb::unique_xmalloc_ptr.
13602
13603 2018-03-26  Tom Tromey  <tom@tromey.com>
13604
13605         * python/py-framefilter.c (py_print_frame): Return
13606         EXT_LANG_BT_OK.
13607         (gdbpy_apply_frame_filter): Update comment.
13608         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13609         Remove.
13610         <EXT_LANG_BT_NO_FILTERS>: Change value.
13611
13612 2018-03-26  Tom Tromey  <tom@tromey.com>
13613
13614         PR backtrace/15582:
13615         * stack.c (backtrace_command): Parse "hide" argument.
13616         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13617         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13618         constant.
13619
13620 2018-03-26  Tom Tromey  <tom@tromey.com>
13621
13622         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13623         add "flags".
13624         (backtrace_command): Remove "fulltrace", add "flags".
13625
13626 2018-03-26  Tom Tromey  <tom@tromey.com>
13627
13628         * stack.c (backtrace_command): Rewrite command line parsing.
13629
13630 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13631
13632         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13633
13634 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13635
13636         * filename-seen-cache.h: Add include guard.
13637
13638 2018-03-26  Keith Seitz  <keiths@redhat.com>
13639
13640         * symfile.c (place_section): Remove "struct" from section_addr_info
13641         in comment.
13642         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13643         "struct" keyword from section_addr_info.
13644
13645 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13646
13647         * regformats/regdef.h (reg): Add constructors.
13648
13649 2018-03-25  Pedro Alves  <palves@redhat.com>
13650
13651         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13652         if then/else bodies in var_func_name extraction.
13653
13654 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13655
13656         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13657         lookup_minimal_symbol() to find symbol entry.
13658         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13659
13660 2018-03-23  Keith Seitz  <keiths@redhat.com>
13661
13662         PR c++/22968
13663         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13664         nested type definitions for C++, too.
13665
13666 2018-03-23  Tom Tromey  <tom@tromey.com>
13667
13668         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13669         a typedef.
13670         (macho_register_oso): Remove.
13671         (macho_symtab_read): Take a std::vector.
13672         (oso_el_compare_name): Now a std::sort comparator.
13673         (macho_symfile_read_all_oso): Take a std::vector.
13674         (macho_symfile_read): Use std::vector.  Remove cleanups.
13675
13676 2018-03-22  Tom Tromey  <tom@tromey.com>
13677
13678         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13679         (record_full_goto_bookmark): Use std::string.
13680
13681 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13682
13683         PR tdep/18295
13684         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13685         a single mask.
13686
13687 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13688
13689         * rs6000-tdep.c (store_insn_p): New function.
13690         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13691         and cr_reg to their unshifted values. Use store_insn_p to
13692         match LR saves using either R1 or fdata->alloca_reg. Use
13693         store_insn_p to match CR saves. Set alloca_reg_offset
13694         when alloca_reg and framep are set. Remove lr_reg shift
13695         when assigning to fdata->lr_register.
13696
13697 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13698
13699         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13700         command line args instead of emitting a warning.
13701
13702 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13703
13704         * tracepoint.h (struct static_tracepoint_marker): Initialize
13705         fields, define default constructor, move constructor and move
13706         assignment, disable the rest.
13707         <str_id, extra>: Make std::string.
13708         (release_static_tracepoint_marker): Remove.
13709         (free_current_marker): Remove.
13710         * tracepoint.c (free_current_marker): Remove.
13711         (parse_static_tracepoint_marker_definition): Adjust to
13712         std::string, use new hex2str overload.
13713         (release_static_tracepoint_marker): Remove.
13714         (print_one_static_tracepoint_marker): Get marker by reference
13715         and adjust to std::string.
13716         (info_static_tracepoint_markers_command): Adjust to std::vector
13717         changes
13718         * target.h (static_tracepoint_marker_p): Remove typedef.
13719         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13720         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13721         bool.
13722         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13723         * target-debug.h
13724         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13725         (target_debug_print_std_vector_static_tracepoint_marker): New.
13726         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13727         to...
13728         (target_debug_print_static_tracepoint_marker_p): ... this.
13729         * target-delegates.c: Re-generate.
13730         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13731         Make std::string.
13732         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13733         (decode_static_tracepoint_spec): Adjust to std::vector.
13734         (tracepoint_print_one_detail): Adjust to std::string.
13735         (strace_marker_decode_location): Adjust to std::string.
13736         (update_static_tracepoint): Adjust to std::string, remove call
13737         to release_static_tracepoint_marker.
13738         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13739         Adjust to std::vector.
13740         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13741         (remote_static_tracepoint_markers_by_strid): Adjust to
13742         std::vector.
13743         * common/rsp-low.h (hex2str): New overload with explicit count
13744         of bytes.
13745         * common/rsp-low.c (hex2str): New overload with explicit count
13746         of bytes.
13747         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13748         (_initialize_rsp_low_selftests): Add test_hex2str test.
13749         * unittests/tracepoint-selftests.c
13750         (test_parse_static_tracepoint_marker_definition): Adjust to
13751         std::string.
13752
13753 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13754
13755         * tracepoint.c (parse_static_tracepoint_marker_definition):
13756         Consider case where the definition is followed by more
13757         definitions.
13758         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13759         tracepoint-selftests.c.
13760         * unittests/tracepoint-selftests.c: New.
13761
13762 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13763
13764         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13765         Carvalho.
13766
13767 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13768
13769         * symtab.c (find_pc_sect_line): fixed indentation.
13770
13771 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13772
13773         * symtab.c (find_pc_sect_line): now uses binary search.
13774
13775 2018-03-19  Tom Tromey  <tom@tromey.com>
13776
13777         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13778         "IDENT" production.
13779
13780 2018-03-19  Pedro Alves  <palves@redhat.com>
13781             Tom Tromey  <tom@tromey.com>
13782
13783         * unittests/observable-selftests.c: New file.
13784         * common/observable.h: New file.
13785         * observable.h: New file.
13786         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13787         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13788         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13789         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13790         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13791         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13792         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13793         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13794         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13795         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13796         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13797         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13798         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13799         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13800         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13801         tui/tui-interp.c, valops.c: Update all users.
13802         * tui/tui-hooks.c (tui_bp_created_observer)
13803         (tui_bp_deleted_observer, tui_bp_modified_observer)
13804         (tui_inferior_exit_observer, tui_before_prompt_observer)
13805         (tui_normal_stop_observer, tui_register_changed_observer):
13806         Remove.
13807         (tui_observers_token): New global.
13808         (attach_or_detach, tui_attach_detach_observers): New functions.
13809         (tui_install_hooks, tui_remove_hooks): Use
13810         tui_attach_detach_observers.
13811         * record-btrace.c (record_btrace_thread_observer): Remove.
13812         (record_btrace_thread_observer_token): New global.
13813         * observer.sh: Remove.
13814         * observer.c: Rename to observable.c.
13815         * observable.c (namespace gdb_observers): Define new objects.
13816         (observer_debug): Move into gdb_observers namespace.
13817         (struct observer, struct observer_list, xalloc_observer_list_node)
13818         (xfree_observer_list_node, generic_observer_attach)
13819         (generic_observer_detach, generic_observer_notify): Remove.
13820         (_initialize_observer): Update.
13821         Don't include observer.inc.
13822         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13823         (clean mostlyclean): Likewise.
13824         (observer.h, observer.inc): Remove targets.
13825         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13826         (COMMON_SFILES): Use observable.c, not observer.c.
13827         * .gitignore: Remove observer.h.
13828
13829 2018-03-18  Tom Tromey  <tom@tromey.com>
13830
13831         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13832         gdb::def_vector.
13833         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13834
13835 2018-03-17  Tom Tromey  <tom@tromey.com>
13836
13837         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13838
13839 2018-03-17  Tom Tromey  <tom@tromey.com>
13840
13841         * target.c (class scoped_target_fd): New.
13842         (target_fileio_close_cleanup): Remove.
13843         (target_fileio_read_alloc_1): Use scoped_target_fd.
13844
13845 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13846
13847         * silent-rules.mk: New.
13848         * Makefile.in: Include silent-rules.mk
13849         (srcdir, VPATH, top_srcdir): Move up.
13850         (COMPILE): Add ECHO_CXX.
13851         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13852         (init.c): Add ECHO_INIT_C.
13853         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13854         (version.c): Add ECHO_GEN.
13855         (printcmd.o): Add ECHO_CXX.
13856         (target-float.o): Add ECHO_CXX.
13857         (ada-exp.o): Add ECHO_CXX.
13858         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13859         (insight$(EXEEXT)): Add ECHO_CXXLD.
13860         * gnulib/configure.ac: Add AM_SILENT_RULES.
13861         * gnulib/aclocal.m4: Re-generate.
13862         * gnulib/configure: Re-generate.
13863         * gnulib/import/Makefile.in: Re-generate.
13864
13865 2018-03-16  Tom Tromey  <tom@tromey.com>
13866
13867         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13868         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13869         * utils.c (do_free_section_addr_info)
13870         (make_cleanup_free_section_addr_info): Remove.
13871         * symfile.h (struct other_sections): Add constructor.
13872         (struct section_addr_info): Remove.
13873         (section_addr_info): New typedef.
13874         (struct sym_fns) <sym_offsets>: Change type of parameter.
13875         (build_section_addr_info_from_objfile)
13876         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13877         (default_symfile_offsets, symbol_file_add)
13878         (symbol_file_add_from_bfd)
13879         (build_section_addr_info_from_section_table): Update.
13880         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13881         * symfile.c (alloc_section_addr_info): Remove.
13882         (build_section_addr_info_from_section_table): Change return type.
13883         Update.
13884         (build_section_addr_info_from_bfd)
13885         (build_section_addr_info_from_objfile): Likewise.
13886         (free_section_addr_info): Remove.
13887         (relative_addr_info_to_section_offsets): Change type of "addrs".
13888         (addrs_section_compar): Now a std::sort comparator.
13889         (addrs_section_sort): Change return type.
13890         (addr_info_make_relative): Change type of "addrs".  Update.
13891         (default_symfile_offsets, syms_from_objfile_1)
13892         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13893         (symbol_file_add_separate): Update.
13894         (symbol_file_add): Change type of "addrs".  Update.
13895         (add_symbol_file_command): Update.  Remove cleanups.
13896         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13897         cleanups.
13898         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13899         * solib.c (solib_read_symbols): Update.
13900         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13901         * machoread.c (macho_symfile_offsets): Update.
13902         * jit.c (jit_bfd_try_read_symtab): Update.
13903
13904 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13905
13906         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13907         unittests/utils-selftests.c.
13908         * unittests/utils-selftests.c: New file.
13909
13910 2018-03-14  Tom Tromey  <tom@tromey.com>
13911
13912         PR cli/14977:
13913         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13914         for NULL.
13915
13916 2018-03-14  Tom Tromey  <tom@tromey.com>
13917
13918         PR cli/19918:
13919         * printcmd.c (printf_pointer): Allow "-" in format.
13920
13921 2018-03-14  Tom Tromey  <tom@tromey.com>
13922
13923         * printcmd.c (_initialize_printcmd): Add usage to printf.
13924
13925 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13926
13927         * MAINTAINERS: Update my email address.
13928
13929 2018-03-13  Tom Tromey  <tom@tromey.com>
13930
13931         * machoread.c (macho_check_dsym): Change filenamep to a
13932         std::string*.
13933         (macho_symfile_read): Update.
13934         * symfile.c (load_command): Use std::string.
13935
13936 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13937
13938         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13939         to error message string.
13940         (riscv_register_name): Use xsnprintf instead of sprintf.
13941         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13942         internal_error.
13943         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13944         error.
13945         (riscv_push_dummy_call): Likewise.
13946
13947 2018-03-12  Tom Tromey  <tom@tromey.com>
13948
13949         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13950         Use gdb::byte_vector.
13951         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13952
13953 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13954
13955         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13956         parameter type to readable_regcache.
13957         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13958         the declaration.
13959
13960 2018-03-11  Tom Tromey  <tom@tromey.com>
13961
13962         * dwarf2read.c (struct nextfield): Add initializers.
13963         (struct nextfnfield): Remove.
13964         (struct fnfieldlist): Add initializers.  Remove "length" and
13965         "head", use std::vector.
13966         (struct decl_field_list): Remove.
13967         (struct field_info): Add initializers.
13968         <fields, baseclasses>: Now std::vector.
13969         <nbaseclasses, nfnfields, typedef_field_list_count,
13970         nested_types_list_count>: Remove.
13971         (dwarf2_add_field, dwarf2_add_type_defn)
13972         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13973         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13974         (process_structure_scope): Update.
13975
13976 2018-03-11  Tom Tromey  <tom@tromey.com>
13977
13978         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13979         for use by std::sort.
13980         (build_type_psymtabs_1): Use std::vector.
13981
13982 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13983
13984         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13985         and LIBMPFR in the printed configuration.
13986
13987 2018-03-08  Tom Tromey  <tom@tromey.com>
13988
13989         * source.c (get_filename_and_charpos): Use scoped_fd.
13990         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13991         (procfs_pidlist): Likewise.
13992         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13993         (iterate_over_mappings): Likewise.
13994
13995 2018-03-08  Tom Tromey  <tom@tromey.com>
13996
13997         * infcall.c (struct call_return_meta_info)
13998         <stack_temporaries_enabled>: Remove.
13999         (get_call_return_value, call_function_by_hand_dummy): Update.
14000         * thread.c (disable_thread_stack_temporaries): Remove.
14001         (enable_thread_stack_temporaries): Remove.
14002         (thread_stack_temporaries_enabled_p): Return bool.
14003         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14004         (get_last_thread_stack_temporary): Update.
14005         * eval.c (evaluate_subexp): Update.
14006         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14007         class, not a function.
14008         (value_ptr, value_vec): Remove typedefs.
14009         (class thread_info) <stack_temporaries_enabled>: Now bool.
14010         <stack_temporaries>: Now a std::vector.
14011         (thread_stack_temporaries_enabled_p)
14012         (value_in_thread_stack_temporaries): Return bool.
14013
14014 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14015
14016         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14017         (getpkt_or_notif_sane_1): Likewise.
14018
14019 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14020
14021         * build-id.c (build_id_to_debug_bfd): Use std::string.
14022
14023 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14024
14025         * build-id.c (find_separate_debug_file_by_buildid): Return
14026         std::string.
14027         * build-id.h (find_separate_debug_file_by_buildid): Return
14028         std::string.
14029         * coffread.c (coff_symfile_read): Adjust to std::string.
14030         * elfread.c (elf_symfile_read): Adjust to std::string.
14031         * symfile.c (separate_debug_file_exists): Change parameter to
14032         std::string.
14033         (find_separate_debug_file): Return std::string.
14034         (find_separate_debug_file_by_debuglink): Return std::string.
14035         * symfile.h (find_separate_debug_file_by_debuglink): Return
14036         std::string.
14037
14038 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14039
14040         * common/xml-utils.c (xml_escape_text): Move code to...
14041         (xml_escape_text_append): ... this new function.
14042         * common/xml-utils.h (xml_escape_text_append): New declaration.
14043         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14044         New function.
14045         (_initialize_xml_utils): register test_xml_escape_text_append as
14046         a selftest.
14047
14048 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14049
14050         * defs.h: Remove MAX_REGISTER_SIZE.
14051         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14052         asserts.
14053         * python/py-unwind.c (pyuw_sniffer): Likewise.
14054
14055 2018-03-07  Tom Tromey  <tom@tromey.com>
14056
14057         * linux-tdep.c (linux_info_proc): Update.
14058         * target.h (struct target_ops) <to_fileio_readlink>: Return
14059         optional<string>.
14060         (target_fileio_readlink): Return optional<string>.
14061         * remote.c (remote_hostio_readlink): Return optional<string>.
14062         * inf-child.c (inf_child_fileio_readlink): Return
14063         optional<string>.
14064         * target.c (target_fileio_readlink): Return optional<string>.
14065
14066 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14067
14068         * regcache.c (cooked_read_test): Add riscv to the list of
14069         architectures that have a save_reggroup.
14070
14071 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14072
14073         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14074         value is not a dynamic class object.
14075
14076 2018-03-06  Tom Tromey  <tom@tromey.com>
14077
14078         * rust-exp.y: Formatting fixes.
14079
14080 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14081
14082         * riscv-tdep.c (riscv_register_name): Remove target description
14083         support.
14084         (riscv_gdbarch_init): Remove target description check.
14085
14086 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14087
14088         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14089         comment.
14090         * riscv-tdep.h: Likewise.
14091
14092 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14093
14094         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14095         (riscv_pseudo_register_write): Delete.
14096         (riscv_gdbarch_init): Remove all use of pseudo registers.
14097
14098 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14099
14100         * record-btrace.c (btrace_print_lines): Replace cleanup
14101         parameter with RAII equivalents.
14102         (btrace_insn_history): Replace cleanup with RAII equivalents.
14103         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14104         make_cleanup_ui_out_tuple_begin_end): Remove.
14105         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14106         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14107         make_cleanup_ui_out_list_begin_end): Remove.
14108
14109 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14110
14111         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14112         parameter types to std::vector.  Use bool.
14113         (record_btrace_wait): Replace VEC(tp_t) with
14114         std::vector<thread_info *>.
14115         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14116
14117 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14118
14119         * record-btrace.c (record_btrace_disable_callback): Remove.
14120         (struct scoped_btrace_disable): New.
14121         (record_btrace_open): Use scoped_btrace_disable.
14122
14123 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14124
14125         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14126         reading values from registers.
14127
14128 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14129
14130         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14131         where appropriate.
14132
14133 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14134
14135         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14136         change parameter type.  Use GDB's print functions, and use
14137         core_addr_to_string where appropriate.
14138         (riscv_push_dummy_call): Use core_addr_to_string where
14139         appropriate, update call to riscv_print_arg_location, and reindent
14140         a few lines.
14141         (riscv_return_value): Update call to riscv_print_arg_location.
14142
14143 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14144             Tim Newsome <tim@sifive.com>
14145             Albert Ou <a0u@eecs.berkeley.edu>
14146             Darius Rad <darius@bluespec.com>
14147
14148         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14149         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14150         (ALLDEPFILES): Add riscv-tdep.c
14151         * configure.tgt: Add riscv support.
14152         * riscv-tdep.c: New file.
14153         * riscv-tdep.h: New file.
14154         * NEWS: Mention new target.
14155         * MAINTAINERS: Add entry for riscv.
14156
14157 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14158
14159         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14160         fields within aggregates.
14161
14162 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14163
14164         * record-btrace.c (btrace_print_lines): Change type of flags to
14165         gdb_disassembly_flags.
14166
14167 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14168
14169         * fbsd-nat.c: Include "inf-ptrace.h".
14170         (USE_SIGTRAP_SIGINFO): Conditionally define.
14171         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14172         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14173         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14174         function.
14175         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14176         Likewise.
14177         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14178         Likewise.
14179         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14180         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14181         "supports_stopped_by_hw_breakpoint" target methods.
14182
14183 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14184
14185         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14186         * fbsd-nat.c (debug_fbsd_nat): New variable.
14187         (show_fbsd_nat_debug): New function.
14188         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14189         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14190
14191 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14192
14193         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14194         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14195         prototype.
14196         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14197         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14198         method.
14199
14200 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14201
14202         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14203         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14204
14205 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14206
14207         * charset.c (struct charset_vector): New.
14208         (charsets): Change type to charset_vector.
14209         (find_charset_names): Adjust.
14210         (add_one): Adjust.
14211         (_initialize_charset): Adjust.
14212
14213 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14214
14215         * progspace.h (struct program_space) <deleted_solibs>: Change
14216         type to std::vector<std::string>.
14217         * progspace.c (clear_program_space_solib_cache): Adjust.
14218         * breakpoint.c (print_solib_event): Adjust.
14219         (check_status_catch_solib): Adjust.
14220         * solib.c (update_solib_list): Adjust.
14221         * ui-out.h (class ui_out) <field_string>: New overload.
14222         * ui-out.c (ui_out::field_string): New overload.
14223
14224 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14225
14226         * progspace.h (struct program_space): Add constructor and
14227         destructor, initialize fields.
14228         (add_program_space): Remove.
14229         * progspace.c (add_program_space): Rename to...
14230         (program_space::program_space): ... this.
14231         (release_program_space): Rename to...
14232         (program_space::~program_space): ... this.
14233         (delete_program_space): Use delete to delete program_space.
14234         (initialize_progspace): Use new to allocate program_space.
14235         * inferior.c (add_inferior_with_spaces): Likewise.
14236         (clone_inferior_command): Likewise.
14237         * infrun.c (follow_fork_inferior): Likewise.
14238         (handle_vfork_child_exec_or_exit): Likewise.
14239
14240 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14241
14242         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14243         (delim_string_to_char_ptr_vec): Return std::vector of
14244         gdb::unique_xmalloc_ptr.
14245         (dirnames_to_char_ptr_vec_append): Take std::vector of
14246         gdb::unique_xmalloc_ptr.
14247         (dirnames_to_char_ptr_vec): Return std::vector of
14248         gdb::unique_xmalloc_ptr.
14249         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14250         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14251         (delim_string_to_char_ptr_vec): Return an std::vector of
14252         gdb::unique_xmalloc_ptr, adjust the code.
14253         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14254         gdb::unique_xmalloc_ptr, adjust the code.
14255         (dirnames_to_char_ptr_vec): Return an std::vector of
14256         gdb::unique_xmalloc_ptr, adjust the code.
14257         * auto-load.c (auto_load_safe_path_vec): Change type to
14258         std::vector of gdb::unique_xmalloc_ptr.
14259         (auto_load_expand_dir_vars): Return an std::vector of
14260         gdb::unique_xmalloc_ptr, adjust the code.
14261         (auto_load_safe_path_vec_update): Adjust.
14262         (filename_is_in_auto_load_safe_path_vec): Adjust.
14263         (auto_load_objfile_script_1): Adjust.
14264         * build-id.c (build_id_to_debug_bfd): Adjust.
14265         * linux-thread-db.c (thread_db_load_search): Adjust.
14266         * source.c (add_path): Adjust.
14267         (openp): Adjust.
14268         * symfile.c (find_separate_debug_file): Adjust.
14269         * utils.c (do_free_char_ptr_vec): Remove.
14270         (make_cleanup_free_char_ptr_vec): Remove.
14271
14272 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14273
14274         PR gdb/22907
14275         * common/pathstuff.c: Conditionally include "<windows.h>".
14276
14277 2018-03-01  Georg Sauthoff  <mail@georg.so>
14278
14279         PR gdb/22888
14280         * gcore.in: Quote variables and switch interpreter to bash.
14281
14282 2018-03-01  Tom Tromey  <tom@tromey.com>
14283
14284         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14285         assertion.  Add assertion for discriminant_index.
14286         (quirk_rust_enum): Use correct base type name in univariant case.
14287
14288 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14289
14290         * record.c (get_call_history_modifiers): Return a
14291         record_print_flags.
14292         (cmd_record_call_history): Adjust.
14293         * record-btrace.c (record_btrace_call_history): Adjust.
14294         (record_btrace_call_history_range): Adjust.
14295         (record_btrace_call_history_from): Adjust.
14296         * target-debug.h (target_debug_print_record_print_flags): New.
14297         * target-delegates.c: Re-generate.
14298         * target.c (target_call_history): Change flags type.
14299         (target_call_history_from): Likewise.
14300         (target_call_history_range): Likewise.
14301         * target.h (struct target_ops) <target_call_history>: Likewise.
14302         (target_call_history_from): Likewise.
14303         (target_call_history_range): Likewise.
14304
14305 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14306             Simon Marchi  <simon.marchi@polymtl.ca>
14307
14308         * common/common-utils.c: Include "sys/stat.h".
14309         (is_regular_file): Move here from "source.c"; change return
14310         type to "bool".
14311         * common/common-utils.h (is_regular_file): New prototype.
14312         * common/pathstuff.c (contains_dir_separator): New function.
14313         * common/pathstuff.h (contains_dir_separator): New prototype.
14314         * source.c: Don't include "sys/stat.h".
14315         (is_regular_file): Move to "common/common-utils.c".
14316
14317 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14318
14319         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14320         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14321         * auto-load.c: Include "common/pathstuff.h".
14322         * common/common-def.h (current_directory): Move here.
14323         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14324         function.
14325         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14326         prototype.
14327         * common/pathstuff.c: New file.
14328         * common/pathstuff.h: New file.
14329         * compile/compile.c: Include "common/pathstuff.h".
14330         * defs.h (current_directory): Move to "common/common-defs.h".
14331         * dwarf2read.c: Include "common/pathstuff.h".
14332         * exec.c: Likewise.
14333         * guile/scm-safe-call.c: Likewise.
14334         * linux-thread-db.c: Likewise.
14335         * main.c: Likewise.
14336         * nto-tdep.c: Likewise.
14337         * objfiles.c: Likewise.
14338         * source.c: Likewise.
14339         * symtab.c: Likewise.
14340         * utils.c: Include "common/pathstuff.h".
14341         (gdb_realpath): Move to "common/pathstuff.c".
14342         (gdb_realpath_keepfile): Likewise.
14343         (gdb_abspath): Likewise.
14344         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14345         (gdb_realpath_keepfile): Likewise.
14346         (gdb_abspath): Likewise.
14347
14348 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14349
14350         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14351         wildcard process pid for super_resume for kernels with a
14352         specific bug.
14353
14354 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14355
14356         * compile/compile.c (get_args): Add additional comments
14357         explaining function.
14358
14359 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14360             Tom Tromey  <tom@tromey.com>
14361
14362         * target.h (memory_write_request_s): Remove typedef.  Don't define
14363         VEC.
14364         (target_write_memory_blocks): Change argument to std::vector.
14365         (struct memory_write_request): Add constructor.
14366         * target-memory.c (compare_block_starting_address): Return bool.
14367         Change argument types.
14368         (claim_memory): Change arguments to use std::vector.
14369         (split_regular_and_flash_blocks, blocks_to_erase)
14370         (compute_garbled_blocks): Likewise.
14371         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14372         (target_write_memory_blocks): Change argument to std::vector.
14373         * symfile.c (struct load_section_data): Add constructor and
14374         destructor.  Use std::vector for "requests".
14375         (struct load_progress_data): Add initializers.
14376         (load_section_callback): Update.  Use "new".
14377         (clear_memory_write_data): Remove.
14378         (generic_load): Update.
14379
14380 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14381
14382         * arch/aarch64.h: Use common/tdesc.h.
14383
14384 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14385
14386         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14387         architecture with a 64-bit ABI.
14388
14389 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14390
14391         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14392         ahead of target description loading.
14393
14394 2018-02-26  Tom Tromey  <tom@tromey.com>
14395
14396         * stack.c (backtrace_command_1): Update.
14397         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14398         of "flags".
14399         * python/py-framefilter.c (py_print_frame)
14400         (gdbpy_apply_frame_filter): Change type of "flags".
14401         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14402         of "flags".
14403         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14404         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14405         * extension.h (enum frame_filter_flag): Rename from
14406         frame_filter_flags.
14407         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14408         (apply_ext_lang_frame_filter): Change type of "flags".
14409         * extension.c (apply_ext_lang_frame_filter): Change type of
14410         "flags".
14411         * extension-priv.h (struct extension_language_ops)
14412         <apply_frame_filter>: Change type of "flags".
14413
14414 2018-02-26  Tom Tromey  <tom@tromey.com>
14415
14416         PR python/16497:
14417         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14418         off-by-one in py_end computation.
14419         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14420         PRINT_MORE_FRAMES.
14421         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14422         constant.
14423
14424 2018-02-26  Tom Tromey  <tom@tromey.com>
14425
14426         * dwarf2read.c (struct variant_field): New.
14427         (struct nextfield) <variant>: New field.
14428         (dwarf2_add_field): Handle DW_TAG_variant_part.
14429         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14430         discriminated union.
14431         (read_structure_type): Handle DW_TAG_variant_part.
14432         (handle_struct_member_die): New function, extracted from
14433         process_structure_scope.  Handle DW_TAG_variant.
14434         (process_structure_scope): Handle discriminated unions.  Call
14435         handle_struct_member_die.
14436
14437 2018-02-26  Tom Tromey  <tom@tromey.com>
14438
14439         * rust-lang.h (rust_last_path_segment): Declare.
14440         * rust-lang.c (rust_last_path_segment): Now public.  Change
14441         contract.
14442         (struct disr_info): Remove.
14443         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14444         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14445         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14446         (rust_enum_p, rust_enum_variant): New function.
14447         (rust_underscore_fields): Remove "offset" parameter.
14448         (rust_print_enum): New function.
14449         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14450         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14451         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14452         enums.
14453         (rust_internal_print_type): New function, from rust_print_type.
14454         Remove enum code.
14455         (rust_print_type): Call rust_internal_print_type.
14456         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14457         Update enum handling.
14458         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14459         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14460         (rust_union_quirks): New functions.
14461         (process_full_comp_unit, process_full_type_unit): Call
14462         rust_union_quirks.
14463         (process_structure_scope): Update rust_unions if necessary.
14464
14465 2018-02-26  Tom Tromey  <tom@tromey.com>
14466
14467         * value.h (value_union_variant): Declare.
14468         * valops.c (value_union_variant): New function.
14469         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14470         (struct discriminant_info): New.
14471         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14472         enumerator.
14473         (struct main_type) <flag_discriminated_union>: New field.
14474
14475 2018-02-26  Tom Tromey  <tom@tromey.com>
14476
14477         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14478         unittests/unpack-selftests.c.
14479         * unittests/unpack-selftests.c: New file.
14480         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14481
14482 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14483
14484         * dwarf2read.c (struct partial_die_info) <read>: New method.
14485         (read_partial_die): Remove the declaration.
14486         (load_partial_dies): Update.
14487         (partial_die_info::partial_die_info):
14488         (read_partial_die): Change it to partial_die_info::read.
14489
14490 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14491
14492         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14493         (fixup_partial_die): Remove declaration.
14494         (scan_partial_symbols): Update.
14495         (partial_die_parent_scope): Likewise.
14496         (partial_die_full_name): Likewise.
14497         (fixup_partial_die): Change it to partial_die_info::fixup.
14498
14499 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14500
14501         * dwarf2read.c (read_partial_die): Update the declaration.
14502         (load_partial_dies): Caller update.
14503         (read_partial_die): Remove one argument abbrev_len.
14504
14505 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14506
14507         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14508         assignment operator.
14509         (load_partial_dies): Use ctor and copy ctor.
14510         (read_partial_die): Update.
14511         (dwarf2_cu::find_partial_die): Use ctor.
14512
14513 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14514
14515         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14516         (find_partial_die_in_comp_unit): Change it to
14517         dwarf2_cu::find_partial_die.
14518         (find_partial_die): Update.
14519
14520 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14521
14522         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14523         is NULL.
14524
14525 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14526
14527         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14528
14529 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14530
14531         * arch/amd64.h: Use common/tdesc.h.
14532         * arch/i386.c: Likewise.
14533         * arch/i386.h: Likewise.
14534         * arch/tic6x.c: Likewise.
14535         * arch/tdesc.h: Move file from here...
14536         * common/tdesc.h: ...to here.
14537         * features/aarch64-core.c: Regenerate.
14538         * features/aarch64-fpu.c: Regenerate.
14539         * features/i386/32bit-avx.c: Regenerate.
14540         * features/i386/32bit-avx512.c: Regenerate.
14541         * features/i386/32bit-core.c: Regenerate.
14542         * features/i386/32bit-linux.c: Regenerate.
14543         * features/i386/32bit-mpx.c: Regenerate.
14544         * features/i386/32bit-pkeys.c: Regenerate.
14545         * features/i386/32bit-sse.c: Regenerate.
14546         * features/i386/64bit-avx.c: Regenerate.
14547         * features/i386/64bit-avx512.c: Regenerate.
14548         * features/i386/64bit-core.c: Regenerate.
14549         * features/i386/64bit-linux.c: Regenerate.
14550         * features/i386/64bit-mpx.c: Regenerate.
14551         * features/i386/64bit-pkeys.c: Regenerate.
14552         * features/i386/64bit-segments.c: Regenerate.
14553         * features/i386/64bit-sse.c: Regenerate.
14554         * features/i386/x32-core.c: Regenerate.
14555         * features/tic6x-c6xp.c: Regenerate.
14556         * features/tic6x-core.c: Regenerate.
14557         * features/tic6x-gp.c: Regenerate.
14558         * target-descriptions.c: Use common/tdesc.h.
14559         * target-descriptions.h: Likewise.
14560
14561 2018-02-24  Tom Tromey  <tom@tromey.com>
14562
14563         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14564         (try_thread_db_load_from_dir, thread_db_load_search): Use
14565         std::string.
14566         (info_auto_load_libthread_db_compare): Return bool.  Change
14567         argument types.
14568         (info_auto_load_libthread_db): Use std::vector, std::string.
14569         Remove cleanups.
14570
14571 2018-02-24  Tom Tromey  <tom@tromey.com>
14572
14573         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14574         std::string.
14575         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14576         std::string*.
14577         * gdbarch.c: Rebuild.
14578         * gdbarch.h: Rebuild.
14579         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14580         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14581         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14582         std::string*.
14583
14584 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14585
14586         * gdbtypes.h (sect_offset): Change type to uint64_t.
14587         (sect_offset_str): New function.
14588         * dwarf2read.c (create_addrmap_from_aranges): Use
14589         sect_offset_str.
14590         (error_check_comp_unit_head): Likewise.
14591         (create_debug_type_hash_table): Likewise.
14592         (read_cutu_die_from_dwo): Likewise.
14593         (init_cutu_and_read_dies): Likewise.
14594         (init_cutu_and_read_dies_no_follow): Likewise.
14595         (process_psymtab_comp_unit_reader): Likewise.
14596         (partial_die_parent_scope): Likewise.
14597         (peek_die_abbrev): Likewise.
14598         (process_queue): Likewise.
14599         (dwarf2_physname): Likewise.
14600         (read_namespace_alias): Likewise.
14601         (read_import_statement): Likewise.
14602         (create_dwo_cu_reader): Likewise.
14603         (create_cus_hash_table): Likewise.
14604         (lookup_dwo_cutu): Likewise.
14605         (inherit_abstract_dies): Likewise.
14606         (read_func_scope): Likewise.
14607         (read_call_site_scope): Likewise.
14608         (dwarf2_add_member_fn): Likewise.
14609         (read_common_block): Likewise.
14610         (read_module_type): Likewise.
14611         (read_typedef): Likewise.
14612         (read_subrange_type): Likewise.
14613         (load_partial_dies): Likewise.
14614         (read_partial_die): Likewise.
14615         (find_partial_die): Likewise.
14616         (read_str_index): Likewise.
14617         (dwarf2_string_attr): Likewise.
14618         (build_error_marker_type): Likewise.
14619         (lookup_die_type): Likewise.
14620         (dump_die_shallow): Likewise.
14621         (follow_die_ref): Likewise.
14622         (dwarf2_fetch_die_loc_sect_off): Likewise.
14623         (dwarf2_fetch_constant_bytes): Likewise.
14624         (follow_die_sig): Likewise.
14625         (get_signatured_type): Likewise.
14626         (get_DW_AT_signature_type): Likewise.
14627         (dwarf2_find_containing_comp_unit): Likewise.
14628         (set_die_type): Likewise.
14629
14630 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14631
14632         * arch/aarch64.c: Include "common-defs.h".
14633         * arch/amd64.c: Likewise.
14634         * arch/i386.c: Likewise.
14635
14636 2018-02-21  Tom Tromey  <tom@tromey.com>
14637
14638         * value.h: (extract_field_op): Update.
14639         * eval.c (extract_field_op): Return a const char *.
14640         * expression.h (parse_expression_for_completion): Update.
14641         * completer.c (complete_expression): Update.
14642         (add_struct_fields): Make fieldname const.
14643         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14644         (mark_completion_tag, parse_exp_in_context_1): Update.
14645         (parse_expression_for_completion): Change "name" to
14646         unique_xmalloc_ptr*.
14647
14648 2018-02-21  Tom Tromey  <tom@tromey.com>
14649
14650         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14651
14652 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14653
14654         * avr-tdep.c (avr_read_pc): Change parameter type to
14655         readable_regcache.
14656         * gdbarch.sh (read_pc): Likewise.
14657         * gdbarch.c: Re-generated.
14658         * gdbarch.h: Re-generated.
14659         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14660         readable_regcache.
14661         * ia64-tdep.c (ia64_read_pc): Likewise.
14662         * mips-tdep.c (mips_read_pc): Likewise.
14663         * spu-tdep.c (spu_read_pc): Likewise.
14664
14665 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14666
14667         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14668         * regcache-dump.c: New file.
14669         * regcache.c: Move register_dump to regcache-dump.c.
14670         (maintenance_print_registers): Likewise.
14671         (maintenance_print_raw_registers): Likewise.
14672         (maintenance_print_cooked_registers): Likewise.
14673         (maintenance_print_register_groups): Likewise.
14674         (maintenance_print_remote_registers): Likewise.
14675         (_initialize_regcache): Likewise.
14676         * regcache.h (register_dump): Moved from regcache.c.
14677
14678 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14679
14680         * regcache.c (regcache::regcache): Update.
14681         (regcache::invalidate): Move it to detached_regcache::invalidate.
14682         (get_thread_arch_aspace_regcache): Update.
14683         (regcache::raw_update): Update.
14684         (regcache::cooked_read): Remove some code.
14685         (regcache::cooked_read_value): Likewise.
14686         (regcache::raw_write): Remove assert on m_readonly_p.
14687         (regcache::raw_supply_integer): Move it to
14688         detached_regcache::raw_supply_integer.
14689         (regcache::raw_supply_zeroed): Likewise.
14690         * regcache.h (detached_regcache) <raw_supply_integer>: New
14691         declaration.
14692         <raw_supply_zeroed, invalidate>: Likewise.
14693         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14694         <invalidate>: Likewise.
14695         <m_readonly_p>: Removed.
14696
14697 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14698
14699         * infcmd.c (get_return_value): Let stop_regs point to
14700         get_current_regcache.
14701         * regcache.c (regcache::regcache): Remove.
14702         (register_dump_reg_buffer): New class.
14703         (regcache_print): Adjust.
14704         * regcache.h (regcache): Remove constructors.
14705
14706 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14707
14708         * regcache.c (class register_dump): New class.
14709         (register_dump_regcache, register_dump_none): New class.
14710         (register_dump_remote, register_dump_groups): New class.
14711         (regcache_print): Update.
14712         * regcache.h (regcache_dump_what): Move it to regcache.c.
14713         (regcache) <dump>: Remove.
14714
14715 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14716
14717         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14718          reg_buffer_rw *.
14719         (jit_unwind_reg_set_impl): Call raw_supply.
14720         (jit_frame_sniffer): Use reg_buffer_rw.
14721         * record-full.c (record_full_core_regbuf): Change its type.
14722         (record_full_core_open_1): Use reg_buffer_rw.
14723         (record_full_close): Likewise.
14724         (record_full_core_fetch_registers): Use regcache->raw_supply.
14725         (record_full_core_store_registers): Likewise.
14726         * regcache.c (regcache::get_register_status): Move it to
14727         reg_buffer.
14728         (regcache_raw_set_cached_value): Remove.
14729         (regcache::raw_set_cached_value): Remove.
14730         (regcache::raw_write): Call raw_supply.
14731         (regcache::raw_supply): Move it to reg_buffer_rw.
14732         * regcache.h (regcache_raw_set_cached_value): Remove.
14733         (reg_buffer_rw): New class.
14734
14735 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14736
14737         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14738         readonly_detached_regcache.
14739         (dummy_frame_prev_register): Use regcache->cooked_read.
14740         * frame.c (frame_save_as_regcache): Change return type.
14741         (frame_pop): Update.
14742         * frame.h (frame_save_as_regcache): Update declaration.
14743         * inferior.h (get_infcall_suspend_state_regcache): Update
14744         declaration.
14745         * infrun.c (infcall_suspend_state) <registers>: use
14746         readonly_detached_regcache.
14747         (save_infcall_suspend_state): Don't use regcache_dup.
14748         (get_infcall_suspend_state_regcache): Change return type.
14749         * linux-fork.c (struct fork_info) <savedregs>: Change to
14750         readonly_detached_regcache.
14751         <pc>: New field.
14752         (fork_save_infrun_state): Don't use regcache_dup.
14753         (info_checkpoints_command): Adjust.
14754         * mi/mi-main.c (register_changed_p): Update declaration.
14755         (mi_cmd_data_list_changed_registers): Use
14756         readonly_detached_regcache.
14757         (register_changed_p): Change parameter type to
14758         readonly_detached_regcache.
14759         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14760         readonly_detached_regcache.
14761         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14762         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14763         New.
14764         (regcache::save): Move it to reg_buffer.
14765         (regcache::restore): Change parameter type.
14766         (regcache_dup): Remove.
14767         * regcache.h (reg_buffer) <save>: New method.
14768         (readonly_detached_regcache): New class.
14769         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14770         readonly_detached_regcache.
14771         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14772
14773 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14774
14775         * frame.c (frame_save_as_regcache): Use regcache method save.
14776         (frame_pop): Use regcache method restore.
14777         * infrun.c (restore_infcall_suspend_state): Likewise.
14778         * linux-fork.c (fork_load_infrun_state): Likewise.
14779         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14780         save.
14781         * regcache.c (regcache_save): Remove.
14782         (regcache::restore): More asserts.
14783         (regcache_cpy): Remove.
14784         * regcache.h (regcache_save): Remove the declaration.
14785         (regcache::restore): Move from private to public.
14786         Remove the friend declaration of regcache_cpy.
14787         (regcache_cpy): Remove declaration.
14788
14789 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14790
14791         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14792         parameter type to 'readable_regcache *'.
14793         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14794         * arm-tdep.c (arm_neon_quad_read): Likewise.
14795         (arm_pseudo_read): Likewise.
14796         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14797         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14798         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14799         * gdbarch.c: Re-generated.
14800         * gdbarch.h: Re-generated.
14801         * gdbarch.sh (pseudo_register_read): Change parameter type to
14802         'readable_regcache *'.
14803         (pseudo_register_read_value): Likewise.
14804         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14805         (h8300_pseudo_register_read): Likewise.
14806         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14807         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14808         (i386_pseudo_register_read_into_value): Likewise.
14809         (i386_pseudo_register_read_value): Likewise.
14810         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14811         declaration.
14812         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14813         * m32c-tdep.c (m32c_raw_read): Likewise.
14814         (m32c_read_flg): Likewise.
14815         (m32c_banked_register): Likewise.
14816         (m32c_banked_read): Likewise.
14817         (m32c_sb_read): Likewise.
14818         (m32c_part_read): Likewise.
14819         (m32c_cat_read): Likewise.
14820         (m32c_r3r2r1r0_read): Likewise.
14821         (m32c_pseudo_register_read): Likewise.
14822         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14823         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14824         (mep_pseudo_cr64_read): Likewise.
14825         (mep_pseudo_register_read): Likewise.
14826         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14827         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14828         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14829         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14830         (regcache::cooked_read): Likewise.
14831         (regcache::cooked_read_value): Likewise.
14832         (regcache_cooked_read_signed):
14833         (regcache::cooked_read): Likewise.
14834         * regcache.h (readable_regcache): New class.
14835         (regcache): Inherit readable_regcache.  Move some methods to
14836         readable_regcache.
14837         * rl78-tdep.c (rl78_pseudo_register_read): Change
14838         parameter type to 'readable_regcache *'.
14839         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14840         (e500_pseudo_register_read): Change parameter type to
14841         'readable_regcache *'.
14842         (dfp_pseudo_register_read): Likewise.
14843         (vsx_pseudo_register_read): Likewise.
14844         (efpr_pseudo_register_read): Likewise.
14845         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14846         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14847         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14848         (sh64_pseudo_register_read): Likewise.
14849         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14850         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14851         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14852         (spu_pseudo_register_read): Likewise.
14853         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14854         (xtensa_pseudo_register_read): Likewise.
14855
14856 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14857
14858         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14859         (regcache::arch): Move it to reg_buffer::arch.
14860         (regcache::register_buffer): Likewise.
14861         (regcache::assert_regnum): Likewise.
14862         (regcache::num_raw_registers): Likewise.
14863         * regcache.h (reg_buffer): New class.
14864         (regcache): Inherit reg_buffer.
14865
14866 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14867
14868         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14869         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14870
14871 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14872
14873         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14874
14875 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14876
14877         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14878         (SFILES): Remove common/*.c files.
14879         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14880         * common/common.host: Add common reference.
14881         * configure.ac: Likewise.
14882         * configure: Regenerate.
14883
14884 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14885
14886         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14887         (block_initialize_namespace): Use new.
14888         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14889         (dwarf2_free_objfile): Use delete.
14890         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14891         (copy_type_recursive): Use new.
14892         * gdb_obstack.h (allocate_on_obstack): New.
14893
14894 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14895
14896         PR gdb/22849
14897         * inferior.c (exit_inferior_1): Reset inf->control.
14898
14899 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14900
14901         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14902         declaration.
14903
14904 2018-02-14  Pedro Alves  <palves@redhat.com>
14905
14906         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14907         frame_cleanup_after_sniffer on exception.
14908
14909 2018-02-14  Tom Tromey  <tom@tromey.com>
14910
14911         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14912         const.
14913         (solib_bfd_open): Make pathname const.
14914         * solib.c (solib_bfd_open): Make pathname const.
14915         * solib-spu.c (spu_bfd_fopen): Make name const.
14916         (spu_bfd_open): Make pathname const.
14917         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14918         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14919
14920 2018-02-14  Tom Tromey  <tom@tromey.com>
14921
14922         * symfile.c (symfile_bfd_open): Update.
14923         * source.h (openp, source_full_path_of, find_and_open_source):
14924         Change argument type to unique_xmalloc_ptr.
14925         * source.c (openp): Take a unique_xmalloc_ptr.
14926         (source_full_path_of, find_and_open_source): Likewise.
14927         (open_source_file, symtab_to_fullname): Update.
14928         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14929         unique_xmalloc_ptr.
14930         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14931         (exec_file_find): Update.
14932         * psymtab.c (psymtab_to_fullname): Update.
14933         * nto-tdep.h (nto_find_and_open_solib): Update.
14934         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14935         unique_xmalloc_ptr.
14936         * exec.c (exec_file_attach): Update.
14937         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14938         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14939
14940 2018-02-14  Tom Tromey  <tom@tromey.com>
14941
14942         * solib.c: Include source.h.
14943         * nto-tdep.c: Include source.h.
14944         * mi/mi-cmd-env.c: Include source.h.
14945         * infcmd.c: Include source.h.
14946         * exec.c: Include source.h.
14947         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14948         (add_path, directory_switch, source_path, init_source_path): Move
14949         declarations...
14950         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14951         (add_path, directory_switch, source_path, init_source_path):
14952         ...here.
14953
14954 2018-02-14  Tom Tromey  <tom@tromey.com>
14955
14956         * solist.h (exec_file_find, solib_find): Return
14957         unique_xmalloc_ptr.
14958         (solib_bfd_fopen): Take a const char *.
14959         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14960         (exec_file_find, solib_find): Likewise.
14961         (solib_bfd_fopen): Do not take ownership of "pathname".
14962         (solib_bfd_open): Use unique_xmalloc_ptr.
14963         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14964         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14965         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14966         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14967
14968 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14969
14970         * ada-lang.c (name_match_type_from_name): Remove reference to
14971         ada_name_for_lookup in function's documentation.
14972         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14973
14974 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14975
14976         * defs.h (enum openp_flags): New enum.
14977         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14978         Move to enum openp_flags.
14979         (openp_flags): New enum flags.
14980         (openp): Change parameter type to openp_flags.
14981         * source.c (openp): Change parameter type to openp_flags.
14982         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14983         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14984
14985 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14986
14987         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14988         per-command.
14989
14990 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14991
14992         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14993         into...
14994         (class dwarf2_queue_guard): ...the destructor of this new class.
14995         (dw2_do_instantiate_symtab): Create instance of the new class
14996         dwarf2_queue_guard, remove cleanup.
14997
14998 2018-02-09  Tom Tromey  <tom@tromey.com>
14999
15000         * source.c (find_source_lines): Don't reference past the end of
15001         the vector.
15002
15003 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15004
15005         * remote.c (remote_btrace_maybe_reopen): Change error message.
15006         * btrace.c (btrace_enable): Likewise.
15007         (parse_xml_btrace): Likewise.
15008         (parse_xml_btrace_conf): Likewise.
15009
15010 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15011
15012         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15013         (linux_enable_pt, linux_enable_bts): Call
15014         diagnose_perf_event_open_fail.
15015
15016 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15017
15018         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15019         Remove parameter and change return type.  Update callers.  Move it.
15020         (linux_enable_bts, linux_enable_pt): Improve error message.
15021         (linux_enable_pt): Remove zero buffer size check.
15022         (linux_enable_btrace): Improve error messages.  Remove NULL return
15023         check.
15024
15025 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15026
15027         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15028         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15029         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15030         (linux_supports_pt, linux_supports_btrace): Remove.
15031         (linux_enable_bts): Call cpu_supports_bts.
15032         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15033         * remote.c (remote_supports_btrace): Remove.
15034         (init_remote_ops): Remove remote_supports_btrace.
15035         * target-delegates.c: Regenerated.
15036         * target.c (target_supports_btrace): Remove.
15037         * target.h (target_ops) <to_supports_btrace>: Remove
15038         (target_supports_btrace): Remove.
15039         * x86-linux-nat.c (x86_linux_create_target): Remove
15040         linux_supports_btrace.
15041
15042 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15043
15044         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15045         btrace failed.
15046         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15047         exception and use message in own exception.
15048
15049 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15050
15051         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15052         (perf_event_pt_event_type): Use gdb_file_up.
15053         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15054         scoped_fd, and scoped_mmap.
15055
15056 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15057
15058         * common/scoped_mmap.h: New.
15059         * unittests/scoped_mmap-selftest.c: New.
15060         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15061         unittests/scoped_mmap-selftest.c.
15062
15063 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15064
15065         * common/scoped_fd.h: New.
15066         * unittests/scoped_fd-selftest.c: New.
15067         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15068         unittests/scoped_fd-selftest.c.
15069
15070 2018-02-09  Tom Tromey  <tom@tromey.com>
15071
15072         * auto-load.c (auto_load_section_scripts): Use
15073         gdb::unique_xmalloc_ptr.
15074
15075 2018-02-09  Tom Tromey  <tom@tromey.com>
15076
15077         * auto-load.c (execute_script_contents): Use std::string.
15078
15079 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15080
15081         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15082         Python function, rather than a new command.
15083
15084 2018-02-08  Tom Tromey  <tom@tromey.com>
15085
15086         * solib.c (solib_find_1): Use std::string.
15087         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15088
15089 2018-02-08  Tom Tromey  <tom@tromey.com>
15090
15091         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15092
15093 2018-02-08  Tom Tromey  <tom@tromey.com>
15094
15095         * source.c (find_source_lines): Use gdb::def_vector.
15096
15097 2018-02-08  Tom Tromey  <tom@tromey.com>
15098
15099         * macrocmd.c (struct temporary_macro_definition): New.
15100         (macro_define_command): Use temporary_macro_definition.  Remove
15101         cleanups.
15102         (free_macro_definition_ptr): Remove.
15103
15104 2018-02-08  Tom Tromey  <tom@tromey.com>
15105
15106         * macroexp.c (maybe_expand): Use std::string.
15107
15108 2018-02-08  Tom Tromey  <tom@tromey.com>
15109
15110         * macroexp.c (struct macro_buffer): Add initializers for some
15111         members.
15112         (init_buffer, init_shared_buffer, free_buffer)
15113         (free_buffer_return_text): Remove.
15114         (macro_buffer): New constructors.
15115         (~macro_buffer): New destructor.
15116         (macro_buffer::set_shared): New method.
15117         (macro_buffer::resize_buffer, macro_buffer::appendc)
15118         (macro_buffer::appendmem): Now methods, not free functions.
15119         (set_token, append_tokens_without_splicing, stringify)
15120         (macro_stringify): Update.
15121         (gather_arguments): Change return type.  Remove argc_p argument,
15122         add args_ptr argument.  Use std::vector.
15123         (substitute_args): Remove argc argument.  Accept std::vector.
15124         (expand): Update.  Use std::vector.
15125         (scan, macro_expand, macro_expand_next): Update.
15126
15127 2018-02-08  Tom Tromey  <tom@tromey.com>
15128
15129         * symtab.c (default_collect_symbol_completion_matches_break_on):
15130         Use unique_xmalloc_ptr.
15131         * macroscope.h: (sal_macro_scope, user_macro_scope)
15132         (default_macro_scope): Return unique_xmalloc_ptr.
15133         * macroscope.c (sal_macro_scope, user_macro_scope)
15134         (default_macro_scope): Return unique_xmalloc_ptr.
15135         * macroexp.h (macro_expand, macro_expand_once): Return
15136         unique_xmalloc_ptr.
15137         * macroexp.c (macro_expand, macro_expand_once): Return
15138         unique_xmalloc_ptr.
15139         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15140         (info_macro_command, info_macros_command): Use
15141         unique_xmalloc_ptr.
15142         * compile/compile-c-support.c (write_macro_definitions): Use
15143         unique_xmalloc_ptr.
15144         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15145
15146 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15147
15148         * value.c (value_static_field): Assign field type instead of
15149         containing type when returning an optimized out value.
15150
15151 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15152
15153         * ft32-tdep.c (ft32_read_pc): Remove.
15154         (ft32_write_pc): Remove.
15155         (ft32_gdbarch_init): Update.
15156         * m32r-tdep.c (m32r_read_pc): Remove.
15157         (m32r_gdbarch_init): Update.
15158         * mep-tdep.c (mep_read_pc): Remove.
15159         (mep_gdbarch_init): Update.
15160         * microblaze-tdep.c (microblaze_write_pc): Remove.
15161         (microblaze_gdbarch_init): Update.
15162         * mn10300-tdep.c (mn10300_read_pc): Remove.
15163         (mn10300_write_pc): Remove.
15164         (mn10300_gdbarch_init): Update.
15165         * moxie-tdep.c (moxie_read_pc): Remove.
15166         (moxie_write_pc): Remove.
15167         (moxie_gdbarch_init): Update.
15168
15169 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15170
15171         * expprint.c (print_subexp_standard): Handle
15172         OP_F77_UNDETERMINED_ARGLIST.
15173         (dump_subexp_body_standard): Likewise.
15174
15175 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15176
15177         * target-descriptions.c (tdesc_element_visitor) Add empty
15178         implementations.
15179         (tdesc_type): Move make_gdb_type from here.
15180         (tdesc_type_builtin): Likewise.
15181         (tdesc_type_vector): Likewise.
15182         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15183         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15184         (make_gdb_type_union): Likewise.
15185         (make_gdb_type_flags): Likewise.
15186         (make_gdb_type_enum): Likewise.
15187         (make_gdb_type): New function.
15188         (tdesc_register_type): Use static make_gdb_type.
15189
15190 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15191
15192         * infcmd.c (default_print_one_register_info): Align natural-format
15193         column values consistently one under another.
15194         (pad_to_column): New function.
15195
15196 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15197
15198         * dwarf2read.c (dwarf2_physname): Move commment.
15199
15200 2018-02-01  Leszek Swirski  <leszeks@google.com>
15201
15202         * varobj.c (varobj_formatted_print_options): Allow recursive
15203         pretty printing if pretty printing is enabled.
15204
15205 2018-02-01  Leszek Swirski  <leszeks@google.com>
15206
15207         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15208         names after a structop as a filename.
15209
15210 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15211
15212         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15213         (arm_record_coproc_data_proc): Likewise.
15214
15215 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15216
15217         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15218
15219 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15220
15221         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15222         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15223
15224 2018-01-31  Pedro Alves  <palves@redhat.com>
15225
15226         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15227         * inflow.c (child_terminal_save_inferior): Wrap reference to
15228         tcgetpgrp in HAVE_TERMIOS_H.
15229         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15230         _WIN32.
15231         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15232         always iterate over all inferiors.
15233         (gdbsim_cntrl_c): Adjust.
15234         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15235
15236 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15237
15238         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15239         index type is objfile-owned if the element type is as well.
15240
15241 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15242
15243         GDB 8.1 released.
15244
15245 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15246
15247         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15248         "features/s390x-linux64.c".
15249         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15250         s390_linux32 and s390x_linux64.
15251         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15252         default tdesc.
15253         * s390-tdep.c: Include "features/s390-linux32.c" and
15254         "features/s390x-linux64.c".
15255         (s390_tdesc_valid): Add check for tdesc_has_registers.
15256         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15257         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15258         tdesc_s390x_linux64.
15259         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15260         tdesc_s390x_linux64 to...
15261         * s390-tdep.h: ...here.
15262
15263 2018-01-30  Pedro Alves  <palves@redhat.com>
15264
15265         PR gdb/13211
15266         * config.in, configure: Regenerate.
15267         * configure.ac: Check for getpgid.
15268         * go32-nat.c (go32_pass_ctrlc): New.
15269         (go32_target): Install it.
15270         * inf-child.c (inf_child_target): Install
15271         child_terminal_save_inferior, child_pass_ctrlc and
15272         child_interrupt.
15273         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15274         (inf_ptrace_target): No longer install it.
15275         * infcmd.c (interrupt_target_1): Adjust.
15276         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15277         (child_interrupt): Declare.
15278         (inferior::terminal_state): New.
15279         * inflow.c (struct terminal_info): Update comments.
15280         (inferior_process_group): Delete.
15281         (terminal_is_ours): Delete.
15282         (gdb_tty_state): New.
15283         (child_terminal_init): Adjust.
15284         (is_gdb_terminal, sharing_input_terminal_1)
15285         (sharing_input_terminal): New functions.
15286         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15287         Set the process's actual process group in the foreground if
15288         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15289         mark terminal as the inferior's if not sharing GDB's terminal.
15290         Don't check attach_flag.
15291         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15292         pass down a target_terminal_state.
15293         (child_terminal_save_inferior): New, factored out from ...
15294         (child_terminal_ours_1): ... this.  Handle
15295         target_terminal_state::is_ours_for_output.
15296         (child_interrupt, child_pass_ctrlc): New.
15297         (inflow_inferior_exit): Clear the inferior's terminal_state.
15298         (copy_terminal_info): Copy the inferior's terminal state.
15299         (_initialize_inflow): Remove reference to terminal_is_ours.
15300         * inflow.h (inferior_process_group): Delete.
15301         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15302         * procfs.c (procfs_target): Don't install procfs_interrupt.
15303         (procfs_interrupt): Delete.
15304         * remote.c (remote_serial_quit_handler): Adjust.
15305         (remote_interrupt): Remove ptid parameter.  Adjust.
15306         * target-delegates.c: Regenerate.
15307         * target.c: Include "terminal.h".
15308         (target_terminal::terminal_state): Rename to ...
15309         (target_terminal::m_terminal_state): ... this.
15310         (target_terminal::init): Adjust.
15311         (target_terminal::inferior): Adjust to per-inferior
15312         terminal_state.
15313         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15314         (target_terminal::ours, target_terminal::ours_for_output): Use
15315         target_terminal_is_ours_kind.
15316         (target_interrupt): Remove ptid parameter.  Adjust.
15317         (default_target_pass_ctrlc): Adjust.
15318         * target.h (target_ops::to_terminal_save_inferior): New field.
15319         (target_ops::to_interrupt): Remove ptid_t parameter.
15320         (target_interrupt): Remove ptid_t parameter.  Update comment.
15321         (target_pass_ctrlc): Update comment.
15322         * target/target.h (target_terminal_state): New scoped enum,
15323         factored out of ...
15324         (target_terminal::terminal_state): ... here.
15325         (target_terminal::inferior): Update comments.
15326         (target_terminal::restore_inferior): New.
15327         (target_terminal::is_inferior, target_terminal::is_ours)
15328         (target_terminal::is_ours_for_output): Adjust.
15329         (target_terminal::scoped_restore_terminal_state): Adjust to
15330         rename, and call restore_inferior() instead of inferior().
15331         (target_terminal::scoped_restore_terminal_state::m_state): Change
15332         type.
15333         (target_terminal::terminal_state): Rename to ...
15334         (target_terminal::m_terminal_state): ... this and change type.
15335
15336 2018-01-30  Pedro Alves  <palves@redhat.com>
15337
15338         * linux-nat.c (wait_for_signal): New function.
15339         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15340         directly.
15341         (async_terminal_is_ours)
15342         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15343         (linux_nat_add_target): Don't override
15344         to_terminal_inferior/to_terminal_ours.
15345
15346 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15347
15348         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15349
15350 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15351
15352         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15353         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15354         dwarf2_per_objfile_free here.
15355         (dwarf2_per_objfile_free): Remove.
15356         (_initialize_dwarf2_read): Don't register
15357         dwarf2_per_objfile_free as a registry cleanup.
15358
15359 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15360
15361         Avoid compilation errors in MinGW native builds
15362
15363         The error is triggered by including python-internal.h, and the
15364         error message is:
15365
15366              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15367                       from build-gnulib/import/math.h:27,
15368                       from d:/usr/Python26/include/pyport.h:235,
15369                       from d:/usr/Python26/include/Python.h:58,
15370                       from python/python-internal.h:94,
15371                       from python/py-arch.c:24:
15372              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15373         using ::hypot;
15374                 ^~~~~
15375
15376         This happens because Python headers define 'hypot' to expand t
15377         '_hypot' in the Windows builds.
15378         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15379         'hypoth'.  This avoids a compilation error.
15380
15381 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15382
15383         * MAINTAINERS (Write After Approval): Fix ordering.
15384
15385 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15386
15387         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15388
15389 2018-01-26  Alan Modra  <amodra@gmail.com>
15390
15391         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15392         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15393         Remove nop.  Make const.  Comment.
15394         (powerpc32_plt_stub_so_2): New.
15395         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15396         Correct count.  Update uses.
15397         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15398         Move common code reading PLT entry word.  Correct
15399         powerpc32_plt_stub PLT address calculation.
15400         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15401         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15402         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15403         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15404         (ppc64_standard_linkage8): Likewise.
15405         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15406         Correct insns description.
15407         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15408
15409 2018-01-24  Pedro Alves  <palves@redhat.com>
15410
15411         GCC PR libstdc++/83906
15412         * gdbtypes.c (operator==(const dynamic_prop &,
15413         const dynamic_prop &)): New.
15414         (operator==(const range_bounds &, const range_bounds &)): New.
15415         (check_types_equal): Use them instead of memcmp.
15416         * gdbtypes.h (operator==(const dynamic_prop &,
15417         const dynamic_prop &)): Declare.
15418         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15419         (operator==(const range_bounds &, const range_bounds &)): Declare.
15420         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15421
15422 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15423
15424         * s390-linux-tdep.c (s390_record_address_mask)
15425         (s390_record_calc_disp_common, s390_record_calc_disp)
15426         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15427         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15428         (s390_process_record): Move to s390-tdep.c.
15429         (s390_linux_init_abi_any): Adjust.
15430         * s390-tdep.c (s390_record_address_mask)
15431         (s390_record_calc_disp_common, s390_record_calc_disp)
15432         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15433         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15434         (s390_process_record): Moved from s390-linux-tdep.c
15435         (s390_gdbarch_init): Adjust.
15436
15437 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15438
15439         * s390-linux-nat.c (s390-tdep.h): New include.
15440         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15441         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15442         (ALLDEPFILES): Add s390-tdep.c.
15443         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15444         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15445         * s390-tdep.h: ...this.  New file.
15446         * s390-linux-tdep.c (s390-tdep.h): New include.
15447         (_initialize_s390_tdep): Rename to...
15448         (_initialize_s390_linux_tdep): ...this and adjust.
15449         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15450         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15451         s390-tdep.h.
15452         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15453         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15454         (s390_is_partial_instruction, s390_software_single_step)
15455         (is_non_branch_ril, s390_displaced_step_copy_insn)
15456         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15457         (s390_prologue_data, s390_addr, s390_store, s390_load)
15458         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15459         (s390_register_call_saved, s390_guess_tracepoint_registers)
15460         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15461         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15462         (s390_pseudo_register_name, s390_pseudo_register_type)
15463         (s390_pseudo_register_read, s390_pseudo_register_write)
15464         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15465         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15466         (s390_addr_bits_remove, s390_address_class_type_flags)
15467         (s390_address_class_type_flags_to_name)
15468         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15469         (s390_function_arg_float, s390_function_arg_vector)
15470         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15471         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15472         (s390_frame_align, s390_register_return_value, s390_return_value)
15473         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15474         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15475         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15476         (s390_trad_frame_prev_register, s390_unwind_cache)
15477         (s390_prologue_frame_unwind_cache)
15478         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15479         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15480         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15481         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15482         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15483         (s390_frame_base_address, s390_local_base_address)
15484         (s390_frame_base, s390_gcc_target_options)
15485         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15486         (s390_validate_reg_range, s390_tdesc_valid)
15487         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15488         * s390-tdep.c: ...this.  New file.
15489
15490 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15491
15492         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15493         (s390_process_record, s390_gdbarch_tdep_alloc)
15494         (s390_linux_init_abi_any): Use/set new hook.
15495
15496 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15497
15498         * s390-linux-tdep.c (osabi.h): New include.
15499         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15500         (s390_linux_init_abi_any): New functions.
15501         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15502
15503 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15504
15505         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15506         tdesc_has_registers check
15507
15508 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15509
15510         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15511         (s390_validate_reg_range): New macro.
15512         (s390_gdbarch_init): Adjust.
15513
15514 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15515
15516         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15517         (s390_gdbarch_tdep_alloc): Adjust.
15518         (s390_gdbarch_init): Adjust.
15519
15520 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15521
15522         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15523         <have_tdb>: Change type to bool.
15524         (s390_gdbarch_tdep_alloc): Adjust.
15525         (s390_gdbarch_init): Adjust.
15526
15527 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15528
15529         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15530         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15531         (s390_gdbarch_tdep_alloc): New function.
15532         (s390_gdbarch_init): Allocate tdep at start and use its fields
15533         instead of separate variables.
15534
15535 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15536
15537         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15538         when looking for cached gdbarch and add comment for remaining.
15539
15540 2018-01-22  Pedro Alves  <palves@redhat.com>
15541             Sergio Durigan Junior  <sergiodj@redhat.com>
15542
15543         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15544         case.
15545
15546 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15547
15548         * MAINTAINERS: Update my company e-mail address.
15549
15550 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15551
15552         * regcache.c (cooked_write_test): New function.
15553         (_initialize_regcache): Register the test.
15554
15555 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15556
15557         * ia64-tdep.c (ia64_pseudo_register_read): Call
15558         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15559         * m32c-tdep.c (m32c_cat_read): Likewise.
15560         (m32c_r3r2r1r0_read): Likewise.
15561         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15562         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15563
15564 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15565
15566         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15567         method raw_read instead of regcache_raw_read.
15568         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15569         * arm-tdep.c (arm_neon_quad_read): Likewise.
15570         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15571         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15572         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15573         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15574         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15575         (i386_pseudo_register_read_into_value): Likewise.
15576         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15577         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15578         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15579         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15580         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15581         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15582         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15583         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15584         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15585
15586 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15587
15588         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15589         * configure.tgt: Remove target mt.
15590         * mt-tdep.c: Remove.
15591         * regcache.c (cooked_read_test): Remove the check for mt.
15592
15593 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15594
15595         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15596         instead of gdbarch_pseudo_register_read_value.
15597
15598 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15599
15600         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15601         language is Ada.
15602
15603 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15604
15605         * linespec.c (create_sals_line_offset): Remove code that preserved
15606         the symtab_and_line's line number.
15607
15608 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15609
15610         * varobj.c (varobj_create): Don't set valid_block when creating a
15611         floating varobj.
15612
15613 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15614
15615         * varobj.c (varobj_create): Remove out of date comment.
15616
15617 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15618
15619         PR mi/20395
15620         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15621         updating innermost block.
15622         * parse.c (innermost_block_tracker::update): Take extra type
15623         parameter, and check types match before updating innermost block.
15624         (write_dollar_variable): Update innermost block for registers.
15625         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15626         (innermost_block_tracker::innermost_block_tracker): Initialise
15627         m_types member.
15628         (innermost_block_tracker::reset): Take type parameter.
15629         (innermost_block_tracker::update): Take type parameter, and pass
15630         type through as needed.
15631         (innermost_block_tracker::m_types): New member.
15632         * varobj.c (varobj_create): Pass type when reseting innermost
15633         block.
15634
15635 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15636
15637         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15638         * ada-lang.c (resolve_subexp): Likewise.
15639         * breakpoint.c (set_breakpoint_condition) Likewise.
15640         (watch_command_1) Likewise.
15641         * c-exp.y (variable): Likewise.
15642         * d-exp.y (PrimaryExpression): Likewise.
15643         * f-exp.y (variable): Likewise.
15644         * go-exp.y (variable): Likewise.
15645         * m2-exp.y (variable): Likewise.
15646         * objfiles.c (objfile::~objfile): Likewise.
15647         * p-exp.y (variable): Likewise.
15648         * parse.c (innermost_block): Change type.
15649         * parser-defs.h (class innermost_block_tracker): New.
15650         (innermost_block): Change to innermost_block_tracker.
15651         * printcmd.c (display_command): Switch to innermost_block API.
15652         (do_one_display): Likewise.
15653         * rust-exp.y (do_one_display): Likewise.
15654         * symfile.c (clear_symtab_users): Likewise.
15655         * varobj.c (varobj_create): Switch to innermost_block API, replace
15656         use of innermost_block with block stored on varobj object.
15657
15658 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15659
15660         * expression.h (innermost_block): Remove declaration.
15661         * varobj.c: Add 'parser-defs.h' include.
15662
15663 2018-01-19  Tom Tromey  <tom@tromey.com>
15664
15665         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15666         symbols in the static and global blocks.
15667
15668 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15669
15670         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15671         gdb_ptrace.h, and move including gdb_wait.h ...
15672         * nat/linux-ptrace.h: ... to here.
15673
15674 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15675
15676         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15677         inf_ptrace_detach_success.
15678         (inf_ptrace_detach_success): Add inferior parameter, use it
15679         instead of inferior_ptid, pass it to detach_inferior.
15680         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15681         parameter.
15682         * inferior.c (detach_inferior): Add overload that takes an
15683         inferior object.
15684         * inferior.h (detach_inferior): Likewise.
15685         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15686         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15687         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15688
15689 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15690
15691         * target.h (struct target_ops) <to_detach>: Add inferior
15692         parameter.
15693         (target_detach): Likewise.
15694         * target.c (dispose_inferior): Pass inferior down.
15695         (target_detach): Pass inferior down.  Assert that it is equal to
15696         the current inferior.
15697         * aix-thread.c (aix_thread_detach): Pass inferior down.
15698         * corefile.c (core_file_command): Pass current_inferior() down.
15699         * corelow.c (core_detach): Add inferior parameter.
15700         * darwin-nat.c (darwin_detach): Likewise.
15701         * gnu-nat.c (gnu_detach): Likewise.
15702         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15703         * infcmd.c (detach_command): Pass current_inferior() down to
15704         target_detach.
15705         * infrun.c (follow_fork_inferior): Pass parent_inf to
15706         target_detach.
15707         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15708         target_detach.
15709         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15710         * linux-thread-db.c (thread_db_detach): Likewise.
15711         * nto-procfs.c (procfs_detach): Likewise.
15712         * procfs.c (procfs_detach): Likewise.
15713         * record.c (record_detach): Likewise.
15714         * record.h (struct inferior): Forward-declare.
15715         (record_detach): Add inferior parameter.
15716         * remote-sim.c (gdbsim_detach): Likewise.
15717         * remote.c (remote_detach_1): Likewise.
15718         (remote_detach): Likewise.
15719         (extended_remote_detach): Likewise.
15720         * sol-thread.c (sol_thread_detach): Likewise.
15721         * target-debug.h (target_debug_print_inferior_p): New macro.
15722         * target-delegates.c: Re-generate.
15723         * top.c (kill_or_detach): Pass inferior down to target_detach.
15724         * windows-nat.c (windows_detach): Add inferior parameter.
15725
15726 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15727
15728         * target.h (struct target_ops) <to_detach>: Remove args
15729         parameter.
15730         (target_detach): Likewise.
15731         * target.c (dispose_inferior): Adjust.
15732         (target_detach): Remove args parameter, adjust.
15733         * aix-thread.c (aix_thread_detach): Adjust.
15734         * corefile.c (core_file_command): Adjust.
15735         * corelow.c (core_detach): Adjust.
15736         * darwin-nat.c (darwin_detach): Adjust.
15737         * gnu-nat.c (gnu_detach): Adjust.
15738         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15739         * infcmd.c (detach_command): Adjust
15740         * infrun.c (follow_fork_inferior): Adjust.
15741         (handle_vfork_child_exec_or_exit): Adjust.
15742         * linux-fork.c (linux_fork_detach): Remove args parameter.
15743         * linux-fork.h (linux_fork_detach): Likewise.
15744         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15745         * linux-thread-db.c (thread_db_detach): Likewise.
15746         * nto-procfs.c (procfs_detach): Likewise.
15747         * procfs.c (procfs_detach): Likewise.
15748         (do_detach): Remove signo parameter.
15749         * record.c (record_detach): Remove args parameter.
15750         * record.h (record_detach): Likewise.
15751         * remote-sim.c (gdbsim_detach): Likewise.
15752         * remote.c (remote_detach_1): Likewise.
15753         (remote_detach): Likewise.
15754         (extended_remote_detach): Likewise.
15755         * sol-thread.c (sol_thread_detach): Likewise.
15756         * target-delegates.c: Re-generate.
15757         * top.c (struct qt_args) <args>: Remove field.
15758         (kill_or_detach): Don't pass args.
15759         (quit_force): Don't set args.
15760         * windows-nat.c (windows_detach): Remove args parameter.
15761
15762 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15763
15764         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15765         (arm_linux_init_abi): Install it.
15766
15767 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15768
15769         * osabi.c (gdb_osabi_names): Extend the regexp for
15770         arm-linux-gnueabihf.
15771
15772 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15773
15774         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15775         m_abbrevs.
15776         (abbrev_table::add_abbrev): Update.
15777         (abbrev_table::lookup_abbrev): Update.
15778
15779 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15780
15781         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15782
15783 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15784
15785         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15786         to "std::string".
15787
15788 2018-01-17  Tom Tromey  <tom@tromey.com>
15789
15790         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15791
15792 2018-01-17  Tom Tromey  <tom@tromey.com>
15793
15794         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15795         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15796         (create_array_type_with_stride): Update.
15797         * dwarf2read.c (set_die_type): Update.
15798
15799 2018-01-17  Tom Tromey  <tom@tromey.com>
15800
15801         * dwarf2read.c (delayed_method_info): Remove typedef.
15802         (dwarf2_cu::method_info): Now a std::vector.
15803         (add_to_method_list): Update.
15804         (free_delayed_list): Remove.
15805         (compute_delayed_physnames): Update.
15806         (process_full_comp_unit, process_full_type_unit): Clear the method
15807         list.  Remove cleanups.
15808         (psymtab_include_file_name): Add name_holder parameter.  Use
15809         unique_xmalloc_ptr.
15810         (dwarf_decode_lines): Update.
15811
15812 2018-01-17  Tom Tromey  <tom@tromey.com>
15813             Simon Marchi  <simon.marchi@ericsson.com>
15814
15815         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15816         (dwarf2_per_objfile::free_cached_comp_units)
15817         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15818         (init_cutu_and_read_dies_no_follow): Update.
15819         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15820         (dwarf2_cu::~dwarf2_cu): New.
15821         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15822         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15823
15824 2018-01-17  Tom Tromey  <tom@tromey.com>
15825             Simon Marchi  <simon.marchi@ericsson.com>
15826
15827         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15828         (struct die_reader_specs) <abbrev_table>: New member.
15829         (struct abbrev_table): Add constructor.
15830         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15831         <abbrev_obstack>: Now an auto_obstack.
15832         (abbrev_table_up): New typedef.
15833         (init_cu_die_reader): Add abbrev_table parameter.
15834         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15835         Add result_dwo_abbrev_table.
15836         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15837         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15838         Update.
15839         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15840         parameter.
15841         (skip_children): Update.
15842         (abbrev_table::alloc_abbrev): Rename from
15843         abbrev_table_alloc_abbrev.
15844         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15845         (abbrev_table::lookup_abbrev): Rename from
15846         abbrev_table_lookup_abbrev.
15847         (abbrev_table_read_table): Return abbrev_table_up.
15848         (abbrev_table_free, abbrev_table_free_cleanup)
15849         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15850         (load_partial_dies): Update.
15851
15852 2018-01-17  Tom Tromey  <tom@tromey.com>
15853
15854         * dwarf2read.c (dwarf2_compute_name): Update comment.
15855         (read_func_scope, read_variable): Update.
15856         (new_symbol): Remove.
15857         (new_symbol_full): Rename to new_symbol.
15858
15859 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15860
15861         PR gdb/16577
15862         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15863         a warning instead of throwing an error, set section size to 0 and return
15864         NULL.
15865         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15866
15867 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15868
15869         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15870         std::string.
15871         (linux_ptrace_attach_fail_reason_string): Likewise.
15872         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15873         Likewise.
15874         (linux_ptrace_attach_fail_reason_string): Likewise.
15875         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15876
15877 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15878
15879         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15880
15881 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15882
15883         PR gdb/21559
15884         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15885         checking for fs_base/gs_base fields in struct user_regs_struct.
15886         * configure: Regenerate.
15887
15888 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15889
15890         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15891         function.
15892         (aarch64_linux_init_abi): Install it to gdbarch hook
15893         gcc_target_options.
15894
15895 2018-01-15  Pedro Alves  <palves@redhat.com>
15896
15897         * common/signals-state-save-restore.c
15898         (save_original_signals_state): Fix typos.
15899
15900 2017-01-12  Tom Tromey  <tom@tromey.com>
15901             Sergio Durigan Junior  <sergiodj@redhat.com>
15902
15903         * Makefile.in (install-only): Install gdb-add-index.
15904
15905 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15906
15907         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15908
15909 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15910
15911         * infrun.c (keep_going_pass_signal): Clear step-over info when
15912         insert_breakpoints fails.
15913
15914 2018-01-11  Pedro Alves  <palves@redhat.com>
15915
15916         PR gdb/22583
15917         * infrun.c (resume): Rename to ...
15918         (resume_1): ... this.
15919         (resume): Reimplement as wrapper around resume_1.
15920
15921 2018-01-11  Pedro Alves  <palves@redhat.com>
15922
15923         PR remote/22597
15924         * remote.c (remote_parse_stop_reply): Default to the last-set
15925         general thread instead of to 'magic_null_ptid'.
15926
15927 2018-01-10  Pedro Alves  <palves@redhat.com>
15928
15929         * language.h (language_get_symbol_name_matcher): Rename ...
15930         (get_symbol_name_matcher): ... this.
15931         * language.c (language_get_symbol_name_matcher): Ditto.
15932         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15933         callers adjusted.
15934
15935 2018-01-10  Pedro Alves  <palves@redhat.com>
15936
15937         PR gdb/22670
15938         * dwarf2read.c
15939         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15940         Adjust to use language_get_symbol_name_matcher instead of
15941         language_defn::la_get_symbol_name_matcher.
15942         * language.c (language_get_symbol_name_matcher): If in Ada mode
15943         and the lookup name is a verbatim match, return Ada's matcher.
15944         * language.h (language_get_symbol_name_matcher): Adjust comment.
15945         (ada_lookup_name_info::verbatim_p):: New method.
15946
15947 2018-01-10  Pedro Alves  <palves@redhat.com>
15948
15949         PR gdb/22670
15950         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15951         minsym's language is language_auto or language_cplus, pass down
15952         language_ada instead.
15953         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15954
15955 2018-01-10  Pedro Alves  <palves@redhat.com>
15956
15957         PR gdb/22670
15958         * minsyms.c (linkage_name_str): New function.
15959         (iterate_over_minimal_symbols): Use it.
15960
15961 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15962
15963         * NEWS: Document that 'info proc' now works on FreeBSD.
15964
15965 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15966
15967         * configure.ac: Check for kinfo_getfile in libutil.
15968         * configure: Regenerate.
15969         * config.in: Regenerate.
15970         * fbsd-nat.c: Include "fbsd-tdep.h".
15971         (fbsd_fetch_cmdline): New.
15972         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15973         rather than calling error.
15974         (fbsd_info_proc): New.
15975         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15976         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15977         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15978
15979 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15980
15981         * fbsd-nat.c (struct free_deleter): Remove.
15982         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15983
15984 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15985
15986         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15987         NULL for an empty pathname.
15988
15989 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15990
15991         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15992         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15993         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15994         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15995         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15996         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15997         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15998         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15999         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16000         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16001         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16002         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16003         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16004         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16005         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16006
16007 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16008
16009         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16010         (gnu_xfer_auxv): New function.
16011         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16012         TARGET_OBJECT_AUXV.
16013
16014 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16015             Simon Marchi  <simon.marchi@ericsson.com>
16016
16017         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16018         common/selftest.c.
16019         (COMMON_OBS): Remove selftest.o.
16020         * configure.ac: Append selftest-arch.c and common/selftest.c to
16021         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16022         * configure: Re-generated.
16023         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16024         GDB_SELF_TEST.
16025         (maintenance_info_selftests): Likewise.
16026
16027 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16028
16029         * ada-valprint.c (val_print_packed_array_elements): Use
16030         proper number of elements when printing an array indexed
16031         by an enumeration type.
16032
16033 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16034
16035         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16036         (dw2_get_file_names_reader): Adjust.
16037         (lookup_dwo_signatured_type): Adjust.
16038         (lookup_dwp_signatured_type): Adjust.
16039         (lookup_signatured_type): Adjust.
16040         (create_type_unit_group): Adjust.
16041         (get_type_unit_group): Adjust.
16042         (process_psymtab_comp_unit_reader): Adjust.
16043         (build_type_psymtabs_reader): Adjust.
16044         (scan_partial_symbols): Adjust.
16045         (add_partial_symbol): Adjust.
16046         (add_partial_subprogram): Adjust.
16047         (peek_die_abbrev): Adjust.
16048         (fixup_go_packaging): Adjust.
16049         (process_imported_unit_die): Adjust.
16050         (dwarf2_compute_name): Adjust.
16051         (dwarf2_physname): Adjust.
16052         (read_import_statement): Adjust.
16053         (handle_DW_AT_stmt_list): Adjust.
16054         (read_file_scope): Adjust.
16055         (read_func_scope): Adjust.
16056         (read_lexical_block_scope): Adjust.
16057         (read_call_site_scope): Adjust.
16058         (read_variable): Adjust.
16059         (dwarf2_rnglists_process): Adjust.
16060         (dwarf2_ranges_process): Adjust.
16061         (dwarf2_ranges_read): Adjust.
16062         (dwarf2_get_pc_bounds): Adjust.
16063         (dwarf2_record_block_ranges): Adjust.
16064         (dwarf2_add_field): Adjust.
16065         (dwarf2_add_member_fn): Adjust.
16066         (read_structure_type): Adjust.
16067         (process_structure_scope): Adjust.
16068         (read_enumeration_type): Adjust.
16069         (read_array_type): Adjust.
16070         (mark_common_block_symbol_computed): Adjust.
16071         (read_common_block): Adjust.
16072         (read_namespace_type): Adjust.
16073         (read_namespace): Adjust.
16074         (read_module_type): Adjust.
16075         (read_tag_pointer_type): Adjust.
16076         (read_tag_ptr_to_member_type): Adjust.
16077         (read_tag_string_type): Adjust.
16078         (read_subroutine_type): Adjust.
16079         (read_typedef): Adjust.
16080         (read_base_type): Adjust.
16081         (attr_to_dynamic_prop): Adjust.
16082         (read_subrange_type): Adjust.
16083         (read_unspecified_type): Adjust.
16084         (dwarf2_read_abbrevs): Adjust.
16085         (load_partial_dies): Adjust.
16086         (read_partial_die): Adjust.
16087         (find_partial_die): Adjust.
16088         (guess_partial_die_structure_name): Adjust.
16089         (fixup_partial_die): Adjust.
16090         (read_attribute_value): Adjust.
16091         (read_addr_index): Adjust.
16092         (read_addr_index_from_leb128): Adjust.
16093         (read_str_index): Adjust.
16094         (dwarf2_string_attr): Adjust.
16095         (get_debug_line_section): Adjust.
16096         (dwarf_decode_line_header): Adjust.
16097         (lnp_state_machine::check_line_address): Adjust.
16098         (dwarf_decode_lines_1): Adjust.
16099         (dwarf_decode_lines): Adjust.
16100         (dwarf2_start_symtab): Adjust.
16101         (var_decode_location): Adjust.
16102         (new_symbol_full): Adjust.
16103         (dwarf2_const_value_data): Adjust.
16104         (dwarf2_const_value_attr): Adjust.
16105         (dwarf2_const_value): Adjust.
16106         (die_type): Adjust.
16107         (die_containing_type): Adjust.
16108         (build_error_marker_type): Adjust.
16109         (lookup_die_type): Adjust.
16110         (guess_full_die_structure_name): Adjust.
16111         (anonymous_struct_prefix): Adjust.
16112         (determine_prefix): Adjust.
16113         (dwarf2_name): Adjust.
16114         (follow_die_ref_or_sig): Adjust.
16115         (follow_die_offset): Adjust.
16116         (follow_die_ref): Adjust.
16117         (follow_die_sig_1): Adjust.
16118         (follow_die_sig): Adjust.
16119         (get_signatured_type): Adjust.
16120         (get_DW_AT_signature_type): Adjust.
16121         (decode_locdesc): Adjust.
16122         (dwarf_decode_macros): Adjust.
16123         (cu_debug_loc_section): Adjust.
16124         (fill_in_loclist_baton): Adjust.
16125         (dwarf2_symbol_mark_computed): Adjust.
16126         (init_one_comp_unit): Don't assign
16127         dwarf2_cu::dwarf2_per_objfile.
16128         (set_die_type): Adjust.
16129
16130 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16131
16132         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16133         <dwarf2_per_objfile>: New field.
16134         (dwarf2_per_objfile): Remove global.
16135         (get_dwarf2_per_objfile): New function.
16136         (set_dwarf2_per_objfile): New function.
16137         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16138         dwarf2_per_objfile.
16139         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16140         (read_abbrev_offset): Likewise.
16141         (read_indirect_string): Likewise.
16142         (read_indirect_line_string): Likewise.
16143         (read_indirect_string_at_offset): Likewise.
16144         (read_indirect_string_from_dwz): Likewise.
16145         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16146         dwarf2_per_objfile.
16147         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16148         (create_all_comp_units): Change objfile parameter to
16149         dwarf2_per_objfile.
16150         (create_all_type_units): Likewise.
16151         (process_queue): Add dwarf2_per_objfile parameter.
16152         (read_and_check_comp_unit_head): Likewise.
16153         (lookup_dwo_unit_in_dwp): Likewise.
16154         (get_dwp_file): Likewise.
16155         (process_cu_includes): Likewise.
16156         (struct free_dwo_file_cleanup_data): New struct.
16157         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16158         set_dwarf2_per_objfile.
16159         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16160         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16161         context, adjust calls.
16162         (dw2_instantiate_symtab): Likewise.
16163         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16164         (dw2_get_cu): Likewise.
16165         (create_cu_from_index_list): Change objfile parameter to
16166         dwarf2_per_objfile.
16167         (create_cus_from_index_list): Get dwarf2_per_objfile from
16168         context, adjust calls.
16169         (create_cus_from_index): Likewise.
16170         (create_signatured_type_table_from_index): Change objfile
16171         parameter to dwarf2_per_objfile.
16172         (create_signatured_type_table_from_debug_names): Change objfile
16173         parameter to dwarf2_per_objfile.
16174         (create_addrmap_from_index): Likewise.
16175         (create_addrmap_from_aranges): Likewise.
16176         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16177         (dw2_setup): Remove.
16178         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16179         context.
16180         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16181         get_dwarf2_per_objfile.
16182         (dw2_forget_cached_source_info): Likewise.
16183         (dw2_map_symtabs_matching_filename): Likewise.
16184         (struct dw2_symtab_iterator) <index>: Remove.
16185         <dwarf2_per_objfile>: New field.
16186         (dw2_symtab_iter_init): Replace index parameter with
16187         dwarf2_per_objfile.
16188         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16189         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16190         (dw2_print_stats): Likewise.
16191         (dw2_dump): Likewise.
16192         (dw2_expand_symtabs_for_function): Likewise.
16193         (dw2_expand_all_symtabs): Likewise.
16194         (dw2_expand_symtabs_with_fullname): Likewise.
16195         (dw2_expand_marked_cus): Replace index and objfile parameters
16196         with dwarf2_per_objfile.
16197         (dw_expand_symtabs_matching_file_matcher): Add
16198         dwarf2_per_objfile parameter and adjust calls.
16199         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16200         adjust calls.
16201         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16202         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16203         adjust calls.
16204         (create_cus_from_debug_names_list): Replace objfile parameter
16205         with dwarf2_per_objfile and adjust calls.
16206         (create_cus_from_debug_names): Likewise.
16207         (dwarf2_read_debug_names): Likewise.
16208         (mapped_debug_names::namei_to_name): Adjust call.
16209         (dw2_debug_names_iterator::next): Likewise.
16210         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16211         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16212         (dw2_debug_names_dump): Likewise.
16213         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16214         (dw2_debug_names_expand_symtabs_matching): Likewise.
16215         (dwarf2_initialize_objfile): Likewise.
16216         (dwarf2_build_psymtabs): Likewise.
16217         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16218         this_cu.
16219         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16220         (read_and_check_comp_unit_head): Likewise.
16221         (read_abbrev_offset): Likewise.
16222         (create_debug_type_hash_table): Likewise.
16223         (create_debug_types_hash_table): Likewise.
16224         (create_all_type_units): Replace objfile parameter with
16225         dwarf2_per_objfile.
16226         (add_type_unit): Add dwarf2_per_objfile parameter.
16227         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16228         with dwarf2_per_objfile.
16229         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16230         (lookup_dwp_signatured_type): Likewise.
16231         (lookup_signatured_type): Likewise.
16232         (read_cutu_die_from_dwo): Likewise.
16233         (init_tu_and_read_dwo_dies): Likewise.
16234         (init_cutu_and_read_dies): Likewise.
16235         (init_cutu_and_read_dies_no_follow): Likewise.
16236         (allocate_type_unit_groups_table): Add objfile parameter.
16237         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16238         (get_type_unit_group): Likewise.
16239         (process_psymtab_comp_unit): Update call.
16240         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16241         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16242         (print_tu_stats): Likewise.
16243         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16244         in void* parameter.
16245         (build_type_psymtabs): Change objfile parameter to
16246         dwarf2_per_objfile.
16247         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16248         passed in void* parameter.
16249         (process_skeletonless_type_units): Change objfile parameter to
16250         dwarf2_per_objfile.
16251         (set_partial_user): Likewise.
16252         (dwarf2_build_psymtabs_hard): Likewise.
16253         (read_comp_units_from_section): Likewise.
16254         (create_all_comp_units): Likewise.
16255         (scan_partial_symbols): Update calls.
16256         (add_partial_symbol): Likewise.
16257         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16258         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16259         (process_queue): Add dwarf2_per_objfile parameter.
16260         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16261         (compute_compunit_symtab_includes): Likewise.
16262         (process_cu_includes): Add dwarf2_per_objfile parameter.
16263         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16264         (process_full_type_unit): Likewise.
16265         (process_imported_unit_die): Update call.
16266         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16267         (read_file_scope): Likewise.
16268         (allocate_dwo_file_hash_table): Add objfile parameter.
16269         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16270         (create_cus_hash_table): Likewise.
16271         (create_dwp_hash_table): Likewise.
16272         (create_dwo_unit_in_dwp_v1): Likewise.
16273         (create_dwp_v2_section): Likewise.
16274         (create_dwo_unit_in_dwp_v2): Likewise.
16275         (lookup_dwo_unit_in_dwp): Likewise.
16276         (try_open_dwop_file): Likewise.
16277         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16278         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16279         cleanup to include a reference to dwarf2_per_objfile.
16280         (open_dwp_file): Add dwarf2_per_objfile parameter.
16281         (open_and_init_dwp_file): Likewise.
16282         (get_dwp_file): Likewise.
16283         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16284         (queue_and_load_all_dwo_tus): Update call.
16285         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16286         data.
16287         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16288         (dwarf2_ranges_process): Likewise.
16289         (dwarf2_get_pc_bounds): Likewise.
16290         (mark_common_block_symbol_computed): Likewise.
16291         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16292         (dwarf2_read_abbrevs): Update call.
16293         (read_partial_die): Use dwarf2_per_objfile from cu.
16294         (find_partial_die): Likewise.
16295         (fixup_partial_die): Likewise.
16296         (read_attribute_value): Likewise.
16297         (read_indirect_string_at_offset_from): Add objfile parameter.
16298         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16299         parameter.
16300         (read_indirect_string_from_dwz): Add objfile parameter.
16301         (read_indirect_string): Add objfile parameter.
16302         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16303         (read_addr_index): Use dwarf2_per_objfile from cu.
16304         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16305         call dw2_setup.
16306         (read_str_index): Use dwarf2_per_objfile from cu.
16307         (get_debug_line_section): Likewise.
16308         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16309         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16310         (new_symbol_full): Use dwarf2_per_objfile from cu.
16311         (build_error_marker_type): Likewise.
16312         (lookup_die_type): Likewise.
16313         (determine_prefix): Likewise.
16314         (follow_die_offset): Likewise.
16315         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16316         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16317         (dwarf2_fetch_die_type_sect_off): Likewise.
16318         (dwarf2_get_die_type): Likewise.
16319         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16320         (get_signatured_type): Likewise.
16321         (get_DW_AT_signature_type): Likewise.
16322         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16323         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16324         (cu_debug_loc_section): Likewise.
16325         (fill_in_loclist_baton): Likewise.
16326         (dwarf2_symbol_mark_computed): Likewise.
16327         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16328         dwarf2_per_objfile.
16329         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16330         parameter.
16331         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16332         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16333         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16334         (set_die_type): Use dwarf2_free_objfile from cu.
16335         (get_die_type_at_offset): Likewise.
16336         (dwarf2_per_objfile_free): Don't assign global variable.
16337         (debug_names) <constructor>: Add dwarf2_per_objfile
16338         parameter, update m_debugstrlookup construction.
16339         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16340         parameter.
16341         <m_dwarf2_per_objfile>: New field.
16342         <lookup>: Use m_dwarf2_per_objfile.
16343         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16344         (psyms_seen_size): Likewise.
16345         (write_gdbindex): Replace objfile parameter with
16346         dwarf2_per_objfile.
16347         (write_debug_names): Likewise.
16348         (write_psymtabs_to_index): Likewise.
16349         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16350         calls.
16351
16352 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16353
16354         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16355         <dwarf2_per_objfile>: New field.
16356         (struct dwarf2_per_cu_data) <objfile>: Remove.
16357         <dwarf2_per_objfile>: New field.
16358         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16359         of objfile.
16360         (create_signatured_type_table_from_index): Likewise.
16361         (create_debug_type_hash_table): Likewise.
16362         (fill_in_sig_entry_from_dwo_entry): Likewise.
16363         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16364         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16365         objfile.
16366         (create_partial_symtab): Access objfile through
16367         dwarf2_per_objfile.
16368         (process_psymtab_comp_unit_reader): Likewise.
16369         (read_comp_units_from_section): Likewise.
16370         (scan_partial_symbols): Likewise.
16371         (add_partial_symbol): Likewise.
16372         (add_partial_subprogram): Likewise.
16373         (peek_die_abbrev): Likewise.
16374         (fixup_go_packaging): Likewise.
16375         (process_full_comp_unit): Likewise.
16376         (process_full_type_unit): Likewise.
16377         (process_imported_unit_die): Likewise.
16378         (dwarf2_compute_name): Likewise.
16379         (dwarf2_physname): Likewise.
16380         (read_import_statement): Likewise.
16381         (create_cus_hash_table): Assign dwarf2_physname instead of
16382         objfile.
16383         (read_func_scope): Access objfile through dwarf2_per_objfile.
16384         (read_lexical_block_scope): Likewise.
16385         (read_call_site_scope): Likewise.
16386         (read_variable): Likewise.
16387         (dwarf2_rnglists_process): Likewise.
16388         (dwarf2_ranges_process): Likewise.
16389         (dwarf2_ranges_read): Likewise.
16390         (dwarf2_record_block_ranges): Likewise.
16391         (dwarf2_add_field): Likewise.
16392         (dwarf2_add_member_fn): Likewise.
16393         (read_structure_type): Likewise.
16394         (process_structure_scope): Likewise.
16395         (read_enumeration_type): Likewise.
16396         (read_array_type): Likewise.
16397         (read_common_block): Likewise.
16398         (read_namespace_type): Likewise.
16399         (read_namespace): Likewise.
16400         (read_module_type): Likewise.
16401         (read_tag_pointer_type): Likewise.
16402         (read_tag_ptr_to_member_type): Likewise.
16403         (read_tag_string_type): Likewise.
16404         (read_subroutine_type): Likewise.
16405         (read_typedef): Likewise.
16406         (read_base_type): Likewise.
16407         (attr_to_dynamic_prop): Likewise.
16408         (read_subrange_type): Likewise.
16409         (read_unspecified_type): Likewise.
16410         (load_partial_dies): Likewise.
16411         (read_partial_die): Likewise.
16412         (find_partial_die): Likewise.
16413         (guess_partial_die_structure_name): Likewise.
16414         (fixup_partial_die): Likewise.
16415         (read_attribute_value): Likewise.
16416         (read_addr_index_from_leb128): Likewise.
16417         (dwarf2_read_addr_index): Likewise.
16418         (dwarf2_string_attr): Likewise.
16419         (lnp_state_machine::check_line_address): Likewise.
16420         (dwarf_decode_lines_1): Likewise.
16421         (dwarf_decode_lines): Likewise.
16422         (dwarf2_start_symtab): Likewise.
16423         (var_decode_location): Likewise.
16424         (new_symbol_full): Likewise.
16425         (dwarf2_const_value_data): Likewise.
16426         (dwarf2_const_value_attr): Likewise.
16427         (dwarf2_const_value): Likewise.
16428         (die_type): Likewise.
16429         (die_containing_type): Likewise.
16430         (lookup_die_type): Likewise.
16431         (guess_full_die_structure_name): Likewise.
16432         (anonymous_struct_prefix): Likewise.
16433         (dwarf2_name): Likewise.
16434         (follow_die_ref_or_sig): Likewise.
16435         (follow_die_offset): Likewise.
16436         (follow_die_ref): Likewise.
16437         (dwarf2_fetch_die_loc_sect_off): Likewise.
16438         (dwarf2_fetch_constant_bytes): Likewise.
16439         (dwarf2_fetch_die_type_sect_off): Likewise.
16440         (dwarf2_get_die_type): Likewise.
16441         (follow_die_sig): Likewise.
16442         (decode_locdesc): Likewise.
16443         (dwarf2_per_cu_objfile): Likewise.
16444         (dwarf2_per_cu_text_offset): Likewise.
16445         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16446         objfile.
16447         (set_die_type): Access objfile through
16448         dwarf2_per_objfile.
16449
16450 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16451
16452         * valprint.c (converted_character_d): Remove typedef.
16453         (DEF_VEC_O (converted_character_d)): Remove.
16454         (count_next_character): Use std::vector.
16455         (print_converted_chars_to_obstack): Likewise.
16456         (generic_printstr): Likewise.
16457
16458 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16459
16460         * xml-support.h (struct gdb_xml_value): Add constructor.
16461         <value>: Change type to unique_xmalloc_ptr.
16462         (gdb_xml_value_s): Remove typedef.
16463         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16464         (gdb_xml_element_start_handler): Change parameter type to
16465         std::vector.
16466         (xml_find_attribute): Likewise.
16467         * xml-support.c (xml_find_attribute): Change parameter type to
16468         std::vector and adjust.
16469         (gdb_xml_values_cleanup): Remove.
16470         (gdb_xml_parser::start_element): Adjust to std::vector.
16471         (xinclude_start_include): Change paraeter type to std::vector
16472         and adjust.
16473         * btrace.c (check_xml_btrace_version): Likewise.
16474         (parse_xml_btrace_block): Likewise.
16475         (parse_xml_btrace_pt_config_cpu): Likewise.
16476         (parse_xml_btrace_pt): Likewise.
16477         (parse_xml_btrace_conf_bts): Likewise.
16478         (parse_xml_btrace_conf_pt): Likewise.
16479         * memory-map.c (memory_map_start_memory): Likewise.
16480         (memory_map_start_property): Likewise.
16481         * osdata.c (osdata_start_osdata): Likewise.
16482         (osdata_start_item): Likewise.
16483         (osdata_start_column): Likewise.
16484         * remote.c (start_thread): Likewise.
16485         * solib-aix.c (library_list_start_library): Likewise.
16486         (library_list_start_list): Likewise.
16487         * solib-svr4.c (library_list_start_library): Likewise.
16488         (svr4_library_list_start_list): Likewise.
16489         * solib-target.c (library_list_start_segment): Likewise.
16490         (library_list_start_section): Likewise.
16491         (library_list_start_library): Likewise.
16492         (library_list_start_list): Likewise.
16493         * tracepoint.c (traceframe_info_start_memory): Likewise.
16494         (traceframe_info_start_tvar): Likewise.
16495         * xml-syscall.c (syscall_start_syscall): Likewise.
16496         * xml-tdesc.c (tdesc_start_target): Likewise.
16497         (tdesc_start_feature): Likewise.
16498         (tdesc_start_reg): Likewise.
16499         (tdesc_start_union): Likewise.
16500         (tdesc_start_struct): Likewise.
16501         (tdesc_start_flags): Likewise.
16502         (tdesc_start_enum): Likewise.
16503         (tdesc_start_field): Likewise.
16504         (tdesc_start_enum_value): Likewise.
16505         (tdesc_start_vector): Likewise.
16506
16507 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16508
16509         * extension.h (struct xmethod_worker) <clone>: Remove.
16510         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16511         Remove.
16512         (python_xmethod_worker::clone): Remove.
16513         * valops.c (find_overload_match): Use std::move instead of
16514         clone.
16515
16516 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16517
16518         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16519         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16520         <free_xmethod_worker_data>: Remove.
16521         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16522         <get_xmethod_arg_types>: Remove.
16523         <get_xmethod_result_type>: Remove.
16524         <invoke_xmethod>: Remove.
16525         * extension.c (new_xmethod_worker): Remove.
16526         (clone_xmethod_worker): Remove.
16527         (get_matching_xmethod_workers): Return void, pass std::vector by
16528         pointer.
16529         (get_xmethod_arg_types): Rename to...
16530         (xmethod_worker::get_arg_types): ... this, and adjust.
16531         (get_xmethod_result_type): Rename to...
16532         (xmethod_worker::get_result_type): ... this, and adjust.
16533         (invoke_xmethod): Remove.
16534         (free_xmethod_worker): Remove.
16535         (free_xmethod_worker_vec): Remove.
16536         * extension.h (enum ext_lang_rc): Move here from
16537         extension-priv.h.
16538         (struct xmethod_worker): Add constructor and destructor.
16539         <data>: Remove.
16540         <value>: Remove.
16541         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16542         virtual pure methods.
16543         <get_arg_types, get_result_type>: New methods.
16544         (xmethod_worker_ptr): Remove typedef.
16545         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16546         (xmethod_worker_vec): Remove typedef.
16547         (xmethod_worker_up): New typedef.
16548         (invoke_xmethod): Remove.
16549         (clone_xmethod_worker): Remove.
16550         (free_xmethod_worker): Remove.
16551         (free_xmethod_worker_vec): Remove.
16552         (get_xmethod_arg_types): Remove.
16553         (get_xmethod_result_type): Remove.
16554         * valops.c (find_method_list): Use std::vector, don't use
16555         intermediate vector.
16556         (value_find_oload_method_list): Use std::vector.
16557         (find_overload_match): Use std::vector.
16558         (find_oload_champ): Use std::vector.
16559         * value.c (value_free): Use operator delete.
16560         (value_of_xmethod): Rename to...
16561         (value_from_xmethod): ... this.  Don't assign
16562         xmethod_worker::value, take rvalue-reference.
16563         (result_type_of_xmethod): Adjust.
16564         (call_xmethod): Adjust.
16565         * value.h: Include extension.h.
16566         (struct xmethod_worker): Don't forward-declare.
16567         (value_of_xmethod): Rename to...
16568         (value_from_xmethod): ... this, take rvalue-reference.
16569         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16570         (struct python_xmethod_worker): ... this, add constructor and
16571         destructor.
16572         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16573         (gdbpy_free_xmethod_worker_data): Rename to...
16574         (python_xmethod_worker::~python_xmethod_worker): ... this and
16575         adjust.
16576         (gdbpy_clone_xmethod_worker_data): Rename to...
16577         (python_xmethod_worker::clone): ... this and adjust.
16578         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16579         temporary vector.
16580         (gdbpy_get_xmethod_arg_types): Rename to...
16581         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16582         (gdbpy_get_xmethod_result_type): Rename to...
16583         (python_xmethod_worker::do_get_result_type): ... this and
16584         adjust.
16585         (gdbpy_invoke_xmethod): Rename to...
16586         (python_xmethod_worker::invoke): ... this and adjust.
16587         (new_python_xmethod_worker): Rename to...
16588         (python_xmethod_worker::python_xmethod_worker): ... this and
16589         adjust.
16590         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16591         Remove.
16592         (gdbpy_free_xmethod_worker_data): Remove.
16593         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16594         (gdbpy_get_xmethod_arg_types): Remove.
16595         (gdbpy_get_xmethod_result_type): Remove.
16596         (gdbpy_invoke_xmethod): Remove.
16597         * python/python.c (python_extension_ops): Remove obsolete
16598         callbacks.
16599
16600 2018-01-05  Pedro Alves  <palves@redhat.com>
16601
16602         PR gdb/18653
16603         * common/signals-state-save-restore.c
16604         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16605         find a custom handler preinstalled, instead of internal erroring.
16606         But only warn if !quiet.
16607         * common/signals-state-save-restore.h
16608         (save_original_signals_state): New parameter 'quiet'.
16609         * main.c (captured_main_1): Move save_original_signals_state call
16610         after option handling, and pass QUIET.
16611
16612 2018-01-05  Pedro Alves  <palves@redhat.com>
16613
16614         * spu-tdep.c (spu_catch_start): Pass
16615         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16616
16617 2018-01-05  Pedro Alves  <palves@redhat.com>
16618
16619         PR gdb/22670
16620         * ada-lang.c (literal_symbol_name_matcher): New function.
16621         (ada_get_symbol_name_matcher): Use it for
16622         symbol_name_match_type::SEARCH_NAME.
16623         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16624         it down instead of assuming symbol_name_match_type::FULL.
16625         * block.h (block_lookup_symbol): New parameter 'match_type'.
16626         * c-valprint.c (print_unpacked_pointer): Use
16627         lookup_symbol_search_name instead of lookup_symbol.
16628         * compile/compile-object-load.c (get_out_value_type): Pass down
16629         symbol_name_match_type::SEARCH_NAME.
16630         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16631         symbol_name_match_type::FULL.
16632         * cp-support.c (cp_get_symbol_name_matcher): Handle
16633         symbol_name_match_type::SEARCH_NAME.
16634         * infrun.c (insert_exception_resume_breakpoint): Use
16635         lookup_symbol_search_name.
16636         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16637         * psymtab.c (maintenance_check_psymtabs): Use
16638         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16639         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16640         SYMBOL_SEARCH_NAME.
16641         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16642         if symbol_name_match_type::SEARCH_NAME.
16643         (lookup_symbol_in_language): Pass down
16644         symbol_name_match_type::FULL.
16645         (lookup_symbol_search_name): New.
16646         (lookup_language_this): Pass down
16647         symbol_name_match_type::SEARCH_NAME.
16648         (lookup_symbol_aux, lookup_local_symbol): New parameter
16649         'match_type'.  Pass it down.
16650         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16651         (lookup_symbol_search_name): New declaration.
16652         (lookup_symbol_in_block): New 'match_type' parameter.
16653
16654 2018-01-05  Pedro Alves  <palves@redhat.com>
16655
16656         PR gdb/22670
16657         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16658         ada_lookup_symbol.
16659         (ada_lookup_symbol): Reimplement in terms of
16660         ada_lookup_symbol_list, bits factored out from
16661         ada_lookup_encoded_symbol.
16662
16663 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16664
16665         * ada-exp.y (write_object_renaming): When subscripting an array
16666         using a symbol as the index, pass the block in call to
16667         ada_lookup_encoded_symbol when looking that symbol up.
16668
16669 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16670
16671         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16672         TYPE_INDEX_TYPE.
16673
16674 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16675
16676         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16677         the case where VALUE_LVAL (val0) is not lval_memory.
16678
16679 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16680
16681         * ada-valprint.c (print_optional_low_bound): Handle
16682         character-indexed array printing like boolean-indexed array
16683         printing.
16684
16685 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16686
16687         * NEWS: Create a new section for the next release branch.
16688         Rename the section of the current branch, now that it has
16689         been cut.
16690
16691 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16692
16693         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16694         * version.in: Bump version to 8.1.50.DATE-git.
16695
16696 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16697
16698         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16699         Add field.
16700         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16701         Add field.
16702         (default_exception_support_info) <catch_handlers_sym>: Add field.
16703         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16704         (ada_exception_name_addr_1): Add "catch handlers" handling.
16705         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16706         Update all callers.
16707         (create_excep_cond_exprs) <ex>: Add parameter.
16708         (re_set_exception): Update create_excep_cond_exprs call.
16709         (print_it_exception, print_one_exception, print_mention_exception)
16710         (print_recreate_exception): Add "catch handler" handling.
16711         (allocate_location_catch_handlers, re_set_catch_handlers)
16712         (check_status_catch_handlers, print_it_catch_handlers)
16713         (print_one_catch_handlers, print_mention_catch_handlers)
16714         (print_recreate_catch_handlers): New function.
16715         (catch_handlers_breakpoint_ops): New variable.
16716         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16717         Add parameter.  Add "catch handler" handling.
16718         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16719         Add "catch handler" handling.
16720         (ada_exception_catchpoint_cond_string): Add "catch handler"
16721         handling.
16722         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16723         call.
16724         (catch_ada_handlers_command): New function.
16725         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16726         operations structure.
16727         (_initialize_ada_language): Add "catch handlers" command entry.
16728         * NEWS: Document "catch handlers" feature.
16729
16730 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16731
16732         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16733         account when creating the array type of the slice.
16734         (ada_value_slice): Likewise.
16735
16736 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16737
16738         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16739         New enum value.
16740         (create_array_type_with_stride): Add byte_stride_prop parameter.
16741         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16742         New parameter.  Update all callers in this file.
16743         (array_type_has_dynamic_stride): New function.
16744         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16745         of arrays with dynamic byte strides.
16746         * dwarf2read.c (read_array_type): Add support for dynamic
16747         DW_AT_byte_stride attributes.
16748
16749 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16750
16751         * dwarf2read.c (read_unspecified_type): Treat
16752         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16753
16754 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16755
16756         Update copyright year range in all GDB files.
16757
16758 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16759
16760         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16761         and gdb/testsuite/gdb.base/step-line.c.
16762
16763 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16764
16765         * copyright.py (main): Dump the contents of
16766         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16767         even if BY_HAND is empty.
16768
16769 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16770
16771         * top.c (print_gdb_version): Update Copyright year in version
16772         message.
16773
16774 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16775
16776         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16777
16778 For older changes see ChangeLog-2017.
16779 \f
16780 Local Variables:
16781 mode: change-log
16782 left-margin: 8
16783 fill-column: 74
16784 version-control: never
16785 coding: utf-8
16786 End: