Fix compile error with clang 3.8
[external/binutils.git] / gdb / ChangeLog
1 2018-12-21  Dave Murphy  <davem@devkitpro.org>
2
3         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
4         initialise.
5         * probe.c (any_static_probe_ops): Ditto.
6         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
7         * stap-probe.c (stap_static_probe_ops): Ditto.
8         * tui/tui-hooks.c (tui_observers_token): Ditto.
9         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
10
11 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
12
13         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
14         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
15         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
16         (default_unwind_sp): Define new function.
17         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
18         (default_unwind_sp): Declare new function.
19         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
20         available.
21         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
22         * gdb/gdbarch.c: Regenerate.
23         * gdb/gdbarch.h: Regenerate.
24         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
25         unwind_sp.  Add additional header files to be included in
26         generated file.
27
28 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
29
30         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
31         sp clobbers.
32
33 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
34
35         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
36         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
37         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
38         'processing_has_namespace_info' from unsigned int to bool.  Update
39         comments.
40         (producer_is_icc_lt_14): Update return type.
41         (producer_is_gcc_lt_4_3): Likewise.
42         (producer_is_gxx_lt_4_6): Likewise.
43         (process_die): Write true instead of 1 into predicate fields.
44         (dwarf2_start_symtab): Likewise.
45         (var_decode_location): Likewise.
46         (dwarf2_mark_helper): Likewise.
47         (dwarf2_mark): Likewise.
48         (dwarf2_clear_marks): Write false instead of 0 into predicate
49         field.
50         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
51         0.
52
53 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
54
55         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
56         asm/sigcontext.h.
57
58 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
59
60         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
61         warning trailing new line.
62
63 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
64
65         * nat/linux-ptrace.c (kill_child): New function.
66         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
67         Add a call to kill_child in case of early return after fork.
68         (linux_check_ptrace_features): Use kill_child instead of local code.
69         (linux_test_for_tracefork): Likewise.
70
71 2018-12-14  Tom Tromey  <tom@tromey.com>
72
73         * Makefile.in: Remove "alloca" comment.
74         (INFOFILES): Remove.
75         (local-maintainer-clean): Don't use INFOFILES.
76
77 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
78
79         * syscalls/update-freebsd.sh: New file.
80         * syscalls/freebsd.xml: Regenerate.
81
82 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
83
84         * NEWS: Add entry documenting system call aliases.
85         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
86         to get_syscalls_by_name.
87         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
88         * gdbarch.h: Regenerate.
89         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
90         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
91         from get_syscall_by_name.  Now accepts a pointer to a vector of
92         integers and returns a bool.
93         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
94         (syscall_create_syscall_desc): Add alias parameter and pass it to
95         syscall_desc constructor.
96         (syscall_start_syscall): Handle alias attribute.
97         (syscall_attr): Add alias attribute.
98         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
99         Now accepts a pointer to a vector of integers and returns a
100         bool.  Add syscalls whose alias or name matches the requested
101         name.
102         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
103         accepts a pointer to a vector of integers and returns a bool.
104         * xml-syscall.h (get_syscalls_by_name): Likewise.
105
106 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
107
108         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
109         to get_syscalls_by_group.
110         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
111         false.
112         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
113         numbers to an existing vector of integers and return a bool.
114         (get_syscalls_by_group): Accept pointer to vector of integers
115         and change return type to bool.
116         * xml-syscall.h (get_syscalls_by_group): Likewise.
117
118 2018-12-13  Jim Wilson  <jimw@sifive.com>
119
120         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
121         comment for SD field, and correct xlen calculation.  For MISA, add
122         comment for MXL field, add call to register_size, and correct base
123         calculation.
124
125 2018-12-13  Stafford Horne  <shorne@gmail.com>
126
127         * NEWS(New targets): Add or1k*-*-linux*.
128
129 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
130
131         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
132         declare on one line to fix ARI warning.
133
134 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
135
136         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
137         (infcall_suspend_state::registers): New.
138         (infcall_suspend_state::restore): New.
139         (infcall_suspend_state::thread_suspend): Rename to...
140         (infcall_suspend_state::m_thread_suspend): ...this.
141         (infcall_suspend_state::registers): Rename to...
142         (infcall_suspend_state::m_registers): ...this.
143         (infcall_suspend_state::siginfo_gdbarch): Rename to...
144         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
145         (infcall_suspend_state::siginfo_data): Rename to...
146         (infcall_suspend_state::m_siginfo_data): ...this.
147         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
148         constructor.
149         (restore_infcall_suspend_state): Rewrite to use
150         infcall_suspend_state::restore method.
151         (get_infcall_suspend_state_regcache): Use
152         infcall_suspend_state::registers method.
153
154 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
155
156         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
157         arguments are passed in integer registers.
158         (riscv_call_arg_complex_float): Likewise.
159
160 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
161
162         * nat/linux-osdata.c (common_getter): New function.
163         (struct osdata_type): Change getter to take_snapshot.
164         Add LONGEST len_avail and struct buffer buffer.
165         Change all elements in the initializer.
166         Add an element for the list of types.
167         (linux_xfer_osdata_info_os_types): New function.
168         (linux_common_xfer_osdata): Use common_getter for the list of types.
169         Replace getter call by common_getter.
170         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
171         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
172         (linux_xfer_osdata_fds): Likewise.
173         (linux_xfer_osdata_modules): Likewise.
174         (linux_xfer_osdata_msg): Likewise.
175         (linux_xfer_osdata_processes): Likewise.
176         (linux_xfer_osdata_processgroups): Likewise.
177         (linux_xfer_osdata_sem): Likewise.
178         (linux_xfer_osdata_shm): Likewise.
179         (linux_xfer_osdata_isockets): Likewise.
180         (linux_xfer_osdata_threads): Likewise.
181
182 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
183
184         * nat/linux-osdata.c: Removed various trailing spaces.
185
186 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
187
188         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
189         leading whitespace before #include line.
190
191 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
192             Дилян Палаузов  <dilyan.palauzov@aegee.org>
193
194         PR gdb/23950
195         * configure.ac: Search for tgetent in libtinfow.
196         * configure: Re-generate.
197
198 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
199
200         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
201         (thread_db_err_str): Forward declare.
202         (delete_thread_db_info): Call td_ta_delete_p if available.
203         (try_thread_db_load_1): Acquire td_ta_delete address.
204         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
205
206 2018-12-08  Pedro Alves  <palves@redhat.com>
207
208         * source.c (forward_search_command): Rename to ...
209         (search_command_helper): ... this.  Add 'forward' parameter.
210         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
211         buffer.  Handle backward searches too.
212         (forward_search_command, reverse_search_command): Reimplement by
213         calling search_command_helper.
214
215 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
216
217         * .dir-locals.el: Copy most of the settings from c-mode over to
218         c++-mode.
219
220 2018-12-08  Stafford Horne  <shorne@gmail.com>
221
222         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
223         * configure.tgt: Add or1k*-*-linux*.
224         * or1k-linux-tdep.c: New file.
225         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
226
227 2018-12-07  Pedro Alves  <palves@redhat.com>
228
229         * dwarf2read.c (get_gdb_index_contents_from_section): Use
230         gdb::make_array_view.
231
232 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
233
234         * language.c (_initialize_language): Fix leak by assigning
235         a static string to language.  Same for range and case_sensitive,
236         even if no leak is detected for these variables.
237
238 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
239
240         * configure: Re-generate.
241         * configure.ac: Use separate sed expressions to escape variables
242         in auto-load directories.
243
244 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
245
246         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
247         (riscv_find_default_target_description): Use new function to
248         extract feature from gdbarch_info.
249         (riscv_gdbarch_init): Add error checks for xlen and flen between
250         target description and bfd headers.  Be smarter about when we
251         think the hardware floating point abi should be used.
252
253 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
254
255         * nat/aarch64-linux-hw-point.c
256         (aarch64_linux_any_set_debug_regs_state): New function.
257         * nat/aarch64-linux-hw-point.h
258         (aarch64_linux_any_set_debug_regs_state): New declaration.
259         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
260         BPs or WPs are set.
261
262 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
263
264         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
265         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
266
267 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
268             Simon Marchi  <simon.marchi@ericsson.com>
269
270         * linespec.c (symtab_vector_up): Remove.
271         (symtabs_from_filename): Change return type to std::vector.
272         (collect_symtabs_from_filename): Likewise.
273         (create_sals_line_offset): Assign return value of
274         collect_symtabs_from_filename to *ls->file_symtabs.
275         (convert_explicit_location_to_linespec): Remove call to release.
276         (parse_linespec): Likewise.
277         (symtab_collector) <symtab_collector>: Remove initialization of
278         m_symtabs.
279         <release_symtabs>: Change return type to std::vector<symtab *>.
280         <operator ()>: Adjust.
281
282 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
283
284         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
285         defined.
286         (union sigval32, struct siginfo32, fbsd_siginfo_size)
287         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
288         of KERN_PROC_AUXV and PT_LWPINFO.
289         (fbsd_nat_target::xfer_partial): Define method unconditionally.
290         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
291         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
292         Make TARGET_OBJECT_FREEBSD_VMMAP and
293         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
294         and KERN_PROC_PS_STRINGS.
295         * fbsd-nat.h: Include <sys/proc.h>.
296         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
297
298 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
299
300         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
301         header files.
302         (riscv_linux_nat_target::read_description): New method.
303
304 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
305
306         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
307         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
308         (riscv_tdesc_cache): New global.
309         (riscv_create_target_description): Look in the cache before
310         creating a new target description.
311
312 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
313
314         * arch/riscv.h (riscv_gdb_features::operator==): New.
315         (riscv_gdb_features::operator!=): New.
316         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
317         operator.
318
319 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
320
321         * arch/riscv.h (riscv_create_target_description): Make return type
322         const.
323         * arch/riscv.c (riscv_create_target_description): Likewise.
324         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
325
326 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
327             Keith Seitz  <keiths@redhat.com>
328             Tom Tromey  <tom@tromey.com>
329             Sergio Durigan Junior  <sergiodj@redhat.com>
330
331         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
332         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
333         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
334         inside the CU.
335
336 2018-11-30  Pedro Alves  <palves@redhat.com>
337
338         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
339         <stratum>: New override.
340         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
341         <stratum>: New override.
342         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
343         <stratum>: New override.
344         * exec.c (exec_target) <exec_target>: Delete.
345         <stratum>: New override.
346         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
347         stratum method instead of the to_stratum field.
348         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
349         <stratum>: New override.
350         (thread_db_target::thread_db_target): Delete.
351         * make-target-delegates (print_class): Don't print a ctor
352         declaration.  Print a stratum method override declaration.
353         * process-stratum-target.h (process_stratum_target)
354         <process_stratum_target>: Delete.
355         <stratum>: New override.
356         * ravenscar-thread.c (ravenscar_thread_target)
357         <ravenscar_thread_target>: Delete.
358         <stratum>: New override.
359         * record-btrace.c (record_btrace_target)
360         <record_btrace_target>: Delete.
361         <stratum>: New override.
362         * record-full.c (record_full_base_target)
363         <record_full_base_target>: Delete.
364         <stratum>: New override.
365         * record.c (record_disconnect, record_detach)
366         (record_mourn_inferior, record_kill): Adjust to use the stratum
367         method instead of the to_stratum field.
368         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
369         * sol-thread.c (sol_thread_target)
370         <sol_thread_target>: Delete.
371         <stratum>: New override.
372         * spu-multiarch.c (spu_multiarch_target)
373         <spu_multiarch_target>: Delete.
374         <stratum>: New override.
375         * target-delegates.c: Regenerate.
376         * target.c (target_stack::push, target_stack::unpush)
377         (pop_all_targets_above, pop_all_targets_at_and_above)
378         (info_target_command, target_require_runnable)
379         (target_stack::find_beneath): Adjust to use the stratum method
380         instead of the to_stratum field.
381         (dummy_target::dummy_target): Delete.
382         (dummy_target::stratum): New.
383         (debug_target::debug_target): Delete.
384         (debug_target::stratum): New.
385         (maintenance_print_target_stack): Adjust to use the stratum method
386         instead of the to_stratum field.
387         * target.h (struct target_ops) <stratum>: New method.
388         <to_stratum>: Delete.
389         <is_pushed>: Adjust to use the stratum method
390         instead of the to_stratum field.
391
392 2018-11-30  Pedro Alves  <palves@redhat.com>
393
394         * corelow.c (core_target) <has_all_memory, has_execution>: New
395         overrides.
396         * inf-child.c (inf_child_target::has_all_memory)
397         (inf_child_target::has_memory, inf_child_target::has_stack)
398         (inf_child_target::has_registers)
399         (inf_child_target::has_execution): Delete.
400         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
401         has_stack, has_registers, has_execution>: Delete.
402         * process-stratum-target.c
403         (process_stratum_target::has_all_memory)
404         (process_stratum_target::has_memory)
405         (process_stratum_target::has_stack)
406         (process_stratum_target::has_registers)
407         (process_stratum_target::has_execution): New.
408         * process-stratum-target.h (process_stratum_target)
409         <has_all_memory, has_memory, has_stack, has_registers,
410         has_execution>: New method overrides.
411         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
412         has_memory, has_stack, has_registers, has_execution>: Delete.
413         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
414         has_execution>: Delete.
415         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
416         has_registers, has_execution>: Delete.
417         * target.c (default_child_has_all_memory)
418         (default_child_has_memory, default_child_has_stack)
419         (default_child_has_registers, default_child_has_execution):
420         Delete.
421         * target.h (default_child_has_all_memory)
422         (default_child_has_memory, default_child_has_stack)
423         (default_child_has_registers, default_child_has_execution):
424         Delete.
425         * tracefile.h (tracefile_target) <has_execution>: New override.
426
427 2018-11-30  Pedro Alves  <palves@redhat.com>
428
429         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
430         * bsd-kvm.c: Include "process-stratum-target.h".
431         (bsd_kvm_target): Now inherits from process_stratum_target.
432         (bsd_kvm_target::bsd_kvm_target): Default it.
433         * corelow.c: Include "process-stratum-target.h".
434         (core_target): Now inherits from process_stratum_target.
435         (core_target::core_target): Don't set to_stratum here.
436         * inf-child.c (inf_child_target::inf_child_target): Delete.
437         * inf-child.h: Include "process-stratum-target.h".
438         (inf_child_target): Inherit from process_stratum_target.
439         (inf_child_target) <inf_child_target>: Default it.
440         <can_async_p, supports_non_stop, supports_disable_randomization>:
441         Delete overrides.
442         * process-stratum-target.c: New file.
443         * process-stratum-target.h: New file.
444         * remote-sim.c: Include "process-stratum-target.h".
445         (gdbsim_target): Inherit from process_stratum_target.
446         <gdbsim_target>: Default it.
447         * remote.c: Include "process-stratum-target.h".
448         (remote_target): Inherit from process_stratum_target.
449         <remote_target>: Default it.
450         * target.c (default_thread_address_space)
451         (default_thread_architecture): Delete.
452         * target.h (target_ops) <thread_architecture>: Now returns NULL by
453         default.
454         <thread_address_space>: Ditto.
455         * test-target.h: Include "process-stratum-target.h" instead of
456         "target.h".
457         (test_target_ops): Inherit from process_stratum_target.
458         <test_target_ops>: Default it.
459         * tracefile.c (tracefile_target::tracefile_target): Delete.
460         * tracefile.h: Include "process-stratum-target.h".
461         (tracefile_target): Inherit from process_stratum_target.
462         <tracefile_target>: Default it.
463         * target-delegates.c: Regenerate.
464
465 2018-11-30  Pedro Alves  <palves@redhat.com>
466
467         * Makefile.in (COMMON_SFILES): Add test-target.c.
468         * gdbarch-selftests.c: Include "test-target.h".
469         * regcache.c: Include "test-target.h".
470         * target.c (test_target_info, test_target_ops::info): Move to ...
471         * test-target.c: ... this new file.
472         * target.h (test_target_ops): Move to ...
473         * test-target.h: ... this new file.
474
475 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
476
477         * source.c (forward_search_command): Fix leak by using
478         xrealloc even for the first allocation in the loop, as buf
479         is static.
480
481 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
482
483         PR gdb/23093
484         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
485         (fbsd_gdb_signal_to_target): New.
486         (fbsd_init_abi): Install gdbarch "signal_from_target" and
487         "signal_to_target" methods.
488
489 2018-11-29  Tom Tromey  <tom@tromey.com>
490
491         * valarith.c (value_x_unop): Don't set argvec[3].
492
493 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
494
495         PR gdb/23917
496         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
497         semicolon.
498
499 2018-11-26  Pedro Alves  <palves@redhat.com>
500
501         * procfs.c (procfs_notice_thread): Replace uses of
502         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
503         * sol-thread.c (sol_thread_target::wait)
504         (sol_update_thread_list_callback): Likewise.
505
506 2018-11-25  Tom Tromey  <tom@tromey.com>
507
508         * ui-out.c (ui_out::field_fmt): Remove comment.
509         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
510         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
511
512 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
513
514         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
515         leak in open_source_file' has been partially undone by '2179fbc36d23
516         Return scoped_fd from open_source_file'. Re-add the transfer of
517         current s->fullname to the unique_xmalloc_ptr fullname given
518         to find_and_open_source.
519
520 2018-11-23  Pedro Alves  <palves@redhat.com>
521
522         * gdbthread.h (enum thread_state): Move comments here.
523         (is_running, is_stopped, is_exited): Remove declarations.
524
525 2018-11-22  Pedro Alves  <palves@redhat.com>
526
527         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
528         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
529         ALL_NON_EXITED_THREADS with all_non_exited_threads.
530         (print_one_breakpoint_location): Replace ALL_INFERIORS with
531         all_inferiors.
532         * bsd-kvm.c: Include inferior.h.
533         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
534         with all_non_exited_threads.
535         * common/filtered-iterator.h: New.
536         * common/safe-iterator.h: New.
537         * corelow.c (core_target_open): Don't call init_thread_list here.
538         * darwin-nat.c (thread_info_from_private_thread_info): Replace
539         ALL_THREADS with all_threads.
540         * fbsd-nat.c (fbsd_nat_target::resume): Replace
541         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
542         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
543         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
544         * fork-child.c (postfork_hook): Don't call init_thread_list here.
545         * gdbarch-selftests.c (register_to_value_test): Adjust.
546         * gdbthread.h: Don't include "inferior.h" here.
547         (struct inferior): Forward declare.
548         (enum step_over_calls_kind): Moved here from inferior.h.
549         (thread_info::deletable): Definition moved to thread.c.
550         (find_thread_ptid (inferior *, ptid_t)): Declare.
551         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
552         Include "thread-iter.h".
553         (all_threads, all_non_exited_threads, all_threads_safe): New.
554         (any_thread_p): Declare.
555         (thread_list): Delete.
556         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
557         all_non_exited_threads.
558         (proceed_after_attach_callback): Delete.
559         (proceed_after_attach): Take an inferior pointer instead of an
560         integer PID.  Adjust to use range-for.
561         (attach_post_wait): Pass down inferior pointer instead of pid.
562         Use range-for instead of ALL_NON_EXITED_THREADS.
563         (detach_command): Remove init_thread_list call.
564         * inferior-iter.h: New.
565         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
566         (delete_thread_of_inferior): Delete.
567         (delete_inferior, exit_inferior_1): Use range-for with
568         inf->threads_safe() instead of iterate_over_threads.
569         (inferior_appeared): Call init_thread_list here.
570         (discard_all_inferiors): Use all_non_exited_inferiors.
571         (find_inferior_id, find_inferior_pid): Use all_inferiors.
572         (iterate_over_inferiors): Use all_inferiors_safe.
573         (have_inferiors, number_of_live_inferiors): Use
574         all_non_exited_inferiors.
575         (number_of_inferiors): Use all_inferiors and std::distance.
576         (print_inferior): Use all_inferiors.
577         * inferior.h: Include gdbthread.h.
578         (enum step_over_calls_kind): Moved to gdbthread.h.
579         (struct inferior) <thread_list>: New field.
580         <threads, non_exited_threads, threads_safe>: New methods.
581         (ALL_INFERIORS): Delete.
582         Include "inferior-iter.h".
583         (ALL_NON_EXITED_INFERIORS): Delete.
584         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
585         functions.
586         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
587         ALL_NON_EXITED_THREADS with all_non_exited_threads.
588         * infrun.c (follow_exec): Use all_threads_safe.
589         (clear_proceed_status, proceed): Use all_non_exited_threads.
590         (init_wait_for_inferior): Don't clear inline frame state here.
591         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
592         all_threads instead of ALL_NON_EXITED_THREADS.
593         (random_pending_event_thread): Use all_non_exited_threads instead
594         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
595         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
596         instead of ALL_NON_EXITED_THREADS.
597         (handle_no_resumed): Use all_non_exited_threads instead of
598         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
599         ALL_INFERIORS.
600         (restart_threads, switch_back_to_stepped_thread): Use
601         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
602         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
603         all_inferiors.
604         (kill_unfollowed_fork_children): Use inf->non_exited_threads
605         instead of ALL_NON_EXITED_THREADS.
606         * linux-tdep.c (linux_make_corefile_notes): Use
607         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
608         * linux-thread-db.c (thread_db_target::update_thread_list):
609         Replace ALL_INFERIORS with all_inferiors.
610         (thread_db_target::thread_handle_to_thread_info): Use
611         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
612         * mi/mi-interp.c (multiple_inferiors_p): New.
613         (mi_on_resume_1): Simplify using all_non_exited_threads and
614         multiple_inferiors_p.
615         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
616         instead of ALL_NON_EXITED_THREADS.
617         * nto-procfs.c (nto_procfs_target::open): Don't call
618         init_thread_list here.
619         * record-btrace.c (record_btrace_target_open)
620         (record_btrace_target::stop_recording)
621         (record_btrace_target::close)
622         (record_btrace_target::record_is_replaying)
623         (record_btrace_target::resume, record_btrace_target::wait)
624         (record_btrace_target::record_stop_replaying): Use
625         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
626         * record-full.c (record_full_wait_1): Use all_non_exited_threads
627         instead of ALL_NON_EXITED_THREADS.
628         * regcache.c (cooked_read_test): Remove reference to global
629         thread_list.
630         * remote-sim.c (gdbsim_target::create_inferior): Don't call
631         init_thread_list here.
632         * remote.c (remote_target::update_thread_list): Use
633         all_threads_safe instead of ALL_NON_EXITED_THREADS.
634         (remote_target::process_initial_stop_replies): Replace
635         ALL_INFERIORS with all_non_exited_inferiors and use
636         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
637         (remote_target::open_1): Don't call init_thread_list here.
638         (remote_target::append_pending_thread_resumptions)
639         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
640         instead of ALL_NON_EXITED_THREADS.
641         (remote_target::commit_resume)
642         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
643         with all_non_exited_inferiors and use all_non_exited_threads
644         instead of ALL_NON_EXITED_THREADS.
645         (remote_target::kill_new_fork_children): Use
646         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
647         init_thread_list and init_wait_for_inferior calls.
648         (remote_target::remote_btrace_maybe_reopen)
649         (remote_target::thread_handle_to_thread_info): Use
650         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
651         * target.c (target_terminal::restore_inferior)
652         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
653         all_non_exited_inferiors.
654         * thread-iter.c: New file.
655         * thread-iter.h: New file.
656         * thread.c: Include "inline-frame.h".
657         (thread_list): Delete.
658         (clear_thread_inferior_resources): Call clear_inline_frame_state.
659         (init_thread_list): Use all_threads_safe instead of
660         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
661         (new_thread): Adjust to per-inferior thread lists.
662         (add_thread_silent): Pass inferior to find_thread_ptid.
663         (thread_info::deletable): New, moved from the header.
664         (delete_thread_1): Adjust to per-inferior thread lists.
665         (find_thread_global_id): Use inf->threads().
666         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
667         find_thread_ptid.
668         (find_thread_ptid(inferior*, ptid_t)): New overload.
669         (iterate_over_threads): Use all_threads_safe.
670         (any_thread_p): New.
671         (thread_count): Use all_threads and std::distance.
672         (live_threads_count): Use all_non_exited_threads and
673         std::distance.
674         (valid_global_thread_id): Use all_threads.
675         (in_thread_list): Use find_thread_ptid.
676         (first_thread_of_inferior): Adjust to per-inferior thread lists.
677         (any_thread_of_inferior, any_live_thread_of_inferior): Use
678         inf->non_exited_threads().
679         (prune_threads, delete_exited_threads): Use all_threads_safe.
680         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
681         (set_resumed, set_running): Use all_non_exited_threads.
682         (is_thread_state, is_stopped, is_exited, is_running)
683         (is_executing): Delete.
684         (set_executing, set_stop_requested, finish_thread_state): Use
685         all_non_exited_threads.
686         (print_thread_info_1): Use all_inferiors and all_threads.
687         (thread_apply_all_command): Use all_non_exited_threads.
688         (thread_find_command): Use all_threads.
689         (update_threads_executing): Use all_non_exited_threads.
690         * tid-parse.c (parse_thread_id): Use inf->threads.
691         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
692
693 2018-11-22  Pedro Alves  <palves@redhat.com>
694
695         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
696         switch to it before calling into try_open_exec_file.
697
698 2018-11-22  Pedro Alves  <palves@redhat.com>
699
700         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
701         inferior_thread instead of find_thread_ptid, and only when
702         inferior_ptid is not null_ptid.
703         * inferior.c (add_inferior): Don't include target_pid_to_str
704         output when the inferior is not started.
705         * python/py-inferior.c (python_on_normal_stop): Don't use
706         find_thread_ptid.
707         (tui_on_user_selected_context_changed): Use inferior_thread
708         instead of find_thread_ptid, and only when inferior_ptid is not
709         null_ptid.
710
711 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
712
713         PR python/23714
714         * gdb/python/python.c (execute_gdb_command): Call
715         prevent_dont_repeat earlier to avoid affecting dont_repeat.
716
717 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
718
719         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
720         (HFILES_NO_SRCDIR): Add arch/riscv.h.
721         * arch/riscv.c: New file.
722         * arch/riscv.h: New file.
723         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
724         this list, and add arch/riscv.o.
725         * features/Makefile: Add riscv features.
726         * features/riscv/32bit-cpu.c: New file.
727         * features/riscv/32bit-cpu.xml: New file.
728         * features/riscv/32bit-csr.c: New file.
729         * features/riscv/32bit-csr.xml: New file.
730         * features/riscv/32bit-fpu.c: New file.
731         * features/riscv/32bit-fpu.xml: New file.
732         * features/riscv/64bit-cpu.c: New file.
733         * features/riscv/64bit-cpu.xml: New file.
734         * features/riscv/64bit-csr.c: New file.
735         * features/riscv/64bit-csr.xml: New file.
736         * features/riscv/64bit-fpu.c: New file.
737         * features/riscv/64bit-fpu.xml: New file.
738         * features/riscv/rebuild-csr-xml.sh: New file.
739         * riscv-tdep.c: Add 'arch/riscv.h' include.
740         (riscv_gdb_reg_names): Delete.
741         (csr_reggroup): New global.
742         (struct riscv_register_alias): Delete.
743         (struct riscv_register_feature): New structure.
744         (riscv_register_aliases): Delete.
745         (riscv_xreg_feature): New global.
746         (riscv_freg_feature): New global.
747         (riscv_virtual_feature): New global.
748         (riscv_csr_feature): New global.
749         (riscv_create_csr_aliases): New function.
750         (riscv_read_misa_reg): Delete.
751         (riscv_has_feature): Delete.
752         (riscv_isa_xlen): Simplify, just return cached xlen.
753         (riscv_isa_flen): Simplify, just return cached flen.
754         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
755         (riscv_register_name): Update to make use of tdesc_register_name.
756         Look up xreg and freg names in the new globals riscv_xreg_feature
757         and riscv_freg_feature.  Don't supply csr aliases here.
758         (riscv_fpreg_q_type): Delete.
759         (riscv_register_type): Use tdesc_register_type in almost all
760         cases, override the returned type in a few specific cases only.
761         (riscv_print_one_register_info): Handle errors reading registers.
762         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
763         registers that are otherwise unknown to GDB.  Also check the
764         csr_reggroup.
765         (riscv_print_registers_info): Remove assert about upper register
766         number, and use gdbarch_register_reggroup_p instead of
767         short-cutting.
768         (riscv_find_default_target_description): New function.
769         (riscv_check_tdesc_feature): New function.
770         (riscv_add_reggroups): New function.
771         (riscv_setup_register_aliases): New function.
772         (riscv_init_reggroups): New function.
773         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
774         setup register groups.  Register new riscv debug variable.
775         * riscv-tdep.h: Add 'arch/riscv.h' include.
776         (struct gdbarch_tdep): Remove abi union, and add
777         riscv_gdbarch_features field.  Remove cached quad floating point
778         type, and provide initialisation for double type field.
779         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
780         the list of targets using the feature based target descriptions.
781         * NEWS: Mention target description support.
782
783 2018-11-21  Pedro Alves  <palves@redhat.com>
784
785         * valops.c (find_method_list, value_find_oload_method_list)
786         (find_overload_match, find_oload_champ): Rename parameters and
787         locals.
788
789 2018-11-21  Pedro Alves  <palves@redhat.com>
790
791         * valops.c (find_method_list): Replace pointer and length
792         parameters with an gdb::array_view.  Adjust.
793         (value_find_oload_method_list): Likewise.
794         (find_overload_match): Use gdb::array_view for methods list.
795         Adjust to find_oload_champ interface change.
796         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
797         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
798
799 2018-11-21  Pedro Alves  <palves@redhat.com>
800
801         * gdbtypes.c (compare_badness): Change type of parameters to const
802         reference.  Adjust to badness_vector being a std::vector now.
803         (rank_function): Adjust to badness_vector being a std::vector now.
804         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
805         (LENGTH_MATCH): Delete.
806         (compare_badness): Change type of parameters to const reference.
807         (rank_function): Return a badness_vector by value now.
808         (find_overload_match): Adjust to badness_vector being a
809         std::vector now.  Remove cleanups.
810         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
811         badness_vector pointer.
812         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
813         a badness_vector pointer.  Adjust to badness_vector being a
814         std::vector now.  Remove cleanups.
815         (find_oload_champ): 'oload_champ_bv' parameter now
816         a badness_vector pointer.  Adjust to badness_vector being a
817         std::vector now.  Remove cleanups.
818
819 2018-11-21  Pedro Alves  <palves@redhat.com>
820
821         * cp-support.c (sym_return_val_size, sym_return_val_index)
822         (sym_return_val): Delete.
823         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
824         add to the vector.
825         (make_symbol_overload_list): Adjust to return a std::vector
826         instead of maintaining a global open coded vector.
827         (make_symbol_overload_list_block): Add std::vector parameter.
828         (make_symbol_overload_list_block): Rename to ...
829         (add_symbol_overload_list_block): ... this and add std::vector
830         parameter.
831         (make_symbol_overload_list_namespace): Rename to ...
832         (add_symbol_overload_list_namespace): ... this and add std::vector
833         parameter.
834         (make_symbol_overload_list_adl_namespace): Rename to ...
835         (add_symbol_overload_list_adl_namespace): ... this and add
836         std::vector parameter.
837         (make_symbol_overload_list_adl): Delete.
838         (add_symbol_overload_list_adl): New.
839         (make_symbol_overload_list_using): Rename to ...
840         (add_symbol_overload_list_using): ... this and add std::vector
841         parameter.
842         (make_symbol_overload_list_qualified): Rename to ...
843         (add_symbol_overload_list_qualified): ... this and add std::vector
844         parameter.
845         * cp-support.h: Include "common/array-view.h" and <vector>.
846         (make_symbol_overload_list): Change return type to std::vector.
847         (make_symbol_overload_list_adl): Delete declaration.
848         (add_symbol_overload_list_adl): New declaration.
849         * valops.c (find_overload_match): Local 'oload_syms' now a
850         std::vector.
851         (find_oload_champ_namespace): 'oload_syms' parameter now a
852         std::vector pointer.
853         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
854         std::vector pointer.  Adjust to new make_symbol_overload_list
855         interface.
856
857 2018-11-21  Pedro Alves  <palves@redhat.com>
858
859         * common/array-view.h (array_view::splice(size_type, size_t)): New.
860         (array_view::splice(size_type)): New.
861         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
862         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
863         std::vector.
864         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
865         * extension.h: Include "common/array-view.h".
866         (xmethod_worker::invoke): Adjust to use gdb::array_view.
867         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
868         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
869         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
870         (xmethod_worker::do_get_result_type): Adjust to use
871         gdb::array_view.
872         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
873         * gdbtypes.h: Include "common/array-view.h".
874         (rank_function): Adjust to use gdb::array_view.
875         * python/py-xmethods.c (python_xmethod_worker::invoke)
876         (python_xmethod_worker::do_get_arg_types)
877         (python_xmethod_worker::do_get_result_type)
878         (python_xmethod_worker::invoke): Adjust to new interfaces.
879         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
880         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
881         * valops.c (find_overload_match, find_oload_champ_namespace)
882         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
883         gdb:array_view and the new xmethod_worker interfaces.
884         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
885         gdb::array_view.
886         * value.h (find_overload_match, result_type_of_xmethod)
887         (call_xmethod): Adjust to use gdb::array_view.
888         * unittests/array-view-selftests.c: Add slicing tests.
889
890 2018-11-21  Pedro Alves  <palves@redhat.com>
891
892         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
893         * common/array-view.h (make_array_view): New.
894         * compile/compile-object-run.c (compile_object_run): Adjust to
895         pass an array_view.
896         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
897         * eval.c (eval_call): Adjust to pass an array_view.
898         (evaluate_subexp_standard): Adjust to pass an array_view.
899         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
900         * guile/scm-value.c (gdbscm_value_call): Likewise.
901         * infcall.c (push_dummy_code): Replace pointer + size parameters
902         with an array_view parameter.
903         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
904         adjust.
905         * infcall.h: Include "common/array-view.h".
906         (call_function_by_hand, call_function_by_hand_dummy): Replace
907         pointer + size parameters with an array_view parameter.
908         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
909         * linux-tdep.c (linux_infcall_mmap): Likewise.
910         * objc-lang.c (lookup_objc_class, lookup_child_selector)
911         (value_nsstring, print_object_command): Likewise.
912         * python/py-value.c (valpy_call): Likewise.
913         * rust-lang.c (rust_evaluate_funcall): Likewise.
914         * spu-tdep.c (flush_ea_cache): Likewise.
915         * valarith.c (value_x_binop, value_x_unop): Likewise.
916         * valops.c (value_allocate_space_in_inferior): Likewise.
917         * unittests/array-view-selftests.c (run_tests): Add
918         gdb::make_array_view test.
919
920 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
921
922         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
923         than a fixed size buffer.
924
925 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
926
927         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
928         and remove insertion of extra spaces in GDB's output.
929         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
930         Layout field into a temporary buffer, and then output it as a
931         string field.
932
933 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
934
935         * NEWS: Document the language choice done by
936         'info [types|functions|variables]|rbreak'.
937
938 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
939
940         * symtab.c (treg_matches_sym_type_name): Use
941         scoped_switch_to_sym_language_if_auto instead of local logic.
942         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
943         to switch to SYM language when language mode is auto.
944
945 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
946
947         * language.h (scoped_switch_to_sym_language_if_auto): New class.
948
949 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
950
951         * symtab.c (search_symbols): Properly check absence of type regexp
952         before entering the loop scanning the minimal symbols.
953
954 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
955
956         * s12z-tdep.c (s12z_extract_return_value): New function.
957         (inv_reg_perm) New array.
958         (s12z_return_value): Populate readbuf if non-null.
959
960 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
961
962         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
963         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
964         to MinGW fixed by Gnulib.
965         (O_NOINHERIT): Define if not defined.
966
967 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
968
969         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
970
971 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
972
973         * infrun.c (displaced_step_inferior_state) <next>: Remove.
974
975 2018-11-19  Tom Tromey  <tom@tromey.com>
976
977         * source.c (get_filename_and_charpos): Return void.
978
979 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
980
981         * skip.c (_initialize_step_skip): Fix "info skip" help.
982
983 2018-11-16  Tom Tromey  <tom@tromey.com>
984
985         PR rust/23625:
986         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
987
988 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
989
990         * infrun.c (displaced_step_inferior_states): Change type to
991         std::forward_list.
992         (get_displaced_stepping_state): Adjust.
993         (displaced_step_in_progress_any_inferior): Adjust.
994         (add_displaced_stepping_state): Adjust.
995         (remove_displaced_stepping_state): Adjust.
996
997 2018-11-18  Tom Tromey  <tom@tromey.com>
998
999         PR build/23814:
1000         * target-delegates.c: Rebuild.
1001         * ia64-linux-nat.c (class ia64_linux_nat_target)
1002         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1003         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1004         "self" argument.
1005         (ia64_linux_nat_target::low_new_thread): Rename.
1006         (class ia64_linux_nat_target) <read_description>: Don't declare.
1007         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1008         bool.
1009
1010 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1011
1012         PR gdb/22736:
1013         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1014         lang_struct_return code.
1015
1016 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1017
1018         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1019         return_method.
1020         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1021         * amd64-tdep.c (amd64_push_arguments): Likewise.
1022         (amd64_push_dummy_call): Likewise.
1023         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1024         * arc-tdep.c (arc_push_dummy_call): Likewise.
1025         * arm-tdep.c (arm_push_dummy_call): Likewise.
1026         * avr-tdep.c (avr_push_dummy_call): Likewise.
1027         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1028         * cris-tdep.c (cris_push_dummy_call): Likewise.
1029         * csky-tdep.c (csky_push_dummy_call): Likewise.
1030         * frv-tdep.c (frv_push_dummy_call): Likewise.
1031         * gdbarch.c: Regenerate.
1032         * gdbarch.h: Regenerate.
1033         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1034         return_method.
1035         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1036         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1037         (hppa64_push_dummy_call): Likewise.
1038         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1039         * i386-tdep.c (i386_push_dummy_call): Likewise.
1040         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1041         * infcall.c (call_function_by_hand_dummy): Likewise.
1042         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1043         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1044         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1045         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1046         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1047         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1048         * mep-tdep.c (mep_push_dummy_call): Likewise.
1049         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1050         (mips_n32n64_push_dummy_call): Likewise.
1051         (mips_o32_push_dummy_call): Likewise.
1052         (mips_o64_push_dummy_call): Likewise.
1053         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1054         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1055         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1056         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1057         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1058         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1059         (ppc64_sysv_abi_push_dummy_call): Likewise.
1060         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1061         (ppc64_sysv_abi_push_dummy_call): Likewise.
1062         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1063         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1064         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1065         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1066         * rx-tdep.c (rx_push_dummy_call): Likewise.
1067         * s390-tdep.c (s390_push_dummy_call): Likewise.
1068         * score-tdep.c (score_push_dummy_call): Likewise.
1069         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1070         (sh_push_dummy_call_nofpu): Likewise.
1071         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1072         (sparc32_push_dummy_call): Likewise.
1073         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1074         (sparc64_push_dummy_call): Likewise.
1075         * spu-tdep.c (spu_push_dummy_call): Likewise.
1076         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1077         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1078         * v850-tdep.c (v850_push_dummy_call): Likewise.
1079         * vax-tdep.c (vax_push_dummy_call): Likewise.
1080         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1081         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1082
1083 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1084
1085         * gdbarch.sh (enum function_call_return_method): Add enum.
1086         * gdbarch.h: Regenerate.
1087         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1088
1089 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1090
1091         * unittests/copy_bitwise-selftests.c: New file.
1092         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1093         (selftests::copy_bitwise_tests): Delete, moving this code to
1094         unittests/copy_bitwise-selftests.c instead.
1095         (_initialize_utils): Do not register copy_bitwise tests.
1096         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1097         unittests/copy_bitwise-selftests.c.
1098
1099 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1100
1101         * ada-lang.c (move_bits): Delete. Update all callers to use
1102         copy_bitwise instead.
1103         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1104         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1105         Move from here to utils.c.
1106         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1107         selftests.
1108         * utils.h (copy_bitwise): Add declaration.
1109         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1110         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1111         Moved here from dwarf2loc.c.
1112         (_initialize_utils): Register copy_bitwise selftests.
1113
1114 2018-11-14  Jim Wilson  <jimw@sifive.com>
1115
1116         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1117         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1118         then increment next_regnum if odd.
1119         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1120         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1121         function type.  Pass new arg to riscv_arg_location based on function
1122         type.
1123         (riscv_return_value): Pass new arg to riscv_arg_location.
1124
1125         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1126         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1127         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1128
1129         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1130         setting len.  New local align, set to max of arg align and xlen,
1131         and pass to first riscv_assign_stack_location call.
1132
1133 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1134
1135         * skip.c (complete_skip_number): New function.
1136         (_initialize_step_skip): Add completers to some skip commands.
1137
1138 2018-11-09  Tom Tromey  <tom@tromey.com>
1139
1140         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1141         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1142         <guesses>: Now a std::vector.
1143         (remote_g_packet_data_init, register_remote_g_packet_guess):
1144         Update.
1145         (remote_read_description_p): Update.  Return bool.
1146         (remote_target::read_description): Update.
1147         (struct remote_g_packet_guess): Add constructor.
1148
1149 2018-11-09  Tom Tromey  <tom@tromey.com>
1150
1151         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1152         move assignment operator.
1153         * psymtab.c (psymtab_to_fullname): Update.
1154         * source.h (open_source_file): Return scoped_fd.
1155         (find_and_open_source): Likewise.
1156         * source.c (open_source_file): Return scoped_fd.
1157         (get_filename_and_charpos): Update.
1158         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1159         (forward_search_command): Likewise.
1160         (reverse_search_command): Likewise.
1161         (find_and_open_source): Return scoped_fd.
1162         * tui/tui-source.c (tui_set_source_content): Update.  Use
1163         gdb_file_up.
1164
1165 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1166
1167         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1168         overflow.
1169
1170 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1171
1172         * configure: Regenerate.
1173
1174 2018-11-09  Tom de Vries  <tdevries@suse.de>
1175
1176         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1177         unconditionally, to set the language of the symbol.  Manage freeing
1178         returned pointer using gdb::unique_xmalloc_ptr.
1179
1180 2018-11-08  Tom Tromey  <tom@tromey.com>
1181
1182         * record.c (require_record_target): Upper-case "<TAB>".
1183
1184 2018-11-08  Tom Tromey  <tom@tromey.com>
1185
1186         * python/lib/gdb/command/pretty_printers.py
1187         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1188
1189 2018-11-08  Tom Tromey  <tom@tromey.com>
1190
1191         PR gdb/23555:
1192         PR gdb/23838:
1193         * target.h (target_supports_terminal_ours): Return bool.
1194         * target.c (target_supports_terminal_ours): Handle case where
1195         current_top_target returns nullptr.  Return bool.
1196
1197 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1198
1199         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1200         return the correct count for potential HFAs.
1201
1202 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1203
1204         * i387-tdep.c (i387_supply_xsave): Split handling of
1205         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1206         (i387_collect_xsave): Likewise.
1207
1208 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1209
1210         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1211         (riscv_frame_this_id): Catch errors thrown while building the
1212         frame cache, leave the frame id as the default, which is the outer
1213         frame id.
1214
1215 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1216
1217         * ada-lang.c (read_atcb): Only set task_info->called_task if
1218         task_info->state == Entry_Caller_Sleep.
1219         (print_ada_task_info): Do not check task_info->state before
1220         checking task_info->called_task.
1221         (info_task): Likewise.
1222
1223 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1224
1225         * ada-tasks.c (read_atcb): Clear task_info before computing
1226         the value of each of its fields.
1227
1228 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1229
1230         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1231         NULL before dereferencing it.
1232
1233 2018-11-06  Tom de Vries  <tdevries@suse.de>
1234
1235         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1236         program headers.
1237
1238 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1239
1240         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1241         so that it applies to uclinux as well.
1242
1243 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1244
1245         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1246         when on AAPCS.
1247
1248 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1249
1250         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1251         RISCV_CSR_SSTATUS_REGNUM.
1252
1253 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1254
1255         * source.c (open_source_file): Fix leak by transferring the
1256         current s->fullname to the unique_xmalloc_ptr fullname given
1257         to find_and_open_source.
1258
1259 2018-11-04  Tom Tromey  <tom@tromey.com>
1260
1261         * varobj.c (install_default_visualizer): Update.
1262         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1263         Return gdbpy_ref.
1264         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1265         (find_pretty_printer_from_progspace)
1266         (find_pretty_printer_from_gdb, find_pretty_printer)
1267         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1268         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1269         Update.
1270
1271 2018-11-04  Tom Tromey  <tom@tromey.com>
1272
1273         * python/python.c (gdbpy_parameter_value): Update.
1274         * python/python-internal.h (python_string_to_unicode)
1275         (python_string_to_target_python_string)
1276         (host_string_to_python_string): Return gdbpy_ref.
1277         * python/py-utils.c (python_string_to_unicode)
1278         (unicode_to_encoded_python_string)
1279         (unicode_to_target_python_string)
1280         (python_string_to_target_string)
1281         (python_string_to_target_python_string): Return gdbpy_ref.
1282         (python_string_to_host_string): Update.
1283         (host_string_to_python_string): Return gdbpy_ref.
1284         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1285         (stpy_fullname): Update.
1286         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1287         Update.
1288         * python/py-prettyprint.c (print_string_repr): Update.
1289         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1290         (objfpy_get_build_id): Update.
1291         * python/py-breakpoint.c (bppy_get_location)
1292         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1293         Update.
1294
1295 2018-11-04  Tom Tromey  <tom@tromey.com>
1296
1297         * python/python-internal.h (gdb_py_object_from_longest)
1298         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1299         * python/py-value.c (valpy_int): Update.
1300         * python/py-utils.c (gdb_py_object_from_longest): Return
1301         gdbpy_ref.
1302         (gdb_py_object_from_ulongest): Likewise.
1303         * python/py-type.c (typy_get_alignof): Update.
1304         * python/py-linetable.c (ltpy_get_all_source_lines)
1305         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1306         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1307
1308 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1309
1310         * ada-lang.c (_initialize_ada_language): Fix typo.
1311
1312 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1313
1314         * language.c (type): Remove.
1315         (_initialize_language): Remove assignment to type.
1316
1317 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1318
1319         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1320         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1321         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1322         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1323         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1324         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1325         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1326         and aarch64-ravenscar-thread.o.
1327         * NEWS: Add entry documenting Ravenscar tasking support
1328         on AArch64 ELF.
1329
1330 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1331
1332         * symtab.c (info_functions_command): Initialize quiet flag.
1333         * stack.c (info_args_command): Likewise.
1334
1335 2018-11-01  Jim Wilson  <jimw@sifive.com>
1336
1337         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1338         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1339         debugging messages.
1340
1341 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1342
1343         * ada-lang.c (ada_watch_location_expression): New function.
1344         (ada_language_defn): Set la_watch_location_expression to
1345         ada_watch_location_expression.
1346
1347 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1348
1349         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1350
1351 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1352
1353         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1354         shifting.
1355
1356 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1357             Joel Brobecker  <brobecker@adacore.com>
1358
1359         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1360         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1361         * arm-pikeos-tdep.c: New file.
1362         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1363         embedded system.
1364         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1365
1366 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1367
1368         * common/pathstuff.c (get_standard_temp_dir): New.
1369         * common/pathstuff.h (get_standard_temp_dir): New.
1370         * config.in: Re-generate.
1371         * configure: Re-generate.
1372         * configure.ac: Don't check for mkdtemp.
1373         * gnulib/aclocal-m4-deps.mk: Re-generate.
1374         * gnulib/aclocal.m4: Re-generate.
1375         * gnulib/config.in: Re-generate.
1376         * gnulib/configure: Re-generate.
1377         * gnulib/import/Makefile.am: Re-generate.
1378         * gnulib/import/Makefile.in: Re-generate.
1379         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1380         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1381         * gnulib/import/m4/mkdtemp.m4: New file.
1382         * gnulib/import/mkdtemp.c: New file.
1383         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1384         Add mkdtemp module.
1385         * unittests/mkdir-recursive-selftests.c (test): Use
1386         get_standard_temp_dir.
1387         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1388         ifdef.
1389         * compile/compile.c (get_compile_file_tempdir): Likewise.
1390
1391 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1392
1393         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1394         (SIG_FRAME_LR_OFFSET64): New define.
1395         (SIG_FRAME_FP_OFFSET64): New define.
1396         (aix_sighandle_frame_cache): New Function.
1397         (aix_sighandle_frame_this_id): New Function.
1398         (aix_sighandle_frame_prev_register): New Function.
1399         (aix_sighandle_frame_sniffer): New Function.
1400         (aix_sighandle_frame_unwind): New global variable.
1401         (rs6000_aix_init_osabi): Install new frame unwinder.
1402
1403 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1404
1405         PR gdb/23835
1406         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1407         already defined.
1408
1409 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1410
1411         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1412
1413 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1414
1415         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1416         (producer_is_icc): New function.
1417         (check_producer): Set producer_is_icc field on dwarf2_cu.
1418         (dwarf2_init_integer_type): New function.
1419         (read_base_type): Call dwarf2_init_integer_type instead of
1420         init_integer_type in all cases.
1421         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1422         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1423         LEN is greater than 0.
1424
1425 2018-10-30  Tom Tromey  <tom@tromey.com>
1426
1427         * main.c (captured_main_1): Check return value of bfd_init.
1428
1429 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1430
1431         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1432         Adjust comments.
1433
1434 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1435
1436         * procfs.c: Include common/pathstuff.h.
1437
1438 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1439
1440         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1441         Add missing braces.  No functional change.
1442
1443 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1444
1445         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1446         to report a bad option and fix indentation.
1447         * demangle.c (demangle_command): Use report_unrecognized_option_error
1448         to report a bad option and correctly report the bad option.
1449
1450 2018-10-27  Tom Tromey  <tom@tromey.com>
1451
1452         PR cli/23364:
1453         * darwin-nat.c (copied_shell): New global.
1454         (may_have_sip): Rename from should_disable_startup_with_shell.
1455         (copy_shell_to_cache, maybe_cache_shell): New functions.
1456         (darwin_nat_target::create_inferior): Update.  Use
1457         copied_shell.
1458
1459 2018-10-27  Tom Tromey  <tom@tromey.com>
1460
1461         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1462         (run_tests): Call test_to_file.
1463         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1464         temporary files.
1465         * common/scoped_fd.h (scoped_fd::to_file): New method.
1466
1467 2018-10-27  Tom Tromey  <tom@tromey.com>
1468
1469         * unittests/scoped_mmap-selftests.c (test_normal): Use
1470         gdb_mkostemp_cloexec.
1471         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1472         Use gdb_mkostemp_cloexec.
1473         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1474         gnulib/config.in, gnulib/configure,
1475         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1476         gnulib/import/m4/gnulib-cache.m4,
1477         gnulib/import/m4/gnulib-comp.m4: Update.
1478         * gnulib/import/m4/mkostemp.m4: New file.
1479         * gnulib/import/m4/mkstemp.m4: Remove.
1480         * gnulib/import/mkostemp.c: New file.
1481         * gnulib/import/mkstemp.m4: Remove.
1482         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1483         mkstemp, add mkostemp.  Apply new patch.
1484         * gnulib/import/stdlib.in.h: Apply patch.
1485         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1486         New file.
1487         * dwarf-index-write.c (write_psymtabs_to_index): Use
1488         gdb_mkostemp_cloexec.
1489         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1490
1491 2018-10-27  Tom Tromey  <tom@tromey.com>
1492
1493         * unittests/mkdir-recursive-selftests.c: New file.
1494         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1495         unittests/mkdir-recursive-selftests.c.
1496         * dwarf-index-cache.c (mkdir_recursive): Move to
1497         common/filestuff.c.
1498         (index_cache::store): Check return value of mkdir_recursive.
1499         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1500         (_initialize_index_cache): Don't register test.
1501         * common/filestuff.h (mkdir_recursive): Declare.
1502         * common/filestuff.c (mkdir_recursive): Move from
1503         dwarf-index-cache.c.  Return bool.
1504
1505 2018-10-27  Tom Tromey  <tom@tromey.com>
1506
1507         * dwarf-index-write.c (write_psymtabs_to_index): Move
1508         make_temp_filename to common/pathstuff.c.
1509         * common/pathstuff.h (make_temp_filename): Declare.
1510         * common/pathstuff.c (make_temp_filename): New function, moved
1511         from dwarf-index-write.c.
1512
1513 2018-10-27  Tom Tromey  <tom@tromey.com>
1514
1515         * procfs.c (procfs_target::create_inferior): Use get_shell.
1516         * cli/cli-cmds.c (shell_escape): Use get_shell.
1517         * windows-nat.c (windows_nat_target::create_inferior): Use
1518         get_shell.
1519         * common/pathstuff.c (get_shell): New function.
1520         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1521         (fork_inferior): Use get_shell.
1522         * common/pathstuff.h (get_shell): Declare.
1523
1524 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1525
1526         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1527
1528 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1529
1530         * stack.c (print_variable_and_value_data): Add preg and treg.
1531         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1532         and update callers.
1533         (print_frame_arg_vars): Likewise.
1534         (prepare_reg): New function.
1535         (info_locals_command): Extract info print args and use them.
1536         (info_args_command): Likewise.
1537         (_initialize_stack): Modify on-line help.
1538         * symtab.c (treg_matches_sym_type_name): New function.
1539         (search_symbols): New arg t_regexp.
1540         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1541         (info_variables_command): Extract info print args and use them.
1542         (info_functions_command): Likewise.
1543         (info_types_command): Update call to symtab_symbol_info.
1544         (_initialize_symtab): Modify on-line help.
1545         * symtab.h (treg_matches_sym_type_name): New function.
1546         (search_symbols): New t_regexp arg.
1547
1548 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1549
1550         * cli-utils.c (extract_arg_maybe_quoted): New function.
1551         (extract_info_print_args): New function.
1552         (info_print_args_help): New function.
1553         (report_unrecognized_option_error): New function.
1554         * cli-utils.h (extract_arg_maybe_quoted): New function.
1555         (extract_info_print_args): New function.
1556         (info_print_args_help): New function.
1557         (report_unrecognized_option_error): New function.
1558
1559 2018-10-26  Tom Tromey  <tom@tromey.com>
1560
1561         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1562         (compute_compunit_symtab_includes): Update.
1563         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1564         (compunit_symtab_ptr): Likewise.
1565
1566 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1567
1568         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1569         default_print_auxv_entry for specific tag values.
1570
1571 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1572
1573         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1574
1575 2018-10-26  Jim Wilson  <jimw@sifive.com>
1576
1577         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1578         (riscv_linux_sigframe_init): Declare.
1579         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1580         (riscv_linux_sigframe): New.
1581         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1582         (riscv_linux_sigframe_init): Define.
1583         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1584
1585         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1586         (riscv_isa_flen): Likewise.  Drop static.
1587         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1588         (riscv_isa_flen): Likewise.  Declare.
1589
1590 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1591             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1592
1593         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1594         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1595         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1596         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1597         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1598         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1599         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1600         Define.
1601         (struct ppc_linux_features) <htm>: New field.
1602         (ppc_linux_no_features): Add initializer for htm field.
1603         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1604         new tdescs.
1605         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1606         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1607         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1608         Define if not already defined.
1609         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1610         and rs6000/powerpc-isa207-htm-vsx64l.
1611         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1612         rs6000/powerpc-isa207-htm-vsx64l.xml.
1613         * features/rs6000/power-htm-spr.xml: New file.
1614         * features/rs6000/power-htm-core.xml: New file.
1615         * features/rs6000/power64-htm-core.xml: New file.
1616         * features/rs6000/power-htm-fpu.xml: New file.
1617         * features/rs6000/power-htm-altivec.xml: New file.
1618         * features/rs6000/power-htm-vsx.xml: New file.
1619         * features/rs6000/power-htm-ppr.xml: New file.
1620         * features/rs6000/power-htm-dscr.xml: New file.
1621         * features/rs6000/power-htm-tar.xml: New file.
1622         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1623         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1624         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1625         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1626         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1627         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1628         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1629         fetch_regset with HTM regsets.
1630         (store_register, store_ppc_registers): Call store_regset with HTM
1631         regsets.
1632         (ppc_linux_nat_target::read_description): Set htm field in the
1633         features struct if needed.
1634         * ppc-linux-tdep.c: Include
1635         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1636         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1637         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1638         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1639         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1640         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1641         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1642         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1643         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1644         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1645         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1646         (ppc32_linux_ctarregset): New globals.
1647         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1648         (ppc_linux_collect_core_cpgrregset): New function.
1649         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1650         regsets.
1651         (ppc_linux_core_read_description): Check if the tm spr section is
1652         present and set htm in the features struct.
1653         (_initialize_ppc_linux_tdep): Call
1654         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1655         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1656         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1657         Declare.
1658         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1659         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1660         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1661         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1662         New fields.
1663         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1664         Likewise.
1665         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1666         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1667         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1668         New enum fields.
1669         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1670         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1671         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1672         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1673         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1674         <PPC_CTAR_REGNUM>: Likewise.
1675         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1676         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1677         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1678         (IS_CEFP_PSEUDOREG): Define.
1679         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1680         registers.  Return names for the checkpointed DFP, VSX, and EFP
1681         pseudo registers.
1682         (rs6000_pseudo_register_type): Remove initial assert and raise an
1683         internal error in the else clause instead.  Return types for the
1684         checkpointed DFP, VSX, and EFP pseudo registers.
1685         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1686         checkpointed DFP pseudo registers.
1687         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1688         checkpointed VSX pseudo registers.
1689         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1690         from efpr_pseudo_register_read and
1691         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1692         registers.
1693         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1694         Handle checkpointed DFP, VSX, and EFP registers.
1695         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1696         (efp_ax_pseudo_register_collect): New functions.
1697         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1698         register logic to new functions.  Handle checkpointed DFP, VSX,
1699         and EFP pseudo registers.
1700         (rs6000_gdbarch_init): Look for and validate the htm features.
1701         Include checkpointed DFP, VSX and EFP pseudo-registers.
1702         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1703         HTM registers.
1704
1705 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1706
1707         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1708         without altivec or fpu.
1709
1710 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1711             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1712
1713         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1714         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1715         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1716         Define if not already defined.
1717         * features/rs6000/power-ebb.xml: New file.
1718         * features/rs6000/power-linux-pmu.xml: New file.
1719         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1720         features.
1721         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1722         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1723         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1724         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1725         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1726         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1727         fetch_regset with ebb and pmu regsets.
1728         (store_register, store_ppc_registers): Call store_regset with ebb
1729         and pmu regsets.
1730         (ppc_linux_nat_target::read_description): Set isa207 field in the
1731         features struct if ebb and pmu are avaiable.
1732         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1733         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1734         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1735         and pmu regsets.
1736         (ppc_linux_core_read_description): Check if the pmu section is
1737         present and set isa207 in the features struct.
1738         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1739         (ppc32_linux_pmuregset): Declare.
1740         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1741         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1742         <ppc_sier_regnum>: New field.
1743         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1744         New enum values.
1745         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1746         values.
1747         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1748         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1749         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1750         ebb and pmu features.
1751
1752 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1753             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1754
1755         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1756         (tdesc_powerpc_isa207_vsx64l): Declare.
1757         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1758         (struct ppc_linux_features) <isa207>: New field.
1759         (ppc_linux_no_features): Add initializer for isa207 field.
1760         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1761         new tdescs.
1762         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1763         (NT_PPC_TAR): Define if not already defined.
1764         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1765         rs6000/powerpc-isa207-vsx64l.
1766         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1767         rs6000/powerpc-isa207-vsx64l.xml.
1768         * features/rs6000/power-tar.xml: New file.
1769         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1770         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1771         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1772         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1773         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1774         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1775         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1776         fetch_regset with the TAR regset.
1777         (store_register, store_ppc_registers): Call store_regset with the
1778         TAR regset.
1779         (ppc_linux_nat_target::read_description): Set isa207 field in the
1780         features struct if needed.
1781         * ppc-linux-tdep.c: Include
1782         features/rs6000/powerpc-isa207-vsx32l.c and
1783         features/rs6000/powerpc-isa207-vsx64l.c.
1784         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1785         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1786         regset.
1787         (ppc_linux_core_read_description): Check if the tar section is
1788         present and set isa207 in the features struct.
1789         (_initialize_ppc_linux_tdep): Call
1790         initialize_tdesc_powerpc_isa207_vsx32l and
1791         initialize_tdesc_powerpc_isa207_vsx64l.
1792         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1793         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1794         (enum) <PPC_TAR_REGNUM>: New enum value.
1795         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1796         feature.
1797         (ppc_process_record_op31): Record changes to TAR.
1798
1799 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1800             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1801
1802         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1803         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1804         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1805         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1806         (struct ppc_linux_features) <ppr_dscr>: New field.
1807         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1808         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1809         new tdescs.
1810         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1811         Define if not already defined.
1812         * features/Makefile (WHICH): Add
1813         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1814         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1815         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1816         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1817         * features/rs6000/power-dscr.xml: New file.
1818         * features/rs6000/power-ppr.xml: New file.
1819         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1820         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1821         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1822         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1823         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1824         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1825         * ppc-linux-nat.c: Include <sys/uio.h>.
1826         (fetch_regset, store_regset, check_regset): New functions.
1827         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1828         DSCR and PPR regsets.
1829         (store_register, store_ppc_registers): Call store_regset with
1830         DSCR and PPR regsets.
1831         (ppc_linux_get_hwcap2): New function.
1832         (ppc_linux_nat_target::read_description): Call
1833         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1834         features struct if needed.
1835         * ppc-linux-tdep.c: Include
1836         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1837         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1838         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1839         (ppc32_linux_dscrregset): New globals.
1840         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1841         and dscr regsets.
1842         (ppc_linux_core_read_description): Check if the ppr and dscr
1843         sections are present and set ppr_dscr in the features struct.
1844         (_initialize_ppc_linux_tdep): Call
1845         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1846         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1847         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1848         (ppc32_linux_dscrregset): Declare.
1849         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1850         <ppc_dscr_regnum>: New field.
1851         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1852         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1853         and dscr features.
1854         (ppc_process_record_op31): Record changes to PPR and DSCR.
1855
1856 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1857
1858         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1859         second initializer line for the have_* variables.  Initialize
1860         have_fpu to 0 instead of 1.
1861
1862 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1863
1864         * arch/ppc-linux-common.c (ppc_linux_match_description):
1865         Parenthesize tdesc assignements and indent them properly.
1866
1867 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1868
1869         * ppc-linux-nat.c (fetch_register): Change if statement to else
1870         if.
1871         (store_register): Likewise.
1872
1873 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1874
1875         * rs6000-tdep.c: Remove reggroups.h include.
1876         (rs6000_pseudo_register_reggroup_p): Remove.
1877         (rs6000_gdbarch_init): Remove call to
1878         set_tdesc_pseudo_register_reggroup_p.
1879
1880 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1881
1882         * reggroups.c (default_register_reggroup_p): Return true for
1883         decfloat registers and float_reggroup.
1884
1885 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1886
1887         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1888         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1889         ppc_linux_collect_vrregset by regcache_collect_regset.
1890
1891 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1892
1893         * linux-tdep.c (linux_collect_regset_section_cb): Use
1894         std::vector<gdb_byte> instead of char * and malloc for buf.
1895         Remove xfree.
1896
1897 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1898
1899         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1900         symtab_start instead of always using language_unknown.
1901
1902 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1903
1904         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1905         READ_P parameter, catch and ignore register access errors from
1906         either the old or new MISA location.
1907         (riscv_has_feature): Update call to riscv_read_misa_reg.
1908
1909 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1910
1911         * python/py-function.c (convert_values_to_python): Return
1912         gdbpy_ref<>.  Add header comment.
1913         (fnpy_call): Adjust.
1914
1915 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1916
1917         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1918         (cmdpy_completer_handle_brkchars): Adjust.
1919         (cmdpy_completer): Adjust.
1920
1921 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1922
1923         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1924         Pass correct regnum to raw_supply_zeroed.
1925
1926 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1927
1928         * regcache.c (cooked_read_test): Add CSKY to the list of
1929         architectures with a save_reggroup
1930
1931 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1932
1933         PR gdb/23368
1934         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1935         transfer terminal state from old new new inferior.
1936         * terminal.h (swap_terminal_info): New function.
1937         * inflow.c (swap_terminal_info): New function.
1938
1939 2018-10-23  Tom Tromey  <tom@tromey.com>
1940
1941         * record-btrace.c (get_thread_current_frame_id): Rename from
1942         get_thread_current_frame.  Return a frame_id.
1943         (record_btrace_start_replaying): Update.
1944
1945 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1946
1947         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1948         for CSRs.
1949
1950 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1951
1952         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1953         have_nonsteppable_watchpoint attribute to 1.
1954
1955 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1956
1957         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1958         register names.
1959         (struct register_alias): Rename to...
1960         (struct riscv_register_alias): ...this, and update comment.
1961         (riscv_register_aliases): Update type, and alias names.  Remove
1962         CSR names from this list.
1963         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1964         register names.  Add an extra assertion.
1965         (riscv_is_regnum_a_named_csr): New function.
1966         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1967
1968 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1969
1970         * configure.tgt: Add configuration for s12z.
1971         * s12z-tdep.c:  New file.
1972         * NEWS: Mention new target.
1973
1974 2018-10-22  Jim Wilson  <jimw@sifive.com>
1975
1976         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1977         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1978
1979         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1980         (riscv_register_type): Use them.
1981         (riscv_print_one_register_info): Handle union of floats same as float.
1982         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1983         riscv_fpreg_q_type fields.
1984
1985 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1986
1987         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1988         * gdbarch.h: Re-generate.
1989         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1990         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1991         * eval.c (evaluate_subexp_standard): Likewise.
1992         * findvar.c (value_of_register): Likewise.
1993         (value_of_register_lazy): Likewise.
1994         (address_from_register): Likewise.
1995         * frame.c (get_frame_register_bytes): Likewise.
1996         * gdbarch-selftests.c (register_to_value_test): Likewise.
1997         * h8300-tdep.c (h8300_register_type): Likewise.
1998         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1999         (i386_svr4_reg_to_regnum): Likewise.
2000         * infcmd.c (default_print_registers_info): Likewise.
2001         (registers_info): Likewise.
2002         (print_vector_info): Likewise.
2003         (default_print_float_info): Likewise.
2004         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2005         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2006         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2007         (mi_cmd_data_list_changed_registers): Likewise.
2008         (mi_cmd_data_list_register_values): Likewise.
2009         (mi_cmd_data_write_register_values): Likewise.
2010         (mi_cmd_trace_frame_collected): Likewise.
2011         * mips-tdep.c (print_gp_register_row): Likewise.
2012         (mips_print_registers_info): Likewise.
2013         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2014         * regcache.c (init_regcache_descr): Likewise.
2015         (register_size): Likewise.
2016         (register_dump::dump): Likewise.
2017         (cooked_read_test): Likewise.
2018         (cooked_write_test): Likewise.
2019         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2020         (rs6000_gdbarch_init): Likewise.
2021         * stabsread.c (stab_reg_to_regnum): Likewise.
2022         * stack.c (info_frame_command): Likewise.
2023         * target-descriptions.c (tdesc_register_name): Likewise.
2024         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2025         * tui/tui-regs.c (tui_show_register_group): Likewise.
2026         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2027         (user_reg_map_regnum_to_name): Likewise.
2028         (value_of_user_reg): Likewise.
2029         (maintenance_print_user_registers): Likewise.
2030         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2031         (xtensa_register_name): Likewise.
2032         (xtensa_register_type): Likewise.
2033         (xtensa_reg_to_regnum): Likewise.
2034         (xtensa_pseudo_register_read): Likewise.
2035         (xtensa_pseudo_register_write): Likewise.
2036
2037 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2038
2039         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2040         correctly-sized buffer with raw_read.
2041         (amd64_pseudo_register_write): Use correctly-sized buffer for
2042         raw_read/raw_write.
2043
2044 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2045
2046         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2047         in add_prefix_cmd of set print type.
2048
2049 2018-10-19  Tom Tromey  <tom@tromey.com>
2050
2051         PR tui/18388:
2052         * NEWS: Mention tabset deprecation.
2053         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2054         (update_tab_width): New function.
2055         (tui_set_tab_width, tui_show_tab_width): New functions.
2056         (tui_set_tab_width_command): Use update_tab_width.
2057         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2058         Add new "set tui tab-width" command.
2059         * tui/tui-source.c (tui_set_source_content): Update.
2060         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2061         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2062         Don't declare.
2063         (tui_tab_width): Declare.
2064         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2065         (tui_set_default_tab_len): Remove.
2066
2067 2018-10-19  Tom Tromey  <tom@tromey.com>
2068
2069         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2070         (key_is_backspace, tui_getc): Don't declare.
2071         * tui/tui-io.c (key_is_start_sequence): Now static.
2072         (key_is_end_sequence, key_is_backspace): Remove.
2073         (tui_getc): Now static.
2074
2075 2018-10-19  Tom Tromey  <tom@tromey.com>
2076
2077         * symfile.c (reread_symbols): Clear "static_links".
2078
2079 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2080
2081         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2082         define.
2083         (aarch64_linux_sigframe_init): Extra boundary checks.
2084
2085 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2086
2087         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2088         the possibly non-existent tdesc type 'vec128', but the type of raw
2089         register v16 instead.
2090
2091 2018-10-19  Gary Benson <gbenson@redhat.com>
2092
2093         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2094
2095 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2096
2097         PR cli/23785
2098         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2099         NULL.
2100
2101 2018-10-17  Paul Koning  <paul_koning@dell.com>
2102
2103         * charset.c (convert_between_encodings): Fix unsigned overflow.
2104
2105 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2106
2107         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2108         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2109         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2110         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2111         New functions.
2112         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2113         and fbsd_info_proc_mappings_header.
2114         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2115         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2116         New.
2117
2118 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2119
2120         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2121         Solaris Maintainer.
2122
2123 2018-10-15  Tom Tromey  <tom@tromey.com>
2124
2125         * tui/tui.c (strcat_to_buf): Remove casts.
2126         * tui/tui-winsource.c (tui_show_source_line)
2127         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2128         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2129         * tui/tui-windata.c (tui_first_data_item_displayed)
2130         (tui_delete_data_content_windows, tui_erase_data_content)
2131         (tui_display_all_data, tui_display_data_from)
2132         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2133         * tui/tui-win.c (tui_set_win_height)
2134         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2135         casts.
2136         * tui/tui-win.c (tui_resize_all): Remove casts.
2137         (tui_scroll_backward_command, tui_set_focus)
2138         (tui_set_tab_width_command): Likewise.
2139         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2140         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2141         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2142         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2143         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2144         Remove casts.
2145
2146 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2147
2148         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2149         AArch64/ARM maintainer.
2150
2151 2018-10-11  Gary Benson <gbenson@redhat.com>
2152
2153         * interps.h (interp::m_name): Make private and mutable.
2154         * interps.c (interp::~interp): Free m_name.
2155
2156 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2157             Simon Marchi <simark@simark.ca>
2158
2159         * README (`configure' options): Add documentation for new
2160         "--enable-unit-tests" option.
2161         * acinclude.m4: Include "selftest.m4".
2162         * configure: Regenerate.
2163         * configure.ac: Use "GDB_AC_SELFTEST".
2164         * maint.c (maintenance_selftest): Update message informing
2165         that selftests have been disabled.
2166         (maintenance_info_selftests): Likewise.
2167         * selftest.m4: New file.
2168
2169 2018-10-10  Gary Benson <gbenson@redhat.com>
2170
2171         * remote.c (remote_target::remote_send_printf): Add
2172         missing va_end found by Coverity.
2173
2174 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2175
2176         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2177
2178 2018-10-09  Tom Tromey  <tom@tromey.com>
2179
2180         * configure: Rebuild.
2181         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2182         * NEWS: Update --enable-ubsan documentation.
2183
2184 2018-10-09  Gary Benson <gbenson@redhat.com>
2185
2186         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2187         found by Coverity.
2188
2189 2018-10-08  Tom Tromey  <tom@tromey.com>
2190
2191         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2192         variable.
2193         (riscv_fbsd_init_abi): Likewise.
2194
2195 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2196         * valops.c (value_struct_elt_for_reference): Rename local variable
2197         to work around the shadowing a previous local warning.
2198
2199 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2200
2201         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2202         * NEWS: Mention new FreeBSD/riscv native configuration.
2203         * configure.host: Add riscv*-*-freebsd*.
2204         * configure.nat: Likewise.
2205         * riscv-fbsd-nat.c: New file.
2206
2207 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2208
2209         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2210         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2211         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2212         * NEWS: Mention new FreeBSD/riscv target.
2213         * configure.tgt: Add riscv*-*-freebsd*.
2214         * riscv-fbsd-tdep.c: New file.
2215         * riscv-fbsd-tdep.h: New file.
2216
2217 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2218
2219         * regcache.h (struct regcache_map_entry): Note that this type can
2220         be used with traditional frame caches.
2221         * trad-frame.c (trad_frame_set_reg_regmap): New.
2222         * trad-frame.h (trad_frame_set_reg_regmap): New.
2223
2224 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2225
2226         PR c++/16841
2227         * valops.c (get_virtual_base_offset): New function.
2228         (value_struct_elt_for_reference): Use it to get virtual base offset
2229         and add it in calculating class member address.
2230
2231 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2232
2233         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2234         (check_producer): Check if the producer is codewarrior.
2235         (producer_is_codewarrior): New function.
2236         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2237         produced by codewarrior.
2238         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2239
2240 2018-10-06  Tom Tromey  <tom@tromey.com>
2241
2242         PR python/19399:
2243         * python/py-inferior.c: Add "architecture" entry.
2244         (infpy_architecture): New function.
2245
2246 2018-10-06  Tom Tromey  <tom@tromey.com>
2247
2248         PR python/21765:
2249         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2250         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2251         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2252         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2253
2254 2018-10-06  Tom Tromey  <tom@tromey.com>
2255
2256         PR build/17077:
2257         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2258         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2259         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2260         #include.
2261
2262 2018-10-06  Tom Tromey  <tom@tromey.com>
2263
2264         * python/py-breakpoint.c (bppy_get_location): Handle a
2265         bp_breakpoint without a location.
2266
2267 2018-10-06  Tom Tromey  <tom@tromey.com>
2268
2269         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2270         (_RegEx): Reformat help text.
2271         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2272         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2273         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2274         text.
2275         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2276         (EnableXMethod, DisableXMethod): Remove help indentation.
2277         Capitalize meta-syntactic variables.
2278         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2279         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2280         Capitalize meta-syntactic variables.
2281         * python/lib/gdb/command/explore.py (ExploreCommand)
2282         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2283         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2284         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2285         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2286         Remove help indentation.
2287         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2288         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2289         (DisableFrameFilter, SetFrameFilterPriority)
2290         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2291
2292 2018-10-06  Tom Tromey  <tom@tromey.com>
2293
2294         PR tui/28819:
2295         * tui/tui-io.c (gdb_wgetch): New function.
2296         (tui_mld_getc, tui_getc): Use it.
2297
2298 2018-10-05  Tom Tromey  <tom@tromey.com>
2299
2300         * sol-thread.c (sol_thread_target::wait): Rename inner
2301         "save_ptid".
2302
2303 2018-10-04  Tom Tromey  <tom@tromey.com>
2304
2305         * configure: Rebuild.
2306         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2307
2308 2018-10-04  Tom Tromey  <tom@tromey.com>
2309
2310         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2311         declaration of "block".
2312
2313 2018-10-04  Tom Tromey  <tom@tromey.com>
2314
2315         * common/filestuff.c (fdwalk): Remove inner declaration of
2316         "result".
2317
2318 2018-10-04  Tom Tromey  <tom@tromey.com>
2319
2320         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2321         "structs_addr" and hoist declaration.
2322
2323 2018-10-04  Tom Tromey  <tom@tromey.com>
2324
2325         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2326         variable "size".
2327
2328 2018-10-04  Tom Tromey  <tom@tromey.com>
2329
2330         * mdebugread.c (parse_partial_symbols): Use std::string.
2331
2332 2018-10-04  Tom Tromey  <tom@tromey.com>
2333
2334         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2335         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2336         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2337         header.
2338         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2339         more inner scope.
2340         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2341         * varobj.c (varobj_update): Rename inner "newobj",
2342         "type_changed".
2343         * valprint.c (generic_emit_char): Rename inner "buf".
2344         * valops.c (find_overload_match): Rename inner "temp".
2345         (value_struct_elt_for_reference): Declare "v" in more inner
2346         scope.
2347         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2348         * unittests/array-view-selftests.c (run_tests): Rename inner
2349         "vec".
2350         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2351         header.
2352         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2353         "tsv" in more inner scope.
2354         (print_one_static_tracepoint_marker): Rename inner
2355         "tuple_emitter".
2356         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2357         (tic6x_push_dummy_call): Don't redeclare "addr".
2358         * target-float.c: Declare "dto" lower.
2359         * symtab.c (lookup_local_symbol): Rename inner "sym".
2360         (find_pc_sect_line): Rename inner "pc".
2361         * stack.c (print_frame): Don't redeclare "gdbarch".
2362         (return_command): Rename inner "gdbarch".
2363         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2364         "sp".
2365         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2366         header.
2367         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2368         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2369         scope.
2370         * remote.c (remote_target::update_thread_list): Don't redeclare
2371         "tp".
2372         (remote_target::process_initial_stop_replies): Rename inner
2373         "thread".
2374         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2375         (remote_target::wait_as): Don't redeclare "stop_reply".
2376         (remote_target::get_thread_local_address): Rename inner
2377         "result".
2378         (remote_target::get_tib_address): Likewise.
2379
2380         * regcache.c (cooked_read_test): Rename "regnum".
2381         * record-btrace.c (cmd_record_btrace_start): Rename inner
2382         "exception".
2383         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2384         loop header.
2385         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2386         header.
2387         (ppu2spu_sniffer): Rename inner "buf".
2388         * parse.c (operator_check_standard): Rename inner "type",
2389         "objfile".
2390         * p-valprint.c (pascal_val_print): Introduce new scope for
2391         "low_bound", "high_bound".
2392         * p-exp.y (yylex): Declare "i" in loop header.
2393         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2394         Lower declaration of "s".
2395         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2396         header.
2397         (nios2_push_dummy_call): Rename "len".
2398         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2399         "buf".
2400         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2401         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2402         (linux_xfer_osdata_modules): Likewise.
2403         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2404         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2405         (mips_o64_push_dummy_call): Likewise.
2406         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2407         "op".
2408         * mi/mi-main.c (list_available_thread_groups): Rename inner
2409         "tuple_emitter".
2410         (mi_cmd_data_read_memory): Rename inner "opts".
2411         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2412         "tuple_emitter".
2413         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2414         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2415         more inner scope.
2416         (parse_partial_symbols): Rename inner "pst", "p", "name"
2417         * main.c (captured_main_1): Rename inner "i"s.
2418         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2419         "oso2".
2420         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2421         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2422         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2423         (handle_signal_stop): Rename inner "gdbarch".
2424         (handle_command): Declare "signum" in loop header.
2425         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2426         "status".
2427         (examine_prologue): Rename inner "sol" and "sof".
2428         (ia64_extract_return_value): Rename inner "val".  Declare another
2429         "val" in a more inner scope.
2430         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2431         inner scope.
2432         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2433         "except".
2434         * findvar.c (default_read_var_value): Don't redeclare "addr".
2435         * f-exp.y (yylex): Declare "i" in loop header.
2436         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2437         Rename inner "type", "expect_type".
2438         (evaluate_subexp_for_sizeof): Rename inner "pc".
2439         * elfread.c (elf_symfile_read): Rename inner "abfd".
2440         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2441         "bytes_read".
2442         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2443         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2444         (dwarf_decode_line_header): Rename inner "lh".
2445         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2446         "offset".  Declare "i" in loop header.
2447         (disassemble_dwarf_expression): Rename inner "addr_size".
2448         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2449         inner "result".
2450         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2451         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2452         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2453         "inner_list_emitter".
2454         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2455         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2456         declaration in a block.
2457         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2458         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2459         "obstack_final_size".
2460         * cp-support.c (inspect_type): Declare "i" in loop header.
2461         * compile/compile.c (compile_instance::insert_symbol_error):
2462         Rename inner "e".
2463         * common/agent.c (agent_run_command): Remove inner "ret"
2464         declaration.
2465         * coffread.c (coff_symfile_read): Rename inner "name".
2466         (coff_symfile_read): Rename inner "abfd".
2467         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2468         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2469         "high".
2470         * c-exp.y (lex_one_token): Move "len" declaration lower.
2471         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2472         "gdbarch".
2473         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2474         "b".
2475         (watch_command_1): Declare "mark" later.
2476         (clear_command): Don't shadow "a" or "b".
2477         (delete_command): Rename inner "b".
2478         (delete_trace_command): Likewise.
2479         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2480         "op".
2481         (arm_gdbarch_init): Remove inner "e_flags".
2482         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2483         "offset" in inner blocks.
2484
2485 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2486
2487         * dwarf-index-write.c (file_write): Don't write if the vector is
2488         empty.
2489
2490 2018-10-05  Tom de Vries  <tdevries@suse.de>
2491
2492         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2493         PyArg_ParseTuple call.
2494
2495 2018-10-05  Tom de Vries  <tdevries@suse.de>
2496
2497         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2498         PyArg_ParseTuple call.
2499
2500 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2501
2502         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2503         to avoid exceeding 80 characters per line limit.
2504
2505 2018-10-04  Tom Tromey  <tom@tromey.com>
2506
2507         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2508         (reread_symbols): Update.
2509         * complaints.h (clear_complaints): Remove argument.
2510         * complaints.c (enum complaint_series): Remove.
2511         (series): Remove global.
2512         (complaint_internal): Update.
2513         (clear_complaints): Remove argument.
2514
2515 2018-10-04  Tom Tromey  <tom@tromey.com>
2516
2517         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2518         debugging symbols" message if there is a separate debug objfile.
2519
2520 2018-10-04  Tom Tromey  <tom@tromey.com>
2521
2522         PR cli/19551:
2523         * symfile.c (symbol_file_add_with_addrs): Update output.
2524         * psymtab.c (require_partial_symbols): Update output.
2525
2526 2018-10-04  Tom Tromey  <tom@tromey.com>
2527
2528         PR cli/22234:
2529         * complaints.c: Emit \n.
2530
2531 2018-10-04  Tom Tromey  <tom@tromey.com>
2532
2533         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2534         (separate_debug_file_exists, find_separate_debug_file)
2535         (add_symbol_file_command, reread_symbols, allocate_symtab)
2536         (allocate_compunit_symtab): Use filtered printing, not
2537         unfiltered.
2538         * psymtab.c (require_partial_symbols, dump_psymtab)
2539         (allocate_psymtab): Use filtered printing, not unfiltered.
2540
2541 2018-10-04  Tom Tromey  <tom@tromey.com>
2542
2543         * complaints.c (complaint_internal): Correctly check complaint
2544         count.
2545
2546 2018-10-04  Tom Tromey  <tom@tromey.com>
2547
2548         * complaints.h (struct complaints): Remove declaration.
2549         * complaints.c (clear_complaints): Remove an unused variable.
2550
2551 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2552
2553         * MAINTAINERS (Write After Approval): Add self.
2554
2555 2018-10-03  Tom Tromey  <tom@tromey.com>
2556
2557         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2558         "buffer_contents".
2559         * coffread.c (coff_symtab_read): Initialize "newobj".
2560
2561 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2562
2563         * dwarf2read.c (read_func_scope): Remove struct keyword in
2564         range-based for.
2565
2566 2018-10-03  Tom Tromey  <tom@tromey.com>
2567
2568         * README: Mention --enable-ubsan.
2569         * NEWS: Mention --enable-ubsan.
2570         * acinclude.m4: Include sanitize.m4.
2571         * configure: Rebuild.
2572         * configure.ac: Call AM_GDB_UBSAN.
2573         * sanitize.m4: New file.
2574
2575 2018-10-03  Tom Tromey  <tom@tromey.com>
2576
2577         * expression.h (enum exp_opcode): Use uint8_t as base type.
2578         * expprint.c (op_name): Handle invalid opcodes.
2579
2580 2018-10-03  Tom Tromey  <tom@tromey.com>
2581
2582         * parse.c (prefixify_expression): Add assert.
2583         (parse_exp_in_context_1): Throw exception if the expression is
2584         empty.
2585
2586 2018-10-03  Tom Tromey  <tom@tromey.com>
2587
2588         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2589
2590 2018-10-03  Tom Tromey  <tom@tromey.com>
2591
2592         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2593
2594 2018-10-03  Tom Tromey  <tom@tromey.com>
2595
2596         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2597         unsigned.
2598
2599 2018-10-03  Tom Tromey  <tom@tromey.com>
2600
2601         * findvar.c (extract_integer): Do work in an unsigned type.
2602
2603 2018-10-03  Tom Tromey  <tom@tromey.com>
2604
2605         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2606         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2607         base type.
2608         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2609         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2610         type.
2611         * c-lang.h (enum c_string_type_values): Use unsigned as base
2612         type.
2613         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2614
2615 2018-10-03  Tom Tromey  <tom@tromey.com>
2616
2617         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2618         <~dwarf2_frame_state_reg_info>: Update.
2619         <dwarf2_frame_state_reg_info>: Update.
2620         <alloc_regs>: Add assertion.  Update.
2621         <reg>: Now a std::vector.
2622         <num_regs>: Remove.
2623         <swap>: Update.
2624         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2625         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2626
2627 2018-10-03  Tom Tromey  <tom@tromey.com>
2628
2629         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2630
2631 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2632
2633         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2634
2635 2018-10-02  Tom Tromey  <tom@tromey.com>
2636
2637         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2638
2639 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2640
2641         * NEWS: Mention changed commands.
2642         * ser-uds.c: New file.
2643         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2644         * configure: Regenerate.
2645         * Makefile.in: Add new file.
2646         * serial.c (serial_open): Check if filename is a socket
2647         and lookup the appropriate interface accordingly.
2648
2649 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2650
2651         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2652         define.
2653         (AARCH64_EXTRA_MAGIC): Likewise.
2654         (AARCH64_FPSIMD_MAGIC): Likewise.
2655         (AARCH64_SVE_MAGIC): Likewise.
2656         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2657         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2658         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2659         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2660         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2661         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2662         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2663         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2664         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2665         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2666         (read_aarch64_ctx): Add function.
2667         (aarch64_linux_sigframe_init): Detect FP registers.
2668
2669 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2670
2671         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2672         (AARCH64_D0_REGNUM): Likewise.
2673         (AARCH64_S0_REGNUM): Likewise.
2674         (AARCH64_H0_REGNUM): Likewise.
2675         (AARCH64_B0_REGNUM): Likewise.
2676         (AARCH64_SVE_V0_REGNUM): Likewise.
2677         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2678         (AARCH64_D0_REGNUM): Likewise.
2679         (AARCH64_S0_REGNUM): Likewise.
2680         (AARCH64_H0_REGNUM): Likewise.
2681         (AARCH64_B0_REGNUM): Likewise.
2682         (AARCH64_SVE_V0_REGNUM): Likewise.
2683
2684 2018-10-01  Gary Benson <gbenson@redhat.com>
2685
2686         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2687         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2688         prfpregset_t instead of gdb_prfpregset_t.
2689         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2690         * configure, config.in: Rebuild.
2691
2692 2018-10-01  Gary Benson <gbenson@redhat.com>
2693
2694         * common/gdb_proc_service.h: New file, factored out from...
2695         * gdb_proc_service.h: Moved common code to the above file.
2696         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2697
2698 2018-10-01  Gary Benson <gbenson@redhat.com>
2699
2700         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2701         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2702
2703 2018-10-01  Gary Benson <gbenson@redhat.com>
2704
2705         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2706         (AC_CHECK_HEADERS): Check for linux/elf.h.
2707         * configure, config.in: Rebuild.
2708         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2709         doesn't define elf_fpregset_t.
2710
2711 2018-10-01  Gary Benson <gbenson@redhat.com>
2712
2713         * gdb_proc_service.h: Whitespace change.
2714
2715 2018-10-01  Tom Tromey  <tom@tromey.com>
2716
2717         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2718         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2719         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2720
2721 2018-10-01  Tom Tromey  <tom@tromey.com>
2722
2723         * README: Minor change.
2724
2725 2018-09-30  Pedro Alves  <palves@redhat.com>
2726
2727         * darwin-nat-info.c (darwin_debug_regions_recurse)
2728         (info_mach_exceptions_command): Remove unused local variables.
2729         * darwin-nat.c (darwin_decode_notify_message)
2730         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2731         (darwin_stop_inferior, darwin_setup_exceptions)
2732         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2733         (darwin_nat_target::attach, darwin_nat_target::detach)
2734         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2735         local variables.
2736         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2737         variables.
2738
2739 2018-09-29  Tom Tromey  <tom@tromey.com>
2740
2741         * README: Remove some leftover text.
2742
2743 2018-09-29  Tom Tromey  <tom@tromey.com>
2744
2745         * PROBLEMS: Rewrite.
2746         * README: Update.
2747
2748 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2749
2750         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2751         case with explicit breakpoint kind.
2752         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2753         'additional_info' and related logic.
2754         (riscv_debug_breakpoints): New variable.
2755         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2756         instruction to determine the breakpoint kind.
2757         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2758         flag.  Update description of 'set/show riscv
2759         use-compressed-breakpoints' flag.
2760
2761 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2762
2763         (NEWS): Mention changes to frame related commands.
2764         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2765         (add_prefix_cmd_suppress_notification): New function.
2766         (add_com_suppress_notification): Call
2767         add_cmd_suppress_notification.
2768         * command.h (add_cmd_suppress_notification): Declare.
2769         (add_prefix_cmd_suppress_notification): Declare.
2770         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2771         (parse_frame_specification): Moved from stack.c, with
2772         simplification to handle a single argument.
2773         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2774         switch to the selected frame.  Add a header comment.
2775         * stack.c: Remove 'safe-ctype.h' include.
2776         (find_frame_for_function): Add declaration.
2777         (find_frame_for_address): New function.
2778         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2779         (frame_selection_by_function_completer): New function.
2780         (info_frame_command): Rename to...
2781         (info_frame_command_core): ...this, and update parameter types.
2782         (select_frame_command): Rename to...
2783         (select_frame_command_core): ...this, and update parameter types.
2784         (frame_command): Rename to...
2785         (frame_command_core): ...this, and update parameter types.
2786         (class frame_command_helper): New class to wrap implementations of
2787         frame related sub-commands.
2788         (frame_apply_cmd_list): New static global.
2789         (frame_cmd_list): Make static.
2790         (select_frame_cmd_list): New global for sub-commands.
2791         (info_frame_cmd_list): New global for sub-commands.
2792         (_initialize_stack): Register sub-commands for 'frame',
2793         'select-frame', and 'info frame'.  Update 'frame apply' commands
2794         to use frame_apply_cmd_list.  Move function local static
2795         frame_apply_list to file static frame_apply_cmd_list for
2796         consistency.
2797         * stack.h (select_frame_command): Delete declarationn.
2798         (select_frame_for_mi): Declare new function.
2799
2800 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2801
2802         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2803         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2804         and NOP.
2805
2806 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2807
2808         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2809
2810 2018-09-26  Tom Tromey  <tom@tromey.com>
2811
2812         * valops.c (auto_abandon): Remove dead code.
2813
2814 2018-09-26  Tom Tromey  <tom@tromey.com>
2815
2816         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2817
2818 2018-09-24  Tom Tromey  <tom@tromey.com>
2819
2820         * common/pathstuff.c (get_standard_cache_dir): Make
2821         "xdg_cache_home" and "home" const.
2822         * top.c (init_history): Make "tmpenv" const.
2823         * main.c (get_init_files): Make "homedir" const.
2824
2825 2018-09-23  Tom Tromey  <tom@tromey.com>
2826
2827         PR python/18852:
2828         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2829
2830 2018-09-23  Tom Tromey  <tom@tromey.com>
2831
2832         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2833         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2834         * python/python-internal.h (gdbpy_handle_exception): Declare.
2835         * python/py-utils.c (gdbpy_handle_exception): New function.
2836
2837 2018-09-23  Tom Tromey  <tom@tromey.com>
2838
2839         PR python/17284:
2840         * python/py-type.c (typy_template_argument): Check for negative
2841         argument number.
2842
2843 2018-09-23  Tom Tromey  <tom@tromey.com>
2844
2845         PR python/14062:
2846         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2847
2848 2018-09-23  Tom Tromey  <tom@tromey.com>
2849
2850         PR python/18170:
2851         * python/py-value.c (valpy_int): Allow conversion from pointer
2852         type.
2853
2854 2018-09-23  Tom Tromey  <tom@tromey.com>
2855
2856         PR python/20126:
2857         * python/py-value.c (valpy_int): Respect type sign.
2858
2859 2018-09-23  Tom Tromey  <tom@tromey.com>
2860
2861         PR python/18352;
2862         * python/py-value.c (valpy_float): Allow conversions from int or
2863         char.
2864         (valpy_int, valpy_long): Allow conversions from float.
2865
2866 2018-09-23  Tom Tromey  <tom@tromey.com>
2867
2868         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2869         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2870
2871 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2872
2873         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2874         __sighndlr.
2875         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2876
2877 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2878
2879         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2880         target_terminal::ours().
2881
2882 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2883
2884         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2885         of vl to ULONGEST.
2886
2887 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2888
2889         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2890         redundant condition.
2891
2892 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2893
2894         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2895
2896         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2897         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2898         * sol-thread.c (ps_pdmodel): Don't guard definition.
2899
2900         * procfs.c: Fix formatting.
2901
2902         * procfs.c (sysset_t_alloc): Remove.
2903         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2904         (procfs_debug_inferior): Likewise.
2905         (procfs_set_exec_trap): Likewise.
2906         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2907         (proc_set_traced_sysexit): Likewise.
2908
2909         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2910         (dead_procinfo): Likewise.
2911         (proc_warn): Likewise.
2912         (proc_error): Likewise.
2913         (proc_get_LDT_entry): Likewise.
2914         (do_attach): Likewise.
2915         (procfs_target::pid_to_str): Likewise.
2916         (iterate_over_mappings): Likewise.
2917
2918         * procfs.c (create_procinfo): Fix ARI warning.
2919         (proc_get_status): Likewise.
2920         (proc_stop_process): Likewise.
2921         (proc_run_process): Likewise.
2922         (proc_kill): Likewise.
2923         (proc_get_LDT_entry): Likewise.
2924         (procfs_find_LDT_entry): Likewise.
2925         (proc_update_threads): Likewise.
2926         (proc_iterate_over_threads): Likewise.
2927         (do_attach): Likewise.
2928         (procfs_xfer_memory): Likewise.
2929         (invalidate_cache): Likewise.
2930         (procfs_target::resume): Likewise.
2931         (procfs_init_inferior): Likewise.
2932         (procfs_set_exec_trap): Likewise.
2933         (procfs_target::thread_alive): Likewise.
2934         (procfs_target::pid_to_exec_file): Likewise.
2935         (iterate_over_mappings): Likewise.
2936         (procfs_target::make_corefile_notes): Likewise.
2937         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2938
2939         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2940         (procfs_find_LDT_entry): Likewise.
2941         * sol-thread.c (ps_lgetLDT): Likewise.
2942
2943 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2944
2945         PR tdep/17903
2946         * procfs.c (procfs_target): Declare pid_to_exec_file.
2947         (procfs_target::pid_to_exec_file): New.
2948
2949 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2950
2951         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2952         renaming.
2953         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2954         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2955
2956 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2957
2958         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2959         (supply_fpregset, fill_fpregset): Move ...
2960         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2961         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2962         Remove references to ioctl-based procfs.
2963         Include <sys/reg.h>.
2964         Remove PR_MODEL_NATIVE guards.
2965         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2966         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2967
2968 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2969
2970         PR gdb/20981:
2971         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2972         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2973         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2974
2975 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2976
2977         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2978         (fbsd_print_sockaddr_in6): Likewise.
2979
2980 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2981             Chris January  <chris.january@arm.com>
2982
2983         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2984         (evaluate_subexp_standard): Return a dummy type when
2985         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2986         OP_F77_UNDETERMINED_ARGLIST case.
2987         * expression.h (enum noside): Update comment.
2988
2989 2018-09-19  George Vasick <george.vasick@oracle.com>
2990
2991         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2992
2993 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2994             April Chin <april.chin@oracle.com>
2995             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2996
2997         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2998         uint_t lwpid_t.
2999         (create_procinfo): Print pids in /proc without leading zeros.
3000
3001 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3002
3003         * nios2-tdep.c (nios2_gcc_target_options): New.
3004         (nios2_gdb_arch_init): Install new hook.
3005
3006 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3007
3008         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3009         New file.
3010         * update-gnulib.sh: Apply patch.
3011         * configure: Re-generate.
3012
3013 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3014
3015         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3016         description.  Make "info proc" command descriptions more
3017         consistent.
3018
3019 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3020
3021         * NEWS: Mention 'info proc files' command.
3022
3023 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3024
3025         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3026         descriptors for IP_FILES and IP_ALL.
3027
3028 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3029
3030         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3031         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3032         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3033         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3034         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3035         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3036         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3037         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3038         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3039         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3040         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3041         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3042         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3043         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3044         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3045         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3046         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3047         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3048         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3049         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3050         (struct fbsd_sockaddr_un): New types.
3051         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3052         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3053         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3054         (fbsd_core_info_proc_files): New functions.
3055         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3056         IP_ALL.
3057         * fbsd-tdep.h (fbsd_info_proc_files_header)
3058         (fbsd_info_proc_files_entry): New.
3059
3060 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3061
3062         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3063         * infcmd.c (info_proc_cmd_files): New function.
3064         (_initialize_infcmd): Register 'info proc files' command.
3065
3066 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3067
3068         * gnulib/aclocal-m4-deps.mk: Re-generate.
3069         * gnulib/aclocal.m4: Re-generate.
3070         * gnulib/config.in: Re-generate.
3071         * gnulib/configure: Re-generate.
3072         * gnulib/import/Makefile.am: Re-generate.
3073         * gnulib/import/Makefile.in: Re-generate.
3074         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3075         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3076         * gnulib/import/arpa_inet.in.h: New file.
3077         * gnulib/import/inet_ntop.c: New file.
3078         * gnulib/import/m4/arpa_inet_h.m4: New file.
3079         * gnulib/import/m4/inet_ntop.m4: New file.
3080         * gnulib/import/m4/netinet_in_h.m4: New file.
3081         * gnulib/import/m4/socklen.m4: New file.
3082         * gnulib/import/m4/sockpfaf.m4: New file.
3083         * gnulib/import/m4/stdalign.m4: New file.
3084         * gnulib/import/m4/sys_uio_h.m4: New file.
3085         * gnulib/import/netinet_in.in.h: New file.
3086         * gnulib/import/stdalign.in.h: New file.
3087         * gnulib/import/sys_socket.c: New file.
3088         * gnulib/import/sys_socket.in.h: New file.
3089         * gnulib/import/sys_uio.in.h: New file.
3090         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3091         module.
3092
3093 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3094
3095         * gnulib/aclocal-m4-deps.mk: New file.
3096         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3097         deterministically.
3098
3099 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3100
3101         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3102         KVE_PATH.
3103
3104 2018-09-18  Tom Tromey  <tom@tromey.com>
3105
3106         * compile/compile-object-load.c (struct
3107         link_hash_table_cleanup_data): Add constructor and destructor.
3108         Use DISABLE_COPY_AND_ASSIGN.
3109         (~link_hash_table_cleanup_data): Rename from
3110         link_hash_table_free.  Now a destructor.
3111         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3112
3113 2018-09-18  Tom Tromey  <tom@tromey.com>
3114
3115         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3116         * compile/compile-object-load.c (struct munmap_list): Move to
3117         header file.
3118         (munmap_list::add): Rename from munmap_list_add; rewrite.
3119         (munmap_list::~munmap_list): Rename from munmap_list_free.
3120         (munmap_listp_free_cleanup): Remove.
3121         (compile_object_load): Update.
3122         * compile/compile-object-load.h (struct munmap_list): Move from
3123         compile-object-load.c.  Rewrite.
3124
3125 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3126
3127         * aarch64-tdep.c (pass_in_v): Use register size.
3128         (aarch64_extract_return_value): Likewise.
3129         (aarch64_store_return_value): Likewise.
3130
3131 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3132
3133         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3134         rlim_t.
3135
3136 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3137
3138         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3139         Fix short help line.
3140
3141 2018-09-17  Tom Tromey  <tom@tromey.com>
3142
3143         PR python/20445:
3144         * configure: Rebuild.
3145         * configure.ac: Conditionally use -DNDEBUG for Python.
3146
3147 2018-09-17  Tom Tromey  <tom@tromey.com>
3148
3149         * configure: Rebuild.
3150         * configure.ac: Use gmp as a library dependency when checking for
3151         mpfr.
3152
3153 2018-09-17  Pedro Alves  <palves@redhat.com>
3154
3155         * python/py-inferior.c (find_inferior_object): Delete.
3156
3157 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3158
3159         * compile/compile-cplus-types.c
3160         (compile_cplus_instance::enter_scope): Don't use new_scope after
3161         std::move.
3162
3163 2018-09-17  Tom Tromey  <tom@tromey.com>
3164
3165         * common/pathstuff.c (get_standard_cache_dir): Use
3166         ~/Library/Caches on macOS.
3167         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3168
3169 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3170
3171         PR python/23669
3172         * breakpoint.c (commands_cmd_element): New.
3173         (_initialize_breakpoint): Assign commands_cmd_element.
3174         * breakpoint.h (commands_cmd_element): New.
3175         * cli/cli-script.c (while_cmd_element, if_command,
3176         define_cmd_element): New.
3177         (command_name_equals): Remove.
3178         (process_next_line): Compare commands by pointer, not by name.
3179         (_initialize_cli_script): Assign the various cmd_list_element
3180         variables.
3181         * compile/compile.c (compile_cmd_element): New.
3182         (_initialize_compile): Assign compile_cmd_element.
3183         * compile/compile.h (compile_cmd_element): New.
3184         * guile/guile.c (guile_cmd_element): New.
3185         (install_gdb_commands): Assign guile_cmd_element.
3186         * guile/guile.h (guile_cmd_element): New.
3187         * python/python.c (python_cmd_element): New.
3188         (_initialize_python): Assign python_cmd_element.
3189         * python/python.h (python_cmd_element): New.
3190         * tracepoint.c (while_stepping_cmd_element): New.
3191         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3192         * tracepoint.h (while_stepping_cmd_element): New.
3193
3194 2018-09-17  Tom Tromey  <tom@tromey.com>
3195
3196         * infrun.c (save_infcall_suspend_state): Return
3197         infcall_suspend_state_up.
3198         (save_infcall_control_state): Return infcall_control_state_up.
3199         * inferior.h (save_infcall_suspend_state)
3200         (save_infcall_control_state): Declare later.  Return unique
3201         pointers.
3202
3203 2018-09-17  Tom Tromey  <tom@tromey.com>
3204
3205         * infrun.c (struct stop_context): Declare constructor,
3206         destructor, "changed" method.
3207         (stop_context::stop_context): Rename from save_stop_context.
3208         (stop_context::~stop_context): Rename from
3209         release_stop_context_cleanup.
3210         (normal_stop): Update.
3211         (stop_context::changed): Rename from stop_context_changed.  Return
3212         bool.
3213
3214 2018-09-17  Tom Tromey  <tom@tromey.com>
3215
3216         * inferior.h (struct infcall_suspend_state_deleter): New.
3217         (infcall_suspend_state_up): New typedef.
3218         (struct infcall_control_state_deleter): New.
3219         (infcall_control_state_up): New typedef.
3220         (make_cleanup_restore_infcall_suspend_state)
3221         (make_cleanup_restore_infcall_control_state): Don't declare.
3222         * infcall.c (call_function_by_hand_dummy): Update.
3223         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3224         (make_cleanup_restore_infcall_suspend_state): Remove.
3225         (do_restore_infcall_control_state_cleanup)
3226         (make_cleanup_restore_infcall_control_state): Remove.
3227
3228 2018-09-17  Tom Tromey  <tom@tromey.com>
3229
3230         * gdbthread.h (struct thread_control_state): Add initializer.
3231         (class thread_info) <control>: Remove initializer.
3232         * inferior.h (struct inferior_control_state): Add initializer.
3233         (class inferior) <control>: Remove initializer.
3234         (exit_inferior_1): Update.
3235         * infrun.c (struct infcall_control_state): Add constructors.
3236         (save_infcall_control_state): Use new.
3237         (restore_infcall_control_state, discard_infcall_control_state):
3238         Use delete.
3239
3240 2018-09-17  Tom Tromey  <tom@tromey.com>
3241
3242         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3243         unique_ptr.
3244         <siginfo_data>: Now a unique_xmalloc_ptr.
3245         (save_infcall_suspend_state, restore_infcall_suspend_state)
3246         (discard_infcall_suspend_state)
3247         (get_infcall_suspend_state_regcache): Update.
3248
3249 2018-09-17  Tom Tromey  <tom@tromey.com>
3250
3251         * gdbthread.h (struct thread_suspend_state): Add initializers.
3252         (class thread_info) <suspend>: Remove initializer.
3253         * infrun.c (struct infcall_suspend_state): Add initializers.
3254         (save_infcall_suspend_state): Use new.
3255         (discard_infcall_suspend_state): Use delete.
3256
3257 2018-09-16  Tom Tromey  <tom@tromey.com>
3258
3259         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3260         Remove.
3261         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3262         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3263         (py_varobj_iter_new): Likewise.
3264         (py_varobj_get_iterator): Use gdbpy_ref.
3265
3266 2018-09-16  Tom Tromey  <tom@tromey.com>
3267
3268         * python/py-threadevent.c (py_get_event_thread): Simplify.
3269         * python/py-inferior.c (infpy_thread_from_thread_handle):
3270         Return immediately after calling thread_to_thread_object.  Use
3271         Py_RETURN_NONE.
3272         (thread_to_thread_object): Set the exception on a NULL return.
3273
3274 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3275
3276         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3277
3278 2018-09-16  Tom Tromey  <tom@tromey.com>
3279
3280         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3281         Remove.
3282
3283 2018-09-16  Tom Tromey  <tom@tromey.com>
3284
3285         * python/python-internal.h (thread_to_thread_object): Change
3286         return type.
3287         * python/py-inferior.c (thread_to_thread_object): Return a new
3288         reference.
3289         (infpy_thread_from_thread_handle): Update.
3290         * python/py-infthread.c (gdbpy_selected_thread): Update.
3291         * python/py-stopevent.c (create_stop_event_object): Update.
3292         * python/py-threadevent.c (py_get_event_thread): Return a new
3293         reference.
3294         (py_get_event_thread): Update.
3295         * python/py-event.h (py_get_event_thread): Change return type.
3296         * python/py-continueevent.c (create_continue_event_object):
3297         Update.
3298
3299 2018-09-16  Tom Tromey  <tom@tromey.com>
3300
3301         * python/py-progspace.c (pspy_get_objfiles): Update.
3302         * python/python-internal.h (objfile_to_objfile_object): Change
3303         return type.
3304         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3305         Update.
3306         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3307         Update.
3308         * python/python.c (gdbpy_get_current_objfile): Update.
3309         (gdbpy_objfiles): Update.
3310         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3311         Update.
3312         (objfile_to_objfile_object): Return a new reference.
3313         * python/py-symtab.c (stpy_get_objfile): Update.
3314         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3315         Update.
3316
3317 2018-09-16  Tom Tromey  <tom@tromey.com>
3318
3319         * python/py-inferior.c (infpy_get_progspace): Update.
3320         * python/python-internal.h (pspace_to_pspace_object): Change
3321         return type.
3322         * python/py-newobjfileevent.c
3323         (create_clear_objfiles_event_object): Update.
3324         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3325         Update.
3326         * python/python.c (gdbpy_get_current_progspace): Update.
3327         (gdbpy_progspaces): Update.
3328         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3329         reference.
3330         * python/py-objfile.c (objfpy_get_progspace): Update.
3331         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3332         Update.
3333
3334 2018-09-16  Tom Tromey  <tom@tromey.com>
3335
3336         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3337         (solib_name, block_for_pc, find_pc_line): New functions.
3338         (execute_unwinders): Update.
3339         * python/py-block.c (gdbpy_block_for_pc): Remove.
3340         * python/py-inferior.c (infpy_get_progspace): New function.
3341         (inferior_object_getset) <progspace>: Add.
3342         * python/py-progspace.c (pspy_objfiles): Rewrite.
3343         (pspy_solib_name, pspy_block_for_pc)
3344         (pspy_find_pc_line, pspy_is_valid): New functions.
3345         (progspace_object_methods): Add entries for solib_name,
3346         block_for_pc, find_pc_line, is_valid.
3347         * python/python-internal.h (gdbpy_block_for_pc)
3348         (build_objfiles_list): Don't declare.
3349         * python/python.c: Don't include solib.h.
3350         (gdbpy_solib_name, gdbpy_find_pc_line)
3351         (gdbpy_get_current_progspace, build_objfiles_list)
3352         (gdbpy_objfiles): Remove.
3353         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3354         solib_name, find_pc_line>: Remove entries.
3355
3356 2018-09-16  Tom Tromey  <tom@tromey.com>
3357
3358         * top.c (new_ui_command): Use GNU style for metasyntactic
3359         variables.
3360         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3361         variables.
3362         * maint.c (maintenance_translate_address): Remove "<>" around
3363         text.
3364         * interps.c (interpreter_exec_cmd): Use GNU style for
3365         metasyntactic variables.
3366         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3367         metasyntactic variables.
3368         * tracepoint.c (tfind_range_command): Use GNU style for
3369         metasyntactic variables.
3370         (tfind_outside_command): Likewise.
3371         (_initialize_tracepoint): Likewise.
3372         * remote.c (extended_remote_target::create_inferior): Use GNU
3373         style for metasyntactic variables.
3374         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3375         metasyntactic variables.
3376         (adi_assign_command): Likewise.
3377
3378 2018-09-16  Tom Tromey  <tom@tromey.com>
3379
3380         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3381         metasyntactic variables.  Print message if no disassembler options
3382         are available.
3383
3384 2018-09-15  Tom Tromey  <tom@tromey.com>
3385
3386         * infcmd.c (get_inferior_args): Return const char *.
3387         * inferior.h (get_inferior_args): Return type now const.
3388         * linux-tdep.c (linux_fill_prpsinfo): Update.
3389         * procfs.c (procfs_target::make_corefile_notes): Update.
3390
3391 2018-09-07  Tom Tromey  <tom@tromey.com>
3392
3393         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3394         inside the TRY.
3395
3396 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3397
3398         * nios2-tdep.c (nios2_type_align): New.
3399         (nios2_gdb_arch_init): Install type_align hook.
3400
3401 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3402
3403         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3404         type that is neither object file owned, nor gdbarch owned.
3405         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3406         gdbarch is non-NULL.
3407         (alloc_type_instance): Allocate non-objfile owned types on the
3408         gdbarch obstack.
3409         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3410         using TYPE_ALLOC to ensure memory is allocated on the correct
3411         obstack.
3412         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3413         obstack, or the gdbarch obstack.
3414         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3415
3416 2018-09-14  Tom Tromey  <tom@tromey.com>
3417
3418         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3419         block.
3420
3421 2018-09-14  Tom Tromey  <tom@tromey.com>
3422
3423         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3424
3425 2018-09-13  Tom Tromey  <tom@tromey.com>
3426
3427         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3428         static.
3429
3430 2018-09-13  Tom Tromey  <tom@tromey.com>
3431
3432         * exec.c (try_open_exec_file): Use std::string.
3433
3434 2018-09-13  Tom Tromey  <tom@tromey.com>
3435
3436         * utils.h (gdb_bfd_errmsg): Return std::string.
3437         * exec.c (exec_file_attach): Update.
3438         * compile/compile-object-load.c (compile_object_load): Update.
3439         * utils.c (gdb_bfd_errmsg): Return std::string.
3440
3441 2018-09-13  Tom Tromey  <tom@tromey.com>
3442
3443         * procfs.c (struct procinfo_deleter): New.
3444         (procinfo_up): New typedef.
3445         (do_destroy_procinfo_cleanup): Remove.
3446         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3447
3448 2018-09-13  Tom Tromey  <tom@tromey.com>
3449
3450         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3451
3452 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3453 2018-09-13  Tom Tromey  <tom@tromey.com>
3454
3455         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3456         (pspy_get_objfiles): New function.
3457         (progspace_object_methods): New.
3458         (pspace_object_type): Add tp_methods callback.
3459         * python/python-internal.h (build_objfiles_list): New
3460         declaration.
3461         * python/python.c (build_objfiles_list): New function.
3462         (gdbpy_objfiles): Implement using build_objfiles_list.
3463         * NEWS: Mention the Progspace.objfiles method.
3464
3465 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3466
3467         * python/py-inferior.c (infpy_get_progspace): New function.
3468         (inferior_object_getset): Add progspace property.
3469         * NEWS: Mention the new property.
3470
3471 2018-09-13  Tom Tromey  <tom@tromey.com>
3472
3473         PR rust/23650:
3474         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3475
3476 2018-09-13  Tom Tromey  <tom@tromey.com>
3477
3478         PR rust/23626:
3479         * rust-lang.c (rust_enum_variant): Now static.
3480         (rust_empty_enum_p): New function.
3481         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3482         Handle empty enum.
3483
3484 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3485
3486         * python/py-inferior.c (infpy_repr): New.
3487         (inferior_object_type): Register infpy_repr.
3488         * python/py-objfile.c (objfpy_repr): New.
3489         (objfile_object_type): Register objfpy_repr.
3490
3491 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3492
3493         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3494
3495 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3496
3497         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3498         typo.
3499
3500 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3501
3502         * common/common-utils.c: Don't include '<sys/stat.h>'.
3503         (is_regular_file): Move to...
3504         * common/filestuff.c (is_regular_file): ... here.
3505         * common/common-utils.h (is_regular_file): Move to...
3506         * common/filestuff.h (is_regular_file): ... here.
3507
3508 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3509
3510         * skip.c (debug_skip): New variable.
3511         (skiplist_entry::do_skip_file_p): Add debug output.
3512         (skiplist_entry::do_skip_gfile_p): Likewise.
3513         (skiplist_entry::skip_function_p): Likewise.
3514         (_initialize_step_skip): Create debug command.
3515         * NEWS: Mention set/show debug skip.
3516
3517 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3518
3519         * darwin-nat.c (should_disable_startup_with_shell):
3520         New function.
3521         (darwin_nat_target::create_inferior): Add call.
3522
3523 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3524
3525         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3526         inf_port, msg_state>: Initialize.
3527         (struct darwin_thread_info) <signaled, single_step>: Change
3528         type and initialize.
3529         (struct darwin_thread_info) <event>: Initialize.
3530
3531 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3532
3533         PR gdb/23555
3534         PR gdb/23558
3535         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3536         guesses.
3537
3538 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3539
3540         Revert:
3541         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3542
3543         PR gdb/23555
3544         PR gdb/23558
3545         * gnulib/aclocal.m4: Regenerate.
3546         * gnulib/config.in: Regenerate.
3547         * gnulib/configure: Regenerate.
3548         * gnulib/import/Makefile.am: Update.
3549         * gnulib/import/Makefile.in: Update.
3550         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3551         * gnulib/import/_Noreturn.h: ... this.
3552         * gnulib/import/alloca.in.h: Update.
3553         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3554         * gnulib/import/arg-nonnull.h: ... this.
3555         * gnulib/import/assure.h: Update.
3556         * gnulib/import/at-func.c: Update.
3557         * gnulib/import/basename-lgpl.c: Update.
3558         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3559         * gnulib/import/c++defs.h: ... this.
3560         * gnulib/import/canonicalize-lgpl.c: Update.
3561         * gnulib/import/cdefs.h: Update.
3562         * gnulib/import/chdir-long.c: Update.
3563         * gnulib/import/chdir-long.h: Update.
3564         * gnulib/import/cloexec.c: Update.
3565         * gnulib/import/cloexec.h: Update.
3566         * gnulib/import/close.c: Update.
3567         * gnulib/import/closedir.c: Update.
3568         * gnulib/import/config.charset: Update.
3569         * gnulib/import/dirent-private.h: Update.
3570         * gnulib/import/dirent.in.h: Update.
3571         * gnulib/import/dirfd.c: Update.
3572         * gnulib/import/dirname-lgpl.c: Update.
3573         * gnulib/import/dirname.h: Update.
3574         * gnulib/import/dosname.h: Update.
3575         * gnulib/import/dup-safer-flag.c: Update.
3576         * gnulib/import/dup-safer.c: Update.
3577         * gnulib/import/dup.c: Update.
3578         * gnulib/import/dup2.c: Update.
3579         * gnulib/import/errno.in.h: Update.
3580         * gnulib/import/error.c: Update.
3581         * gnulib/import/error.h: Update.
3582         * gnulib/import/exitfail.c: Update.
3583         * gnulib/import/exitfail.h: Update.
3584         * gnulib/import/extra/update-copyright: Update.
3585         * gnulib/import/fchdir.c: Update.
3586         * gnulib/import/fcntl.c: Update.
3587         * gnulib/import/fcntl.in.h: Update.
3588         * gnulib/import/fd-hook.c: Update.
3589         * gnulib/import/fd-hook.h: Update.
3590         * gnulib/import/fd-safer-flag.c: Update.
3591         * gnulib/import/fd-safer.c: Update.
3592         * gnulib/import/fdopendir.c: Update.
3593         * gnulib/import/filename.h: Update.
3594         * gnulib/import/filenamecat-lgpl.c: Update.
3595         * gnulib/import/filenamecat.h: Update.
3596         * gnulib/import/flexmember.h: Update.
3597         * gnulib/import/float+.h: Update.
3598         * gnulib/import/float.c: Update.
3599         * gnulib/import/float.in.h: Update.
3600         * gnulib/import/fnmatch.c: Update.
3601         * gnulib/import/fnmatch.in.h: Update.
3602         * gnulib/import/fnmatch_loop.c: Update.
3603         * gnulib/import/fpucw.h: Update.
3604         * gnulib/import/frexp.c: Update.
3605         * gnulib/import/frexpl.c: Update.
3606         * gnulib/import/fstat.c: Update.
3607         * gnulib/import/fstatat.c: Update.
3608         * gnulib/import/getcwd-lgpl.c: Update.
3609         * gnulib/import/getcwd.c: Update.
3610         * gnulib/import/getdtablesize.c: Update.
3611         * gnulib/import/getlogin_r.c: Update.
3612         * gnulib/import/getprogname.c: Update.
3613         * gnulib/import/getprogname.h: Update.
3614         * gnulib/import/gettext.h: Update.
3615         * gnulib/import/gettimeofday.c: Update.
3616         * gnulib/import/glob-libc.h: Update.
3617         * gnulib/import/glob.c: Update.
3618         * gnulib/import/glob.in.h: Update.
3619         * gnulib/import/glob_internal.h: Update.
3620         * gnulib/import/glob_pattern_p.c: Update.
3621         * gnulib/import/globfree.c: Update.
3622         * gnulib/import/hard-locale.c: Update.
3623         * gnulib/import/hard-locale.h: Update.
3624         * gnulib/import/intprops.h: Update.
3625         * gnulib/import/inttypes.in.h: Update.
3626         * gnulib/import/isnan.c: Update.
3627         * gnulib/import/isnand-nolibm.h: Update.
3628         * gnulib/import/isnand.c: Update.
3629         * gnulib/import/isnanl-nolibm.h: Update.
3630         * gnulib/import/isnanl.c: Update.
3631         * gnulib/import/itold.c: Update.
3632         * gnulib/import/libc-config.h: Update.
3633         * gnulib/import/limits.in.h: Update.
3634         * gnulib/import/localcharset.c: Update.
3635         * gnulib/import/localcharset.h: Update.
3636         * gnulib/import/localtime-buffer.c: Update.
3637         * gnulib/import/localtime-buffer.h: Update.
3638         * gnulib/import/lstat.c: Update.
3639         * gnulib/import/m4/00gnulib.m4: Update.
3640         * gnulib/import/m4/__inline.m4: Update.
3641         * gnulib/import/m4/absolute-header.m4: Update.
3642         * gnulib/import/m4/alloca.m4: Update.
3643         * gnulib/import/m4/builtin-expect.m4: Update.
3644         * gnulib/import/m4/canonicalize.m4: Update.
3645         * gnulib/import/m4/chdir-long.m4: Update.
3646         * gnulib/import/m4/close.m4: Update.
3647         * gnulib/import/m4/closedir.m4: Update.
3648         * gnulib/import/m4/configmake.m4: Update.
3649         * gnulib/import/m4/d-ino.m4: Update.
3650         * gnulib/import/m4/d-type.m4: Update.
3651         * gnulib/import/m4/dirent_h.m4: Update.
3652         * gnulib/import/m4/dirfd.m4: Update.
3653         * gnulib/import/m4/dirname.m4: Update.
3654         * gnulib/import/m4/double-slash-root.m4: Update.
3655         * gnulib/import/m4/dup.m4: Update.
3656         * gnulib/import/m4/dup2.m4: Update.
3657         * gnulib/import/m4/eealloc.m4: Update.
3658         * gnulib/import/m4/environ.m4: Update.
3659         * gnulib/import/m4/errno_h.m4: Update.
3660         * gnulib/import/m4/error.m4: Update.
3661         * gnulib/import/m4/exponentd.m4: Update.
3662         * gnulib/import/m4/exponentl.m4: Update.
3663         * gnulib/import/m4/extensions.m4: Update.
3664         * gnulib/import/m4/extern-inline.m4: Update.
3665         * gnulib/import/m4/fchdir.m4: Update.
3666         * gnulib/import/m4/fcntl-o.m4: Update.
3667         * gnulib/import/m4/fcntl.m4: Update.
3668         * gnulib/import/m4/fcntl_h.m4: Update.
3669         * gnulib/import/m4/fdopendir.m4: Update.
3670         * gnulib/import/m4/filenamecat.m4: Update.
3671         * gnulib/import/m4/flexmember.m4: Update.
3672         * gnulib/import/m4/float_h.m4: Update.
3673         * gnulib/import/m4/fnmatch.m4: Update.
3674         * gnulib/import/m4/fnmatch_h.m4: Update.
3675         * gnulib/import/m4/fpieee.m4: Update.
3676         * gnulib/import/m4/frexp.m4: Update.
3677         * gnulib/import/m4/frexpl.m4: Update.
3678         * gnulib/import/m4/fstat.m4: Update.
3679         * gnulib/import/m4/fstatat.m4: Update.
3680         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3681         * gnulib/import/m4/getcwd-path-max.m4: Update.
3682         * gnulib/import/m4/getcwd.m4: Update.
3683         * gnulib/import/m4/getdtablesize.m4: Update.
3684         * gnulib/import/m4/getlogin.m4: Update.
3685         * gnulib/import/m4/getlogin_r.m4: Update.
3686         * gnulib/import/m4/getpagesize.m4: Update.
3687         * gnulib/import/m4/getprogname.m4: Update.
3688         * gnulib/import/m4/gettimeofday.m4: Update.
3689         * gnulib/import/m4/glibc21.m4: Update.
3690         * gnulib/import/m4/glob.m4: Update.
3691         * gnulib/import/m4/glob_h.m4: Update.
3692         * gnulib/import/m4/gnulib-cache.m4: Update.
3693         * gnulib/import/m4/gnulib-common.m4: Update.
3694         * gnulib/import/m4/gnulib-comp.m4: Update.
3695         * gnulib/import/m4/gnulib-tool.m4: Update.
3696         * gnulib/import/m4/hard-locale.m4: Update.
3697         * gnulib/import/m4/include_next.m4: Update.
3698         * gnulib/import/m4/inttypes-pri.m4: Update.
3699         * gnulib/import/m4/inttypes.m4: Update.
3700         * gnulib/import/m4/isnand.m4: Update.
3701         * gnulib/import/m4/isnanl.m4: Update.
3702         * gnulib/import/m4/largefile.m4: Update.
3703         * gnulib/import/m4/limits-h.m4: Update.
3704         * gnulib/import/m4/localcharset.m4: Update.
3705         * gnulib/import/m4/locale-fr.m4: Update.
3706         * gnulib/import/m4/locale-ja.m4: Update.
3707         * gnulib/import/m4/locale-zh.m4: Update.
3708         * gnulib/import/m4/localtime-buffer.m4: Update.
3709         * gnulib/import/m4/longlong.m4: Update.
3710         * gnulib/import/m4/lstat.m4: Update.
3711         * gnulib/import/m4/malloc.m4: Update.
3712         * gnulib/import/m4/malloca.m4: Update.
3713         * gnulib/import/m4/math_h.m4: Update.
3714         * gnulib/import/m4/mbrtowc.m4: Update.
3715         * gnulib/import/m4/mbsinit.m4: Update.
3716         * gnulib/import/m4/mbsrtowcs.m4: Update.
3717         * gnulib/import/m4/mbstate_t.m4: Update.
3718         * gnulib/import/m4/memchr.m4: Update.
3719         * gnulib/import/m4/memmem.m4: Update.
3720         * gnulib/import/m4/mempcpy.m4: Update.
3721         * gnulib/import/m4/memrchr.m4: Update.
3722         * gnulib/import/m4/mkdir.m4: Update.
3723         * gnulib/import/m4/mkstemp.m4: Update.
3724         * gnulib/import/m4/mmap-anon.m4: Update.
3725         * gnulib/import/m4/mode_t.m4: Update.
3726         * gnulib/import/m4/msvc-inval.m4: Update.
3727         * gnulib/import/m4/msvc-nothrow.m4: Update.
3728         * gnulib/import/m4/multiarch.m4: Update.
3729         * gnulib/import/m4/nocrash.m4: Update.
3730         * gnulib/import/m4/off_t.m4: Update.
3731         * gnulib/import/m4/onceonly.m4: Update.
3732         * gnulib/import/m4/open-cloexec.m4: Update.
3733         * gnulib/import/m4/open.m4: Update.
3734         * gnulib/import/m4/openat.m4: Update.
3735         * gnulib/import/m4/opendir.m4: Update.
3736         * gnulib/import/m4/pathmax.m4: Update.
3737         * gnulib/import/m4/rawmemchr.m4: Update.
3738         * gnulib/import/m4/readdir.m4: Update.
3739         * gnulib/import/m4/readlink.m4: Update.
3740         * gnulib/import/m4/realloc.m4: Update.
3741         * gnulib/import/m4/rename.m4: Update.
3742         * gnulib/import/m4/rewinddir.m4: Update.
3743         * gnulib/import/m4/rmdir.m4: Update.
3744         * gnulib/import/m4/save-cwd.m4: Update.
3745         * gnulib/import/m4/secure_getenv.m4: Update.
3746         * gnulib/import/m4/setenv.m4: Update.
3747         * gnulib/import/m4/signal_h.m4: Update.
3748         * gnulib/import/m4/ssize_t.m4: Update.
3749         * gnulib/import/m4/stat-time.m4: Update.
3750         * gnulib/import/m4/stat.m4: Update.
3751         * gnulib/import/m4/std-gnu11.m4: Update.
3752         * gnulib/import/m4/stdbool.m4: Update.
3753         * gnulib/import/m4/stddef_h.m4: Update.
3754         * gnulib/import/m4/stdint.m4: Update.
3755         * gnulib/import/m4/stdio_h.m4: Update.
3756         * gnulib/import/m4/stdlib_h.m4: Update.
3757         * gnulib/import/m4/strchrnul.m4: Update.
3758         * gnulib/import/m4/strdup.m4: Update.
3759         * gnulib/import/m4/strerror.m4: Update.
3760         * gnulib/import/m4/string_h.m4: Update.
3761         * gnulib/import/m4/strstr.m4: Update.
3762         * gnulib/import/m4/strtok_r.m4: Update.
3763         * gnulib/import/m4/sys_socket_h.m4: Update.
3764         * gnulib/import/m4/sys_stat_h.m4: Update.
3765         * gnulib/import/m4/sys_time_h.m4: Update.
3766         * gnulib/import/m4/sys_types_h.m4: Update.
3767         * gnulib/import/m4/tempname.m4: Update.
3768         * gnulib/import/m4/time_h.m4: Update.
3769         * gnulib/import/m4/unistd-safer.m4: Update.
3770         * gnulib/import/m4/unistd_h.m4: Update.
3771         * gnulib/import/m4/warn-on-use.m4: Update.
3772         * gnulib/import/m4/wchar_h.m4: Update.
3773         * gnulib/import/m4/wchar_t.m4: Update.
3774         * gnulib/import/m4/wctype_h.m4: Update.
3775         * gnulib/import/m4/wint_t.m4: Update.
3776         * gnulib/import/malloc.c: Update.
3777         * gnulib/import/malloc/scratch_buffer.h: Update.
3778         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3779         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3780         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3781         * gnulib/import/malloca.c: Update.
3782         * gnulib/import/malloca.h: Update.
3783         * gnulib/import/malloca.valgrind: Update.
3784         * gnulib/import/math.in.h: Update.
3785         * gnulib/import/mbrtowc.c: Update.
3786         * gnulib/import/mbsinit.c: Update.
3787         * gnulib/import/mbsrtowcs-impl.h: Update.
3788         * gnulib/import/mbsrtowcs-state.c: Update.
3789         * gnulib/import/mbsrtowcs.c: Update.
3790         * gnulib/import/memchr.c: Update.
3791         * gnulib/import/memmem.c: Update.
3792         * gnulib/import/mempcpy.c: Update.
3793         * gnulib/import/memrchr.c: Update.
3794         * gnulib/import/mkdir.c: Update.
3795         * gnulib/import/mkstemp.c: Update.
3796         * gnulib/import/msvc-inval.c: Update.
3797         * gnulib/import/msvc-inval.h: Update.
3798         * gnulib/import/msvc-nothrow.c: Update.
3799         * gnulib/import/msvc-nothrow.h: Update.
3800         * gnulib/import/open.c: Update.
3801         * gnulib/import/openat-die.c: Update.
3802         * gnulib/import/openat-priv.h: Update.
3803         * gnulib/import/openat-proc.c: Update.
3804         * gnulib/import/openat.c: Update.
3805         * gnulib/import/openat.h: Update.
3806         * gnulib/import/opendir.c: Update.
3807         * gnulib/import/pathmax.h: Update.
3808         * gnulib/import/pipe-safer.c: Update.
3809         * gnulib/import/rawmemchr.c: Update.
3810         * gnulib/import/readdir.c: Update.
3811         * gnulib/import/readlink.c: Update.
3812         * gnulib/import/realloc.c: Update.
3813         * gnulib/import/ref-add.sin: Update.
3814         * gnulib/import/ref-del.sin: Update.
3815         * gnulib/import/rename.c: Update.
3816         * gnulib/import/rewinddir.c: Update.
3817         * gnulib/import/rmdir.c: Update.
3818         * gnulib/import/same-inode.h: Update.
3819         * gnulib/import/save-cwd.c: Update.
3820         * gnulib/import/save-cwd.h: Update.
3821         * gnulib/import/scratch_buffer.h: Update.
3822         * gnulib/import/secure_getenv.c: Update.
3823         * gnulib/import/setenv.c: Update.
3824         * gnulib/import/signal.in.h: Update.
3825         * gnulib/import/stat-time.c: Update.
3826         * gnulib/import/stat-time.h: Update.
3827         * gnulib/import/stat-w32.c: Update.
3828         * gnulib/import/stat-w32.h: Update.
3829         * gnulib/import/stat.c: Update.
3830         * gnulib/import/stdbool.in.h: Update.
3831         * gnulib/import/stddef.in.h: Update.
3832         * gnulib/import/stdint.in.h: Update.
3833         * gnulib/import/stdio.in.h: Update.
3834         * gnulib/import/stdlib.in.h: Update.
3835         * gnulib/import/str-two-way.h: Update.
3836         * gnulib/import/strchrnul.c: Update.
3837         * gnulib/import/strdup.c: Update.
3838         * gnulib/import/streq.h: Update.
3839         * gnulib/import/strerror-override.c: Update.
3840         * gnulib/import/strerror-override.h: Update.
3841         * gnulib/import/strerror.c: Update.
3842         * gnulib/import/string.in.h: Update.
3843         * gnulib/import/stripslash.c: Update.
3844         * gnulib/import/strnlen1.c: Update.
3845         * gnulib/import/strnlen1.h: Update.
3846         * gnulib/import/strstr.c: Update.
3847         * gnulib/import/strtok_r.c: Update.
3848         * gnulib/import/sys_stat.in.h: Update.
3849         * gnulib/import/sys_time.in.h: Update.
3850         * gnulib/import/sys_types.in.h: Update.
3851         * gnulib/import/tempname.c: Update.
3852         * gnulib/import/tempname.h: Update.
3853         * gnulib/import/time.in.h: Update.
3854         * gnulib/import/unistd--.h: Update.
3855         * gnulib/import/unistd-safer.h: Update.
3856         * gnulib/import/unistd.in.h: Update.
3857         * gnulib/import/unsetenv.c: Update.
3858         * gnulib/import/verify.h: Update.
3859         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3860         * gnulib/import/wchar.in.h: Update.
3861         * gnulib/import/wctype.in.h: Update.
3862         * gnulib/import/xalloc-oversized.h: Update.
3863         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3864         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3865
3866 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3867
3868         * record-btrace.c (get_thread_current_frame): Remove
3869         old_inferior_ptid.
3870
3871 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3872
3873         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3874         with check_tag to 1 if and only if the type is tagged and the
3875         component being searched cannot been found in the current
3876         view. Otherwise, always call ada_to_fixed_type with
3877         check_tag to 0.
3878
3879 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3880
3881         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3882         declaration.
3883         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3884         * ada-varobj.c (ada_varobj_get_number_of_children,
3885         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3886
3887 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3888
3889         * ada-valprint.c (ada_value_print): Use type instead of
3890         enclosing type.
3891
3892 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3893
3894         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3895         an array of access to unconstrained array.
3896
3897 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3898
3899         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3900         (ada_check_typedef): Use it.
3901
3902 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3903
3904         * ada-varobj.c (ada_varobj_describe_struct_child)
3905         (ada_varobj_describe_child): Handle union case like struct one.
3906
3907 2018-09-10  Tom Tromey  <tom@tromey.com>
3908
3909         PR python/18380:
3910         * python/python.c (_initialize_python): Make example in "python"
3911         help work in Python 3.
3912
3913 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3914
3915         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3916         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3917         $(EXEEXT) to the script, as it is not a program.
3918
3919 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3920
3921         * python/py-prettyprint.c (pretty_print_one_value): Return
3922         gdbpy_ref<>.
3923         (print_string_repr): Adjust.
3924         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3925         * python/python-internal.h (apply_varobj_pretty_printer): Return
3926         gdbpy_ref<>.
3927         * varobj.c (varobj_value_get_print_value): Adjust.
3928
3929 2018-09-08  Tom Tromey  <tom@tromey.com>
3930
3931         PR python/16047:
3932         * python/py-prettyprint.c (pretty_print_one_value): Check for
3933         to_string method.
3934
3935 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3936
3937         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3938         replace_operator_with_call.
3939
3940 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3941
3942         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3943
3944 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3945
3946         * ada-typeprint.c (print_range): Print the bounds using TYPE
3947         rather than its TYPE_TARGET_TYPE.
3948
3949 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3950
3951         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3952         call to ada_to_fixed_value_create.
3953
3954 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3955
3956         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3957
3958 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3959
3960         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3961         by calls to error.
3962
3963 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3964
3965         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3966         Move update of loop variable "fi".
3967
3968 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3969
3970         * ada-lang.c (value_assign_to_component): In the case of
3971         big-endian targets, extract the bits of the given VAL
3972         using an src_offset of zero if container is not a scalar.
3973
3974 2018-09-06  Simon Ser  <contact@emersion.fr>
3975
3976         PR gdb/23105
3977         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3978         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3979         * fbsd-tdep.c (fbsd_make_note_desc): New.
3980         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3981         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3982         * target.h (enum target_object) Add FreeBSD-specific
3983         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3984
3985 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3986
3987         * compile/compile-c.h (generate_c_for_variable_locations):
3988         Change reference to pointer.
3989         * compile/compile-c-support.c (compile_program) <compute>:
3990         Likewise.
3991         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3992         (generate_c_for_for_one_variable): Likewise
3993         (generate_c_for_variable_locations): Likewise
3994         * compile/compile-c-types.c (compile_c_instance::convert_type):
3995         Likewise
3996         * compile/compile-cplus-symbols.c (convert_one_symbol):
3997         std::move the scope passed to enter_scope.
3998         * compile/compile-cplus-types.c
3999         (compile_cplus_instance::enter_scope): Make parameter
4000         rvalue-reference.
4001         (compile_cplus_instance::new_scope): Change reference to
4002         pointer.
4003         (compile_cplus_instance::convert_type): Likewise
4004         (compile_cplus_convert_typedef): std::move the scope passed to
4005         enter_scope.
4006         (compile_cplus_convert_struct_or_union): Likewise.
4007         (compile_cplus_convert_enum): Likewise.
4008         (compile_cplus_convert_namespace): Likewise.
4009         * compile/compile-cplus.h (compile_cplus_instance)
4010         <enter_scope>: Make parameter rvalue-reference.
4011         * compile/compile-internal.h (compile_instance)
4012         <get_cached_type>: Likewise
4013         * compile/compile-loc2c.c (push): Likewise
4014         (pushf): Likewise
4015         (unary): Likewise
4016         (binary): Likewise
4017         (print_label): Likewise
4018         (pushf_register_address): Likewise
4019         (pushf_register): Likewise
4020         (do_compile_dwarf_expr_to_c): Likewise
4021         (compile_dwarf_expr_to_c): Likewise
4022         (compile_dwarf_bounds_to_c): Likewise
4023         * compile/compile.c (compile_instance::get_cached_type):
4024         Likewise
4025         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4026         (compile_dwarf_bounds_to_c): Likewise
4027         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4028         (dwarf2_compile_property_to_c): Likewise
4029         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4030         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4031         Likewise
4032
4033 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4034
4035         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4036         * tui/tui-data.c (init_content_element): Don't initialize it.
4037
4038 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4039
4040         * tui/tui-data.h (struct tui_win_info)
4041         <detail::opaque>: Remove.
4042         * tui/tui-data.c (init_win_info): Remove assignment.
4043
4044 2018-09-05  Tom Tromey  <tom@tromey.com>
4045
4046         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4047         -Wformat-nonliteral.
4048         * target-float.c (host_float_ops<T>::to_string)
4049         (host_float_ops<T>::from_string): Use
4050         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4051         * configure: Rebuild.
4052
4053 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4054
4055         * printcmd.c (printf_c_string): Use
4056         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4057         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4058
4059 2018-09-05  Tom Tromey  <tom@tromey.com>
4060
4061         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4062
4063 2018-09-05  Tom de Vries  <tdevries@suse.de>
4064
4065         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4066         with resolve_abstract_p == true.
4067         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4068         defaulting to false. Propagate resolve_abstract_p to
4069         dwarf2_fetch_die_loc_sect_off.
4070         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4071         parameter, defaulting to false.
4072         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4073         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4074         parameter.
4075         * dwarf2read.h (struct die_info): Forward-declare.
4076         (die_info_ptr): New typedef.
4077         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4078
4079 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4080
4081         GDB 8.2 released.
4082
4083 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4084             Pedro Alves  <palves@redhat.com>
4085
4086         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4087         "aclocal-m4-deps.mk".  Include file here.
4088         $(srcdir)/aclocal.m4: Add "configure.ac".
4089         * gnulib/aclocal-m4-deps.mk: New file.
4090         * gnulib/update-gnulib.sh: Automatically update
4091         "aclocal-m4-deps.mk".
4092
4093 2018-09-04  Tom Tromey  <tom@tromey.com>
4094
4095         * configure: Rebuild.
4096         * configure.ac: Remove multi-ice code.
4097
4098 2018-09-04  Tom Tromey  <tom@tromey.com>
4099
4100         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4101         (ada-exp.o): Update.
4102
4103 2018-09-04  Tom Tromey  <tom@tromey.com>
4104
4105         * Makefile.in (printcmd.o, target-float.o): Remove.
4106         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4107
4108 2018-09-04  Tom Tromey  <tom@tromey.com>
4109
4110         * gnulib/Makefile.in: Remove obsolete comment.
4111         * Makefile.in: Remove obsolete comment.
4112
4113 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4114
4115         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4116         line with '+'.
4117
4118 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4119
4120         * riscv-tdep.c: Add 'prologue-value.h' include.
4121         (struct riscv_unwind_cache): New struct.
4122         (riscv_debug_unwinder): New global.
4123         (riscv_scan_prologue): Update arguments, capture register details
4124         from prologue scan.
4125         (riscv_skip_prologue): Reformat arguments line, move end of
4126         prologue calculation into riscv_scan_prologue.
4127         (riscv_frame_cache): Update return type, create
4128         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4129         details.
4130         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4131         (riscv_frame_prev_register): Use the trad_frame within the
4132         riscv_unwind_cache.
4133         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4134         flag.
4135
4136 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4137
4138         * trad-frame.h (trad_frame_set_realreg): Declare.
4139         (trad_frame_set_addr): Declare.
4140         * trad-frame.c (trad_frame_set_realreg): Define new function.
4141         (trad_frame_set_addr): Define new function.
4142         (trad_frame_set_reg_realreg): Use new function.
4143         (trad_frame_set_reg_addr): Use new function.
4144
4145 2018-09-01  Keith Seitz  <keiths@redhat.com>
4146
4147         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4148         pulongest instead of "%lld".
4149         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4150         ATTRIBUTE_UNUSED.
4151
4152 2018-08-31  Tom Tromey  <tom@tromey.com>
4153
4154         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4155         variant part type.
4156
4157 2018-08-31  Pedro Alves  <palves@redhat.com>
4158
4159         * gdbarch.h: Regenerate.
4160
4161 2018-08-31  Pedro Alves  <palves@redhat.com>
4162
4163         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4164         * target.h (Hardware watchpoint interfaces): Describe
4165         continuable/steppable/non-steppable watchpoints.
4166         * gdbarch.h, gdbarch.c: Regenerate.
4167
4168 2018-08-31  Pedro Alves  <palves@redhat.com>
4169
4170         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4171         Delete.
4172         * s390-linux-nat.c
4173         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4174         * target.h (target_ops::have_continuable_watchpoint): Delete.
4175         (target_have_continuable_watchpoint): Delete.
4176         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4177         * target-delegates.c: Regenerate.
4178
4179 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4180
4181         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4182         the files present in "gnulib/import/m4/".
4183
4184 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4185
4186         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4187         c.sw, c.swsp, and c.sdsp.
4188
4189 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4190
4191         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4192         (riscv_read_misa_reg): Don't cache value read into inferior data.
4193         (riscv_new_inferior_data): Delete.
4194         (riscv_inferior_data_cleanup): Delete.
4195         (riscv_inferior_data): Delete.
4196         (riscv_invalidate_inferior_data): Delete.
4197         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4198
4199 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4200
4201         * compile/compile-cplus-types.c
4202         (compile_cplus_instance::leave_scope): Take the address of scope
4203         object.
4204         (compile_cplus_instance::convert_qualified_base): Compare quals
4205         to 0.
4206
4207 2018-08-30  Keith Seitz  <keiths@redhat.com>
4208
4209         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4210         Use "%s" and host_address_to_string instead of "%p" in printf.
4211
4212 2018-08-29  Keith Seitz  <keiths@redhat.com>
4213
4214         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4215         and compile-cplus-types.c.
4216         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4217         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4218         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4219         Declare.
4220         * compile/compile-c-support.c: Include compile-cplus.h.
4221         (load_libcompile): Templatize.
4222         (get_compile_context): "New" function.
4223         (c_get_compile_context): Use get_compile_context.
4224         (cplus_get_compile_context): New function.
4225         (cplus_push_user_expression, cplus_pop_user_expression)
4226         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4227         (cplus_compute_program): Define new structs/functions.
4228         * compile/compile-cplus-symmbols.c: New file.
4229         * compile/compile-cplus-types.c: New file.
4230         * compile/compile-cplus.h: New file.
4231         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4232         Declare.
4233         * compile/compile-object-load.c (get_out_value_type): Use
4234         strncmp_iw when comparing symbol names.
4235         (compile_object_load): Add mst_bss and mst_data.
4236         * compile/compile.c (_initialize_compile): Remove
4237         -Wno-implicit-function-declaration from `compile_args'.
4238         * compile/gcc-cp-plugin.h: New file.
4239         * NEWS: Mention C++ compile support and new debug options.
4240
4241 2018-08-29  Keith Seitz  <keiths@redhat.com>
4242
4243         * linespec.c (collect_info::add_symbol): Make virtual.
4244         (struct symbol_searcher_collect_info): New struct.
4245         (symbol_searcher::find_all_symbols): New method.
4246         * symtab.h (class symbol_searcher): New class.
4247
4248 2018-08-29  Keith Seitz  <keiths@redhat.com>
4249
4250         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4251         Change to vector of block_symbol.  Update all users.
4252         (struct collect_info) <symbols>: Likewise.
4253         (collect_info::add_symbol): Take block_symbol as argument.
4254         Update all callers.
4255         (decode_compound_collector) <m_symbols>: Change type to vector
4256         of block_symbol.  Update all users.
4257         (decode_compound_collector::operator ()): Change parameter type
4258         to block_symbol.
4259         (find_method, find_function_symbols, find_linespec_symbols)
4260         (find_label_symbols_in_block, find_label_symbols): Change symbol
4261         vectors to block_symbol vectors.
4262         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4263         block_symbol.
4264
4265 2018-08-29  Keith Seitz  <keiths@redhat.com>
4266
4267         * linespec.c (symbolp): Remove typedef and VEC definitions.
4268         (bound_minimal_symbol_d): Likewise.
4269
4270 2018-08-29  Keith Seitz  <keiths@redhat.com>
4271
4272         * linespec.c (decode_compound_collector::decode_compound_collector):
4273         Remove initialization for `m_symtabs'.
4274         (decode_compound_collector::release_symbols): Change return type
4275         to std::vector.  Update all callers.
4276         (class decode_compound_collector) <m_symbols>: Change type to
4277         std::vector.
4278         (lookup_prefix_sym): Change return type to std::vector.  Update all
4279         callers.
4280         (compare_symbols): Remove.
4281         (std_compare_symbols): Rename to `compare_symbols'.
4282         (find_method): Change `sym_classes' parameter to std::vector.
4283         Update all callers.  Use std::sort to sort sym_classes.
4284         (find_linespec_symbols): Remove cleanup.
4285
4286 2018-08-29  Keith Seitz  <keiths@redhat.com>
4287
4288         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4289         std::vector.  Update all users.
4290         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4291         (struct collect_info) <minimal_symbols>: Likewise.
4292         (compare_msymbols): Return bool.  Change parameters to const
4293         bound_minimal_symbol references.
4294         (find_method, find_function_symbols, find_linespec_symbols): Change
4295         `minsyms' parameter to std::vector.  Update all callers.
4296
4297 2018-08-29  Keith Seitz  <keiths@redhat.com>
4298
4299         * linespec.c (struct linespec) <label_symbols>: Change type to
4300         std::vector.  Update all users.
4301         (find_label_symbols_in_block): Change `result' parameter to
4302         std::vector.  Update all callers.
4303         (find_label_symbols): Return std::vector.  Update all callers.
4304
4305 2018-08-29  Keith Seitz  <keiths@redhat.com>
4306
4307         * linespec.c (struct linespec) <function_symbols>: Change type to
4308         std::vector.  Update all users.
4309         (struct collect_info) <function_symbols>: Likewise.
4310         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4311         (std_compare_symbols): New function.
4312         (find_method, find_function_symbols, find_linespec_symbols)
4313         (find_label_symbols_in_block): Change `symbols' parameter to
4314         std::vector.  Update all callers.
4315         (find_label_symbols): Likewise for `function_symbols' and
4316         `label_funcs_ret'.
4317
4318 2018-08-29  Keith Seitz  <keiths@redhat.com>
4319
4320         * linespec.c (symtab_vector_up): Define.
4321         (struct linespec) <file_symtabs>: Change type to std::vector *.
4322         Update all uses.
4323         (struct collect_info) <file_symtabs>: Likewise.
4324         (collect_symtabs_from_filename): Return symtab_vector_up.
4325         Update all callers.
4326         (decode_objc): Remove cleanup.
4327         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4328         (symtab_collector::release_symtabs): Return symtab_vector_up.
4329         Update all callers.
4330         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4331         Update all users.
4332         (collect_symtabs_from_filename, symtabs_from_filename): Return
4333         symtab_vector_up.  Update all callers.
4334
4335 2018-08-29  Tom Tromey  <tom@tromey.com>
4336
4337         * csky-tdep.c (csky_analyze_prologue): Use
4338         core_addr_to_string_nz.
4339
4340 2018-08-29  Tom Tromey  <tom@tromey.com>
4341
4342         * windows-nat.c (struct xlate_exception) <them>: Change type to
4343         DWORD.
4344         (xlate): Fix formatting.  Remove last entry.
4345         (struct xlate_exception, xlate): Comment out.
4346         (windows_nat_target::resume): Use ranged for.
4347
4348 2018-08-29  Jim Wilson  <jimw@sifive.com>
4349
4350         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4351         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4352         of NT_PRFPREG.
4353         (riscv_linux_nat_target::store_registers): Likewise.
4354
4355 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4356
4357         PR gdb/23555
4358         PR gdb/23558
4359         * gnulib/aclocal.m4: Regenerate.
4360         * gnulib/config.in: Regenerate.
4361         * gnulib/configure: Regenerate.
4362         * gnulib/import/Makefile.am: Update.
4363         * gnulib/import/Makefile.in: Update.
4364         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4365         * gnulib/import/_Noreturn.h: ... this.
4366         * gnulib/import/alloca.in.h: Update.
4367         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4368         * gnulib/import/arg-nonnull.h: ... this.
4369         * gnulib/import/assure.h: Update.
4370         * gnulib/import/at-func.c: Update.
4371         * gnulib/import/basename-lgpl.c: Update.
4372         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4373         * gnulib/import/c++defs.h: ... this.
4374         * gnulib/import/canonicalize-lgpl.c: Update.
4375         * gnulib/import/cdefs.h: Update.
4376         * gnulib/import/chdir-long.c: Update.
4377         * gnulib/import/chdir-long.h: Update.
4378         * gnulib/import/cloexec.c: Update.
4379         * gnulib/import/cloexec.h: Update.
4380         * gnulib/import/close.c: Update.
4381         * gnulib/import/closedir.c: Update.
4382         * gnulib/import/config.charset: Update.
4383         * gnulib/import/dirent-private.h: Update.
4384         * gnulib/import/dirent.in.h: Update.
4385         * gnulib/import/dirfd.c: Update.
4386         * gnulib/import/dirname-lgpl.c: Update.
4387         * gnulib/import/dirname.h: Update.
4388         * gnulib/import/dosname.h: Update.
4389         * gnulib/import/dup-safer-flag.c: Update.
4390         * gnulib/import/dup-safer.c: Update.
4391         * gnulib/import/dup.c: Update.
4392         * gnulib/import/dup2.c: Update.
4393         * gnulib/import/errno.in.h: Update.
4394         * gnulib/import/error.c: Update.
4395         * gnulib/import/error.h: Update.
4396         * gnulib/import/exitfail.c: Update.
4397         * gnulib/import/exitfail.h: Update.
4398         * gnulib/import/extra/update-copyright: Update.
4399         * gnulib/import/fchdir.c: Update.
4400         * gnulib/import/fcntl.c: Update.
4401         * gnulib/import/fcntl.in.h: Update.
4402         * gnulib/import/fd-hook.c: Update.
4403         * gnulib/import/fd-hook.h: Update.
4404         * gnulib/import/fd-safer-flag.c: Update.
4405         * gnulib/import/fd-safer.c: Update.
4406         * gnulib/import/fdopendir.c: Update.
4407         * gnulib/import/filename.h: Update.
4408         * gnulib/import/filenamecat-lgpl.c: Update.
4409         * gnulib/import/filenamecat.h: Update.
4410         * gnulib/import/flexmember.h: Update.
4411         * gnulib/import/float+.h: Update.
4412         * gnulib/import/float.c: Update.
4413         * gnulib/import/float.in.h: Update.
4414         * gnulib/import/fnmatch.c: Update.
4415         * gnulib/import/fnmatch.in.h: Update.
4416         * gnulib/import/fnmatch_loop.c: Update.
4417         * gnulib/import/fpucw.h: Update.
4418         * gnulib/import/frexp.c: Update.
4419         * gnulib/import/frexpl.c: Update.
4420         * gnulib/import/fstat.c: Update.
4421         * gnulib/import/fstatat.c: Update.
4422         * gnulib/import/getcwd-lgpl.c: Update.
4423         * gnulib/import/getcwd.c: Update.
4424         * gnulib/import/getdtablesize.c: Update.
4425         * gnulib/import/getlogin_r.c: Update.
4426         * gnulib/import/getprogname.c: Update.
4427         * gnulib/import/getprogname.h: Update.
4428         * gnulib/import/gettext.h: Update.
4429         * gnulib/import/gettimeofday.c: Update.
4430         * gnulib/import/glob-libc.h: Update.
4431         * gnulib/import/glob.c: Update.
4432         * gnulib/import/glob.in.h: Update.
4433         * gnulib/import/glob_internal.h: Update.
4434         * gnulib/import/glob_pattern_p.c: Update.
4435         * gnulib/import/globfree.c: Update.
4436         * gnulib/import/hard-locale.c: Update.
4437         * gnulib/import/hard-locale.h: Update.
4438         * gnulib/import/intprops.h: Update.
4439         * gnulib/import/inttypes.in.h: Update.
4440         * gnulib/import/isnan.c: Update.
4441         * gnulib/import/isnand-nolibm.h: Update.
4442         * gnulib/import/isnand.c: Update.
4443         * gnulib/import/isnanl-nolibm.h: Update.
4444         * gnulib/import/isnanl.c: Update.
4445         * gnulib/import/itold.c: Update.
4446         * gnulib/import/libc-config.h: Update.
4447         * gnulib/import/limits.in.h: Update.
4448         * gnulib/import/localcharset.c: Update.
4449         * gnulib/import/localcharset.h: Update.
4450         * gnulib/import/localtime-buffer.c: Update.
4451         * gnulib/import/localtime-buffer.h: Update.
4452         * gnulib/import/lstat.c: Update.
4453         * gnulib/import/m4/00gnulib.m4: Update.
4454         * gnulib/import/m4/__inline.m4: Update.
4455         * gnulib/import/m4/absolute-header.m4: Update.
4456         * gnulib/import/m4/alloca.m4: Update.
4457         * gnulib/import/m4/builtin-expect.m4: Update.
4458         * gnulib/import/m4/canonicalize.m4: Update.
4459         * gnulib/import/m4/chdir-long.m4: Update.
4460         * gnulib/import/m4/close.m4: Update.
4461         * gnulib/import/m4/closedir.m4: Update.
4462         * gnulib/import/m4/configmake.m4: Update.
4463         * gnulib/import/m4/d-ino.m4: Update.
4464         * gnulib/import/m4/d-type.m4: Update.
4465         * gnulib/import/m4/dirent_h.m4: Update.
4466         * gnulib/import/m4/dirfd.m4: Update.
4467         * gnulib/import/m4/dirname.m4: Update.
4468         * gnulib/import/m4/double-slash-root.m4: Update.
4469         * gnulib/import/m4/dup.m4: Update.
4470         * gnulib/import/m4/dup2.m4: Update.
4471         * gnulib/import/m4/eealloc.m4: Update.
4472         * gnulib/import/m4/environ.m4: Update.
4473         * gnulib/import/m4/errno_h.m4: Update.
4474         * gnulib/import/m4/error.m4: Update.
4475         * gnulib/import/m4/exponentd.m4: Update.
4476         * gnulib/import/m4/exponentl.m4: Update.
4477         * gnulib/import/m4/extensions.m4: Update.
4478         * gnulib/import/m4/extern-inline.m4: Update.
4479         * gnulib/import/m4/fchdir.m4: Update.
4480         * gnulib/import/m4/fcntl-o.m4: Update.
4481         * gnulib/import/m4/fcntl.m4: Update.
4482         * gnulib/import/m4/fcntl_h.m4: Update.
4483         * gnulib/import/m4/fdopendir.m4: Update.
4484         * gnulib/import/m4/filenamecat.m4: Update.
4485         * gnulib/import/m4/flexmember.m4: Update.
4486         * gnulib/import/m4/float_h.m4: Update.
4487         * gnulib/import/m4/fnmatch.m4: Update.
4488         * gnulib/import/m4/fnmatch_h.m4: Update.
4489         * gnulib/import/m4/fpieee.m4: Update.
4490         * gnulib/import/m4/frexp.m4: Update.
4491         * gnulib/import/m4/frexpl.m4: Update.
4492         * gnulib/import/m4/fstat.m4: Update.
4493         * gnulib/import/m4/fstatat.m4: Update.
4494         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4495         * gnulib/import/m4/getcwd-path-max.m4: Update.
4496         * gnulib/import/m4/getcwd.m4: Update.
4497         * gnulib/import/m4/getdtablesize.m4: Update.
4498         * gnulib/import/m4/getlogin.m4: Update.
4499         * gnulib/import/m4/getlogin_r.m4: Update.
4500         * gnulib/import/m4/getpagesize.m4: Update.
4501         * gnulib/import/m4/getprogname.m4: Update.
4502         * gnulib/import/m4/gettimeofday.m4: Update.
4503         * gnulib/import/m4/glibc21.m4: Update.
4504         * gnulib/import/m4/glob.m4: Update.
4505         * gnulib/import/m4/glob_h.m4: Update.
4506         * gnulib/import/m4/gnulib-cache.m4: Update.
4507         * gnulib/import/m4/gnulib-common.m4: Update.
4508         * gnulib/import/m4/gnulib-comp.m4: Update.
4509         * gnulib/import/m4/gnulib-tool.m4: Update.
4510         * gnulib/import/m4/hard-locale.m4: Update.
4511         * gnulib/import/m4/include_next.m4: Update.
4512         * gnulib/import/m4/inttypes-pri.m4: Update.
4513         * gnulib/import/m4/inttypes.m4: Update.
4514         * gnulib/import/m4/isnand.m4: Update.
4515         * gnulib/import/m4/isnanl.m4: Update.
4516         * gnulib/import/m4/largefile.m4: Update.
4517         * gnulib/import/m4/limits-h.m4: Update.
4518         * gnulib/import/m4/localcharset.m4: Update.
4519         * gnulib/import/m4/locale-fr.m4: Update.
4520         * gnulib/import/m4/locale-ja.m4: Update.
4521         * gnulib/import/m4/locale-zh.m4: Update.
4522         * gnulib/import/m4/localtime-buffer.m4: Update.
4523         * gnulib/import/m4/longlong.m4: Update.
4524         * gnulib/import/m4/lstat.m4: Update.
4525         * gnulib/import/m4/malloc.m4: Update.
4526         * gnulib/import/m4/malloca.m4: Update.
4527         * gnulib/import/m4/math_h.m4: Update.
4528         * gnulib/import/m4/mbrtowc.m4: Update.
4529         * gnulib/import/m4/mbsinit.m4: Update.
4530         * gnulib/import/m4/mbsrtowcs.m4: Update.
4531         * gnulib/import/m4/mbstate_t.m4: Update.
4532         * gnulib/import/m4/memchr.m4: Update.
4533         * gnulib/import/m4/memmem.m4: Update.
4534         * gnulib/import/m4/mempcpy.m4: Update.
4535         * gnulib/import/m4/memrchr.m4: Update.
4536         * gnulib/import/m4/mkdir.m4: Update.
4537         * gnulib/import/m4/mkstemp.m4: Update.
4538         * gnulib/import/m4/mmap-anon.m4: Update.
4539         * gnulib/import/m4/mode_t.m4: Update.
4540         * gnulib/import/m4/msvc-inval.m4: Update.
4541         * gnulib/import/m4/msvc-nothrow.m4: Update.
4542         * gnulib/import/m4/multiarch.m4: Update.
4543         * gnulib/import/m4/nocrash.m4: Update.
4544         * gnulib/import/m4/off_t.m4: Update.
4545         * gnulib/import/m4/onceonly.m4: Update.
4546         * gnulib/import/m4/open-cloexec.m4: Update.
4547         * gnulib/import/m4/open.m4: Update.
4548         * gnulib/import/m4/openat.m4: Update.
4549         * gnulib/import/m4/opendir.m4: Update.
4550         * gnulib/import/m4/pathmax.m4: Update.
4551         * gnulib/import/m4/rawmemchr.m4: Update.
4552         * gnulib/import/m4/readdir.m4: Update.
4553         * gnulib/import/m4/readlink.m4: Update.
4554         * gnulib/import/m4/realloc.m4: Update.
4555         * gnulib/import/m4/rename.m4: Update.
4556         * gnulib/import/m4/rewinddir.m4: Update.
4557         * gnulib/import/m4/rmdir.m4: Update.
4558         * gnulib/import/m4/save-cwd.m4: Update.
4559         * gnulib/import/m4/secure_getenv.m4: Update.
4560         * gnulib/import/m4/setenv.m4: Update.
4561         * gnulib/import/m4/signal_h.m4: Update.
4562         * gnulib/import/m4/ssize_t.m4: Update.
4563         * gnulib/import/m4/stat-time.m4: Update.
4564         * gnulib/import/m4/stat.m4: Update.
4565         * gnulib/import/m4/std-gnu11.m4: Update.
4566         * gnulib/import/m4/stdbool.m4: Update.
4567         * gnulib/import/m4/stddef_h.m4: Update.
4568         * gnulib/import/m4/stdint.m4: Update.
4569         * gnulib/import/m4/stdio_h.m4: Update.
4570         * gnulib/import/m4/stdlib_h.m4: Update.
4571         * gnulib/import/m4/strchrnul.m4: Update.
4572         * gnulib/import/m4/strdup.m4: Update.
4573         * gnulib/import/m4/strerror.m4: Update.
4574         * gnulib/import/m4/string_h.m4: Update.
4575         * gnulib/import/m4/strstr.m4: Update.
4576         * gnulib/import/m4/strtok_r.m4: Update.
4577         * gnulib/import/m4/sys_socket_h.m4: Update.
4578         * gnulib/import/m4/sys_stat_h.m4: Update.
4579         * gnulib/import/m4/sys_time_h.m4: Update.
4580         * gnulib/import/m4/sys_types_h.m4: Update.
4581         * gnulib/import/m4/tempname.m4: Update.
4582         * gnulib/import/m4/time_h.m4: Update.
4583         * gnulib/import/m4/unistd-safer.m4: Update.
4584         * gnulib/import/m4/unistd_h.m4: Update.
4585         * gnulib/import/m4/warn-on-use.m4: Update.
4586         * gnulib/import/m4/wchar_h.m4: Update.
4587         * gnulib/import/m4/wchar_t.m4: Update.
4588         * gnulib/import/m4/wctype_h.m4: Update.
4589         * gnulib/import/m4/wint_t.m4: Update.
4590         * gnulib/import/malloc.c: Update.
4591         * gnulib/import/malloc/scratch_buffer.h: Update.
4592         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4593         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4594         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4595         * gnulib/import/malloca.c: Update.
4596         * gnulib/import/malloca.h: Update.
4597         * gnulib/import/malloca.valgrind: Update.
4598         * gnulib/import/math.in.h: Update.
4599         * gnulib/import/mbrtowc.c: Update.
4600         * gnulib/import/mbsinit.c: Update.
4601         * gnulib/import/mbsrtowcs-impl.h: Update.
4602         * gnulib/import/mbsrtowcs-state.c: Update.
4603         * gnulib/import/mbsrtowcs.c: Update.
4604         * gnulib/import/memchr.c: Update.
4605         * gnulib/import/memmem.c: Update.
4606         * gnulib/import/mempcpy.c: Update.
4607         * gnulib/import/memrchr.c: Update.
4608         * gnulib/import/mkdir.c: Update.
4609         * gnulib/import/mkstemp.c: Update.
4610         * gnulib/import/msvc-inval.c: Update.
4611         * gnulib/import/msvc-inval.h: Update.
4612         * gnulib/import/msvc-nothrow.c: Update.
4613         * gnulib/import/msvc-nothrow.h: Update.
4614         * gnulib/import/open.c: Update.
4615         * gnulib/import/openat-die.c: Update.
4616         * gnulib/import/openat-priv.h: Update.
4617         * gnulib/import/openat-proc.c: Update.
4618         * gnulib/import/openat.c: Update.
4619         * gnulib/import/openat.h: Update.
4620         * gnulib/import/opendir.c: Update.
4621         * gnulib/import/pathmax.h: Update.
4622         * gnulib/import/pipe-safer.c: Update.
4623         * gnulib/import/rawmemchr.c: Update.
4624         * gnulib/import/readdir.c: Update.
4625         * gnulib/import/readlink.c: Update.
4626         * gnulib/import/realloc.c: Update.
4627         * gnulib/import/ref-add.sin: Update.
4628         * gnulib/import/ref-del.sin: Update.
4629         * gnulib/import/rename.c: Update.
4630         * gnulib/import/rewinddir.c: Update.
4631         * gnulib/import/rmdir.c: Update.
4632         * gnulib/import/same-inode.h: Update.
4633         * gnulib/import/save-cwd.c: Update.
4634         * gnulib/import/save-cwd.h: Update.
4635         * gnulib/import/scratch_buffer.h: Update.
4636         * gnulib/import/secure_getenv.c: Update.
4637         * gnulib/import/setenv.c: Update.
4638         * gnulib/import/signal.in.h: Update.
4639         * gnulib/import/stat-time.c: Update.
4640         * gnulib/import/stat-time.h: Update.
4641         * gnulib/import/stat-w32.c: Update.
4642         * gnulib/import/stat-w32.h: Update.
4643         * gnulib/import/stat.c: Update.
4644         * gnulib/import/stdbool.in.h: Update.
4645         * gnulib/import/stddef.in.h: Update.
4646         * gnulib/import/stdint.in.h: Update.
4647         * gnulib/import/stdio.in.h: Update.
4648         * gnulib/import/stdlib.in.h: Update.
4649         * gnulib/import/str-two-way.h: Update.
4650         * gnulib/import/strchrnul.c: Update.
4651         * gnulib/import/strdup.c: Update.
4652         * gnulib/import/streq.h: Update.
4653         * gnulib/import/strerror-override.c: Update.
4654         * gnulib/import/strerror-override.h: Update.
4655         * gnulib/import/strerror.c: Update.
4656         * gnulib/import/string.in.h: Update.
4657         * gnulib/import/stripslash.c: Update.
4658         * gnulib/import/strnlen1.c: Update.
4659         * gnulib/import/strnlen1.h: Update.
4660         * gnulib/import/strstr.c: Update.
4661         * gnulib/import/strtok_r.c: Update.
4662         * gnulib/import/sys_stat.in.h: Update.
4663         * gnulib/import/sys_time.in.h: Update.
4664         * gnulib/import/sys_types.in.h: Update.
4665         * gnulib/import/tempname.c: Update.
4666         * gnulib/import/tempname.h: Update.
4667         * gnulib/import/time.in.h: Update.
4668         * gnulib/import/unistd--.h: Update.
4669         * gnulib/import/unistd-safer.h: Update.
4670         * gnulib/import/unistd.in.h: Update.
4671         * gnulib/import/unsetenv.c: Update.
4672         * gnulib/import/verify.h: Update.
4673         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4674         * gnulib/import/wchar.in.h: Update.
4675         * gnulib/import/wctype.in.h: Update.
4676         * gnulib/import/xalloc-oversized.h: Update.
4677         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4678         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4679
4680 2018-08-16  Gary Benson <gbenson@redhat.com>
4681
4682         PR gdb/13000:
4683         * gdb/main.c (captured_main_1): Exit with nonzero status
4684         in batch mode if the last command to be executed failed.
4685         * NEWS: Mention the above.
4686
4687 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4688
4689         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4690         end of warning message.
4691
4692 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4693
4694         PR gdb/22943:
4695         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4696         (aarch64_extract_return_value): Use
4697         aapcs_is_vfp_call_or_return_candidate.
4698         (aarch64_return_in_memory): Likewise.
4699         (aarch64_store_return_value): Likewise.
4700
4701 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4702
4703         * aarch64-tdep.c
4704         (aapcs_is_vfp_call_or_return_candidate): Make static
4705         (pass_in_v_or_stack): Remove function.
4706         (pass_in_v_vfp_candidate): New function.
4707         (aarch64_push_dummy_call): Check for float register candidates.
4708
4709 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4710
4711         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4712         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4713         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4714
4715 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4716
4717         PR build/23399
4718         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4719         (struct ipa_sym_addresses): Rename to...
4720         (struct ipa_sym_addresses_common): ... this.
4721         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4722
4723 2018-08-28  Tom Tromey  <tom@tromey.com>
4724
4725         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4726         (token_fifo): Now a std::vector.
4727         (yylex, c_parse): Update.
4728         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4729         (token_fifo): Now a std::vector.
4730         (yylex, d_parse): Update.
4731         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4732         (token_fifo): Now a std::vector.
4733         (yylex, go_parse): Update.
4734
4735 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4736
4737         * parser-defs.h (struct type_stack) <elements>: Change type to
4738         std::vector<union type_stack_elt>.
4739         <depth, size>: Remove.
4740         * parse.c (parse_exp_in_context_1): Adjust.
4741         (type_stack_reserve): Remove.
4742         (check_type_stack_depth): Remove.
4743         (insert_into_type_stack): Adjust to std::vector.
4744         (insert_type): Likewise.
4745         (push_type): Likewise.
4746         (push_type_int): Likewise.
4747         (insert_type_address_space): Likewise.
4748         (pop_type): Likewise.
4749         (pop_type_int): Likewise.
4750         (pop_typelist): Likewise.
4751         (pop_type_stack): Likewise.
4752         (append_type_stack): Likewise.
4753         (push_type_stack): Likewise.
4754         (get_type_stack): Likewise.
4755         (type_stack_cleanup): Likewise.
4756         (push_typelist): Likewise.
4757         (follow_types): Likewise.
4758         (_initialize_parse): Likewise.
4759
4760 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4761
4762         * NEWS: Mention csky target.
4763
4764 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4765             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4766             Don Breazeal  <donb@codesourcery.com>
4767
4768         * csky-linux-tdep.c: New file.
4769         * csky-tdep.c: Likewise.
4770         * csky-tdep.h: Likewise.
4771         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4772         csky-tdep.o.
4773         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4774         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4775         * configure.tgt: Add csky support.
4776
4777 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4778
4779         * python/py-framefilter.c (py_print_frame): Print frame architecture
4780         when printing on an MI output.
4781
4782 2018-08-27  Tom Tromey  <tom@tromey.com>
4783
4784         PR build/23087:
4785         * configure: Rebuild.
4786         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4787
4788 2018-08-27  Tom Tromey  <tom@tromey.com>
4789
4790         * aarch64-linux-tdep.c
4791         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4792         casts to int.
4793
4794 2018-08-27  Tom Tromey  <tom@tromey.com>
4795
4796         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4797         unsigned.
4798         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4799         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4800         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4801         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4802         unsigned.
4803
4804 2018-08-27  Tom Tromey  <tom@tromey.com>
4805
4806         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4807         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4808
4809 2018-08-27  Tom Tromey  <tom@tromey.com>
4810
4811         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4812         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4813         ULONGEST_MAX.
4814         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4815         ULONGEST_MAX.
4816         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4817         ULONGEST_MAX.
4818         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4819         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4820         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4821         ULONGEST_MAX.
4822         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4823         (ppc64_linux_sigaction_tramp_frame)
4824         (ppc32_linux_sighandler_tramp_frame)
4825         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4826         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4827         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4828         * mn10300-linux-tdep.c (am33_linux_sigframe)
4829         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4830         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4831         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4832         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4833         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4834         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4835         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4836         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4837         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4838         * microblaze-linux-tdep.c
4839         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4840         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4841         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4842         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4843         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4844         * common/common-types.h (ULONGEST_MAX): New define.
4845         (CORE_ADDR_MAX): Fix formatting.
4846         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4847         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4848         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4849         (arm_linux_rt_sigreturn_tramp_frame)
4850         (arm_eabi_linux_sigreturn_tramp_frame)
4851         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4852         (thumb2_eabi_linux_sigreturn_tramp_frame)
4853         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4854         (arm_linux_restart_syscall_tramp_frame)
4855         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4856         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4857         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4858         ULONGEST_MAX.
4859         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4860
4861 2018-08-27  Tom Tromey  <tom@tromey.com>
4862
4863         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4864         CORE_ADDR_MAX.
4865         * mips-tdep.c (mips_deal_with_atomic_sequence)
4866         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4867         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4868         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4869         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4870         CORE_ADDR_MAX.
4871         * aarch64-tdep.c (aarch64_software_single_step): Use
4872         CORE_ADDR_MAX.
4873
4874 2018-08-27  Tom Tromey  <tom@tromey.com>
4875
4876         * linespec.c (complete_linespec_component): Add cast to "char".
4877         * completer.c (completion_tracker::build_completion_result): Add
4878         cast to "char".
4879
4880 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4881
4882         * solist.h (struct solist, struct target_so_ops): Fix
4883         indentation.
4884
4885 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4886
4887         * ada-tasks.c (ada_task_info_s): Remove typedef.
4888         (DEF_VEC_O(ada_task_info_s)): Remove.
4889         (struct ada_tasks_inferior_data): Initialize fields.
4890         <task_list>: Make an std::vector.
4891         (get_ada_tasks_inferior_data): Allocate with new.
4892         (ada_get_task_number): Adjust.
4893         (get_task_number_from_id): Likewise.
4894         (valid_task_id): Likewise.
4895         (ada_get_task_info_from_ptid): Likewise.
4896         (iterate_over_live_ada_tasks): Likewise.
4897         (add_ada_task): Likewise.
4898         (read_known_tasks): Likewise.
4899         (ada_build_task_list): Likewise.
4900         (print_ada_task_info): Likewise.
4901         (info_task): Likewise.
4902         (task_command_1): Likewise.
4903
4904 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4905
4906         * ada-lang.c (add_angle_brackets): Return std::string.
4907
4908 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4909
4910         * python/py-threadevent.c (py_get_event_thread): Initialize
4911         pythread.
4912
4913 2018-08-24  Pedro Alves  <palves@redhat.com>
4914
4915         * python/py-bpevent.c (create_breakpoint_event_object): Use
4916         copy-initialization.
4917         * python/py-continueevent.c (emit_continue_event): Use
4918         copy-initialization.
4919         * python/py-exitedevent.c (create_exited_event_object): Return a
4920         gdbpy_ref<>.
4921         (emit_exited_event): Use copy-initialization.
4922         * python/py-inferior.c (python_new_inferior)
4923         (python_inferior_deleted, add_thread_object): Use
4924         copy-initialization.
4925         * python/py-infevents.c (create_inferior_call_event_object)
4926         (create_register_changed_event_object)
4927         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4928         (emit_inferior_call_event, emit_memory_changed_event)
4929         (emit_register_changed_event): Use copy-initialization.
4930         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4931         Return a gdbpy_ref<>.
4932         (emit_new_objfile_event): Use copy-initialization.
4933         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4934         (emit_clear_objfiles_event): Use copy-initialization.
4935         * python/py-signalevent.c (create_signal_event_object): Use
4936         copy-initialization.
4937         * python/py-threadevent.c (create_thread_event_object): Use
4938         copy-initialization.
4939
4940 2018-08-24  Pedro Alves  <palves@redhat.com>
4941             Simon Marchi  <simon.marchi@ericsson.com>
4942
4943         PR gdb/23379
4944         * python/py-continueevent.c: Include "gdbthread.h".
4945         (create_continue_event_object): Add intro comment.  Add 'ptid'
4946         parameter.  Use it to find thread to pass to
4947         create_thread_event_object.
4948         (emit_continue_event): Pass PTID down to
4949         create_continue_event_object.
4950         * python/py-event.h (py_get_event_thread): Declare.
4951         (create_thread_event_object): Remove default from 'thread'
4952         parameter.
4953         * python/py-stopevent.c (create_stop_event_object): Use
4954         py_get_event_thread.
4955         * python/py-threadevent.c (get_event_thread): Rename to ...
4956         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4957         and use it to find the thread.
4958         (create_thread_event_object): Assert that THREAD isn't null.
4959         Don't find the event thread here.
4960
4961 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4962
4963         * block.h (blockrange, blockranges): New struct declarations.
4964         (struct block): Add new field named `ranges'.
4965         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4966         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4967         macros for accessing ranges in struct block.
4968         (make_blockranges): New declaration.
4969         block.c (make_blockranges): New function.
4970         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4971         for block.
4972         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4973         * blockframe.c (cache_pc_function_block): New static global.
4974         (clear_pc_function_cache): Clear cache_pc_function_block.
4975         (find_pc_partial_function): Move comment to symtab.h.  Add
4976         support for non-contiguous blocks.
4977         * cli/cli-cmds.c (block.h): Include.
4978         (print_disassembly): Handle printing of non-contiguous blocks.
4979         (disassemble_current_function): Likewise.
4980         (disassemble_command): Likewise.
4981
4982         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4983         BLOCK_START.
4984         * blockframe.c (get_pc_function_start): Likewise.
4985         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4986         (gcc_symbol_address): Likewise.
4987         * compile/compile-object-run.c (compile_object_run): Likewise.
4988         * compile/compile.c (get_expr_block_and_pc): Likewise.
4989         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4990         (func_addr_to_tail_call_list): Likewise.
4991         * findvar.c (default_read_var_value): Likewise.
4992         * inline-frame.c (inline_frame_this_id): Likewise.
4993         (skip-inline_frames): Likewise.
4994         * infcmd.c (until_next_command): Likewise.
4995         * linespec.c (convert_linespec_to_sals): Likewise.
4996         * parse.c (parse_exp_in_context_1): Likewise.
4997         * printcmd.c (build_address_symbolic): likewise.
4998         (info_address_command): Likewise.
4999         symtab.c (find_function_start_sal): Likewise.
5000         (skip_prologue_sal): Likewise.
5001         (find_function_alias_target): Likewise.
5002         (find_gnu_ifunc): Likewise.
5003         * stack.c (find_frame_funname): Likewise.
5004         * symtab.c (fixup_symbol_section): Likewise.
5005         (find_function_start_sal): Likewise.
5006         (skip_prologue_sal): Likewsie.
5007         (find_function_alias_target): Likewise.
5008         (find_gnu_ifunc): Likewise.
5009         * tracepoint.c (info_scope_command): Likewise.
5010         * value.c (value_fn_field): Likewise.
5011
5012         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5013         in place of find_pc_partial_function.
5014         * blockframe.c (find_function_entry_range_from_pc): New function.
5015         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5016         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5017         for each range in a block.
5018
5019
5020 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5021
5022         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5023         incrementation.
5024
5025 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5026
5027         * solib-svr4.c (read_program_headers_from_bfd): Return
5028         gdb::optional<gdb::byte_vector>.
5029         (svr4_exec_displacement): Adjust.
5030
5031 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5032
5033         * solib-svr4.c (read_program_header): Return
5034         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5035         (find_program_interpreter): Return
5036         gdb::optional<gdb::byte_vector>.
5037         (scan_dyntag_auxv): Adjust.
5038         (enable_break): Adjust.
5039         (svr4_exec_displacement): Adjust.
5040
5041 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5042
5043         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5044         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5045
5046 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5047
5048         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5049         string_vprintf.
5050         * guile/scm-utils.c (gdbscm_printf): Likewise.
5051         * serial.c (serial_printf): Likewise.
5052         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5053
5054 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5055
5056         * stack.c (print_frame): Print frame architecture when printing on
5057         an MI output.
5058         * NEWS: Mention new "arch" attribute in frame output.
5059
5060 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5061
5062         * arch/aarch64.h (aarch64_regnum): Update comment.
5063
5064 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5065
5066         * NEWS: Add SVE to 8.2 section.
5067
5068 2018-08-21  Pedro Alves  <palves@redhat.com>
5069
5070         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5071         out from gdbscm_parse_function_args.
5072         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5073         gdbscm_parse_function_args_1.
5074
5075 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5076
5077         PR gdb/17816
5078         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5079         operator.
5080
5081 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5082
5083         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5084
5085 2018-08-19  Michael Spang  <spang@google.com>
5086
5087         PR gdb/11786
5088         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5089         for PT_TLS segments.
5090
5091 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5092
5093         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5094         dwarf_variable_value.
5095         * dwarf2-frame.c (class dwarf_expr_executor):
5096         Add override for dwarf_variable_value.
5097         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5098         (class symbol_needs_eval_context): Likewise.
5099         (indirect_synthetic_pointer): Add forward declaration.
5100         (sect_variable_value): New function.
5101         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5102         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5103         for DW_OP_GNU_variable_value.
5104
5105 2018-08-16  Tom Tromey  <tom@tromey.com>
5106
5107         * top.c (read_command_file): Update.
5108         (command_line_input): Remove "repeat" argument.
5109         * ada-lang.c (get_selections): Update.
5110         * linespec.c (decode_line_2): Update.
5111         * defs.h (command_line_input): Remove argument.
5112         * cli/cli-script.c (read_next_line): Update.
5113         * python/py-gdb-readline.c: Update.
5114
5115 2018-08-17  Tom Tromey  <tom@tromey.com>
5116
5117         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5118         command_line_input.
5119
5120 2018-08-15  Tom Tromey  <tom@tromey.com>
5121
5122         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5123
5124 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5125
5126         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5127         If used, use find_pc_partial_function to find address range
5128         to disassemble.
5129         * mi/mi-main.c (mi_cmd_list_features): Report
5130         "data-disassemble-a-option" feature.
5131         * NEWS: Mention new -data-disassemble option -a.
5132
5133 2018-08-13  Tom Tromey  <tom@tromey.com>
5134
5135         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5136
5137 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5138
5139         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5140         (aarch64_linux_collect_sve_regset): Likewise.
5141         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5142         * regcache.h (regcache_map_entry_size): New function.
5143
5144 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5145
5146         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5147         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5148         (SVE_HEADER_VL_LENGTH): Likewise.
5149         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5150         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5151         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5152         (SVE_HEADER_SIZE_OFFSET): Likewise.
5153         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5154         (SVE_HEADER_VL_OFFSET): Likewise.
5155         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5156         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5157         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5158         (SVE_HEADER_SIZE): Likewise.
5159         (aarch64_linux_core_read_vq): Add function.
5160         (aarch64_linux_core_read_description): Check for SVE section.
5161
5162 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5163
5164         * aarch64-fbsd-tdep.c
5165         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5166         collect_size.
5167         * aarch64-linux-tdep.c
5168         (aarch64_linux_iterate_over_regset_sections): Likewise.
5169         * alpha-linux-tdep.c
5170         (alpha_linux_iterate_over_regset_sections):
5171         * alpha-nbsd-tdep.c
5172         (alphanbsd_iterate_over_regset_sections): Likewise.
5173         * amd64-fbsd-tdep.c
5174         (amd64fbsd_iterate_over_regset_sections): Likewise.
5175         * amd64-linux-tdep.c
5176         (amd64_linux_iterate_over_regset_sections): Likewise.
5177         * arm-bsd-tdep.c
5178         (armbsd_iterate_over_regset_sections): Likewise.
5179         * arm-fbsd-tdep.c
5180         (arm_fbsd_iterate_over_regset_sections): Likewise.
5181         * arm-linux-tdep.c
5182         (arm_linux_iterate_over_regset_sections): Likewise.
5183         * corelow.c (get_core_registers_cb): Likewise.
5184         (core_target::fetch_registers): Likewise.
5185         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5186         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5187         * gdbarch.h (void): Regenerate.
5188         * gdbarch.sh: Add supply_size and collect_size.
5189         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5190         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5191         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5192         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5193         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5194         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5195         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5196         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5197         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5198         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5199         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5200         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5201         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5202         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5203         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5204         Likewise.
5205         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5206         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5207         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5208         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5209         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5210         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5211         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5212         Likewise.
5213         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5214         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5215         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5216         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5217         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5218         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5219         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5220         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5221
5222 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5223
5224         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5225         with string_printf.
5226
5227 2018-08-10  Keith Seitz  <keiths@redhat.com>
5228
5229         * compile/compile-c-support.c (add_code_header, add_code_footer):
5230         Move into policy class.
5231         (c_push_user_expression, pop_user_expression_nop)
5232         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5233         (compile_program): New host class.
5234         (c_compile_program): New typedef.
5235         (c_compute_porgram): Use c_compile_program.
5236
5237 2018-08-10  Keith Seitz  <keiths@redhat.com>
5238
5239         * compile/compile-internal.h (compile_instance::~compile_instance):
5240         Remove calls to htab_delete.
5241         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5242         * compile.c (compile_instance::compile_instance): Initialize
5243         htab unique pointers.
5244         (compile_instance::get_cached_type, compile_instance::insert_type)
5245         (compile_instance::error_symbol_once): Update for unique_ptr.
5246
5247 2018-08-10  Keith Seitz  <keiths@redhat.com>
5248
5249         * compile/compile-c-symbols.c (struct symbol_error)
5250         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5251         (compile_instance::insert_symbol_error)
5252         (compile_instance::error_symbol_once): Move to ...
5253         * compile/compile.c: ... here.
5254
5255 2018-08-10  Keith Seitz  <keiths@redhat.com>
5256
5257         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5258         instead of `new_compile_instance'.
5259         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5260         Update description.
5261         If the symbol error map is not initialized, create it.
5262         (generate_c_for_for_one_symbol): Do not check/initialize
5263         the symbol error map.
5264         * compile/compile-c-types.c (compile_c_instance): Make a class.
5265         Update all callers.
5266         (compile_instance::compile_instance): Initialize the type cache.
5267         (get_cached_type): New function.
5268         (insert_type): Update description.
5269         (compile_c_instance::m_default_cflags): Define.
5270         (convert_type): Update description.  Use get_cached_type.
5271         (delete_instance): Moved to destructor.
5272         (new_compile_instance): Moved to constructor.
5273         * compile/compile-c.h (compile_c_instance): Make class inheriting
5274         from compile_instance.
5275         <base>: Remove field.
5276         <type_map, symbol_err_map>: Move to base class.
5277         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5278         * compile/compile-internal.h (compile_instance): Make class.
5279         <type_map_t, symbol_err_map_t>: Define.
5280         <fe>: Rename to `m_gcc_fe'.
5281         <scope, block, gcc_target_options>: Add `m_' prefix.
5282         <m_type_map, m_symbol_err_map>: New fields, moved from
5283         compile_c_instance.
5284         <destroy>: Remove.
5285         (convert_type, new_compile_instance): Remove.
5286         * compile/compile.c (cleanup_compile_instance): Remove.
5287         (compile_to_object): Use unique_ptr to eliminate cleanups.
5288         (compile_instance::set_print_callback, compile_instance::version)
5289         (compile_instance::set_verbose)
5290         (compile_instance::set_driver_filename)
5291         (compile_instance::set_triplet_regexp)
5292         (compile_instance::set_arguments)
5293         (compile_instance::set_source_file)
5294         (compile_instance::compile): Define.
5295
5296 2018-08-10  Keith Seitz  <keiths@redhat.com>
5297
5298         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5299         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5300         gcc-c-fe.def to define C plugin.
5301         (delete_instance): Delete `c_plugin'.
5302         (new_compile_instance): Initialize `c_plugin'.
5303         * compile/compile-c.h: Include gcc_c_plugin.h.
5304         (struct compile_c_instance) <c_plugin>: New member.
5305         * gcc-c-plugin.h: New file.
5306         Update all callers with API change.
5307
5308 2018-08-10  Keith Seitz  <keiths@redhat.com>
5309
5310         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5311         (HFILES_NO_SRCDIR): ... to here.
5312         Add compile-internal.h and compile-c.h.
5313         * compile/compile-c-support.c: Include compile-c.h.
5314         * compile/compile-c-symbols.c: Include compile-c.h.
5315         (generate_c_for_variable_locations): Update comment.
5316         * compile/compile-c-types.c: Include compile-c.h.
5317         * compile/compile-c.h: New file -- moved C language declarations
5318         from other files here.
5319         * compile/compile-internal.h: Do not include hashtab.h or
5320         common/enum-flags.h.
5321         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5322         (gcc_convert_symbol, gcc_symbol_address)
5323         (generate_c_for_variable_locations, c_get_mode_for_size)
5324         (c_get_range_decl_name): Definitions moved to compile-c.h.
5325         * compile/compile-loc2c.c: Include compile-c.h.
5326
5327 2018-08-10  Keith Seitz  <keiths@redhat.com>
5328
5329         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5330         (c_symbol_substitution_name): ... this.
5331         Update all callers.
5332
5333 2018-08-10  Keith Seitz  <keiths@redhat.com>
5334
5335         * compile/compile-c-support.c (c_compute_program): Use
5336         unique_xmalloc_ptr to eliminate cleanup.
5337         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5338         Return a unique_xmalloc_ptr and eliminate cleanup.
5339         * compile/compile-internal.h (generate_c_for_variable_locations):
5340         Return unique_xmalloc_ptr and update description.
5341
5342 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5343
5344         * corelow.c (core_target::get_core_register_section): Rename
5345         min_size to section_min_size.
5346
5347 2018-08-09  Jim Wilson  <jimw@sifive.com>
5348
5349         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5350         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5351         * NEWS: Mention new GNU/Linux RISC-V target.
5352         * configure.host: Add riscv*-*-linux*.
5353         * configure.nat: Add riscv*.
5354         * configure.tgt: Add riscv*-*-linux*.
5355         * riscv-linux-nat.c: New file.
5356         * riscv-linux-tdep.c: New file.
5357
5358 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5359
5360         * infrun.c (resume): Make static, add forward declaration.
5361         (proceed): Update header comment.
5362         * infrun.h (resume): Delete declaration.
5363
5364 2018-08-09  Tom Tromey  <tom@tromey.com>
5365
5366         * riscv-tdep.h: Minor formatting fixes.
5367
5368 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5369
5370         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5371         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5372         (test_mkdir_recursive): Likewise.
5373         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5374
5375 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5376
5377         * valarith.c (value_subscripted_rvalue): If an array is not in
5378         memory, and we don't know the upper bound, then we can't know that
5379         the requested element exists or not.
5380
5381 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5382
5383         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5384         (target_options_to_string): Add comment.
5385
5386 2018-08-08  Tom Tromey  <tom@tromey.com>
5387
5388         * unittests/scoped_mmap-selftests.c: Check result of "write".
5389
5390 2018-08-08  Jim Wilson  <jimw@sifive.com>
5391
5392         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5393         (decode_register_index_short): New.
5394         (decode_j_type_insn, decode_cj_type_insn): New.
5395         (decode_b_type_insn, decode_cb_type_insn): New.
5396         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5397         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5398         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5399         is_c_sw_insn instead of is_sw_insn.
5400         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5401         (riscv_software_single_step): New.
5402         * riscv-tdep.h (riscv_software_single_step): Declare.
5403
5404         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5405         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5406
5407 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5408
5409         PR gdb/18050:
5410         * target.c (dispose_inferior): Don't dispose of inferiors that are
5411         already killed.
5412
5413 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5414
5415         * remote.c (remote_target::download_tracepoint): Change char* to
5416         const char*.
5417
5418 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5419
5420         * target.h (target_options_to_string): Return an std::string.
5421         * target.c (str_comma_list_concat_elem): Return void, use
5422         std::string.
5423         (do_option): Likewise.
5424         (target_options_to_string): Return an std::string.
5425         * linux-nat.c (linux_nat_target::wait): Adjust.
5426         * target-debug.h (target_debug_print_options): Adjust.
5427
5428 2018-08-07  Tom Tromey  <tom@tromey.com>
5429
5430         * Makefile.in (CPPFLAGS): New variable.
5431         (INTERNAL_CPPFLAGS): Use it.
5432
5433 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5434
5435         * NEWS: Mention the index cache.
5436
5437 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5438
5439         * common/pathstuff.h (get_standard_cache_dir): New.
5440         * common/pathstuff.c (get_standard_cache_dir): New.
5441         * build-id.h (build_id_to_string): New.
5442         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5443         DEBUG_STR_SUFFIX): Move to here.
5444         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5445         DEBUG_STR_SUFFIX): Move from there.
5446         (write_psymtabs_to_index): Make non-static, add basename
5447         parameter.  Write to temporary files, rename when done.
5448         (save_gdb_index_command): Adjust call to
5449         write_psymtabs_to_index.
5450         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5451         field.
5452         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5453         (get_gdb_index_contents_from_cache): New.
5454         (get_gdb_index_contents_from_cache_dwz): New.
5455         (dwarf2_initialize_objfile): Read index from cache.
5456         (dwarf2_build_psymtabs): Save to index.
5457         * dwarf-index-cache.h: New file.
5458         * dwarf-index-cache.c: New file.
5459         * dwarf-index-write.h: New file.
5460
5461 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5462
5463         * gnulib/aclocal.m4: Re-generate.
5464         * gnulib/config.in: Re-generate.
5465         * gnulib/configure: Re-generate.
5466         * gnulib/import/Makefile.am: Re-generate.
5467         * gnulib/import/Makefile.in: Re-generate.
5468         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5469         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5470         * gnulib/import/m4/mkdir.m4: New file.
5471         * gnulib/import/mkdir.c: New file.
5472         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5473         module.
5474
5475 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5476
5477         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5478         * common/scoped_mmap.c: New file.
5479         * common/scoped_mmap.h (destroy): New method.
5480         (~scoped_mmap, reset): Use destroy.
5481         (scoped_mmap): New move constructor.
5482         (mmap_file): New declaration.
5483         * unittests/scoped_mmap-selftests.c (test_normal,
5484         test_invalid_filename, run_tests): New functions.
5485         (_initialize_scoped_mmap_selftests): Register selftest.
5486
5487 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5488
5489         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5490         (read_gdb_index_from_buffer): ... this.  Remove section
5491         parameter, add buffer parameter.
5492         (get_gdb_index_contents_ftype,
5493         get_gdb_index_contents_dwz_ftype): New typedefs.
5494         (dwarf2_read_gdb_index): Add callback parameters to get the
5495         index contents.
5496         (get_gdb_index_contents_from_section): New.
5497         (dwarf2_initialize_objfile): Update call to
5498         dwarf2_read_gdb_index.
5499
5500 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5501
5502         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5503         (gdb_open_cloexec): Likewise.
5504         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5505         (commandline_from_pid): Likewise.
5506         (linux_xfer_osdata_threads): Likewise.
5507         (linux_xfer_osdata_fds): Likewise.
5508         * ada-lang.c (is_package_name): Likewise.
5509         * auxv.c (procfs_xfer_auxv): Likewise.
5510         * breakpoint.c (print_one_breakpoint_location): Use
5511         uiout::field_fmt.
5512         (print_one_catch_solib): Use string_printf.
5513         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5514         (add_pe_forwarded_sym): Likewise.
5515         * dwarf2read.c (create_type_unit_group): Likewise.
5516         (build_error_marker_type): Likewise.
5517         * infcall.c (get_function_name): Likewise.
5518         * valprint.c (print_converted_chars_to_obstack): Likewise.
5519         * xtensa-tdep.c (xtensa_register_type): Likewise.
5520
5521 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5522
5523         * remote.c (remote_target::download_tracepoint): Fix format
5524         string errors.
5525
5526 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5527
5528         * tracefile.c: Include common/byte-vector.h.
5529         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5530         with trace_regblock_size if needed.  Update uses of buf.
5531
5532 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5533
5534         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5535         std::vector<unsigned char>.
5536         * tracepoint.c (collection_list::collection_list): Remove
5537         m_regs_mask initializer from initializer list.  Resize
5538         m_regs_mask using the largest remote register number.
5539         (collection_list::add_remote_register): Remove size check on
5540         m_regs_mask.  Use at to access element.
5541         (collection_list::stringify): Change type of temp_buf to
5542         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5543         stringify the register mask.  Use pack_hex_byte for the register
5544         mask.
5545
5546 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5547
5548         * tracepoint.h (class collection_list) <add_register>: Remove.
5549         <add_remote_register, add_ax_registers, add_local_register>:
5550         Declare.
5551         <add_memrange>: Add scope parameter.
5552         * tracepoint.c (encode_actions_1): Likewise.
5553         (collection_list::add_register): Rename to ...
5554         (collection_list::add_remote_register): ... this.  Update
5555         comment.
5556         (collection_list::add_ax_registers, add_local_register): New
5557         methods.
5558         (collection_list::add_memrange): Add scope parameter.  Call
5559         add_local_register instead of add_register.
5560         (finalize_tracepoint_aexpr): New function.
5561         (collection_list::collect_symbol): Update calls to add_memrange.
5562         Call add_local_register instead of add_register.  Call
5563         add_ax_registers.  Call finalize_tracepoint_aexpr.
5564         (encode_actions_1): Get remote regnos for $reg action.  Call
5565         add_remote_register, add_ax_registers, and add_local_register.
5566         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5567         (validate_actionline): Call finalize_tracepoint_aexpr.
5568
5569 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5570
5571         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5572         Replace array buf with gdb::char_vector buf, of size
5573         get_remote_packet_size ().  Replace references to buf and
5574         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5575         and xsnprintf with snprintf.  Raise errors if the buffer is too
5576         small.
5577
5578 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5579
5580         * remote.c (remote_target::download_tracepoint): Fix the has_more
5581         predicate in the QTDP action list iteration.
5582
5583 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5584
5585         * remote.c (remote_target::download_tracepoint): Fix indentation
5586         in for block.
5587
5588 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5589
5590         * proc-api.c (_initialize_proc_api): Remove c, unused.
5591         * procfs.c (procfs_init_inferior): Remove signals, unused.
5592         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5593         unused.
5594
5595 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5596             Andrew Burgess  <andrew.burgess@embecosm.com>
5597
5598         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5599         'W_STOPCODE (0)' as this could be ambiguous.
5600
5601 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5602
5603         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5604         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5605         "ai_socktype").
5606
5607 2018-08-02  Tom Tromey  <tom@tromey.com>
5608
5609         PR symtab/16842.
5610         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5611         symbols.
5612         (process_structure_scope): Likewise.
5613
5614 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5615
5616         PR gdb/22629:
5617         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5618         kill inferior.
5619
5620 2018-08-02  Tom Tromey  <tom@tromey.com>
5621
5622         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5623         (darwin_suspend_inferior, darwin_resume_inferior)
5624         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5625         (darwin_check_new_threads): Check result of get_darwin_inferior.
5626
5627 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5628
5629         GDB 8.1.1 released.
5630
5631 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5632
5633         * varobj.c (varobj_get_path_expr_parent): Report an error if
5634         parent is a dynamic varobj.
5635
5636 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5637
5638         * gnulib/aclocal.m4: Re-generate.
5639         * gnulib/config.in: Re-generate.
5640         * gnulib/configure: Re-generate.
5641         * gnulib/import/Makefile.in: Re-generate.
5642         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5643         * gnulib/import/m4/onceonly.m4: Re-generate.
5644
5645 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5646
5647         * target-descriptions.c (struct xml_test_tdesc): New.
5648         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5649         (record_xml_tdesc): Update.
5650         (maintenance_check_xml_descriptions): Update.
5651         * target-descriptions.h (record_xml_tdesc): Update comment.
5652
5653 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5654
5655         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5656         checking array bounds are defined.
5657
5658 2018-07-30  Tom Tromey  <tom@tromey.com>
5659
5660         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5661         irreflexivity violation.
5662
5663 2018-07-30  Tom Tromey  <tom@tromey.com>
5664
5665         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5666         * value.c (unpack_long): Remove lint code.
5667         * valops.c (value_ind): Remove lint code.
5668         * valarith.c (value_x_binop, value_x_unop, value_equal)
5669         (value_pos): Remove lint code.
5670
5671 2018-07-28  Tom de Vries  <tdevries@suse.de>
5672
5673         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5674         with undefined upper bound as <optimized out>.
5675
5676 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5677
5678         * gcore.in: Rename variable "name" to "prefix".  Expand
5679         "usage" text.
5680
5681 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5682
5683         * windows-nat.c (windows_nat_target::create_inferior): Update to
5684         call close() in global namespace.
5685
5686 2018-07-26  Tom Tromey  <tom@tromey.com>
5687
5688         * dwarf-index-write.c (add_address_entry): Don't add objfile
5689         offsets.
5690         * dbxread.c (find_stab_function): Rename from
5691         find_stab_function_addr.  Return a bound_minimal_symbol.
5692         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5693         Don't add objfile offsets.
5694         (end_psymtab): Use raw_text_low, raw_text_high,
5695         MSYMBOL_VALUE_RAW_ADDRESS.
5696         (read_ofile_symtab): Update.
5697         (process_one_symbol): Update.
5698         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5699         offsets.
5700         (dw2_relocate): Remove.
5701         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5702         searching addrmap.
5703         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5704         Update.
5705         (process_psymtab_comp_unit_reader, add_partial_symbol)
5706         (add_partial_subprogram, dwarf2_ranges_read): Update.
5707         (load_partial_dies): Update.
5708         (add_address_entry): Don't add objfile offsets.
5709         (dwarf2_build_include_psymtabs): Update.
5710         (create_addrmap_from_aranges): Don't add objfile offsets.
5711         (dw2_find_pc_sect_compunit_symtab): Update.
5712         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5713         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5714         Update.
5715         (parse_partial_symbols): Don't add objfile offsets.  Use
5716         raw_text_low, raw_text_high.  Update.
5717         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5718         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5719         or call 'relocate' quick function.  Clear psymbol_map.
5720         * psympriv.h (struct partial_symbol) <address>: Add section
5721         offset.
5722         <set_unrelocated_address>: Rename from set_address.
5723         <raw_text_low, raw_text_high>: New methods.
5724         <text_low, text_high>: Add objfile parameter.
5725         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5726         set_unrelocated_address.
5727         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5728         (find_pc_psymbol): Update.
5729         (fixup_psymbol_section, relocate_psymtabs): Remove.
5730         (dump_psymtab, psym_functions): Update.
5731         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5732         parameter.
5733         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5734         (start_psymtab_common): Update.
5735         * symfile-debug.c (debug_qf_relocate): Remove.
5736         (debug_sym_quick_functions): Update.
5737         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5738         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5739         Update.
5740
5741 2018-07-26  Tom Tromey  <tromey@redhat.com>
5742
5743         * dbxread.c (end_psymtab): Use text_high_valid and
5744         text_low_valid.
5745         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5746         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5747         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5748         Update comment.
5749         <text_low_valid, text_high_valid>: New fields.
5750         <set_text_low, set_text_high>: Update.
5751         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5752
5753 2018-07-26  Tom Tromey  <tom@tromey.com>
5754
5755         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5756         Update.
5757         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5758         textlow and texthigh fields.
5759         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5760         Update.
5761         * mdebugread.c (parse_lines, parse_partial_symbols)
5762         (psymtab_to_symtab_1): Update.
5763         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5764         Rename fields.  Update comment.  Now private.
5765         <text_low, text_high, set_text_low, set_text_high>: New methods.
5766         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5767         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5768         (start_psymtab_common, maintenance_info_psymtabs)
5769         (maintenance_check_psymtabs): Update.
5770         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5771         texthigh fields.
5772         (scan_xcoff_symtab): Update.
5773
5774 2018-07-26  Tom Tromey  <tromey@redhat.com>
5775
5776         * psympriv.h (struct partial_symbol) <unrelocated_address,
5777         address, set_address>: New methods.
5778         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5779         (fixup_psymbol_section, relocate_psymtabs): Update.
5780         (print_partial_symbols): Add 'objfile' parameter.  Update.
5781         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5782         Update.
5783
5784 2018-07-26  Tom Tromey  <tom@tromey.com>
5785
5786         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5787         (debug_names::write_psymbols): Update.
5788         * psympriv.h (struct partial_symbol): Derive from
5789         general_symbol_info.
5790         <obj_section>: New method.
5791         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5792         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5793         (find_pc_sect_psymbol, fixup_psymbol_section)
5794         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5795         (print_partial_symbols, recursively_search_psymtabs)
5796         (compare_psymbols, psymbol_hash, psymbol_compare)
5797         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5798         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5799
5800 2018-07-26  Tom Tromey  <tromey@redhat.com>
5801
5802         * dbxread.c (end_psymtab): Remove dead code.
5803
5804 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5805
5806         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5807         DWARF unwinders are disabled.
5808         * dwarf2-frame.c: Add dwarf2read.h include.
5809         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5810         disabled.
5811         (dwarf2_frame_unwinders_enabled_p): Define.
5812         (show_dwarf_unwinders_enabled_p): New function.
5813         (_initialize_dwarf2_frame): Register switch to control DWARF
5814         unwinder use.
5815         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5816         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5817         (show_dwarf_cmdlist): Remove static keyword.
5818         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5819         (show_dwarf_cmdlist): Declare.
5820         * NEWS: Document new feature.
5821
5822 2018-07-26  Tom de Vries  <tdevries@suse.de>
5823
5824         PR breakpoints/23366
5825         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5826
5827 2018-07-26  Tom de Vries  <tdevries@suse.de>
5828
5829         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5830         DW_AT_count can't be translated to a dynamic prop.
5831
5832 2018-07-25  Tom de Vries  <tdevries@suse.de>
5833
5834         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5835         try/catch.
5836
5837 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5838
5839         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5840
5841 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5842
5843         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5844
5845 2018-07-24  Keith Seitz  <keiths@redhat.comt
5846
5847         PR symtab/23010
5848         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5849         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5850         instead of add_symbol_to_list.
5851         (read_file_scope): Call prepare_one_comp_unit before reading
5852         any other DIEs.
5853
5854 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5855
5856         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5857
5858 2018-07-24  Tom Tromey  <tom@tromey.com>
5859
5860         * utils.c (malloc, realloc, free): Don't declare.
5861         * configure, config.in: Rebuild.
5862         * configure.ac: Don't check for declarations of free, malloc, or
5863         realloc.
5864
5865 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5866
5867         * aarch64-linux-nat.c
5868         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5869         variable.
5870         * arm-linux-nat.c (fetch_regs): Likewise.
5871         (store_regs): Likewise.
5872         (fetch_vfp_regs): Likewise.
5873         (store_vfp_regs): Likewise.
5874         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5875         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5876         (arm_linux_nat_target::insert_watchpoint): Likewise.
5877         (arm_linux_nat_target::remove_watchpoint): Likewise.
5878         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5879         Likewise.
5880         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5881         Likewise.
5882         * ppc-linux-nat.c (fetch_register): Likewise.
5883         (fetch_all_gp_regs): Likewise.
5884         (fetch_ppc_registers): Likewise.
5885         (store_all_gp_regs): Likewise.
5886         (store_ppc_registers): Likewise.
5887         (hwdebug_insert_point): Likewise.
5888         (can_use_watchpoint_cond_accel): Likewise.
5889         * remote-sim.c (gdb_os_write_stdout): Likewise.
5890
5891 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5892             Tom Tromey  <tom@tromey.com>
5893
5894         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5895         test for it.
5896         * configure: Rebuild.
5897
5898 2018-07-22  Tom Tromey  <tom@tromey.com>
5899
5900         * regformats/regdat.sh: Define xmltarget_${name} inside
5901         #ifndef IN_PROCESS_AGENT.
5902
5903 2018-07-22  Tom Tromey  <tom@tromey.com>
5904
5905         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5906
5907 2018-07-22  Tom Tromey  <tom@tromey.com>
5908
5909         * symfile.c (reread_symbols): Notify iter, not objfile.
5910
5911 2018-07-22  Tom Tromey  <tom@tromey.com>
5912
5913         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5914         Use arch_ops.
5915         (ravenscar_thread_target::prepare_to_store): Likewise.
5916
5917 2018-07-22  Tom Tromey  <tom@tromey.com>
5918
5919         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5920         unused variable.  Call value_fetch_lazy when needed.
5921         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5922         Remove unused variable.  Call value_fetch_lazy when needed.
5923
5924 2018-07-22  Tom Tromey  <tom@tromey.com>
5925
5926         * m32c-tdep.c (mark_dma): Return void.
5927         (make_regs): Remove unused declarations.
5928
5929 2018-07-22  Tom Tromey  <tom@tromey.com>
5930
5931         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5932         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5933         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5934         bkscm_get_valid_block_smob_arg_unsafe for effect.
5935
5936 2018-07-22  Tom Tromey  <tom@tromey.com>
5937
5938         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5939         value_type.
5940
5941 2018-07-22  Tom Tromey  <tom@tromey.com>
5942
5943         * windows-nat.c (saved_context): Conditionally define.
5944         * remote.c (remote_target::remote_btrace_maybe_reopen):
5945         Conditionally declare "warned".
5946         * inflow.c (sigquit_ours): Conditionally define.
5947         (new_tty): Move "tty" declaration inside #if.
5948         * guile/guile.c (guile_datadir): Conditionally define.
5949         * charset.c (set_be_le_names): Move some declarations inside #if.
5950         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5951         #if.
5952         (parse_xml_btrace_conf): Likewise.
5953
5954 2018-07-22  Tom Tromey  <tom@tromey.com>
5955
5956         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5957
5958 2018-07-22  Tom Tromey  <tom@tromey.com>
5959
5960         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5961         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5962         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5963         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5964         * stack.c (frame_apply_level_command): Remove unused variable.
5965         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5966         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5967         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5968         unused variable.
5969         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5970         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5971         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5972         variable.
5973         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5974         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5975         variable.
5976         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5977         Remove unused variable.
5978         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5979         variable.
5980         * common/tdesc.c (print_xml_feature::visit): Remove unused
5981         variable.
5982         * compile/compile-object-load.c (store_regs): Remove unused
5983         variables.
5984         * complaints.c (clear_complaints): Remove unused variable.
5985         * corelow.c (core_target_open): Remove unused variable.
5986         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5987         variable.
5988         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5989         variable.
5990         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5991         variable.
5992         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5993         variable.
5994         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5995         variable.
5996         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5997         variable.
5998         * ia64-tdep.c (examine_prologue): Remove unused variable.
5999         * infcall.c (run_inferior_call): Remove unused variable.
6000         * inferior.c (exit_inferior): Remove unused variable.
6001         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6002         * linespec.c (decode_line_2): Remove unused variable.
6003         * linux-nat.c (super_close): Remove.
6004         * linux-tdep.c (linux_info_proc): Remove unused variable.
6005         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6006         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6007         Remove unused variable.
6008         * parse.c (find_minsym_type_and_address): Remove unused variable.
6009         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6010         variable.
6011         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6012         variable.
6013         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6014         variables.
6015         * record-btrace.c (record_btrace_target::store_registers): Remove
6016         unused variable.
6017         (cmd_show_record_btrace_cpu): Remove unused variable.
6018         * riscv-tdep.c (riscv_register_reggroup_p)
6019         (riscv_push_dummy_call, riscv_return_value): Remove unused
6020         variable.
6021         * rust-exp.y (literal): Remove unused variable.
6022         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6023         unused variable.
6024         <STRUCTOP_ANONYMOUS>: Likewise.
6025         * s390-linux-tdep.c (s390_linux_init_abi_31)
6026         (s390_linux_init_abi_64): Remove unused variable.
6027         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6028         (file_select_thread, net_windows_open, _initialize_ser_windows):
6029         Remove unused variables.
6030         * symtab.c (find_pc_sect_line): Remove unused variable.
6031         * target-memory.c (compute_garbled_blocks): Remove unused
6032         variable.
6033         (target_write_memory_blocks): Remove unused variable.
6034         * target.c (target_stack::unpush): Remove unused variables.
6035         * tracepoint.c (start_tracing, all_tracepoint_actions)
6036         (merge_uploaded_trace_state_variables)
6037         (print_one_static_tracepoint_marker): Remove unused variable.
6038         * unittests/basic_string_view/element_access/char/1.cc (test01):
6039         Remove unused variable.
6040         * windows-nat.c (windows_continue, windows_add_all_dlls)
6041         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6042         Remove unused variables.
6043
6044 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6045
6046         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6047         attr_profile in HAVE_ELF.
6048         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6049         HAVE_ELF.
6050
6051 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6052
6053         * frame.c (frame_register_unwind): Change parameter name.
6054         (frame_unwind_register): Likewise.
6055         (frame_unwind_register_value): Likewise.
6056         (frame_unwind_register_signed): Likewise.
6057         (frame_unwind_register_unsigned): Likewise.
6058         * frame.h (frame_register_unwind): Likewise.
6059         (frame_unwind_register): Likewise.
6060         (frame_unwind_register_value): Likewise.
6061         (frame_unwind_register_signed): Likewise.
6062         (frame_unwind_register_unsigned): Likewise.
6063         (frame_unwind_arch): Likewise.
6064
6065 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6066
6067         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6068         ISA maintenance.
6069
6070 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6071
6072         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6073         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6074         hand.
6075
6076 2018-07-20  Keith Seitz  <keiths@redhat.com>
6077
6078         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6079         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6080         m_compunit_symtab, m_language>: Add "m_" prefix.
6081         Update all uses.
6082         * buildsym.c: Update all uses.
6083
6084 2018-07-20  Tom Tromey  <tom@tromey.com>
6085
6086         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6087         * buildsym.h (record_line_ftype): Remove typedef.
6088
6089 2018-07-20  Tom Tromey  <tom@tromey.com>
6090
6091         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6092         (end_expandable_symtab): Likewise.
6093         (end_symtab_get_static_block): Likewise.
6094         (end_symtab_from_static_block): Likewise.
6095         * buildsym-legacy.c (augment_type_symtab): Remove.
6096         (end_expandable_symtab): Remove.
6097         (end_symtab_get_static_block): Remove.
6098         (end_symtab_from_static_block): Remove.
6099
6100 2018-07-20  Tom Tromey  <tom@tromey.com>
6101
6102         * dwarf2read.c: Include buildsym.h.
6103         (struct dwarf2_cu) <builder>: New method.
6104         (fixup_go_packaging): Update.
6105         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6106         use scoped_free_pendings.
6107         (using_directives): Add "cu" parameter, remove "language".
6108         (read_import_statement, setup_type_unit_groups, )
6109         (read_func_scope, read_lexical_block_scope)
6110         (dwarf2_record_block_ranges, read_namespace): Update.
6111         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6112         (lnp_state_machine::handle_end_sequence): Update.
6113         (class lnp_state_machine) <m_cu>: New member.
6114         <m_record_line_callback>: Remove.
6115         <m_currently_recording_lines>: New member.
6116         (lnp_state_machine::handle_set_file): Update.
6117         (noop_record_line): Remove.
6118         (dwarf_record_line_p): Add cu parameter.
6119         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6120         (lnp_state_machine::record_line)
6121         (lnp_state_machine::lnp_state_machine)
6122         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6123         (dwarf_decode_lines): Update.
6124         (dwarf2_start_subfile): Add cu parameter.
6125         (dwarf2_start_symtab, new_symbol): Update.
6126         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6127         Remove dwarf2_per_objfile parameter.
6128         (dwarf_decode_macros): Update.
6129
6130 2018-07-20  Tom Tromey  <tom@tromey.com>
6131
6132         * stabsread.c (define_symbol): Update.
6133         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6134         * dwarf2read.c (new_symbol): Update.
6135         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6136         * cp-namespace.c: Include buildsym.h.
6137         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6138         * buildsym-legacy.c (get_buildsym_compunit): New function.
6139
6140 2018-07-20  Tom Tromey  <tom@tromey.com>
6141
6142         * xcoffread.c: Include buildsym-legacy.h.
6143         * windows-nat.c: Include buildsym-legacy.h.
6144         * stabsread.c: Include buildsym-legacy.h.
6145         * mdebugread.c: Include buildsym-legacy.h.
6146         * buildsym-legacy.h: New file.
6147         * buildsym-legacy.c: New file, from buildsym.c.
6148         * go32-nat.c: Include buildsym-legacy.h.
6149         * dwarf2read.c: Include buildsym-legacy.h.
6150         * dbxread.c: Include buildsym-legacy.h.
6151         * cp-namespace.c: Include buildsym-legacy.h.
6152         * coffread.c: Include buildsym-legacy.h.
6153         * buildsym.h: Move some contents to buildsym-legacy.h.
6154         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6155         buildsym-legacy.c.
6156         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6157
6158 2018-07-20  Tom Tromey  <tom@tromey.com>
6159
6160         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6161         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6162         (buildsym_compunit::buildsym_compunit)
6163         (buildsym_compunit::~buildsym_compunit)
6164         (buildsym_compunit::get_macro_table): Define.
6165
6166 2018-07-20  Tom Tromey  <tom@tromey.com>
6167
6168         * buildsym.c (reset_symtab_globals): Remove.
6169         (buildsym_compunit::end_symtab_from_static_block): Update.
6170         (buildsym_compunit::augment_type_symtab): Update.
6171         (end_symtab_from_static_block): Call free_buildsym_compunit.
6172         (augment_type_symtab, end_symtab, end_expandable_symtab):
6173         Likewise.
6174
6175 2018-07-20  Tom Tromey  <tom@tromey.com>
6176
6177         * arch-utils.c: Do not include buildsym.h.
6178         * mipsread.c: Do not include buildsym.h.
6179         * machoread.c: Do not include buildsym.h.
6180         * elfread.c: Do not include buildsym.h.
6181
6182 2018-07-20  Tom Tromey  <tom@tromey.com>
6183
6184         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6185         initialization.
6186         (buildsym_compunit): Add new constructor.
6187         (struct buildsym_compunit) <get_last_source_file, finish_block,
6188         record_block_range, start_subfile, patch_subfile_names,
6189         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6190         set_last_source_start_addr, get_last_source_start_addr,
6191         get_local_using_directives, set_local_using_directives,
6192         get_global_using_directives, outermost_context_p,
6193         get_current_context_stack, get_context_stack_depth,
6194         get_current_subfile, get_local_symbols, get_file_symbols,
6195         get_global_symbols, record_debugformat, record_producer,
6196         push_context, pop_context, end_symtab_get_static_block,
6197         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6198         New public methods.
6199         <record_pending_block, finish_block_internal, make_blockvector,
6200         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6201         private methods.
6202         Update all users.
6203
6204 2018-05-22  Tom Tromey  <tom@tromey.com>
6205
6206         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6207         parameter.
6208         (finish_block_internal): Update.
6209
6210 2018-07-20  Tom Tromey  <tom@tromey.com>
6211
6212         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6213         parameter.
6214         (finish_block_internal): Update.
6215
6216 2018-07-20  Tom Tromey  <tom@tromey.com>
6217
6218         * buildsym.h (EXTERN): Don't define or undef.
6219         * buildsym.c (EXTERN): Don't define.
6220
6221 2018-07-20  Tom Tromey  <tom@tromey.com>
6222
6223         * buildsym.c: Remove TODO comment.
6224
6225 2018-07-20  Tom Tromey  <tom@tromey.com>
6226
6227         * coffread.c (coff_symtab_read): Update.
6228         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6229         (xcoff_new_init): Update.
6230         * mipsread.c (mipscoff_new_init): Update.
6231         * mdebugread.c (mdebug_build_psymtabs): Update.
6232         * elfread.c (elf_new_init): Update.
6233         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6234         Update.
6235         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6236         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6237         (stabsect_build_psymtabs): Update.
6238         * buildsym.h (buildsym_init): Don't declare.
6239         * buildsym.c: Update comment.
6240         (prepare_for_building): Remove.
6241         (start_symtab, restart_symtab): Update.
6242         (reset_symtab_globals): Update comment.
6243         (buildsym_init): Remove.
6244
6245 2018-07-20  Tom Tromey  <tom@tromey.com>
6246
6247         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6248         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6249         (read_enum_type, common_block_start, common_block_end)
6250         (cleanup_undefined_types_1, finish_global_stabs): Update.
6251         * mdebugread.c (psymtab_to_symtab_1): Update.
6252         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6253         (read_lexical_block_scope, new_symbol): Update.
6254         * dbxread.c (process_one_symbol): Update.
6255         * coffread.c (coff_symtab_read, process_coff_symbol)
6256         (coff_read_enum_type): Update.
6257         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6258         declare.
6259         (get_local_symbols, get_file_symbols, get_global_symbols): New
6260         functions.
6261         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6262         m_global_symbols.
6263         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6264         (~scoped_free_pendings): Update.
6265         (finish_block, prepare_for_building, reset_symtab_globals)
6266         (end_symtab_get_static_block, end_symtab_with_blockvector)
6267         (augment_type_symtab, push_context): Update.
6268         (get_local_symbols, get_file_symbols, get_global_symbols): New
6269         functions.
6270         (buildsym_init): Update.
6271
6272 2018-07-20  Tom Tromey  <tom@tromey.com>
6273
6274         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6275         (process_full_type_unit): Likewise.
6276         (dwarf2_start_symtab): Set list_in_scope.
6277
6278 2018-07-20  Tom Tromey  <tom@tromey.com>
6279
6280         * dwarf2read.c (process_psymtab_comp_unit_reader)
6281         (build_type_psymtabs_reader): Do not set list_in_scope.
6282
6283 2018-07-20  Tom Tromey  <tom@tromey.com>
6284
6285         * buildsym.c (free_pendings): Remove.
6286         (add_symbol_to_list, scoped_free_pendings)
6287         (finish_block_internal, buildsym_init): Update.
6288
6289 2018-07-20  Tom Tromey  <tom@tromey.com>
6290
6291         * xcoffread.c (read_xcoff_symtab): Update.
6292         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6293         Update.
6294         * dbxread.c (process_one_symbol): Update.
6295         * coffread.c (coff_symtab_read): Update.
6296         * buildsym.h (finish_block): Update.
6297         * buildsym.c (finish_block): Remove "listhead" argument.
6298         (end_symtab_get_static_block): Update.
6299
6300 2018-07-20  Tom Tromey  <tom@tromey.com>
6301
6302         * buildsym.h (class scoped_free_pendings): Remove constructor.
6303         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6304         method.
6305         <m_pending_block_obstack, m_pending_blocks>: New members.
6306         (pending_block_obstack, pending_blocks): Remove.
6307         (scoped_free_pendings::scoped_free_pendings): Default.
6308         (~scoped_free_pendings): Update.
6309         (free_pending_blocks): Remove.
6310         (finish_block_internal, record_pending_block, make_blockvector)
6311         (end_symtab_get_static_block, augment_type_symtab, push_context)
6312         (buildsym_init): Update.
6313
6314 2018-07-20  Tom Tromey  <tom@tromey.com>
6315
6316         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6317         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6318         members.
6319         (pending_addrmap, pending_addrmap_obstack)
6320         (pending_addrmap_interesting): Remove.
6321         (scoped_free_pendings, record_block_range, make_blockvector)
6322         (prepare_for_building, reset_symtab_globals, buildsym_init):
6323         Update.
6324
6325 2018-07-20  Tom Tromey  <tom@tromey.com>
6326
6327         * xcoffread.c (process_linenos): Update.
6328         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6329         * mdebugread.c (psymtab_to_symtab_1): Update.
6330         * dwarf2read.c (setup_type_unit_groups)
6331         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6332         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6333         * dbxread.c (process_one_symbol): Update.
6334         * coffread.c (coff_symtab_read, enter_linenos)
6335         (process_coff_symbol): Update.
6336         * buildsym.h (current_subfile): Don't declare.
6337         (get_current_subfile): Declare.
6338         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6339         member.
6340         (start_subfile, free_buildsym_compunit, push_subfile)
6341         (prepare_for_building, start_symtab): Update.
6342         (get_current_subfile): New function.
6343
6344 2018-07-20  Tom Tromey  <tom@tromey.com>
6345
6346         * coffread.c (coff_symtab_read): Update.
6347         * xcoffread.c (read_xcoff_symtab): Update.
6348         * dwarf2read.c (new_symbol): Update.
6349         (read_func_scope, read_lexical_block_scope): Update.
6350         * dbxread.c (process_one_symbol): Update.
6351         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6352         (outermost_context_p): Remove macro.
6353         (outermost_context_p, get_current_context_stack)
6354         (get_context_stack_depth): Declare.
6355         (pop_context): Return struct context_stack.
6356         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6357         member.
6358         (context_stack_size): Remove.
6359         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6360         (prepare_for_building, end_symtab_get_static_block)
6361         (augment_type_symtab, push_context): Update.
6362         (pop_context): Return struct context_stack.
6363         (outermost_context_p, get_current_context_stack)
6364         (get_context_stack_depth): New functions.
6365         (buildsym_init): Update.
6366
6367 2018-07-20  Tom Tromey  <tom@tromey.com>
6368
6369         * rust-exp.y: Now a pure parser.  Update all rules.
6370         (%union): Move earlier.
6371         (current_parser, work_obstack): Remove globals.
6372         (rust_parser, ~rust_parser): Update.
6373         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6374         lex_character, lex_number, lex_string, lex_identifier,
6375         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6376         convert_name, convert_params_to_expression,
6377         convert_ast_to_expression, ast_basic_type, ast_operation,
6378         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6379         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6380         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6381         ast_array_type, ast_slice_type, ast_reference_type,
6382         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6383         (rust_parse): Update.
6384         (rustyyerror, rustyylex): Add parser parameter.
6385         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6386         (rust_lex_stringish_test, rust_lex_test_sequence)
6387         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6388         (rust_lex_test_push_back, rust_lex_tests): Update.
6389
6390 2018-07-19  Pedro Alves  <palves@redhat.com>
6391
6392         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6393         gdb::unique_xmalloc_ptr.
6394         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6395         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6396         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6397         copy-initialization.
6398         * guile/scm-pretty-print.c (ppscm_print_children): Use
6399         gdb::unique_xmalloc_ptr instead of cleanups.
6400         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6401         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6402         gdb::unique_xmalloc_ptr.
6403         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6404         Adjust to use gdb::unique_xmalloc_ptr.
6405         * guile/scm-utils.c (extract_arg): Adjust.
6406         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6407         gdb::unique_xmalloc_ptr instead of a cleanup.
6408
6409 2018-07-19  Tom Tromey  <tom@tromey.com>
6410
6411         * utils.c (do_value_free_to_mark)
6412         (make_cleanup_value_free_to_mark): Remove.
6413         * utils.h (make_cleanup_value_free_to_mark): Remove.
6414
6415 2018-07-19  Pedro Alves  <palves@redhat.com>
6416
6417         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6418         forwarding reference.
6419
6420 2018-07-18  Pedro Alves  <palves@redhat.com>
6421
6422         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6423         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6424         cleanup.
6425
6426 2018-07-18  Pedro Alves  <palves@redhat.com>
6427
6428         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6429         exceptions.
6430         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6431         (gdbscm_wrap): New.
6432         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6433         directly instead of a cleanup.
6434         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6435         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6436         (vlscm_binop_gdbthrow): New, factored out from ...
6437         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6438         (vlscm_rich_compare): Use gdbscm_wrap.
6439         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6440         instead of a cleanup.
6441         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6442         cleanup.
6443         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6444         Use xfree directly instead of a cleanup.
6445         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6446         Adjust to use gdbscm_wrap and scoped_value_mark.
6447         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6448         (gdbscm_value_address, gdbscm_value_dereference)
6449         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6450         scoped_value_mark.
6451         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6452         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6453         scoped_value_mark.
6454         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6455         gdbscm_wrap and scoped_value_mark.
6456         (gdbscm_value_to_string): Use xfree directly instead of a
6457         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6458         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6459         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6460         scoped_value_mark.
6461         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6462         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6463         scoped_value_mark.
6464         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6465         gdbscm_wrap.
6466
6467 2018-07-18  Tom de Vries  <tdevries@suse.de>
6468
6469         * findvar.c (default_read_var_value): Also resolve dynamic type for
6470         LOC_OPTIMIZED_OUT vars.
6471
6472 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6473
6474         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6475         decoding.
6476
6477 2018-07-17  Tom Tromey  <tom@tromey.com>
6478
6479         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6480         (compute_enum_list, pascm_set_param_value_x)
6481         (gdbscm_parameter_value): Update.
6482         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6483         (gdbscm_scm_to_host_string): Update.
6484         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6485         Update.
6486         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6487         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6488         * guile/scm-string.c (gdbscm_scm_to_string): Return
6489         unique_xmalloc_ptr.
6490         (gdbscm_scm_to_host_string): Likewise.
6491
6492 2018-07-17  Tom Tromey  <tom@tromey.com>
6493
6494         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6495         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6496         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6497         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6498         unique_xmalloc_ptr.
6499
6500 2018-07-17  Tom Tromey  <tom@tromey.com>
6501
6502         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6503         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6504         Update.
6505         * guile/scm-cmd.c (cmdscm_function): Update.
6506         * guile/scm-pretty-print.c
6507         (ppscm_print_exception_unless_memory_error): Update.
6508         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6509         Return unique_xmalloc_ptr.
6510
6511 2018-07-17  Tom Tromey  <tom@tromey.com>
6512
6513         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6514         Use string_printf.
6515
6516 2018-07-17  Jim Wilson  <jimw@sifive.com>
6517
6518         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6519         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6520         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6521         unecessary braces after EF_RISCV_RVC test.  Delete call to
6522         set_gdbarch_decr_pc_after_break.
6523
6524         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6525         RISCV_LAST_FP_REGNUM + 1.
6526         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6527
6528 2018-07-17  Tom Tromey  <tom@tromey.com>
6529
6530         * configure.ac: Remove --disable-gdbcli.
6531         * configure: Rebuild.
6532         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6533         (SUBDIR_CLI_CFLAGS): Remove.
6534         (SFILES): Use SUBDIR_CLI_SRCS.
6535         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6536
6537 2018-07-17  Tom Tromey  <tom@tromey.com>
6538
6539         PR gdb/18624:
6540         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6541
6542 2018-07-16  Jim Wilson  <jimw@sifive.com>
6543
6544         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6545
6546 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6547
6548         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6549         variable.
6550         (libunwind_frame_sniffer): Likewise.
6551         (libunwind_frame_prev_register): Likewise.
6552         (libunwind_sigtramp_frame_sniffer): Likewise.
6553         * ia64-tdep.c (ia64_access_reg): Likewise.
6554         (ia64_access_rse_reg): Likewise.
6555         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6556         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6557
6558 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6559
6560         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6561
6562 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6563
6564         * remote-sim.c (gdbsim_target::close,
6565         gdbsim_target::mourn_inferior): Remove unused variables.
6566
6567 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6568
6569         * ia64-tdep.c (ktab_buf): New global.
6570         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6571         (get_kernel_table): Adjust.
6572
6573 2018-07-16  Tom Tromey  <tom@tromey.com>
6574
6575         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6576         * dwarf2read.c (using_directives, new_symbol): Use
6577         outermost_context_p.
6578         * dbxread.c (process_one_symbol): Use outermost_context_p.
6579         * coffread.c (coff_symtab_read): Use outermost_context_p.
6580
6581 2018-07-16  Tom Tromey  <tom@tromey.com>
6582
6583         * dwarf2read.c (using_directives, read_func_scope)
6584         (read_lexical_block_scope): Update.
6585         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6586         * buildsym.h (local_using_directives, global_using_directives):
6587         Don't declare.
6588         (get_local_using_directives, set_local_using_directives)
6589         (get_global_using_directives): Declare.
6590         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6591         m_global_using_directives>: New members.
6592         (finish_block_internal, prepare_for_building)
6593         (reset_symtab_globals, end_symtab_get_static_block)
6594         (push_context): Update.
6595         (get_local_using_directives, set_local_using_directives)
6596         (get_global_using_directives): New functions.
6597         (buildsym_init): Update.
6598
6599 2018-07-16  Tom Tromey  <tom@tromey.com>
6600
6601         * xcoffread.c (xcoff_initial_scan): Don't call
6602         free_pending_blocks.
6603         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6604         * buildsym.h (class scoped_free_pendings): Add constructor.
6605         (free_pending_blocks): Don't declare.
6606         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6607         (free_pending_blocks): Now static.
6608
6609 2018-07-16  Tom Tromey  <tom@tromey.com>
6610
6611         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6612         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6613         member.
6614         (struct subfile_stack): Remove.
6615         (subfile_stack): Remove.
6616         (push_subfile, pop_subfile, buildsym_init): Update.
6617
6618 2018-07-16  Tom Tromey  <tom@tromey.com>
6619
6620         * buildsym.c (push_subfile): Use gdb_assert.
6621         (pop_subfile): Use gdb_assert.
6622
6623 2018-07-16  Tom Tromey  <tom@tromey.com>
6624
6625         * buildsym.h (merge_symbol_lists): Remove.
6626         * buildsym.c (merge_symbol_lists): Remove.
6627
6628 2018-07-16  Tom Tromey  <tom@tromey.com>
6629
6630         * stabsread.c (scan_file_globals): Update comment.
6631         * stabsread.h (scan_file_globals): Move from buildsym.h.
6632         * buildsym.h (scan_file_globals): Move to stabsread.h.
6633
6634 2018-07-16  Tom Tromey  <tom@tromey.com>
6635
6636         * xcoffread.c (xcoff_new_init): Update.
6637         * mipsread.c (mipscoff_new_init): Update.
6638         * mdebugread.c (mdebug_build_psymtabs): Update.
6639         * elfread.c (elf_new_init): Update.
6640         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6641         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6642         * buildsym.h (buildsym_new_init): Don't declare.
6643         * buildsym.c (buildsym_new_init): Remove.
6644
6645 2018-07-16  Tom Tromey  <tom@tromey.com>
6646
6647         * stabsread.h (within_function): Move from buildsym.h.
6648         * stabsread.c (start_stabs): Clear within_function.
6649         * coffread.c (coff_start_symtab): Clear within_function.
6650         * buildsym.h (within_function): Move to stabsread.h.
6651         * buildsym.c (prepare_for_building): Update.
6652
6653 2018-07-16  Tom Tromey  <tom@tromey.com>
6654
6655         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6656         * dwarf2read.c (dwarf2_start_symtab): Don't set
6657         processing_gcc_compilation.
6658         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6659
6660 2018-07-16  Tom Tromey  <tom@tromey.com>
6661
6662         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6663         (next_symbol_text_func): Move from buildsym.h.
6664         * stabsread.c (hashname): Move from buildsym.c.
6665         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6666         (next_symbol_text_func, hashname): Move to stabsread.h.
6667         * buildsym.c: Don't include bcache.h
6668         (hashname): Move to stasbread.c.
6669
6670 2018-07-16  Tom Tromey  <tom@tromey.com>
6671
6672         * buildsym.h (context_stack_size): Don't declare.
6673         * buildsym.c (context_stack_size): New global.
6674
6675 2018-07-16  Tom Tromey  <tom@tromey.com>
6676
6677         * dbxread.c (processing_acc_compilation): New global.
6678         * buildsym.h (processing_acc_compilation): Don't declare.
6679
6680 2018-07-16  Tom Tromey  <tom@tromey.com>
6681
6682         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6683         * dbxread.c (read_ofile_symtab): Update.
6684         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6685         * buildsym.h (last_source_start_addr): Remove.
6686         (set_last_source_start_addr, get_last_source_start_addr):
6687         Declare.
6688         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6689         parameter.
6690         (struct buildsym_compunit) <m_last_source_start_addr>: New
6691         member.
6692         (prepare_for_building): Remove start_addr parameter.
6693         (start_symtab, restart_symtab, end_symtab_get_static_block)
6694         (end_symtab_with_blockvector): Update.
6695         (set_last_source_start_addr, get_last_source_start_addr): New
6696         functions.
6697
6698 2018-07-16  Tom Tromey  <tom@tromey.com>
6699
6700         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6701         member.
6702         (have_line_numbers): Remove.
6703         (record_line, prepare_for_building, end_symtab_get_static_block)
6704         (augment_type_symtab): Update.
6705
6706 2018-07-16  Tom Tromey  <tom@tromey.com>
6707
6708         * buildsym.c (~buildsym_compunit): Free the macro table.
6709         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6710         methods.
6711         <m_pending_macros>: New member.
6712         (pending_macros): Remove.
6713         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6714         (reset_symtab_globals, end_symtab_get_static_block)
6715         (end_symtab_with_blockvector, augment_type_symtab)
6716         (buildsym_init): Update.
6717
6718 2018-07-16  Tom Tromey  <tom@tromey.com>
6719
6720         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6721         parameter.
6722         (buildsym_compunit::set_last_source_file): New method.
6723         <m_last_source_file>: New member.
6724         (prepare_for_building): Remove "name" parameter.
6725         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6726         (last_source_file): Remove.
6727         (set_last_source_file, get_last_source_file): Update.
6728
6729 2018-07-16  Tom Tromey  <tom@tromey.com>
6730
6731         * buildsym.c (prepare_for_building): Add assert.
6732
6733 2018-07-16  Tom Tromey  <tom@tromey.com>
6734
6735         * buildsym.c (~buildsym_compunit): Update.
6736         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6737         (start_subfile, patch_subfile_names)
6738         (end_symtab_with_blockvector): Update.
6739
6740 2018-07-16  Tom Tromey  <tom@tromey.com>
6741
6742         * buildsym.c (struct buildsym_compunit): Add constructor,
6743         destructor, initializers.
6744         (start_buildsym_compunit): Remove.
6745         (free_buildsym_compunit): Use "delete".
6746         (start_symtab, restart_symtab): Use "new".
6747
6748 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6749
6750         * symfile.c (set_objfile_default_section_offset): Remove struct
6751         keyword.
6752
6753 2018-07-14  Stafford Horne  <shorne@gmail.com>
6754
6755         * (Responsible Maintainers): Add myself as or1k maintainer.
6756
6757 2018-07-13  Tom Tromey  <tom@tromey.com>
6758
6759         * symfile.c (set_objfile_default_section_offset): Use extra braces
6760         around initializer.
6761
6762 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6763
6764         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6765         non-branching basr.
6766
6767 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6768
6769         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6770         unittests/cli-utils-selftests.c
6771         * unittests/cli-utils-selftests.c: New file.
6772
6773 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6774
6775         * NEWS: Mention new commands. Mention change to 'thread apply'.
6776
6777 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6778
6779         * thread.c (thr_try_catch_cmd): New function.
6780         (thread_apply_all_command): Handle qcs flags.
6781         (thread_apply_command): Handle qcs flags.
6782         (taas_command): New function.
6783         (tfaas_command): New function.
6784         (_initialize_thread): Update to setup the new commands 'taas
6785         and 'tfaas'. Change doc string for 'thread apply'.
6786
6787 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6788
6789         * stack.c: (trailing_outermost_frame): New function, mostly
6790         extracted from backtrace_command_1.
6791         (leading_innermost_frame): New function.
6792         (backtrace_command_1): Update to call trailing_outermost_frame.
6793         (frame_apply_command_count): New function.
6794         (frame_apply_level_command): New function.
6795         (frame_apply_all_command): New function.
6796         (frame_apply_command): New function.
6797         (faas_command): New function.
6798         (frame_cmd_list): New variable.
6799         (_initialize_stack): Update to setup the new commands 'frame apply'
6800         and 'faas'.
6801
6802 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6803
6804         * cli-utils.c (number_or_range_parser::get_number): Only handle
6805         numbers or convenience var as numbers.
6806         (parse_flags): New function.
6807         (parse_flags_qcs): New function.
6808         (number_or_range_parser::finished): Ensure parsing end is detected
6809         before end of string.
6810         * cli-utils.h (parse_flags): New function.
6811         (parse_flags_qcs): New function.
6812         (number_or_range_parser): Remove m_finished bool.
6813         (number_or_range_parser::skip_range): Set m_in_range to false.
6814
6815 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6816
6817         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6818         on Windows.
6819
6820 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6821             Jan Kratochvil  <jan.kratochvil@redhat.com>
6822             Paul Fertser  <fercerpav@gmail.com>
6823             Tsutomu Seki  <sekiriki@gmail.com>
6824             Pedro Alves  <palves@redhat.com>
6825
6826         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6827         'unittests/parse-connection-spec-selftests.c'.
6828         (COMMON_SFILES): Add 'common/netstuff.c'.
6829         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6830         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6831         * common/netstuff.c: New file.
6832         * common/netstuff.h: New file.
6833         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6834         (wait_for_connect): Update comment.  New parameter
6835         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6836         Use 'sock' directly instead of 'scb->fd'.
6837         (try_connect): New function, with code from 'net_open'.
6838         (net_open): Rewrite main loop to deal with multiple
6839         sockets/addresses.  Handle IPv6-style hostnames; implement
6840         support for IPv6 connections.
6841         * unittests/parse-connection-spec-selftests.c: New file.
6842
6843 2018-07-11  Pedro Alves  <palves@redhat.com>
6844
6845         PR gdb/23377
6846         * remote.c (remote_target::remote_detach_pid): Call
6847         set_current_process.
6848
6849 2018-07-11  Pedro Alves  <palves@redhat.com>
6850
6851         * h8300-tdep.c (h8300_gdbarch_init): Remove
6852         set_gdbarch_ecoff_reg_to_regnum calls.
6853
6854 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6855
6856         PR c++/23373
6857         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6858         offsets/sizes for static members of a class/struct.
6859
6860 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6861
6862         * target-descriptions.c (tdesc_register_bitsize): Rename.
6863         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6864         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6865         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6866
6867 2018-07-10  Tom Tromey  <tom@tromey.com>
6868
6869         * breakpoint.c (moribund_locations): Now static and a
6870         std::vector.
6871         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6872         (build_bpstat_chain, update_global_location_list)
6873         (breakpoint_retire_moribund): Update.
6874         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6875         VEC.
6876
6877 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6878
6879         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6880         (riscv_register_reggroup_p): Use new function, remove unneeded
6881         parenthesis.
6882         (riscv_push_dummy_call): Extend assert to compare against xlen or
6883         flen based on register type.
6884
6885 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6886
6887         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6888
6889 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6890
6891         * remote.c (show_hardware_watchpoint_limit): New function.
6892         (show_hardware_watchpoint_length_limit): New function.
6893         (show_hardware_breakpoint_limit): New function.
6894         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6895         where appropriate, update help text.
6896
6897 2018-07-09  Tom Tromey  <tom@tromey.com>
6898
6899         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6900         (CLIBS): Don't mention NAT_CLIBS.
6901
6902 2018-07-09  Tom Tromey  <tom@tromey.com>
6903
6904         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6905         (LIBGDB_OBS, clean mostlyclean): Update.
6906         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6907
6908 2018-07-09  Tom Tromey  <tom@tromey.com>
6909
6910         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6911         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6912         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6913
6914 2018-07-09  Tom Tromey  <tom@tromey.com>
6915
6916         * Makefile.in (ALLDEPFILES): Remove exec.c.
6917         (COMMON_OBS): Remove exec.o.
6918         (COMMON_SFILES): Add exec.c.
6919
6920 2018-07-09  Tom Tromey  <tom@tromey.com>
6921
6922         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6923
6924 2018-07-09  Tom Tromey  <tom@tromey.com>
6925
6926         * Makefile.in (clean mostlyclean): Remove stamp-version.
6927         (version.c): Depend on stamp-version.
6928         (stamp-version): New rule, from version.c rule.
6929
6930 2018-07-09  Tom Tromey  <tom@tromey.com>
6931
6932         * Makefile.in (init.c): Depend on stamp-init.
6933         (stamp-init): New rule, from init.c rule.
6934         (clean mostlyclean): Remove stamp-init.
6935
6936 2018-07-09  Tom Tromey  <tom@tromey.com>
6937
6938         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6939         SUBDIR_GCC_COMPILE_SRCS.
6940
6941 2018-07-09  Tom Tromey  <tom@tromey.com>
6942
6943         * Makefile.in (init.c): Remove some unused sed rules.
6944
6945 2018-07-09  Tom Tromey  <tom@tromey.com>
6946
6947         * Makefile.in (TSOBS): Remove.
6948         (INIT_FILES): Update.
6949         (LIBGDB_OBS): Update.
6950         (COMMON_SFILES): Add inflow.c.
6951         (SFILES): Remove inflow.c.
6952
6953 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6954
6955         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6956
6957 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6958
6959         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6960         get_saveloc_name, is_signal_frame_name, step_name,
6961         init_remote_name, create_addr_space_name,
6962         destroy_addr_space_name, search_unwind_table_name,
6963         find_dyn_list_name): Constify.
6964
6965 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6966
6967         * darwin-nat.c (darwin_pthread_kill): New function.
6968         (darwin_resume_thread): Use darwin_pthread_kill.
6969
6970 2018-07-05  Tom de Vries  <tdevries@suse.de>
6971
6972         * macroexp.c (macro_buffer) <operator=>: New member function.
6973
6974 2018-07-04  Tom Tromey  <tom@tromey.com>
6975
6976         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6977
6978 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6979
6980         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6981         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6982         * maint.c: Likewise.
6983         * top.c: Likewise.
6984
6985 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6986
6987         * NEWS: Create a new section for the next release branch.
6988         Rename the section of the current branch, now that it has
6989         been cut.
6990
6991 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6992
6993         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6994         * version.in: Bump version to 8.2.50.DATE-git.
6995
6996 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6997             Pedro Alves  <palves@redhat.com>
6998
6999         * linux-nat.c (linux_init_ptrace): Rename to ...
7000         (linux_init_ptrace_procfs): ... this.  Call
7001         linux_proc_init_warnings.
7002         (linux_nat_target::post_attach)
7003         (linux_nat_target::post_startup_inferior): Adjust.
7004         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7005         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7006
7007 2018-07-04  Tom de Vries  <tdevries@suse.de>
7008
7009         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7010         check ...
7011         (read_comp_unit_head): ... here.
7012
7013 2018-07-03  Tom Tromey  <tom@tromey.com>
7014
7015         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7016         (stop_tracing, tstatus_command)
7017         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7018         (print_one_static_tracepoint_marker): Update.
7019         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7020         std::vector.
7021         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7022         VEC.
7023         (all_tracepoints, static_tracepoints_here): Return std::vector.
7024
7025 2018-07-03  Tom Tromey  <tom@tromey.com>
7026
7027         * common/ptid.c (ptid_equal): Remove.
7028         * common/ptid.h (ptid_equal): Don't declare.
7029         * ada-tasks.c: Update.
7030         * breakpoint.c: Update.
7031         * common/agent.c: Update.
7032         * corelow.c: Update.
7033         * darwin-nat-info.c: Update.
7034         * darwin-nat.c: Update.
7035         * dcache.c: Update.
7036         * dtrace-probe.c: Update.
7037         * dummy-frame.c: Update.
7038         * fbsd-nat.c: Update.
7039         * frame.c: Update.
7040         * gdbthread.h: Update.
7041         * gnu-nat.c: Update.
7042         * go32-nat.c: Update.
7043         * inf-loop.c: Update.
7044         * inf-ptrace.c: Update.
7045         * infcall.c: Update.
7046         * infcmd.c: Update.
7047         * inflow.c: Update.
7048         * infrun.c: Update.
7049         * linux-fork.c: Update.
7050         * linux-nat.c: Update.
7051         * linux-thread-db.c: Update.
7052         * mi/mi-cmd-var.c: Update.
7053         * mi/mi-interp.c: Update.
7054         * mi/mi-main.c: Update.
7055         * nto-procfs.c: Update.
7056         * ppc-linux-tdep.c: Update.
7057         * procfs.c: Update.
7058         * python/py-inferior.c: Update.
7059         * python/py-record-btrace.c: Update.
7060         * python/py-record.c: Update.
7061         * ravenscar-thread.c: Update.
7062         * regcache.c: Update.
7063         * remote-sim.c: Update.
7064         * remote.c: Update.
7065         * sol-thread.c: Update.
7066         * solib.c: Update.
7067         * target.c: Update.
7068         * tui/tui-stack.c: Update.
7069         * varobj.c: Update.
7070         * windows-nat.c: Update.
7071         * windows-tdep.c: Update.
7072
7073 2018-07-03  Tom Tromey  <tom@tromey.com>
7074
7075         * common/ptid.c (ptid_match): Remove.
7076         * common/ptid.h (ptid_match): Don't declare.
7077         * fbsd-nat.c: Update.
7078         * infcmd.c: Update.
7079         * infrun.c: Update.
7080         * linux-nat.c: Update.
7081         * record-btrace.c: Update.
7082         * regcache.c: Update.
7083         * remote.c: Update.
7084
7085 2018-07-03  Tom Tromey  <tom@tromey.com>
7086
7087         * common/ptid.c (ptid_tid_p): Remove.
7088         * common/ptid.h (ptid_tid_p): Don't declare.
7089         * sol-thread.c: Update.
7090
7091 2018-07-03  Tom Tromey  <tom@tromey.com>
7092
7093         * common/ptid.c (ptid_lwp_p): Remove.
7094         * common/ptid.h (ptid_lwp_p): Don't declare.
7095         * fbsd-nat.c: Update.
7096         * linux-nat.c: Update.
7097         * nat/linux-procfs.c: Update.
7098         * nat/x86-linux-dregs.c: Update.
7099         * sol-thread.c: Update.
7100
7101 2018-07-03  Tom Tromey  <tom@tromey.com>
7102
7103         * common/ptid.c (ptid_is_pid): Remove.
7104         * common/ptid.h (ptid_is_pid): Don't declare.
7105         * infrun.c: Update.
7106         * linux-nat.c: Update.
7107         * mi/mi-interp.c: Update.
7108         * remote.c: Update.
7109         * thread.c: Update.
7110
7111 2018-07-03  Tom Tromey  <tom@tromey.com>
7112
7113         * common/ptid.c (ptid_get_tid): Remove.
7114         * common/ptid.h (ptid_get_tid): Don't declare.
7115         * ada-tasks.c: Update.
7116         * aix-thread.c: Update.
7117         * bsd-uthread.c: Update.
7118         * darwin-nat.c: Update.
7119         * fbsd-nat.c: Update.
7120         * i386-darwin-nat.c: Update.
7121         * infrun.c: Update.
7122         * linux-tdep.c: Update.
7123         * nto-procfs.c: Update.
7124         * ppc-ravenscar-thread.c: Update.
7125         * python/py-infthread.c: Update.
7126         * ravenscar-thread.c: Update.
7127         * sol-thread.c: Update.
7128         * sparc-ravenscar-thread.c: Update.
7129         * windows-nat.c: Update.
7130
7131 2018-07-03  Tom Tromey  <tom@tromey.com>
7132
7133         * common/ptid.c (ptid_get_lwp): Remove.
7134         * common/ptid.h (ptid_get_lwp): Don't declare.
7135         * aarch64-linux-nat.c: Update.
7136         * ada-tasks.c: Update.
7137         * aix-thread.c: Update.
7138         * amd64-linux-nat.c: Update.
7139         * arm-linux-nat.c: Update.
7140         * corelow.c: Update.
7141         * fbsd-nat.c: Update.
7142         * fbsd-tdep.c: Update.
7143         * gnu-nat.c: Update.
7144         * i386-cygwin-tdep.c: Update.
7145         * i386-gnu-nat.c: Update.
7146         * i386-linux-nat.c: Update.
7147         * ia64-linux-nat.c: Update.
7148         * inf-ptrace.c: Update.
7149         * infrun.c: Update.
7150         * linux-fork.c: Update.
7151         * linux-nat.c: Update.
7152         * linux-tdep.c: Update.
7153         * linux-thread-db.c: Update.
7154         * mips-linux-nat.c: Update.
7155         * nat/aarch64-linux-hw-point.c: Update.
7156         * nat/aarch64-linux.c: Update.
7157         * nat/linux-btrace.c: Update.
7158         * nat/linux-osdata.c: Update.
7159         * nat/linux-procfs.c: Update.
7160         * nat/x86-linux-dregs.c: Update.
7161         * obsd-nat.c: Update.
7162         * ppc-fbsd-nat.c: Update.
7163         * ppc-linux-nat.c: Update.
7164         * procfs.c: Update.
7165         * python/py-infthread.c: Update.
7166         * ravenscar-thread.c: Update.
7167         * remote.c: Update.
7168         * s390-linux-nat.c: Update.
7169         * sol-thread.c: Update.
7170         * sol2-tdep.c: Update.
7171         * spu-linux-nat.c: Update.
7172         * x86-linux-nat.c: Update.
7173         * xtensa-linux-nat.c: Update.
7174
7175 2018-07-03  Tom Tromey  <tom@tromey.com>
7176
7177         * common/ptid.c (ptid_get_pid): Remove.
7178         * common/ptid.h (ptid_get_pid): Don't declare.
7179         * aarch64-linux-nat.c: Update.
7180         * ada-lang.c: Update.
7181         * aix-thread.c: Update.
7182         * alpha-bsd-nat.c: Update.
7183         * amd64-fbsd-nat.c: Update.
7184         * amd64-linux-nat.c: Update.
7185         * arm-linux-nat.c: Update.
7186         * arm-nbsd-nat.c: Update.
7187         * auxv.c: Update.
7188         * break-catch-syscall.c: Update.
7189         * breakpoint.c: Update.
7190         * bsd-uthread.c: Update.
7191         * corelow.c: Update.
7192         * ctf.c: Update.
7193         * darwin-nat.c: Update.
7194         * fbsd-nat.c: Update.
7195         * fbsd-tdep.c: Update.
7196         * gcore.c: Update.
7197         * gnu-nat.c: Update.
7198         * hppa-nbsd-nat.c: Update.
7199         * hppa-obsd-nat.c: Update.
7200         * i386-fbsd-nat.c: Update.
7201         * ia64-linux-nat.c: Update.
7202         * inf-ptrace.c: Update.
7203         * infcmd.c: Update.
7204         * inferior.c: Update.
7205         * inferior.h: Update.
7206         * inflow.c: Update.
7207         * infrun.c: Update.
7208         * linux-fork.c: Update.
7209         * linux-nat.c: Update.
7210         * linux-tdep.c: Update.
7211         * linux-thread-db.c: Update.
7212         * m68k-bsd-nat.c: Update.
7213         * mi/mi-interp.c: Update.
7214         * mi/mi-main.c: Update.
7215         * mips-linux-nat.c: Update.
7216         * mips-nbsd-nat.c: Update.
7217         * mips64-obsd-nat.c: Update.
7218         * nat/aarch64-linux-hw-point.c: Update.
7219         * nat/aarch64-linux.c: Update.
7220         * nat/linux-btrace.c: Update.
7221         * nat/linux-osdata.c: Update.
7222         * nat/linux-procfs.c: Update.
7223         * nat/x86-linux-dregs.c: Update.
7224         * nto-procfs.c: Update.
7225         * obsd-nat.c: Update.
7226         * ppc-linux-nat.c: Update.
7227         * ppc-nbsd-nat.c: Update.
7228         * ppc-obsd-nat.c: Update.
7229         * proc-service.c: Update.
7230         * procfs.c: Update.
7231         * python/py-inferior.c: Update.
7232         * python/py-infthread.c: Update.
7233         * ravenscar-thread.c: Update.
7234         * record.c: Update.
7235         * remote-sim.c: Update.
7236         * remote.c: Update.
7237         * rs6000-nat.c: Update.
7238         * s390-linux-nat.c: Update.
7239         * sh-nbsd-nat.c: Update.
7240         * sol-thread.c: Update.
7241         * sparc-nat.c: Update.
7242         * sparc64-tdep.c: Update.
7243         * spu-linux-nat.c: Update.
7244         * spu-tdep.c: Update.
7245         * target-debug.h: Update.
7246         * target.c: Update.
7247         * thread.c: Update.
7248         * tid-parse.c: Update.
7249         * tracefile-tfile.c: Update.
7250         * vax-bsd-nat.c: Update.
7251         * windows-nat.c: Update.
7252         * x86-linux-nat.c: Update.
7253         * x86-nat.c: Update.
7254
7255 2018-07-03  Tom Tromey  <tom@tromey.com>
7256
7257         * common/ptid.c (pid_to_ptid): Remove.
7258         * common/ptid.h (pid_to_ptid): Don't declare.
7259         * aix-thread.c: Update.
7260         * arm-linux-nat.c: Update.
7261         * common/ptid.c: Update.
7262         * common/ptid.h: Update.
7263         * corelow.c: Update.
7264         * ctf.c: Update.
7265         * darwin-nat.c: Update.
7266         * fbsd-nat.c: Update.
7267         * fork-child.c: Update.
7268         * gnu-nat.c: Update.
7269         * go32-nat.c: Update.
7270         * inf-ptrace.c: Update.
7271         * infcmd.c: Update.
7272         * inferior.c: Update.
7273         * infrun.c: Update.
7274         * linux-fork.c: Update.
7275         * linux-nat.c: Update.
7276         * nat/aarch64-linux-hw-point.c: Update.
7277         * nat/fork-inferior.c: Update.
7278         * nat/x86-linux-dregs.c: Update.
7279         * nto-procfs.c: Update.
7280         * obsd-nat.c: Update.
7281         * procfs.c: Update.
7282         * progspace.c: Update.
7283         * remote.c: Update.
7284         * rs6000-nat.c: Update.
7285         * s390-linux-nat.c: Update.
7286         * sol-thread.c: Update.
7287         * spu-linux-nat.c: Update.
7288         * target.c: Update.
7289         * top.c: Update.
7290         * tracefile-tfile.c: Update.
7291         * windows-nat.c: Update.
7292
7293 2018-07-03  Tom Tromey  <tom@tromey.com>
7294
7295         * common/ptid.h (ptid_build): Don't declare.
7296         * common/ptid.c (ptid_build): Remove.
7297         * aix-thread.c: Update.
7298         * bsd-kvm.c: Update.
7299         * bsd-uthread.c: Update.
7300         * common/agent.c: Update.
7301         * common/ptid.c: Update.
7302         * common/ptid.h: Update.
7303         * corelow.c: Update.
7304         * darwin-nat.c: Update.
7305         * fbsd-nat.c: Update.
7306         * gnu-nat.c: Update.
7307         * linux-fork.c: Update.
7308         * linux-nat.c: Update.
7309         * linux-thread-db.c: Update.
7310         * nat/linux-osdata.c: Update.
7311         * nat/linux-procfs.c: Update.
7312         * nto-procfs.c: Update.
7313         * obsd-nat.c: Update.
7314         * proc-service.c: Update.
7315         * procfs.c: Update.
7316         * ravenscar-thread.c: Update.
7317         * remote-sim.c: Update.
7318         * remote.c: Update.
7319         * sol-thread.c: Update.
7320         * target.c: Update.
7321         * windows-nat.c: Update.
7322
7323 2018-07-03  Tom Tromey  <tom@tromey.com>
7324
7325         * infrun.c (follow_exec): Use exit_inferior_silent.
7326         * inferior.c (exit_inferior_num_silent): Remove.
7327         * inferior.h (exit_inferior_num_silent): Don't declare.
7328
7329 2018-07-03  Tom Tromey  <tom@tromey.com>
7330
7331         PR cli/23340:
7332         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7333         inferior_ptid on error.
7334
7335 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7336             Simon Marchi  <simon.marchi@polymtl.ca>
7337
7338         PR tdep/8282
7339         * disasm.h (gdb_disassembler): Add
7340         `m_disassembler_options_holder'. member
7341         * disasm.c (get_all_disassembler_options): New function.
7342         (gdb_disassembler::gdb_disassembler): Use it.
7343         (gdb_buffered_insn_length_init_dis): Likewise.
7344         (gdb_buffered_insn_length): Adjust accordingly.
7345         (set_disassembler_options): Handle options with arguments.
7346         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7347         line if showing options with descriptions.
7348         (disassembler_options_completer): Adapt to using the
7349         `disasm_options_and_args_t' structure.
7350         * mips-tdep.c (mips_disassembler_options): New variable.
7351         (mips_disassembler_options_o32): Likewise.
7352         (mips_disassembler_options_n32): Likewise.
7353         (mips_disassembler_options_n64): Likewise.
7354         (gdb_print_insn_mips): Don't set `disassembler_options'.
7355         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7356         functions.
7357         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7358         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7359         `gdbarch_disassembler_options_implicit' and
7360         `gdbarch_valid_disassembler_options'.
7361         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7362         `disasm_options_and_args_t' structure.
7363         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7364         method.
7365         (valid_disassembler_options): Switch from `disasm_options_t' to
7366         the `disasm_options_and_args_t' structure.
7367         * NEWS: Document `set disassembler-options' support for the MIPS
7368         target.
7369         * gdbarch.h: Regenerate.
7370         * gdbarch.c: Regenerate.
7371
7372 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7373
7374         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7375
7376 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7377
7378         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7379         parameter in call to amd64_target_description.
7380         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7381         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7382         (amd64fbsd_init_abi): Likewise.
7383         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7384         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7385         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7386         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7387
7388 2018-06-29  Pedro Alves  <palves@redhat.com>
7389
7390         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7391         "segments" parameter.
7392         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7393         (_initialize_amd64_tdep): Update call to
7394         amd64_create_target_description.
7395         (amd64_target_description): Add "segments" parameter.  Adjust
7396         the implementation to use it.
7397         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7398         call to amd64_create_target_description.
7399         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7400         * gdb/arch/amd64.h (amd64_create_target_description): Add
7401         "segments" register.
7402         * gdb/arch/amd64.c (amd64_create_target_description): Add
7403         "segments" parameter.  Call create_feature_i386_64bit_segments
7404         only if SEGMENTS is true.
7405         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7406         call to amd64_create_target_description.
7407
7408 2018-06-29  Pedro Alves  <palves@redhat.com>
7409
7410         * thread.c (thread_target_id_str): New, factored out from ...
7411         (print_thread_info_1): ... here.  Use it to compute the max
7412         "Target Id" column width.
7413
7414 2018-06-29  Pedro Alves  <palves@redhat.com>
7415
7416         * remote.c (remote_target::extra_thread_info): Delete
7417         'display_buf' and 'n' locals.  from the cache, regardless of
7418         packet mechanims is in use.  Use cache for qThreadExtra and qP
7419         methods too.
7420
7421 2018-06-29  Pedro Alves  <palves@redhat.com>
7422
7423         * blockframe.c (find_pc_sect_containing_function): New function.
7424         * breakpoint.c (print_breakpoint_location): Don't call
7425         find_pc_sect_function.
7426         * linespec.c (create_sals_line_offset): Record the location's
7427         symbol in the sal.
7428         * linespec.c (convert_address_location_to_sals): Fill in sal's
7429         symbol with find_pc_sect_containing_function.
7430         * symtab.c (find_function_start_sal): Rename to ...
7431         (find_function_start_sal_1): ... this.
7432         (find_function_start_sal): Reimplement as wrapper around
7433         find_function_start_sal_1, and use
7434         find_pc_sect_containing_function to fill in the sal's symbol.
7435         (find_function_start_sal(symbol*, bool)): Adjust.
7436         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7437         comments.
7438         (find_pc_sect_containing_function): Declare.
7439
7440 2018-06-29  Pedro Alves  <palves@redhat.com>
7441
7442         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7443         true if the the location has no symbol.
7444
7445 2018-06-28  Tom Tromey  <tom@tromey.com>
7446
7447         * NEWS: Mention --enable-codesign.
7448         * silent-rules.mk (ECHO_SIGN): New variable.
7449         * configure.ac: Add --enable-codesign.
7450         * configure: Rebuild.
7451         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7452         (gdb$(EXEEXT)): Optionally invoke codesign.
7453
7454 2018-06-28  Pedro Alves  <palves@redhat.com>
7455
7456         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7457         comments.
7458         (switch_to_thread_no_regs): Adjust comment.
7459         * infcmd.c (stop_pc): Delete.
7460         (post_create_inferior, info_program_command): Replace references
7461         to stop_pc with references to thread_info->suspend.stop_pc.
7462         * inferior.h (stop_pc): Delete declaration.
7463         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7464         (handle_inferior_event_1, handle_signal_stop)
7465         (process_event_stop_test, keep_going_stepped_thread)
7466         (handle_step_into_function, handle_step_into_function_backward)
7467         (print_stop_location): Replace references to stop_pc with
7468         references to thread_info->suspend.stop_pc.
7469         (struct infcall_suspend_state) <stop_pc>: Delete field.
7470         (save_infcall_suspend_state, restore_infcall_suspend_state):
7471         Remove references to inf_stat->stop_pc.
7472         * linux-fork.c (fork_load_infrun_state): Likewise.
7473         * record-btrace.c (record_btrace_set_replay): Likewise.
7474         * record-full.c (record_full_goto_entry): Likewise.
7475         * remote.c (print_one_stopped_thread): Likewise.
7476         * target.c (target_resume): Extend comment.
7477         * thread.c (set_executing_thread): New.
7478         (set_executing): Use it.
7479         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7480         Remove references to stop_pc.
7481
7482 2018-06-28  Pedro Alves  <palves@redhat.com>
7483
7484         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7485         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7486
7487 2018-06-28  Tom Tromey  <tom@tromey.com>
7488
7489         * coffread.c (coff_symfile_finish): Update.
7490         * xcoffread.c (xcoff_symfile_finish): Update.
7491         * elfread.c (elf_symfile_finish): Update.
7492         * symfile.h (dwarf2_free_objfile): Don't declare.
7493         * dwarf2read.c (_initialize_dwarf2_read): Use
7494         register_objfile_data_with_cleanup.
7495         (dwarf2_free_objfile): Now static.  Change signature.
7496
7497 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7498
7499         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7500         option "-o" to add-symbol-file-load to add an offset to each
7501         section's load address.
7502         * symfile.c (set_objfile_default_section_offset): New function.
7503
7504 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7505
7506         * symfile.c (add_symbol_file_command): Make sure that sections
7507         with the same name are sorted in the same order.
7508
7509 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7510
7511         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7512         require the second argument.  If omitted, load sections at the
7513         addresses specified in the file.
7514
7515 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7516
7517         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7518         (_initialize_symfile): Add option "-o" to symbol-file to add an
7519         offset to each section of the symbol file.
7520
7521 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7522
7523         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7524
7525 2018-06-27  Tom Tromey  <tom@tromey.com>
7526
7527         * stack.c (_initialize_stack): Update "func" help text.
7528
7529 2018-06-27  Tom Tromey  <tom@tromey.com>
7530
7531         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7532         std::vector.
7533         (unwind_infopy_str, pyuw_create_unwind_info)
7534         (unwind_infopy_add_saved_register, pyuw_sniffer)
7535         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7536         Update.
7537         (struct saved_reg): Add constructor.
7538         <value>: Now a gdbpy_ref<>.
7539
7540 2018-06-27  Tom Tromey  <tom@tromey.com>
7541
7542         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7543
7544 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7545
7546         * gdb-gdb.py.in: Format using autopep8.
7547
7548 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7549
7550         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7551         (type_lookup_function): Recognize CORE_ADDR values.
7552
7553 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7554
7555         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7556         print tag_name.
7557
7558 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7559
7560         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7561         <__lt__>: Add.
7562
7563 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7564
7565         * gdb-gdb.py: Move to...
7566         * gdb-gdb.py.in: ... here.
7567         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7568         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7569         dependencies.
7570         (distclean): Remove gdb-gdb.py when cleaning.
7571         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7572         * configure: Re-generate.
7573
7574 2018-06-27  Pedro Alves  <palves@redhat.com>
7575
7576         * proc-service.c (get_ps_regcache): New.
7577         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7578         (ps_lsetfpregs): Use it.
7579
7580 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7581
7582         PR gdb/21695
7583         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7584         declaration.
7585         (dwarf_decode_lines_1): Adjust.
7586
7587 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7588
7589         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7590         override.
7591         <info_proc>: Likewise.
7592
7593 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7594
7595         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7596         to windows_fetch_one_register, and only handle the case of
7597         fetching one register.  Move the code that reloads the context
7598         and iterates over all registers if R is negative to...
7599         (windows_nat_target::fetch_registers): ... here.
7600         (do_windows_store_inferior_registers): Rename to
7601         windows_store_one_register, and only handle the case of storing
7602         one register.  Move the code that handles the case where r is
7603         negative to...
7604         (windows_nat_target::store_registers) ... here.
7605
7606 2018-06-26  Tom Tromey  <tom@tromey.com>
7607
7608         PR rust/22574:
7609         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7610         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7611         Update.
7612         (rust_internal_print_type): Add podata parameter.
7613         (rust_print_type): Update.
7614
7615 2018-06-26  Tom Tromey  <tom@tromey.com>
7616
7617         * typeprint.h (struct print_offset_data) <update, finish,
7618         maybe_print_hole>: New methods.
7619         <indentation>: New constant.
7620         * typeprint.c (print_offset_data::indentation): Define.
7621         (print_offset_data::maybe_print_hole, print_offset_data::update)
7622         (print_offset_data::finish): Move from c-typeprint.c and rename.
7623         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7624         (print_spaces_filtered_with_print_options): Update.
7625         (c_print_type_union_field_offset, maybe_print_hole)
7626         (c_print_type_struct_field_offset): Move to typeprint.c and
7627         rename.
7628         (c_type_print_base_struct_union): Update.
7629
7630 2018-06-25  Pedro Alves  <palves@redhat.com>
7631
7632         * gdbthread.h (thread_info_ref, delete_thread)
7633         (delete_thread_silent, first_thread_of_inferior)
7634         (any_thread_of_inferior, switch_to_thread)
7635         (enable_thread_stack_temporaries)
7636         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7637         (get_last_thread_stack_temporary)
7638         (value_in_thread_stack_temporaries, can_access_registers_thread):
7639         Spell out "struct thread_info" instead of just "thread_info".
7640         * inferior.h (notice_new_inferior): Likewise.
7641
7642 2018-06-25  Pedro Alves  <palves@redhat.com>
7643
7644         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7645         pass thread_info pointer to delete_thread.
7646         (windows_nat_target::detach): Pass inferior pointer to
7647         detach_inferior.
7648         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7649         delete_thread.
7650         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7651         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7652         and pass a thread_info pointer to delete_thread.
7653         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7654         pass thread_info pointer to delete_thread.
7655         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7656         delete_thread_silent call.
7657         * procfs.c (procfs_target::detach): Pass inferior pointer to
7658         detach_inferior.
7659         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7660         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7661         delete_thread_silent call.
7662         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7663         pass thread_info pointer to delete_thread.
7664         (windows_nat_target::detach): Pass inferior pointer to
7665         delete_inferior.
7666
7667 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7668
7669         * regcache.c (readable_regcache::read_part): Fix asserts.
7670         (reg_buffer::raw_collect_part): New function.
7671         (regcache::write_part): Fix asserts.
7672         (reg_buffer::raw_supply_part): New function.
7673         (regcache::transfer_regset_register): New helper function.
7674         (regcache::transfer_regset): Call new functions.
7675         (regcache_supply_regset): Use gdb_byte*.
7676         (regcache::supply_regset): Likewise.
7677         (regcache_collect_regset): Likewise.
7678         (regcache::collect_regset): Likewise.
7679         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7680         (reg_buffer::raw_supply_part): Likewise.
7681         (regcache::transfer_regset_register): Likewise.
7682         (regcache::transfer_regset): Use gdb_byte*.
7683
7684 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7685
7686         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7687
7688 2018-06-21  Pedro Alves  <palves@redhat.com>
7689
7690         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7691         instead of a ptid_t.  All callers adjusted.
7692         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7693         adjusted.
7694         (print_ada_task_info, display_current_task_id, task_command_1):
7695         Adjust.
7696         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7697         inferior_thread.
7698         (breakpoint_kind): Adjust.
7699         (remove_breakpoints_pid): Rename to ...
7700         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7701         pointer.  All callers adjusted.
7702         (bpstat_clear_actions): Use inferior_thread.
7703         (get_bpstat_thread): New.
7704         (bpstat_do_actions): Use it.
7705         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7706         to take a thread_info pointer.  All callers adjusted.
7707         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7708         (breakpoint_re_set_thread): Use inferior_thread.
7709         * breakpoint.h (struct inferior): Forward declare.
7710         (bpstat_stop_status): Update.
7711         (remove_breakpoints_pid): Delete.
7712         (remove_breakpoints_inf): New.
7713         * bsd-uthread.c (bsd_uthread_target::wait)
7714         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7715         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7716         (maint_btrace_packet_history_cmd)
7717         (maint_btrace_clear_packet_history_cmd): Adjust.
7718         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7719         inferior_thread.
7720         * cli/cli-interp.c: Include "inferior.h".
7721         * common/refcounted-object.h (struct
7722         refcounted_object_ref_policy): New.
7723         * compile/compile-object-load.c: Include gdbthread.h.
7724         (store_regs): Use inferior_thread.
7725         * corelow.c (core_target::close): Use current_inferior.
7726         (core_target_open): Adjust to use first_thread_of_inferior and use
7727         the current inferior.
7728         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7729         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7730         <thread>: ... this new field.  All references adjusted.
7731         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7732         Take a thread_info pointer instead of a ptid_t.
7733         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7734         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7735         thread_info pointer instead of a ptid_t.
7736         * elfread.c: Include "inferior.h".
7737         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7738         Use inferior_thread.
7739         * eval.c (evaluate_subexp): Likewise.
7740         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7741         inferior_thread.
7742         * gdb_proc_service.h (struct thread_info): Forward declare.
7743         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7744         <thread>: ... this new field.  All references adjusted.
7745         * gdbarch.h, gdbarch.c: Regenerate.
7746         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7747         'thread' parameter.  All implementations and callers adjusted.
7748         * gdbthread.h (thread_info) <set_running>: New method.
7749         (delete_thread, delete_thread_silent): Take a thread_info pointer
7750         instead of a ptid.
7751         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7752         (first_thread_of_process): Delete, replaced by ...
7753         (first_thread_of_inferior): ... this new function.  All callers
7754         adjusted.
7755         (any_live_thread_of_process): Delete, replaced by ...
7756         (any_live_thread_of_inferior): ... this new function.  All callers
7757         adjusted.
7758         (switch_to_thread, switch_to_no_thread): Declare.
7759         (is_executing): Delete.
7760         (enable_thread_stack_temporaries): Update comment.
7761         <enable_thread_stack_temporaries>: Take a thread_info pointer
7762         instead of a ptid_t.  Incref the thread.
7763         <~enable_thread_stack_temporaries>: Decref the thread.
7764         <m_ptid>: Delete
7765         <m_thr>: New.
7766         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7767         (get_last_thread_stack_temporary)
7768         (value_in_thread_stack_temporaries, can_access_registers_thread):
7769         Take a thread_info pointer instead of a ptid_t.  All callers
7770         adjusted.
7771         * infcall.c (get_call_return_value): Use inferior_thread.
7772         (run_inferior_call): Work with thread pointers instead of ptid_t.
7773         (call_function_by_hand_dummy): Work with thread pointers instead
7774         of ptid_t.  Use thread_info_ref.
7775         * infcmd.c (proceed_thread_callback): Access thread's state
7776         directly.
7777         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7778         access thread's state directly.
7779         (continue_command): Use inferior_thread.
7780         (info_program_command): Use find_thread_ptid and access thread
7781         state directly.
7782         (proceed_after_attach_callback): Use thread state directly.
7783         (notice_new_inferior): Take a thread_info pointer instead of a
7784         ptid_t.  All callers adjusted.
7785         (exit_inferior): Take an inferior pointer instead of a pid.  All
7786         callers adjusted.
7787         (exit_inferior_silent): New.
7788         (detach_inferior): Delete.
7789         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7790         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7791         (detach_inferior_command, kill_inferior_command): Use
7792         find_inferior_id instead of valid_gdb_inferior_id and
7793         gdb_inferior_id_to_pid.
7794         (inferior_command): Use inferior and thread pointers.
7795         * inferior.h (struct thread_info): Forward declare.
7796         (notice_new_inferior): Take a thread_info pointer instead of a
7797         ptid_t.  All callers adjusted.
7798         (detach_inferior): Delete declaration.
7799         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7800         instead of a pid.  All callers adjusted.
7801         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7802         (valid_gdb_inferior_id): Delete.
7803         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7804         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7805         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7806         ...
7807         <inf>: ... this new field.
7808         <step_ptid>: Delete, replaced by ...
7809         <step_thread>: ... this new field.
7810         (get_displaced_stepping_state): Take an inferior pointer instead
7811         of a pid.  All callers adjusted.
7812         (displaced_step_in_progress_any_inferior): Adjust.
7813         (displaced_step_in_progress_thread): Take a thread pointer instead
7814         of a ptid_t.  All callers adjusted.
7815         (displaced_step_in_progress, add_displaced_stepping_state): Take
7816         an inferior pointer instead of a pid.  All callers adjusted.
7817         (get_displaced_step_closure_by_addr): Adjust.
7818         (remove_displaced_stepping_state): Take an inferior pointer
7819         instead of a pid.  All callers adjusted.
7820         (displaced_step_prepare_throw, displaced_step_prepare)
7821         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7822         All callers adjusted.
7823         (start_step_over): Adjust.
7824         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7825         displaced step queue.
7826         (do_target_resume): Adjust.
7827         (fetch_inferior_event): Use inferior_thread.
7828         (context_switch, get_inferior_stop_soon): Take an
7829         execution_control_state pointer instead of a ptid_t.  All callers
7830         adjusted.
7831         (switch_to_thread_cleanup): Delete.
7832         (stop_all_threads): Use scoped_restore_current_thread.
7833         * inline-frame.c: Include "gdbthread.h".
7834         (inline_state) <inline_state>: Take a thread pointer instead of a
7835         ptid_t.  All callers adjusted.
7836         <ptid>: Delete, replaced by ...
7837         <thread>: ... this new field.
7838         (find_inline_frame_state): Take a thread pointer instead of a
7839         ptid_t.  All callers adjusted.
7840         (skip_inline_frames, step_into_inline_frame)
7841         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7842         pointer instead of a ptid_t.  All callers adjusted.
7843         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7844         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7845         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7846         pointers directly.
7847         * linux-nat.c (get_detach_signal): Likewise.
7848         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7849         (thread_db_notice_clone): Adjust.
7850         (thread_db_find_new_threads_silently)
7851         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7852         a thread pointer instead of a ptid_t.  All callers adjusted.
7853         * mi/mi-cmd-var.c: Include "inferior.h".
7854         (mi_cmd_var_update_iter): Update to use thread pointers.
7855         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7856         inferior directly.
7857         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7858         out to ...
7859         (mi_output_running): ... this new function.
7860         (mi_on_resume_1): Adjust to use it.
7861         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7862         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7863         directly.
7864         (interrupt_thread_callback): : Adjust to use thread and inferior
7865         pointers.
7866         * proc-service.c: Include "gdbthread.h".
7867         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7868         * progspace-and-thread.c: Include "inferior.h".
7869         * progspace.c: Include "inferior.h".
7870         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7871         hold a reference to an inferior_object.
7872         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7873         inferior_thread.
7874         * python/py-inferior.c (struct inferior_object): Give the type a
7875         tag name instead of a typedef.
7876         (python_on_normal_stop): No need to check if the current thread is
7877         listed.
7878         (inferior_to_inferior_object): Change return type to
7879         inferior_object.  All callers adjusted.
7880         (find_thread_object): Delete, bits factored out to ...
7881         (thread_to_thread_object): ... this new function.
7882         * python/py-infthread.c (create_thread_object): Use
7883         inferior_to_inferior_object.
7884         (thpy_is_stopped): Use thread pointer directly.
7885         (gdbpy_selected_thread): Use inferior_thread.
7886         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7887         field, replaced with ...
7888         <thread>: ... this new field.  All users adjusted.
7889         (btpy_insn_or_gap_new): Drop const.
7890         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7891         callers adjusted.
7892         * python/py-record.c: Include "gdbthread.h".
7893         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7894         a ptid_t.  All callers adjusted.
7895         (gdbpy_current_recording): Use inferior_thread.
7896         * python/py-record.h (recpy_record_object) <ptid>: Delete
7897         field, replaced with ...
7898         <thread>: ... this new field.  All users adjusted.
7899         (recpy_element_object) <ptid>: Delete
7900         field, replaced with ...
7901         <thread>: ... this new field.  All users adjusted.
7902         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7903         a ptid_t.  All callers adjusted.
7904         * python/py-threadevent.c: Include "gdbthread.h".
7905         (get_event_thread): Use thread_to_thread_object.
7906         * python/python-internal.h (struct inferior_object): Forward
7907         declare.
7908         (find_thread_object, find_inferior_object): Delete declarations.
7909         (thread_to_thread_object, inferior_to_inferior_object): New
7910         declarations.
7911         * record-btrace.c: Include "inferior.h".
7912         (require_btrace_thread): Use inferior_thread.
7913         (record_btrace_frame_sniffer)
7914         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7915         (get_thread_current_frame): Use scoped_restore_current_thread and
7916         switch_to_thread.
7917         (get_thread_current_frame): Use thread pointer directly.
7918         (record_btrace_replay_at_breakpoint): Use thread's inferior
7919         pointer directly.
7920         * record-full.c: Include "inferior.h".
7921         * regcache.c: Include "gdbthread.h".
7922         (get_thread_arch_regcache): Use the inferior's address space
7923         directly.
7924         (get_thread_regcache, registers_changed_thread): New.
7925         * regcache.h (get_thread_regcache(thread_info *thread)): New
7926         overload.
7927         (registers_changed_thread): New.
7928         (remote_target) <remote_detach_1>: Swap order of parameters.
7929         (remote_add_thread): <remote_add_thread>: Return the new thread.
7930         (get_remote_thread_info(ptid_t)): New overload.
7931         (remote_target::remote_notice_new_inferior): Use thread pointers
7932         directly.
7933         (remote_target::process_initial_stop_replies): Use
7934         thread_info::set_running.
7935         (remote_target::remote_detach_1, remote_target::detach)
7936         (extended_remote_target::detach): Adjust.
7937         * stack.c (frame_show_address): Use inferior_thread.
7938         * target-debug.h (target_debug_print_thread_info_pp): New.
7939         * target-delegates.c: Regenerate.
7940         * target.c (default_thread_address_space): Delete.
7941         (memory_xfer_partial_1): Use current_inferior.
7942         (target_detach): Use current_inferior.
7943         (target_thread_address_space): Delete.
7944         (generic_mourn_inferior): Use current_inferior.
7945         * target.h (struct target_ops) <thread_address_space>: Delete.
7946         (target_thread_address_space): Delete.
7947         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7948         pointers directly.
7949         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7950         thread pointer instead of a ptid_t.  Adjust all callers.
7951         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7952         (first_thread_of_process): Delete, replaced by ...
7953         (first_thread_of_inferior): ... this new function.  All callers
7954         adjusted.
7955         (any_thread_of_process): Rename to ...
7956         (any_thread_of_inferior): ... this, and take an inferior pointer.
7957         (any_live_thread_of_process): Rename to ...
7958         (any_live_thread_of_inferior): ... this, and take an inferior
7959         pointer.
7960         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7961         (value_in_thread_stack_temporaries)
7962         (get_last_thread_stack_temporary): Take a thread pointer instead
7963         of a ptid_t.  Adjust all callers.
7964         (thread_info::set_running): New.
7965         (validate_registers_access): Use inferior_thread.
7966         (can_access_registers_ptid): Rename to ...
7967         (can_access_registers_thread): ... this, and take a thread
7968         pointer.
7969         (print_thread_info_1): Adjust to compare thread pointers instead
7970         of ptids.
7971         (switch_to_no_thread, switch_to_thread): Make extern.
7972         (scoped_restore_current_thread::~scoped_restore_current_thread):
7973         Use m_thread pointer directly.
7974         (scoped_restore_current_thread::scoped_restore_current_thread):
7975         Use inferior_thread.
7976         (thread_command): Use thread pointer directly.
7977         (thread_num_make_value_helper): Use inferior_thread.
7978         * top.c (execute_command): Use inferior_thread.
7979         * tui/tui-interp.c: Include "inferior.h".
7980         * varobj.c (varobj_create): Use inferior_thread.
7981         (value_of_root_1): Use find_thread_global_id instead of
7982         global_thread_id_to_ptid.
7983
7984 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7985
7986         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7987         possible.
7988         (regcache::write_part): Likewise.
7989         (readable_regcache::cooked_read_part): Update comment.
7990         (readable_regcache::cooked_write_part): Likewise.
7991         * regcache.h: (readable_regcache::read_part): Likewise.
7992         (regcache::write_part): Likewise.
7993
7994 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7995             Dirk Schubert  <dirk.schubert@arm.com>
7996
7997         * aarch64-linux-nat.c (post_attach): New.
7998         (aarch64_linux_nat_target::post_attach): Override post_attach to
7999         record the number of hardware debug registers.
8000
8001 2018-06-20  Tom Tromey  <tom@tromey.com>
8002
8003         * python/py-param.c (add_setshow_generic): Make parameters const.
8004         (parmpy_init): Update.
8005
8006 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8007
8008         * regcache.h (regcache_cooked_read_ftype): Rename to...
8009         (register_read_ftype): ...this, change type to function_view.
8010         (class reg_buffer) <save>: Remove src parameter.
8011         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8012         parameter non-const in first overload.  Remove src parameter in
8013         second overload.
8014         * regcache.c (do_cooked_read): Remove.
8015         (readonly_detached_regcache::readonly_detached_regcache): Make
8016         parameter non-const, adjust call to other constructor.
8017         (reg_buffer::save): Remove src parameter.
8018         * frame.c (do_frame_register_read): Remove.
8019         (frame_save_as_regcache): Use lambda function.
8020         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8021         parameter to ppu2spu_data *.
8022         (ppu2spu_sniffer): Use lambda function.
8023
8024 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8025
8026         * record-full.c (record_full_target::insert_breakpoint): Remove
8027         "struct" keyword, add const.
8028
8029 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8030
8031         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8032         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8033         * configure.ac: Remove AC_PREREQ, add missing quoting.
8034         * gnulib/configure.ac: Modernize usage of
8035         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8036         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8037         (AUTOMAKE_VERSION): Bump to 1.15.1.
8038         * configure: Re-generate.
8039         * config.in: Re-generate.
8040         * aclocal.m4: Re-generate.
8041         * gnulib/aclocal.m4: Re-generate.
8042         * gnulib/config.in: Re-generate.
8043         * gnulib/configure: Re-generate.
8044         * gnulib/import/Makefile.in: Re-generate.
8045
8046 2018-06-19  Pedro Alves  <palves@redhat.com>
8047
8048         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8049         (lookup_minimal_symbol_by_pc_section): ... here with
8050         gdb_assert_not_reached added.
8051
8052 2018-06-19  Pedro Alves  <palves@redhat.com>
8053
8054         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8055         parameter with a block parameter.  Compare location's block symbol
8056         with the frame's block instead of addresses.
8057         (skip_inline_frames): Pass the current block instead of the
8058         frame's address.  Break out as soon as we determine the frame
8059         should not be skipped.
8060
8061 2018-06-18  Tom Tromey  <tom@tromey.com>
8062
8063         * solib-aix.c (solib_aix_get_section_offsets): Return
8064         unique_xmalloc_ptr.
8065         (solib_aix_solib_create_inferior_hook): Update.
8066
8067 2018-06-18  Tom Tromey  <tom@tromey.com>
8068
8069         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8070
8071 2018-06-18  Tom Tromey  <tom@tromey.com>
8072
8073         * solib-frv.c (frv_relocate_main_executable): Use
8074         unique_xmalloc_ptr.
8075         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8076         unique_xmalloc_ptr.
8077
8078 2018-06-18  Tom Tromey  <tom@tromey.com>
8079
8080         * objfiles.h (inhibit_section_map_updates): Update.
8081         (resume_section_map_updates, resume_section_map_updates_cleanup):
8082         Remove.
8083         * solib-svr4.c (svr4_handle_solib_event): Update.
8084         * objfiles.c (inhibit_section_map_updates): Return
8085         scoped_restore_tmpl<int>.
8086         (resume_section_map_updates, resume_section_map_updates_cleanup):
8087         Remove.
8088
8089 2018-06-18  Tom Tromey  <tom@tromey.com>
8090
8091         * valprint.h (read_string): Update.
8092         * valprint.c (read_string): Change type of "buffer".
8093         (val_print_string): Update.
8094         * python/py-value.c (valpy_string): Update.
8095         * language.h (struct language_defn) <la_get_string>: Change
8096         type of "buffer".
8097         (default_get_string, c_get_string): Update.
8098         * language.c (default_get_string): Change type of "buffer".
8099         * guile/scm-value.c (gdbscm_value_to_string): Update.
8100         * c-lang.c (c_get_string): Change type of "buffer".
8101
8102 2018-06-18  Tom Tromey  <tom@tromey.com>
8103
8104         * ser-mingw.c (struct pipe_state_destroyer): New.
8105         (pipe_state_up): New typedef.
8106         (cleanup_pipe_state): Remove.
8107         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8108
8109 2018-06-18  Tom Tromey  <tom@tromey.com>
8110
8111         * rust-lang.h (rust_yyerror): Don't declare.
8112         * rust-lang.c (rust_language_defn): Update.
8113         * rust-exp.y (yyerror): Now static.
8114         * parse.c (parse_exp_in_context_1): Update.
8115         * p-lang.h (p_yyerror): Don't declare.
8116         * p-lang.c (p_language_defn): Update.
8117         * p-exp.y (yyerror): Now static.
8118         * opencl-lang.c (opencl_language_defn): Update.
8119         * objc-lang.c (objc_language_defn): Update.
8120         * m2-lang.h (m2_yyerror): Don't declare.
8121         * m2-lang.c (m2_language_defn): Update.
8122         * m2-exp.y (yyerror): Now static.
8123         * language.h (struct language_defn) <la_error>: Remove.
8124         * language.c (unk_lang_error): Remove.
8125         (unknown_language_defn, auto_language_defn): Remove.
8126         * go-lang.h (go_yyerror): Don't declare.
8127         * go-lang.c (go_language_defn): Update.
8128         * go-exp.y (yyerror): Now static.
8129         * f-lang.h (f_yyerror): Don't declare.
8130         * f-lang.c (f_language_defn): Update.
8131         * f-exp.y (yyerror): Now static.
8132         * d-lang.h (d_yyerror): Don't declare.
8133         * d-lang.c (d_language_defn): Update.
8134         * d-exp.y (yyerror): Now static.
8135         * c-lang.h (c_yyerror): Don't declare.
8136         * c-lang.c (c_language_defn, cplus_language_defn)
8137         (asm_language_defn, minimal_language_defn): Update.
8138         * c-exp.y (yyerror): Now static.
8139         * ada-lang.h (ada_yyerror): Don't declare.
8140         * ada-lang.c (ada_language_defn): Update.
8141         * ada-exp.y (yyerror): Now static.
8142
8143 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8144
8145         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8146         (store_sveregs_to_thread): Likewise.
8147         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8148         (aarch64_linux_store_inferior_registers): Likewise.
8149         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8150         function.
8151         (aarch64_sve_regs_copy_to_regcache): Likewise.
8152         (aarch64_sve_regs_copy_from_regcache): Likewise.
8153         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8154         declaration.
8155         (aarch64_sve_regs_copy_to_regcache): Likewise.
8156         (aarch64_sve_regs_copy_from_regcache): Likewise.
8157         (sve_context): Structure from Linux headers.
8158         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8159         (SVE_SIG_ZREG_SIZE): Likewise.
8160         (SVE_SIG_PREG_SIZE): Likewise.
8161         (SVE_SIG_FFR_SIZE): Likewise.
8162         (SVE_SIG_REGS_OFFSET): Likewise.
8163         (SVE_SIG_ZREGS_OFFSET): Likewise.
8164         (SVE_SIG_ZREG_OFFSET): Likewise.
8165         (SVE_SIG_ZREGS_SIZE): Likewise.
8166         (SVE_SIG_PREGS_OFFSET): Likewise.
8167         (SVE_SIG_PREG_OFFSET): Likewise.
8168         (SVE_SIG_PREGS_SIZE): Likewise.
8169         (SVE_SIG_FFR_OFFSET): Likewise.
8170         (SVE_SIG_REGS_SIZE): Likewise.
8171         (SVE_SIG_CONTEXT_SIZE): Likewise.
8172         (SVE_PT_REGS_MASK): Likewise.
8173         (SVE_PT_REGS_FPSIMD): Likewise.
8174         (SVE_PT_REGS_SVE): Likewise.
8175         (SVE_PT_VL_INHERIT): Likewise.
8176         (SVE_PT_VL_ONEXEC): Likewise.
8177         (SVE_PT_REGS_OFFSET): Likewise.
8178         (SVE_PT_FPSIMD_OFFSET): Likewise.
8179         (SVE_PT_FPSIMD_SIZE): Likewise.
8180         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8181         (SVE_PT_SVE_PREG_SIZE): Likewise.
8182         (SVE_PT_SVE_FFR_SIZE): Likewise.
8183         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8184         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8185         (__SVE_SIG_TO_PT): Likewise.
8186         (SVE_PT_SVE_OFFSET): Likewise.
8187         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8188         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8189         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8190         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8191         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8192         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8193         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8194         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8195         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8196         (SVE_PT_SVE_SIZE): Likewise.
8197         (SVE_PT_SIZE): Likewise.
8198         (HAS_SVE_STATE): New define.
8199
8200 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8201
8202         * nat/aarch64-sve-linux-sigcontext.h: New file.
8203         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8204         new files.
8205         (SVE_VQ_MIN): Likewise.
8206         (SVE_VQ_MAX): Likewise.
8207         (SVE_VL_MIN): Likewise.
8208         (SVE_VL_MAX): Likewise.
8209         (SVE_NUM_ZREGS): Likewise.
8210         (SVE_NUM_PREGS): Likewise.
8211         (sve_vl_valid): Likewise.
8212         (struct user_sve_header): Likewise.
8213
8214 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8215             Richard Bunt <Richard.Bunt@arm.com>
8216
8217         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8218         was requested by GDB.
8219
8220 2018-06-15  Tom de Vries  <tdevries@suse.de>
8221
8222         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8223
8224 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8225
8226         * gnulib/update-gnulib.sh: Print expected versions of
8227         autoconf/aclocal.
8228
8229 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8230
8231         * arch-utils.c (default_type_align): Use type_length_units.
8232         * gdbtypes.c (type_align): Use type_length_units.
8233
8234 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8235
8236         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8237         of 'define' command.
8238
8239 2018-06-14  Tom de Vries  <tdevries@suse.de>
8240
8241         PR cli/22573
8242         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8243         get_no_prettyformat_print_options.
8244
8245 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8246
8247         * sparc-nat.h: Include target.h.
8248         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8249         <fetch_registers>: Remove this argument in function call.
8250         <store_registers>: Remove this argument in function call, remove
8251         extra semicolon.
8252         <low_forget_process>: Call sparc64_forget_process instead of
8253         sparc_forget_process.
8254
8255 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8256
8257         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8258         (procfs_target::make_corefile_notes): Adjust to new
8259         target_read_alloc return type.
8260
8261 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8262             Stephen Roberts  <stephen.roberts@arm.com>
8263
8264         PR gdb/22882
8265         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8266         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8267         Move should_notify_stop local into more inner scope.
8268
8269 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8270             Stephen Roberts  <stephen.roberts@arm.com>
8271
8272         PR gdb/22882
8273         * infrun.c (resume_1): Add call to mark_async_event_handler.
8274
8275 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8276
8277         * infrun.c (do_target_wait): Change old version of $pc printed.
8278
8279 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8280
8281         * dwarf2read.c (read_index_from_section): Rename to...
8282         (read_gdb_index_from_section): ... this, update all callers.
8283         (dwarf2_read_index): Rename to...
8284         (dwarf2_read_gdb_index): ... this, update all callers.
8285
8286 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8287
8288         * hppa-linux-nat.c
8289         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8290         hppa_linux_nat_target::fetch_registers.
8291
8292 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8293
8294         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8295         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8296         (AARCH64_DWARF_SVE_FFR): Likewise.
8297         (AARCH64_DWARF_SVE_P0): Likewise.
8298         (AARCH64_DWARF_SVE_Z0): Likewise.
8299
8300 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8301
8302         * common/common-regcache.h (raw_compare): New function.
8303         * regcache.c (regcache::raw_compare): Likewise.
8304         * regcache.h (regcache::raw_compare): New declaration.
8305
8306 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8307
8308         * common/common-regcache.h (reg_buffer_common): New structure.
8309         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8310         (reg_buffer::raw_supply): Likewise.
8311         (reg_buffer::raw_supply_integer): Likewise.
8312         (reg_buffer::raw_supply_zeroed): Likewise.
8313         (reg_buffer::raw_collect): Likewise.
8314         (reg_buffer::raw_collect_integer): Likewise.
8315         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8316         (reg_buffer::raw_supply): Likewise.
8317         (reg_buffer::raw_supply_integer): Likewise.
8318         (reg_buffer::raw_supply_zeroed): Likewise.
8319         (reg_buffer::raw_collect): Likewise.
8320         (reg_buffer::raw_collect_integer): Likewise.
8321
8322 2018-06-10  Tom Tromey  <tom@tromey.com>
8323
8324         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8325         (class remote_state) <stop_reply_queue>: Now std::vector.
8326         (remote_state::~remote_state)
8327         (remote_target::stop_reply_queue_length): Update.
8328         (struct queue_iter_param, remove_child_of_pending_fork)
8329         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8330         (check_pending_event_prevents_wildcard_vcont_callback)
8331         (remove_stop_reply_for_inferior)
8332         (remove_stop_reply_of_remote_state)
8333         (remote_notif_remove_once_on_match)
8334         (stop_reply_match_ptid_and_ws)
8335         (remote_kill_child_of_pending_fork): Remove.
8336         (remote_target::remove_new_fork_children)
8337         (remote_target::check_pending_events_prevent_wildcard_vcont)
8338         (remote_target::discard_pending_stop_replies)
8339         (remote_target::discard_pending_stop_replies_in_queue)
8340         (remote_target::remote_notif_remove_queued_reply)
8341         (remote_target::queued_stop_reply)
8342         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8343         (remote_target::wait, remote_target::kill_new_fork_children)
8344         (remote_target::async): Update.
8345
8346 2018-06-10  Tom Tromey  <tom@tromey.com>
8347
8348         * record-full.c (record_full_arch_list_cleanups): Remove.
8349         (record_full_message): Use try/catch.
8350         (record_full_wait_cleanups): Remove.
8351         (record_full_wait_1): Use try/catch.
8352         (record_full_restore): Likewise.
8353
8354 2018-06-10  Tom Tromey  <tom@tromey.com>
8355
8356         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8357         declare VEC.  Add constructor.
8358         <in_target_beneath>: Now bool.
8359         (record_full_breakpoints): Now a std::vector, static.
8360         (record_full_sync_record_breakpoints)
8361         (record_full_init_record_breakpoints)
8362         (record_full_target::insert_breakpoint)
8363         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8364
8365 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8366
8367         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8368         * serial.c (serial_interface_lookup): Remove struct keyword.
8369
8370 2018-06-10  Tom Tromey  <tom@tromey.com>
8371
8372         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8373         method.
8374         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8375         a method.
8376         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8377         method.
8378         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8379         "beneath" as a method.
8380         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8381         Use "beneath" as a method.
8382
8383 2018-06-10  Tom Tromey  <tom@tromey.com>
8384
8385         * tracefile.c (struct trace_file_writer_deleter): New.
8386         <operator()>: Rename from trace_file_writer_xfree.
8387         (trace_file_writer_up): New typedef.
8388         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8389
8390 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8391
8392         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8393         <m_registers, m_register_status>: Change type to
8394         std::unique_ptr.
8395         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8396         XCNEWVEC.
8397
8398 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8399
8400         * common/common-regcache.h (enum register_status): Add
8401         underlying type "signed char".
8402         * regcache.h (reg_buffer) <m_register_status>: Change type to
8403         register_status *.
8404         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8405         register_status instead of signed char.
8406         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8407         (reg_buffer::get_register_status): Remove cast.
8408         (readable_regcache::raw_read): Remove cast.
8409         (readable_regcache::cooked_read): Remove cast.
8410
8411 2018-06-09  Tom Tromey  <tom@tromey.com>
8412
8413         * source.c (reverse_search_command, forward_search_command): Use
8414         scoped_fd.
8415
8416 2018-06-09  Tom Tromey  <tom@tromey.com>
8417
8418         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8419         (serial_ops_list): Now static, std::vector.
8420         (serial_interface_lookup, serial_add_interface): Update.
8421
8422 2018-06-09  Tom Tromey  <tom@tromey.com>
8423
8424         * dwarf2read.c (process_cu_includes): Update.
8425         (process_full_comp_unit): Update.
8426         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8427         std::vector.
8428
8429 2018-06-08  Paul Koning  <paul_koning@dell.com>
8430
8431         PR gdb/23252
8432
8433         * python/python.c (do_start_initialization):
8434         Avoid call to internal Python API.
8435         (init__gdb_module): New function.
8436
8437 2018-06-08  Gary Benson <gbenson@redhat.com>
8438
8439         * linux-thread-db.c (valprint.h): New include.
8440         (struct check_thread_db_info): New structure.
8441         (check_thread_db_on_load, tdb_testinfo): New static globals.
8442         (check_thread_db, check_thread_db_callback): New functions.
8443         (try_thread_db_load_1): Run integrity checks if requested.
8444         (maintenance_check_libthread_db): New function.
8445         (_initialize_thread_db): Register "maint check libthread-db"
8446         and "maint set/show check-libthread-db".
8447         * NEWS: Mention the above new commands.
8448
8449 2018-06-08  Tom Tromey  <tom@tromey.com>
8450
8451         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8452         now a method.
8453
8454 2018-06-08  Tom Tromey  <tom@tromey.com>
8455
8456         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8457
8458 2018-06-08  Tom Tromey  <tom@tromey.com>
8459
8460         * common/btrace-common.h (struct btrace_data): Add constructor,
8461         destructor, move assignment operator.
8462         <empty, clear, fini>: New methods.
8463         <format>: Initialize.
8464         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8465         (btrace_data_empty): Don't declare.
8466         * common/btrace-common.c (btrace_data_init): Remove.
8467         (btrace_data::fini): Rename from btrace_data_fini.
8468         (btrace_data::empty): Rename from btrace_data_empty.
8469         (btrace_data::clear): Rename from btrace_data_clear.  Return
8470         bool.
8471         * btrace.h (make_cleanup_btrace_data): Don't declare.
8472         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8473         (parse_xml_btrace): Update.
8474         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8475         (maint_btrace_clear_packet_history_cmd): Update.
8476
8477 2018-06-07  Pedro Alves  <palves@redhat.com>
8478
8479         * target.h (target_ops) <beneath>: Now a method.  All references
8480         updated.
8481         (class target_stack): New.
8482         * target.c (g_target_stack): New.
8483         (g_current_top_target): Delete.
8484         (current_top_target): Get the top target out of g_target_stack.
8485         (target_stack::push, target_stack::unpush): New.
8486         (push_target, unpush_target): Reimplement.
8487         (target_is_pushed): Reimplement in terms of g_target_stack.
8488         (target_ops::beneath, target_stack::find_beneath): New.
8489
8490 2018-06-07  Pedro Alves  <palves@redhat.com>
8491
8492         * target.h (find_target_beneath): Delete declaration.
8493         * target.c (find_target_beneath): Delete definition.
8494         * aix-thread.c: All callers of find_target_beneath adjusted to
8495         call target_ops::beneath instead.
8496         * bsd-uthread.c: Likewise.
8497         * linux-thread-db.c: Likewise.
8498         * ravenscar-thread.c: Likewise.
8499         * sol-thread.c: Likewise.
8500         * spu-multiarch.c: Likewise.
8501
8502 2018-06-07  Pedro Alves  <palves@redhat.com>
8503
8504         * target.h (target_ops) <beneath>: Now a method.  All references
8505         updated.
8506         (target_ops) <m_beneath>: New.
8507         * target.c (target_ops::beneath): New.
8508         * corelow.c: Adjust all references to target_ops::beneath.
8509         * linux-thread-db.c: Likewise.
8510         * make-target-delegates: Likewise.
8511         * record-btrace.c: Likewise.
8512         * record-full.c: Likewise.
8513         * remote.c: Likewise.
8514         * target.c: Likewise.
8515         * target-delegates.c: Regenerate.
8516
8517 2018-06-07  Pedro Alves  <palves@redhat.com>
8518
8519         * target.h (target_stack): Delete.
8520         (current_top_target): Declare function.
8521         * target.c (target_stack): Delete.
8522         (g_current_top_target): New.
8523         (current_top_target): New function.
8524         * auxv.c: Use current_top_target instead of target_stack
8525         throughout.
8526         * avr-tdep.c: Likewise.
8527         * breakpoint.c: Likewise.
8528         * corefile.c: Likewise.
8529         * elfread.c: Likewise.
8530         * eval.c: Likewise.
8531         * exceptions.c: Likewise.
8532         * frame.c: Likewise.
8533         * gdbarch-selftests.c: Likewise.
8534         * gnu-v3-abi.c: Likewise.
8535         * ia64-tdep.c: Likewise.
8536         * ia64-vms-tdep.c: Likewise.
8537         * infcall.c: Likewise.
8538         * infcmd.c: Likewise.
8539         * infrun.c: Likewise.
8540         * linespec.c: Likewise.
8541         * linux-tdep.c: Likewise.
8542         * minsyms.c: Likewise.
8543         * ppc-linux-nat.c: Likewise.
8544         * ppc-linux-tdep.c: Likewise.
8545         * procfs.c: Likewise.
8546         * regcache.c: Likewise.
8547         * remote.c: Likewise.
8548         * rs6000-tdep.c: Likewise.
8549         * s390-linux-nat.c: Likewise.
8550         * s390-tdep.c: Likewise.
8551         * solib-aix.c: Likewise.
8552         * solib-darwin.c: Likewise.
8553         * solib-dsbt.c: Likewise.
8554         * solib-spu.c: Likewise.
8555         * solib-svr4.c: Likewise.
8556         * solib-target.c: Likewise.
8557         * sparc-tdep.c: Likewise.
8558         * sparc64-tdep.c: Likewise.
8559         * spu-tdep.c: Likewise.
8560         * symfile.c: Likewise.
8561         * symtab.c: Likewise.
8562         * target-descriptions.c: Likewise.
8563         * target-memory.c: Likewise.
8564         * target.c: Likewise.
8565         * target.h: Likewise.
8566         * tracefile-tfile.c: Likewise.
8567         * tracepoint.c: Likewise.
8568         * valops.c: Likewise.
8569         * valprint.c: Likewise.
8570         * value.c: Likewise.
8571         * windows-tdep.c: Likewise.
8572         * mi/mi-main.c: Likewise.
8573
8574 2018-06-07  Tom Tromey  <tom@tromey.com>
8575
8576         * valprint.h (build_address_symbolic): Declare.
8577         * printcmd.c (print_address_symbolic): Update.
8578         (build_address_symbolic): Change "name" and "filename" to
8579         std::string.
8580         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8581         Update.
8582         * defs.h (build_address_symbolic): Remove declaration.
8583
8584 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8585
8586         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8587         (aarch64_vnv_type): Add function.
8588         (aarch64_pseudo_register_name): Add V regs for SVE.
8589         (aarch64_pseudo_register_type): Likewise.
8590         (aarch64_pseudo_register_reggroup_p): Likewise.
8591         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8592         (aarch64_pseudo_read_value): Add V regs for SVE.
8593         (aarch64_pseudo_write_2): Use V0 offset for SVE
8594         (aarch64_pseudo_write): Add V regs for SVE.
8595         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8596
8597 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8598
8599         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8600         (sve_vl_from_vq): Likewise.
8601
8602 2018-06-05  Tom Tromey  <tom@tromey.com>
8603
8604         * cli/cli-cmds.c (show_version): Update.
8605         * top.c (print_gdb_version): Add "interactive" parameter.
8606         Update.
8607         * main.c (captured_main_1): Update.
8608         * top.h (print_gdb_version): Add "interactive" parameter and a
8609         comment.
8610
8611 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8612
8613         * common/enum-flags.h: Add trailing semicolon to example in
8614         comment.
8615
8616 2018-06-05  Tom Tromey  <tom@tromey.com>
8617
8618         PR cli/12326:
8619         * NEWS: Add entry about pager.
8620         * utils.c (pagination_disabled_for_command): New global.
8621         (prompt_for_continue): Allow "c" response to prompt.
8622         (reinitialize_more_filter): Clear
8623         pagination_disabled_for_command.
8624         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8625
8626 2018-06-04  Tom Tromey  <tom@tromey.com>
8627
8628         * ada-lang.h (ada_lookup_symbol_list): Update.
8629         * ada-lang.c (resolve_subexp): Update.
8630         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8631         parameter.
8632         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8633         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8634         results parameter to std::vector.
8635         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8636         Update.
8637         * ada-exp.y (block_lookup): Update.
8638         (select_possible_type_sym): Change type of syms.  Remove nsyms
8639         parameter.
8640         (write_var_or_type, write_name_assoc): Update.
8641
8642 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8643
8644         * windows-nat.c (windows_nat_target::xfer_partial): Return
8645         TARGET_XFER_E_IO if we need to delegate to the target beneath
8646         but BENEATH is NULL.
8647
8648 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8649
8650         * Makefile.in (config.status): Add configure.nat as a
8651         dependency.
8652
8653 2018-06-04  Tom Tromey  <tom@tromey.com>
8654
8655         * cp-name-parser.y (cpname_state): Add method declarations.
8656         (HANDLE_QUAL): Update.
8657         (cpname_state::d_grab, cpname_state::fill_comp)
8658         (cpname_state::make_operator, cpname_state::make_dtor)
8659         (cpname_state::make_builtin_type, cpname_state::make_name)
8660         (cpname_state::d_qualify, cpname_state::d_int_type)
8661         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8662         (%union): Move earlier.
8663
8664 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8665
8666         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8667
8668 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8669
8670         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8671         (aarch64_pseudo_write_1): Likewise.
8672         (aarch64_pseudo_read_value): Use helper.
8673         (aarch64_pseudo_write): Likewise.
8674
8675 2018-06-04  Pedro Alves  <palves@redhat.com>
8676
8677         * darwin-nat.c (darwin_ops): Delete.
8678         (darwin_attach_pid): Use get_native_target.
8679
8680 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8681
8682         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8683         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8684
8685 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8686
8687         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8688         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8689         (aarch64_gdbarch_init): Check for SVE.
8690         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8691
8692 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8693
8694         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8695         * aarch64-tdep.h (aarch64_read_description): Likewise.
8696         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8697         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8698         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8699         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8700         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8701
8702 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8703
8704         * value.c (value_fetch_lazy_bitfield): New.
8705         (value_fetch_lazy_memory): New.
8706         (value_fetch_lazy_register): New.
8707         (value_fetch_lazy): Factor out to smaller functions.
8708
8709 2018-06-01  Tom Tromey  <tom@tromey.com>
8710
8711         * cp-name-parser.y (backslashable, represented): Now const.
8712
8713 2018-06-01  Tom Tromey  <tom@tromey.com>
8714
8715         * cp-name-parser.y: Include parser-defs.h.
8716         (parser_fprintf): Remove declaration.
8717
8718 2018-06-01  Tom Tromey  <tom@tromey.com>
8719
8720         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8721         %parse-param.
8722         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8723         (global_result): Remove globals.
8724         (struct cpname_state): New.
8725         (yyparse): Don't declare.
8726         (yylex, yyerror): Move declarations after %union.
8727         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8728         (make_name): Add state parameter.
8729         Update all callers.
8730         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8731         parameter.
8732         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8733         Update.
8734         (yylex): Add lvalp, state parameters.
8735         (yyerror): Add state parameter.
8736         (cp_demangled_name_to_comp): Update.
8737
8738 2018-06-01  Tom Tromey  <tom@tromey.com>
8739
8740         * cp-name-parser.y (parser_fprintf): Declare.
8741         (GDB_YY_REMAP_PREFIX): Define.
8742         Include yy-remap.h.  Don't redefine yy* identifiers.
8743
8744 2018-06-01  Tom Tromey  <tom@tromey.com>
8745
8746         * python/py-type.c (typy_legacy_template_argument): Update.
8747         * cp-support.h (cp_demangled_name_to_comp): Update.
8748         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8749         parameter to be a "std::string *".
8750         (main): Update.
8751
8752 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8753
8754         * ada-lex.l: Include "diagnostics.h" instead of
8755         "common/diagnostics.h".
8756         * unittests/environ-selftests.c: Likewise.
8757         * common/diagnostics.h: Moved to ../include.
8758
8759 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8760
8761         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8762         to language_mode_manual while calling breakpoint_re_set_one.
8763
8764 2018-06-01  Tom Tromey  <tom@tromey.com>
8765
8766         * valops.c (value_cast_structs, destructor_name_p): Update.
8767         * symtab.c (gdb_mangle_name): Update.
8768         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8769         Update.
8770         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8771         (pascal_object_print_value_fields, pascal_object_print_value):
8772         Update.
8773         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8774         * linespec.c (find_methods): Update.
8775         * gdbtypes.h (type_name_no_tag): Remove.
8776         (type_name_or_error): Rename from type_name_no_tag_or_error.
8777         * gdbtypes.c (type_name_no_tag): Remove.
8778         (type_name_or_error): Rename from type_name_no_tag_or_error.
8779         (lookup_struct_elt_type, check_typedef): Update.
8780         * expprint.c (print_subexp_standard): Update.
8781         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8782         * d-namespace.c (d_lookup_nested_symbol): Update.
8783         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8784         (cp_print_class_member): Update.
8785         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8786         * completer.c (add_struct_fields): Update.
8787         * c-typeprint.c (cp_type_print_derivation_info)
8788         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8789         Update.
8790         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8791         (ada_prefer_type, ada_is_exception_sym): Update.
8792
8793 2018-06-01  Tom Tromey  <tom@tromey.com>
8794
8795         * valops.c (enum_constant_from_type, value_namespace_elt)
8796         (value_maybe_namespace_elt): Update.
8797         * valarith.c (find_size_for_pointer_math): Update.
8798         * target-descriptions.c (make_gdb_type): Update.
8799         * symmisc.c (print_symbol): Update.
8800         * stabsread.c (define_symbol, read_type)
8801         (complain_about_struct_wipeout, add_undefined_type)
8802         (cleanup_undefined_types_1): Update.
8803         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8804         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8805         (rust_internal_print_type, rust_composite_type)
8806         (rust_evaluate_funcall, rust_evaluate_subexp)
8807         (rust_inclusive_range_type_p): Update.
8808         * python/py-type.c (typy_get_tag): Update.
8809         * p-typeprint.c (pascal_type_print_base): Update.
8810         * mdebugread.c (parse_symbol, parse_type): Update.
8811         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8812         Update.
8813         * guile/scm-type.c (gdbscm_type_tag): Update.
8814         * go-lang.c (sixg_string_p): Update.
8815         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8816         Update.
8817         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8818         (TYPE_TAG_NAME): Remove.
8819         * gdbtypes.c (type_name_no_tag): Simplify.
8820         (check_typedef, check_types_equal, recursive_dump_type)
8821         (copy_type_recursive, arch_composite_type): Update.
8822         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8823         in summary mode when needed.
8824         * eval.c (evaluate_funcall): Update.
8825         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8826         (process_structure_scope, read_enumeration_type)
8827         (read_namespace_type, read_module_type, determine_prefix): Update.
8828         * cp-support.c (inspect_type): Update.
8829         * coffread.c (process_coff_symbol, decode_base_type): Update.
8830         * c-varobj.c (c_is_path_expr_parent): Update.
8831         * c-typeprint.c (c_type_print_base_struct_union): Update.
8832         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8833         summary when using C language.
8834         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8835         (gen_maybe_namespace_elt): Update.
8836         * ada-lang.c (ada_type_name): Simplify.
8837         (empty_record, ada_template_to_fixed_record_type_1)
8838         (template_to_static_fixed_type)
8839         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8840
8841 2018-06-01  Tom Tromey  <tom@tromey.com>
8842
8843         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8844         c_print_type.
8845         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8846         (c_print_type): Update.
8847         (c_print_type): New overload.
8848         (c_type_print_varspec_prefix, c_type_print_args)
8849         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8850         (c_type_print_base_struct_union, c_type_print_base_1)
8851         (cp_type_print_method_args): Add "language" parameter.
8852         (c_type_print_base): Update.
8853         * c-lang.h (c_print_type): Add new overload.
8854
8855 2018-06-01  Tom Tromey  <tom@tromey.com>
8856
8857         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8858         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8859
8860 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8861
8862         * aarch64-tdep.c (aarch64_sve_register_names): New const
8863         var.
8864         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8865         (AARCH64_SVE_Z_REGS_NUM): New define.
8866         (AARCH64_SVE_P_REGS_NUM): Likewise.
8867         (AARCH64_SVE_NUM_REGS): Likewise.
8868
8869 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8870
8871         * nat/linux-ptrace.h [__alpha__]
8872         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8873         definitions.
8874
8875 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8876
8877         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8878         the endianness selected.
8879         * NEWS: Document `set endian auto' mode operation update.
8880
8881 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8882
8883         * Makefile.in: Add new header.
8884         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8885         (sve_vl_from_vg): Likewise.
8886         (sve_vq_from_vl): Likewise.
8887         (sve_vl_from_vq): Likewise.
8888         (sve_vq_from_vg): Likewise.
8889         (sve_vg_from_vq): Likewise.
8890         * configure.nat: Add new c file.
8891         * nat/aarch64-sve-linux-ptrace.c: New file.
8892         * nat/aarch64-sve-linux-ptrace.h: New file.
8893
8894 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8895
8896         * aarch64-linux-nat.c (aarch64_linux_read_description):
8897         Add parmeter zero.
8898         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8899         Likewise.
8900         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8901         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8902         (aarch64_gdbarch_init): Add parmeter zero.
8903         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8904         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8905         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8906         parmeter.
8907         * doc/gdb.texinfo: Describe SVE feature
8908         * features/aarch64-sve.c: New file.
8909
8910 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8911
8912         PR gdb/23210
8913         * gdbarch.sh (significant_addr_bit): Default to zero when
8914         not set by target architecture.
8915         * gdbarch.c: Re-generated.
8916         * utils.c (address_significant): Update.
8917
8918 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8919
8920         * stack.c (func_command): Remove trailing newline in call to error.
8921
8922 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8923
8924         * regcache.h (regcache_raw_collect): Remove, update callers to
8925         use regcache::raw_collect.
8926         * regcache.c (regcache_raw_collect): Remove.
8927
8928 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8929
8930         * regcache.h (regcache_raw_supply): Remove, update callers to
8931         use detached_regcache::raw_supply.
8932         * regcache.c (regcache_raw_supply): Remove.
8933
8934 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8935
8936         * regcache.h (regcache_cooked_write_part): Remove, update
8937         callers to use regcache::cooked_write_part.
8938         * regcache.c (regcache_cooked_write_part): Remove.
8939
8940 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8941
8942         * regcache.h (regcache_cooked_read_part): Remove, update callers
8943         to use readable_regcache::cooked_read_part.
8944         * regcache.c (regcache_cooked_read_part): Remove.
8945
8946 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8947
8948         * regcache.h (regcache_cooked_read_value): Remove, update
8949         callers to use readable_regcache::cooked_read_value.
8950         * regcache.c (regcache_cooked_read_value): Remove.
8951
8952 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8953
8954         * regcache.h (regcache_cooked_write): Remove, update callers to
8955         use regcache::cooked_write.
8956         * regcache.c (regcache_cooked_write): Remove.
8957
8958 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8959
8960         * regcache.h (regcache_invalidate): Remove, update callers to
8961         use detached_regcache::invalidate instead.
8962         * regcache.c (regcache_invalidate): Remove.
8963
8964 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8965
8966         * regcache.h (regcache_raw_write_part): Remove, update callers
8967         to use regcache::raw_write_part instead.
8968         * regcache.c (regcache_raw_write_part): Remove.
8969
8970 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8971
8972         * regcache.h (regcache_raw_read_part): Remove, update callers to
8973         use readable_regcache::raw_read_part instead.
8974         * regcache.c (regcache_raw_read_part): Remove.
8975
8976 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8977
8978         * regcache.h (regcache_cooked_read): Remove, update callers to
8979         use readable_regcache::cooked_read instead.
8980         * regcache.c (regcache_cooked_read): Remove.
8981
8982 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8983
8984         * regcache.h (regcache_raw_write): Remove, update callers to use
8985         regcache::raw_write instead.
8986         * regcache.c (regcache_raw_write): Remove.
8987
8988 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8989
8990         * regcache.h (regcache_raw_read): Remove, update callers to use
8991         readable_regcache::raw_read instead.
8992         * regcache.c (regcache_raw_read): Remove.
8993
8994 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8995
8996         * regcache.h (regcache_raw_update): Remove, update callers to
8997         use readable_regcache::raw_update instead.
8998         * regcache.c (regcache_raw_update): Remove.
8999
9000 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9001
9002         * regcache.h (regcache_register_status): Remove, update callers
9003         to use reg_buffer::get_register_status directly instead.
9004         * regcache.c (regcache_register_status): Remove.
9005
9006 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9007
9008         * regcache.h (regcache_get_ptid): Remove, update all callers to
9009         call regcache::ptid instead.
9010         * regcache.c (regcache_get_ptid): Remove.
9011
9012 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9013
9014         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9015
9016 2018-05-30  Pedro Alves  <palves@redhat.com>
9017
9018         * common/common-exceptions.h (exception_rethrow): Use
9019         ATTRIBUTE_NORETURN.
9020
9021 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9022
9023         * breakpoint.c (print_solib_event, check_status_catch_solib):
9024         Remove struct keyword in range-based for loops.
9025         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9026         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9027         Likewise.
9028         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9029         Likewise.
9030         * symfile.c (addr_info_make_relative): Likewise.
9031         * thread.c (value_in_thread_stack_temporaries): Likewise.
9032
9033 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9034
9035         PR gdb/16841
9036         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9037         aggregate type to get its real type before accessing it.
9038
9039 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9040
9041         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9042         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9043         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9044         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9045         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9046         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9047         * printcmd.c (info_address_command): Likewise.
9048
9049 2018-05-29  Tom Tromey  <tom@tromey.com>
9050
9051         * windows-nat.c (handle_exception): Update fall-through comment.
9052
9053 2018-05-29  Tom Tromey  <tom@tromey.com>
9054
9055         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9056         (struct program_space) <added_solibs>: Now a std::vector.
9057         * breakpoint.c (print_solib_event): Update.
9058         (check_status_catch_solib): Update.
9059         * progspace.c (clear_program_space_solib_cache): Update.
9060         * solib.c (update_solib_list): Update.
9061
9062 2018-05-29  Tom Tromey  <tom@tromey.com>
9063
9064         * python/py-type.c (typy_richcompare): Update.
9065         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9066         * gdbtypes.h (types_deeply_equal): Return bool.
9067         (types_equal): Likewise.
9068         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9069         declare VEC.
9070         (check_types_equal): Change worklist to std::vector.  Return
9071         bool.
9072         (struct type_equality_entry): Add constructor.
9073         (compare_maybe_null_strings): Return bool.
9074         (check_types_worklist): Return bool.  Change worklist to
9075         std::vector.
9076         (types_deeply_equal): Use std::vector.
9077         (types_equal): Return bool.
9078         (compare_maybe_null_strings): Simplify.
9079
9080 2018-05-29  Tom Tromey  <tom@tromey.com>
9081
9082         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9083
9084 2018-05-29  Tom Tromey  <tom@tromey.com>
9085
9086         * objc-lang.h: Don't include cp-support.h.
9087         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9088         declare VEC.
9089
9090 2018-05-27  Tom Tromey  <tom@tromey.com>
9091
9092         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9093
9094 2018-05-25  Tom Tromey  <tom@tromey.com>
9095
9096         * value.c (value::location): Initialize.
9097
9098 2018-05-25  Tom Tromey  <tom@tromey.com>
9099
9100         * dbxread.c (init_bincl_list): Remove.
9101         (bincl_list): Now a std::vector.
9102         (bincls_allocated, next_bincl): Remove.
9103         (free_bincl_list, do_free_bincl_list_cleanup)
9104         (make_cleanup_free_bincl_list): Remove.
9105         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9106         unique_xmalloc_ptr.
9107         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9108         (struct header_file_location): Add constructor.
9109         (add_bincl_to_list): Remove.
9110
9111 2018-05-25  Tom Tromey  <tom@tromey.com>
9112
9113         * tui/tui.c (tui_enable): Update.
9114         * mi/mi-interp.c (mi_interp::init): Update.
9115         * interps.h (class interp) <name>: New method.
9116         <m_name>: Rename from name.
9117         (~scoped_restore_interp): Update.
9118         * interps.c (interp::interp): Update.
9119         (interp_add, interp_set, interp_lookup_existing)
9120         (current_interp_named_p): Update.
9121
9122 2018-05-25  Tom Tromey  <tom@tromey.com>
9123
9124         * interps.c (interp_name): Remove.
9125         * mi/mi-interp.c (mi_interp::init): Update.
9126         * interps.h (interp_name): Remove.
9127         (~scoped_restore_interp): Update.
9128         * tui/tui.c (tui_enable): Update.
9129
9130 2018-05-25  Tom Tromey  <tom@tromey.com>
9131
9132         * utils.c (fputs_maybe_filtered): Update.
9133         * linespec.c (decode_line_full): Update.
9134         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9135         (mi_print_breakpoint_for_event, mi_solib_loaded)
9136         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9137         (mi_user_selected_context_changed): Update.
9138         * mi/mi-main.c (mi_execute_command): Update.
9139         * cli/cli-script.c (execute_control_command): Update.
9140         * python/python.c (execute_gdb_command): Update.
9141         * solib.c (info_sharedlibrary_command): Update.
9142         * interps.c (interp_ui_out): Remove.
9143         * interps.h (interp_ui_out): Remove.
9144
9145 2018-05-25  Tom Tromey  <tom@tromey.com>
9146
9147         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9148         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9149         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9150
9151 2018-05-25  Tom Tromey  <tom@tromey.com>
9152
9153         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9154         * interps.c (interp_exec): Use scoped_restore.
9155
9156 2018-05-25  Tom Tromey  <tom@tromey.com>
9157
9158         * remote.c (remote_target::remote_file_get): Use
9159         gdb::byte_vector.
9160         (remote_target::remote_file_put): Likewise.
9161
9162 2018-05-25  Tom Tromey  <tom@tromey.com>
9163
9164         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9165         a std::string.
9166         (get_pe_section_index, add_pe_exported_sym): Update.
9167         (read_pe_exported_syms): Use gdb::def_vector.
9168
9169 2018-05-25  Tom Tromey  <tom@tromey.com>
9170
9171         * frame.c (remove_prev_frame): Remove.
9172         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9173
9174 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9175
9176         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9177         Remove prototypes.
9178         * mips-linux-nat.c (supply_fpregset): Always call
9179         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9180         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9181         `mips_fill_fpregset'.
9182         * mips-linux-tdep.c (mips_supply_fpregset)
9183         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9184         (mips_fill_fpregset_wrapper): Remove functions.
9185         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9186         (mips_linux_fpregset): Remove variable.
9187         (mips_linux_iterate_over_regset_sections): Use
9188         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9189         (mips_linux_o32_sigframe_init): Remove comment.
9190
9191 2018-05-25  Pedro Alves  <palves@redhat.com>
9192
9193         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9194         (struct readahead_cache, struct packet_reg, struct
9195         remote_arch_state, class remote_state): Move higher up in the
9196         file.
9197         (remote_target::m_remote_state): Now an object instead of a pointer.
9198         (remote_target::get_remote_state): Adjust.
9199
9200 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9201
9202         * stack.c (select_and_print_frame): Delete.
9203         (struct function_bounds): Move struct within function.
9204         (func_command): Most content moved into new function
9205         find_frame_for_function, use new function, print result, add
9206         function comment.
9207         (find_frame_for_function): New function, now returns a result.
9208
9209 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9210
9211         * stack.c (iterate_over_block_arg_vars): Fix comment.
9212         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9213
9214 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9215
9216         PR gdb/23203
9217         * frame.c
9218         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9219         Define.
9220         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9221         Define.
9222         * frame.h (class scoped_restore_selected_frame): New class.
9223         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9224         of any exception, use scoped_restore_selected_frame to restore the
9225         frame instead.
9226
9227 2018-05-24  Pedro Alves  <palves@redhat.com>
9228
9229         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9230         override.
9231
9232 2018-05-23  Tom Tromey  <tom@tromey.com>
9233
9234         * complaints.c (struct complaints): Remove.
9235         (symfile_complaint_book): Remove.
9236         (series): New global.
9237         (complaint_internal): Update.
9238         (clear_complaints): Update.
9239
9240 2018-05-23  Tom Tromey  <tom@tromey.com>
9241
9242         * complaints.c (counters): New global.
9243         (struct complain): Remove.
9244         (struct complaints) <root>: Remove.
9245         (complaint_sentinel): Remove.
9246         (symfile_complaint_book): Update.
9247         (find_complaint) Remove.
9248         (complaint_internal, clear_complaints): Update.
9249
9250 2018-05-23  Tom Tromey  <tom@tromey.com>
9251
9252         * complaints.c (struct complain) <file, line>: Remove.
9253         (find_complaint): Remove file, line parameters.
9254         (complaint_internal): Update.
9255
9256 2018-05-23  Tom Tromey  <tom@tromey.com>
9257
9258         * complaints.c (vcomplaint): Remove.
9259         (complaint_internal) Merge in contents of vcomplaint.
9260
9261 2018-05-23  Tom Tromey  <tom@tromey.com>
9262
9263         * complaints.c (struct complaints) <explanation>: Remove.
9264         (symfile_explanations): Remove.
9265         (symfile_complaint_book): Update.
9266         (vcomplaint): Update.
9267         (struct explanation): Remove.
9268
9269 2018-05-23  Tom Tromey  <tom@tromey.com>
9270
9271         * complaints.c (symfile_complaints): Remove.
9272         (complaint_internal): Remove "complaints" parameter.
9273         (clear_complaints, vcomplaint): Remove "c" parameter.
9274         (get_complaints): Remove.
9275         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9276         (dwarf2_debug_line_missing_file_complaint)
9277         (dwarf2_debug_line_missing_end_sequence_complaint)
9278         (dwarf2_complex_location_expr_complaint)
9279         (dwarf2_const_value_length_mismatch_complaint)
9280         (dwarf2_section_buffer_overflow_complaint)
9281         (dwarf2_macro_malformed_definition_complaint)
9282         (dwarf2_invalid_attrib_class_complaint)
9283         (create_addrmap_from_index, dw2_symtab_iter_next)
9284         (dw2_expand_marked_cus)
9285         (dw2_debug_names_iterator::find_vec_in_debug_names)
9286         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9287         (create_debug_type_hash_table, init_cutu_and_read_dies)
9288         (partial_die_parent_scope, add_partial_enumeration)
9289         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9290         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9291         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9292         (create_cus_hash_table, create_dwp_hash_table)
9293         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9294         (dwarf2_rnglists_process, dwarf2_ranges_process)
9295         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9296         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9297         (handle_struct_member_die, process_structure_scope)
9298         (read_array_type, read_common_block, read_module_type)
9299         (read_tag_pointer_type, read_typedef, read_base_type)
9300         (read_subrange_type, load_partial_dies, partial_die_info::read)
9301         (partial_die_info::read, partial_die_info::read)
9302         (partial_die_info::read, read_checked_initial_length_and_offset)
9303         (dwarf2_string_attr, read_formatted_entries)
9304         (dwarf_decode_line_header)
9305         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9306         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9307         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9308         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9309         (get_signatured_type, get_DW_AT_signature_type)
9310         (decode_locdesc, file_file_name, consume_improper_spaces)
9311         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9312         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9313         (dwarf2_symbol_mark_computed, set_die_type)
9314         (read_attribute_value): Update.
9315         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9316         Update.
9317         * dbxread.c (unknown_symtype_complaint)
9318         (lbrac_mismatch_complaint, repeated_header_complaint)
9319         (set_namestring, function_outside_compilation_unit_complaint)
9320         (read_dbx_symtab, process_one_symbol): Update.
9321         * gdbtypes.c (stub_noname_complaint): Update.
9322         * windows-nat.c (handle_unload_dll): Update.
9323         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9324         (decode_base_type): Update.
9325         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9326         (eb_complaint, record_include_begin, record_include_end)
9327         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9328         (process_xcoff_symbol, read_symbol)
9329         (function_outside_compilation_unit_complaint)
9330         (scan_xcoff_symtab): Update.
9331         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9332         * buildsym.c (finish_block_internal, make_blockvector)
9333         (end_symtab_get_static_block, augment_type_symtab): Update.
9334         * dtrace-probe.c (dtrace_process_dof)
9335         (dtrace_static_probe_ops::get_probes): Update.
9336         * complaints.h (struct complaint): Don't declare.
9337         (symfile_complaints): Remove.
9338         (complaint_internal): Remove "complaints" parameter.
9339         (complaint): Likewise.
9340         (clear_complaints): Likewise.
9341         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9342         (reread_symbols): Update.
9343         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9344         (dwarf2_frame_cache, decode_frame_entry): Update.
9345         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9346         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9347         (info_selectors_command): Update.
9348         * macrotab.c (macro_include, check_for_redefinition)
9349         (macro_undef): Update.
9350         * objfiles.c (filter_overlapping_sections): Update.
9351         * stabsread.c (invalid_cpp_abbrev_complaint)
9352         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9353         (define_symbol, error_type, read_type, rs6000_builtin_type)
9354         (stabs_method_name_from_physname, read_member_functions)
9355         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9356         (attach_fields_to_type, complain_about_struct_wipeout)
9357         (read_range_type, read_args, common_block_start)
9358         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9359         Update.
9360         * mdebugread.c (index_complaint, unknown_ext_complaint)
9361         (basic_type_complaint, bad_tag_guess_complaint)
9362         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9363         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9364         (parse_procedure, parse_lines)
9365         (function_outside_compilation_unit_complaint)
9366         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9367         (bad_tag_guess_complaint, reg_value_complaint): Update.
9368         * cp-support.c (demangled_name_complaint): Update.
9369         * macroscope.c (sal_macro_scope): Update.
9370         * dwarf-index-write.c (class debug_names): Update.
9371
9372 2018-05-23  Tom Tromey  <tom@tromey.com>
9373
9374         * complaints.c (clear_complaints): Remove "noisy" parameter.
9375         * complaints.h (clear_complaints): Update.
9376         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9377         (reread_symbols): Update.
9378
9379 2018-05-23  Tom Tromey  <tom@tromey.com>
9380
9381         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9382         SUBSEQUENT_MESSAGE.
9383         (vcomplaint, clear_complaints): Update.
9384         (symfile_explanations): Remove some messages.
9385
9386 2018-05-23  Tom Tromey  <tom@tromey.com>
9387
9388         * complaints.c (internal_complaint): Remove.
9389         * complaints.h (internal_complaint): Remove.
9390
9391 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9392
9393         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9394
9395 2018-05-22  Pedro Alves  <palves@redhat.com>
9396
9397         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9398         (remote_fileio_badfd, remote_fileio_return_errno)
9399         (remote_fileio_return_success, remote_fileio_func_open)
9400         (remote_fileio_func_open, remote_fileio_func_close)
9401         (remote_fileio_func_read, remote_fileio_func_write)
9402         (remote_fileio_func_lseek, remote_fileio_func_rename)
9403         (remote_fileio_func_unlink, remote_fileio_func_stat)
9404         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9405         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9406         remote_target parameter.
9407         (remote_fio_func_map) <func>: Add remote_target parameter.
9408         (do_remote_fileio_request, remote_fileio_request):
9409         * remote-fileio.h (remote_fileio_request):
9410         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9411         remote_target parameter.
9412         (remote_notif_process, handle_notification): Adjust to pass down
9413         the remote.
9414         (remote_notif_state_allocate): Add remote_target parameter.  Save
9415         it.
9416         * remote-notif.h (struct remote_target): Forward declare.
9417         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9418         remote_target parameter.
9419         (struct remote_notif_state) <remote>: New field.
9420         (remote_notif_ack, remote_notif_parse): Add remote_target
9421         parameter.
9422         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9423         remote_target parameter.
9424         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9425         (threads_listing_context, rmt_thread_action, protocol_feature)
9426         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9427         (packet_result, struct threads_listing_context, remote_state):
9428         Move definitions and declarations higher up.
9429         (remote_target) <~remote_target>: Declare.
9430         (remote_download_command_source, remote_file_put, remote_file_get)
9431         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9432         (remote_hostio_pread_vFile, remote_hostio_send_command)
9433         (remote_hostio_set_filesystem, remote_hostio_open)
9434         (remote_hostio_close, remote_hostio_unlink, remote_state)
9435         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9436         (get_memory_write_packet_size, get_memory_read_packet_size)
9437         (append_pending_thread_resumptions, remote_detach_1)
9438         (append_resumption, remote_resume_with_vcont)
9439         (add_current_inferior_and_thread, wait_ns, wait_as)
9440         (process_stop_reply, remote_notice_new_inferior)
9441         (process_initial_stop_replies, remote_add_thread)
9442         (btrace_sync_conf, remote_btrace_maybe_reopen)
9443         (remove_new_fork_children, kill_new_fork_children)
9444         (discard_pending_stop_replies, stop_reply_queue_length)
9445         (check_pending_events_prevent_wildcard_vcont)
9446         (discard_pending_stop_replies_in_queue, stop_reply)
9447         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9448         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9449         (remote_interrupt_as, remote_interrupt_ns)
9450         (remote_get_noisy_reply, remote_query_attached)
9451         (remote_add_inferior, remote_current_thread, get_current_thread)
9452         (set_thread, set_general_thread, set_continue_thread)
9453         (set_general_process, write_ptid)
9454         (remote_unpack_thread_info_response, remote_get_threadinfo)
9455         (parse_threadlist_response, remote_get_threadlist)
9456         (remote_threadlist_iterator, remote_get_threads_with_ql)
9457         (remote_get_threads_with_qxfer)
9458         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9459         (get_offsets, remote_check_symbols, remote_supported_packet)
9460         (remote_query_supported, remote_packet_size)
9461         (remote_serial_quit_handler, remote_detach_pid)
9462         (remote_vcont_probe, remote_resume_with_hc)
9463         (send_interrupt_sequence, interrupt_query)
9464         (remote_notif_get_pending_events, fetch_register_using_p)
9465         (send_g_packet, process_g_packet, fetch_registers_using_g)
9466         (store_register_using_P, store_registers_using_G)
9467         (set_remote_traceframe, check_binary_download)
9468         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9469         (remote_xfer_live_readonly_partial, remote_read_bytes)
9470         (remote_send_printf, remote_flash_write, readchar)
9471         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9472         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9473         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9474         (extended_remote_disable_randomization, extended_remote_run)
9475         (send_environment_packet, extended_remote_environment_support)
9476         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9477         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9478         (packet_command): Now methods of ...
9479         (remote_target): ... this class.
9480         (m_remote_state) <remote_target>: New field.
9481         (struct remote_state) <stop_reply_queue,
9482         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9483         fields.
9484         (remote_state::remote_state): Allocate stop_reply_queue.
9485         (remote_state): Delete global.
9486         (get_remote_state_raw): Delete.
9487         (remote_target::get_remote_state): Allocate m_remote_state on
9488         demand.
9489         (get_current_remote_target): New.
9490         (remote_ops, extended_remote_ops): Delete.
9491         (wait_forever_enabled_p, remote_async_inferior_event_token):
9492         Delete, moved to struct remote_state.
9493         (remote_target::close): Delete self.  Destruction bits split to
9494         ...
9495         (remote_target::~remote_target): ... this.
9496         (show_memory_packet_size): Adjust to use
9497         get_current_remote_target.
9498         (struct protocol_feature) <func>: Add remote_target parameter.
9499         All callers adjusted.
9500         (curr_quit_handler_target): New.
9501         (remote_serial_quit_handler): Reimplement.
9502         (remote_target::open_1): Adjust to use get_current_remote_target.
9503         Heap-allocate remote_target/extended_remote_target instances.
9504         (vcont_builder::vcont_builder): Add remote_target parameter, and
9505         save it in m_remote.  All callers adjusted.
9506         (vcont_builder::m_remote): New field.
9507         (vcont_builder::restart, vcont_builder::flush)
9508         (vcont_builder::push_action): Use it.
9509         (remote_target::commit_resume): Use it.
9510         (struct queue_iter_param) <remote>: New field.
9511         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9512         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9513         (check_pending_event_prevents_wildcard_vcont_callback)
9514         (remote_target::check_pending_events_prevent_wildcard_vcont)
9515         (remote_target::discard_pending_stop_replies)
9516         (remote_target::discard_pending_stop_replies_in_queue)
9517         (remote_target::remote_notif_remove_queued_reply): Fill in
9518         'remote' field.
9519         (remote_notif_get_pending_events): New.
9520         (remote_target::readchar, remote_target::remote_serial_write):
9521         Save/restore curr_quit_handler_target.
9522         (putpkt): New.
9523         (kill_new_fork_children): Fill in 'remote' field.
9524         (packet_command): Use get_current_remote_target, defer to
9525         remote_target method of same name.
9526         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9527         parameter, and save it in m_remote.  All callers adjusted.
9528         (scoped_remote_fd::release): Use m_remote.
9529         (scoped_remote_fd::m_remote): New field.
9530         (remote_file_put, remote_file_get, remote_file_delete): Use
9531         get_current_remote_target, defer to remote_target method of same
9532         name.
9533         (remote_btrace_reset): Add remote_state paremeter.  Update all
9534         callers.
9535         (remote_async_inferior_event_handler). Pass down 'data'.
9536         (remote_new_objfile): Use get_current_remote_target.
9537         (remote_target::vcont_r_supported): New.
9538         (set_range_stepping): Use get_current_remote_target and
9539         remote_target::vcont_r_supported.
9540         (_initialize_remote): Don't allocate 'remote_state' and
9541         'stop_reply_queue' globals.
9542         * remote.h (struct remote_target): Forward declare.
9543         (getpkt, putpkt, remote_notif_get_pending_events): Add
9544         'remote_target' parameter.
9545
9546 2018-05-22  Pedro Alves  <palves@redhat.com>
9547
9548         * remote.c (vcont_builder): Now a class.  Make all data members
9549         private.
9550         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9551         Declare methods.
9552         (vcont_builder_restart): Rename to ...
9553         (vcont_builder::restart): ... this.
9554         (vcont_builder_flush): Rename to ...
9555         (vcont_builder::flush): ... this.
9556         (vcont_builder_push_action): Rename to ...
9557         (vcont_builder::push_action): ... this.
9558         (remote_target::commit_resume): Adjust.
9559
9560 2018-05-22  Pedro Alves  <palves@redhat.com>
9561
9562         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9563         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9564         (get_fixed_memory_packet_size): New.
9565         (get_memory_packet_size): Use it.
9566         (set_memory_packet_size): Don't override the config size with
9567         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9568         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9569         Don't refer to get_memory_packet_size if not connected to a remote
9570         target.  Show "(default)" if configured size is 0.
9571
9572 2018-05-22  Pedro Alves  <palves@redhat.com>
9573
9574         * remote.c (remote_target::mourn_inferior): Move
9575         discard_pending_stop_replies call here from ...
9576         (_initialize_remote): ... here.
9577
9578 2018-05-22  Pedro Alves  <palves@redhat.com>
9579
9580         * remote.c (compare_section_command): Remove set_general_process
9581         call.
9582
9583 2018-05-22  Pedro Alves  <palves@redhat.com>
9584
9585         * remote.c (struct packet_reg, struct remote_arch_state):
9586         Move higher up in the file.
9587         (remote_state) <m_arch_states>: Store remote_arch_state values
9588         instead of remote_arch_state pointers.
9589         (remote_state::get_remote_arch_state): Adjust.
9590
9591 2018-05-22  Pedro Alves  <palves@redhat.com>
9592
9593         * remote.c: Include <unordered_map>.
9594         (remote_state): Now a class.
9595         (remote_state) <get_remote_arch_state>: Declare method.
9596         <get_remote_arch_state>: New field.
9597         (remote_arch_state) <remote_arch_state>: Declare ctor.
9598         <regs>: Now a unique_ptr.
9599         (remote_gdbarch_data_handle): Delete.
9600         (get_remote_arch_state): Delete.
9601         (remote_state::get_remote_arch_state): New.
9602         (get_remote_state): Adjust to call remote_state's
9603         get_remote_arch_state method.
9604         (init_remote_state): Delete, bits factored out to ...
9605         (remote_arch_state::remote_arch_state): ... this new method.
9606         (get_remote_packet_size, get_memory_packet_size)
9607         (process_g_packet, remote_target::fetch_registers)
9608         (remote_target::prepare_to_store, store_registers_using_G)
9609         (remote_target::store_registers, remote_target::get_trace_status):
9610         Adjust to call remote_state's method.
9611         (_initialize_remote): Remove reference to
9612         remote_gdbarch_data_handle.
9613
9614 2018-05-22  Pedro Alves  <palves@redhat.com>
9615
9616         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9617         pread>: New method declarations.
9618         (remote_target::open_1): Adjust.
9619         (readahead_cache_invalidate): Rename to ...
9620         (readahead_cache::invalidate): ... this, and adjust to be a class
9621         method.
9622         (readahead_cache_invalidate_fd): Rename to ...
9623         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9624         class method.
9625         (remote_hostio_pwrite): Adjust.
9626         (remote_hostio_pread_from_cache): Rename to ...
9627         (readahead_cache::pread): ... this, and adjust to be a class
9628         method.
9629         (remote_hostio_close): Adjust.
9630
9631 2018-05-22  Pedro Alves  <palves@redhat.com>
9632
9633         * remote.c (remote_hostio_close_cleanup): Delete.
9634         (class scoped_remote_fd): New.
9635         (remote_file_put, remote_file_get): Use it.
9636
9637 2018-05-22  Pedro Alves  <palves@redhat.com>
9638
9639         (struct vCont_action_support): Use bool and initialize all fields.
9640         (struct readahead_cache): Initialize all fields.
9641         (remote_state): Use bool and initialize all fields.
9642         (remote_state::remote_state, remote_state::~remote_state): New.
9643         (new_remote_state): Delete.
9644         (_initialize_remote): Use new to allocate remote_state.
9645
9646 2018-05-22  Pedro Alves  <palves@redhat.com>
9647             張俊芝  <zjz@zjz.name>
9648
9649         PR gdb/22973
9650         * c-exp.y: Include "c-support.h".
9651         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9652         of tolower.  Use c_ident_is_alpha to scan names.
9653         * c-lang.c: Include "c-support.h".
9654         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9655         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9656         * c-support.h: New file, with bits factored out from ...
9657         * cp-name-parser.y: ... this file.
9658         Include "c-support.h".
9659         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9660         c-support.h and renamed.
9661         (symbol_end, yylex): Adjust.
9662
9663 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9664
9665         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9666         parameter type to CORE_ADDR.
9667         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9668         parameter type in declaration to CORE_ADDR.
9669         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9670         target_auxv_search to get AT_HWCAP and use the result to get the
9671         target description.
9672         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9673         to CORE_ADDR. Remove the cast of the return value to unsigned
9674         long. Fix error predicate of target_auxv_search.
9675         (ppc_linux_nat_target::read_description): Change the type of the
9676         hwcap variable to CORE_ADDR.
9677
9678 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9679
9680         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9681         if the size of fpscr is larger than 32 bits.
9682
9683 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9684
9685         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9686         (ppc32_linux_vsxregmap): New global.
9687         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9688         regcache_supply_regset, and regcache_collect_regset.
9689         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9690         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9691         (fetch_vsx_register, store_vsx_register): Remove.
9692         (fetch_vsx_registers): Add regno parameter. Get regset using
9693         ppc_linux_vsxregset. Use regset to supply registers.
9694         (store_vsx_registers): Add regno parameter. Get regset using
9695         ppc_linux_vsxregset. Use regset to collect registers.
9696         (fetch_register): Call fetch_vsx_registers instead of
9697         fetch_vsx_register.
9698         (store_register): Call store_vsx_registers instead of
9699         store_vsx_register.
9700         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9701         new regno parameter.
9702         (store_ppc_registers): Call store_vsx_registers with -1 for the
9703         new regno parameter.
9704         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9705         (ppc_collect_vsxregset): Remove.
9706
9707 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9708
9709         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9710         offset fields.
9711         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9712         for vector register offset fields.
9713         (ppc64_fbsd_reg_offsets): Likewise.
9714         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9715         to vector register offset fields.
9716         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9717         to vector register offset fields.
9718         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9719         vector register offset fields.
9720         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9721         initializers for vector register offset fields.
9722         (rs6000_aix64_reg_offsets): Likewise.
9723         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9724         (ppc_supply_vrregset): Remove.
9725         (ppc_collect_vrregset): Remove.
9726         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9727         (ppc_linux_vrregset) : New function.
9728         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9729         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9730         (ppc32_linux_vrregset): Remove.
9731         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9732         and use result instead of ppc32_linux_vrregset.
9733         (ppc32_linux_reg_offsets): Remove initializers for vector register
9734         offset fields.
9735         (ppc64_linux_reg_offsets): Likewise.
9736         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9737         * ppc-linux-nat.c: Include regset.h.
9738         (gdb_vrregset_t): Adjust comment to account for little-endian
9739         mode.
9740         (supply_vrregset, fill_vrregset): Remove.
9741         (fetch_altivec_register, store_altivec_register): Remove.
9742         (fetch_altivec_registers): Add regno parameter. Get regset using
9743         ppc_linux_vrregset. Use regset to supply registers.
9744         (store_altivec_registers): Add regno parameter. Get regset using
9745         ppc_linux_vrregset. Use regset to collect registers.
9746         (fetch_register): Call fetch_altivec_registers instead of
9747         fetch_altivec_register.
9748         (store_register): Call store_altivec_registers instead of
9749         store_altivec_register.
9750         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9751         the new regno parameter.
9752         (store_ppc_registers): Call store_altivec_registers with -1 for
9753         the new regno parameter.
9754
9755 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9756
9757         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9758         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9759         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9760         (gdb_vrregset_t): Change array type size to
9761         PPC_LINUX_SIZEOF_VRREGSET.
9762         (gdb_vsxregset_t): Change array type size to
9763         PPC_LINUX_SIZEOF_VSXREGSET.
9764         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9765         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9766         PPC_LINUX_SIZEOF_VSXREGSET.
9767
9768 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9769
9770         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9771         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9772         nat/ppc-linux.c.
9773         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9774         ppc_linux_target_wordsize with tid.
9775         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9776         wordsize with tid.
9777         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9778         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9779         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9780         tid parameter. Remove static specifier.
9781         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9782         (ppc_linux_target_wordsize): New declaration.
9783
9784 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9785
9786         * arch/ppc-linux-common.c: New file.
9787         * arch/ppc-linux-common.h: New file.
9788         * arch/ppc-linux-tdesc.h: New file.
9789         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9790         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9791         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9792         arch/ppc-linux-tdesc.h.
9793         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9794         arch/ppc-linux-tdesc.h.
9795         (ppc_linux_nat_target::read_description): Remove target
9796         description matching code. Fill a ppc_linux_features struct and
9797         call ppc_linux_match_description with it. Move comment about ISA
9798         2.05 to ppc-linux-common.c.
9799         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9800         arch/ppc-linux-tdesc.h.
9801         (ppc_linux_core_read_description): Remove target description
9802         matching code. Fill a ppc_linux_features struct and call
9803         ppc_linux_match_description with it.
9804         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9805         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9806         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9807         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9808         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9809         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9810         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9811         (tdesc_powerpc_e500l): Remove.
9812
9813 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9814
9815         * ada-lang.c (catch_assert_command): Pass empty string instead
9816         of NULL for excep_string argument.
9817
9818 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9819
9820         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9821         the width of the requested register exceeds the width of the
9822         `ptrace' data type.
9823
9824 2018-05-21  Tom Tromey  <tom@tromey.com>
9825
9826         * printcmd.c (output_command): Remove.
9827         (output_command_const): Rename to output_command.
9828         * valprint.h (output_command): Rename from output_command_const.
9829         * tracepoint.c (trace_dump_actions): Call output_command.
9830
9831 2018-05-21  Tom Tromey  <tom@tromey.com>
9832
9833         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9834         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9835         * ada-lang.h (create_ada_exception_catchpoint): Update.
9836         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9837         std::string.
9838         (create_excep_cond_exprs, ~ada_catchpoint)
9839         (should_stop_exception, print_one_exception)
9840         (print_mention_exception, print_recreate_exception): Update.
9841         (ada_get_next_arg): Remove.
9842         (catch_ada_exception_command_split): Use std::string.  Change type
9843         of "excep_string", "cond_string".
9844         (catch_ada_exception_command): Update.
9845         (create_ada_exception_catchpoint): Change type of excep_string.
9846         (ada_exception_sal): Remove excep_string parameter.
9847         (~ada_catchpoint): Remove.
9848
9849 2018-05-21  Tom Tromey  <tom@tromey.com>
9850
9851         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9852         cleanup.
9853
9854 2018-05-21  Tom Tromey  <tom@tromey.com>
9855
9856         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9857         Return unique_xmalloc_ptr.
9858         (print_it_exception): Update.
9859
9860 2018-05-21  Tom Tromey  <tom@tromey.com>
9861
9862         * tracepoint.c (trace_dump_actions): Use std::string.
9863
9864 2018-05-21  Tom Tromey  <tom@tromey.com>
9865
9866         * symfile.c (reread_symbols): Use std::string for original_name.
9867
9868 2018-05-21  Tom Tromey  <tom@tromey.com>
9869
9870         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9871         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9872         constructor.
9873
9874 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9875
9876         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9877         instance to...
9878         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9879         * objfiles.c (get_objfile_bfd_data): Allocate
9880         objfile_per_bfd_storage with obstack_new when allocating on
9881         obstack.
9882
9883 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9884
9885         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9886         OBSTACK_ZALLOC.
9887         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9888         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9889         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9890         (add_pending): Likewise.
9891         (parse_symbol): Likewise.
9892         (parse_partial_symbols): Likewise.
9893         (psymtab_to_symtab_1): Likewise.
9894         (new_psymtab): Likewise.
9895         (elfmdebug_build_psymtabs): Likewise.
9896         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9897         * objfiles.c (get_objfile_bfd_data): Likewise.
9898         (objfile_register_static_link): Likewise.
9899         * psymtab.c (allocate_psymtab): Likewise.
9900         * stabsread.c (read_member_functions): Likewise.
9901         * xcoffread.c (xcoff_end_psymtab): Likewise.
9902
9903 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9904
9905         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9906         compiler supports std::is_trivially_constructible.
9907         * common/poison.h: Include obstack.h.
9908         (IsMallocable): Define to is_trivially_constructible if the
9909         compiler supports it, define to true_type otherwise.
9910         (xobnew): New.
9911         (XOBNEW): Redefine.
9912         (xobnewvec): New.
9913         (XOBNEWVEC): Redefine.
9914         * gdb_obstack.h (obstack_zalloc): New.
9915         (OBSTACK_ZALLOC): Redefine.
9916         (obstack_calloc): New.
9917         (OBSTACK_CALLOC): Redefine.
9918         (obstack_new): New.
9919         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9920         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9921         gdbarch.c.
9922         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9923         obstack_calloc/obstack_zalloc.
9924         (gdbarch_obstack_zalloc): Remove.
9925         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9926
9927 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9928
9929         * stack.c (backtrace_command_1): Remove useless variable int i.
9930
9931 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9932
9933         * stack.c (print_frame_info): Fix comment.
9934
9935 2018-05-18  Tom Tromey  <tom@tromey.com>
9936
9937         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9938         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9939         (~dwarf2_per_objfile): Update
9940         (dwarf2_get_dwz_file): Use new.
9941         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9942         unique_ptr.
9943
9944 2018-05-18  Tom Tromey  <tom@tromey.com>
9945
9946         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9947         unique_ptr.
9948         * dwarf2read.c (struct dwp_file): Add constructor and
9949         initializers.
9950         (open_and_init_dwp_file): Return a unique_ptr.
9951         (dwarf2_per_objfile, create_dwp_hash_table)
9952         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9953         (lookup_dwo_unit_in_dwp): Update.
9954         (open_and_init_dwp_file, get_dwp_file): Update.
9955
9956 2018-05-18  Tom Tromey  <tom@tromey.com>
9957
9958         * dwarf2read.c (dwarf2_per_objfile): Update.
9959         (struct mapped_index): Add initializers.
9960         (dwarf2_read_index): Use new.
9961         (dw2_symtab_iter_init): Update.
9962         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9963         unique_ptr.
9964
9965 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9966
9967         * dwarf2read.c (mapped_index) <total_size>: Remove.
9968
9969 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9970
9971         * unittests/format_pieces-selftests.c (test_format_specifier):
9972         Add ARI comments.
9973
9974 2018-05-18  Tom Tromey  <tom@tromey.com>
9975
9976         * c-typeprint.c (maybe_print_hole): New function.
9977         (c_print_type_struct_field_offset): Update.
9978         (c_type_print_base_struct_union): Call maybe_print_hole.
9979
9980 2018-05-17  Keith Seitz  <keiths@redhat.com>
9981
9982         * breakpoint.c (build_bpstat_chain): New function, moved from
9983         bpstat_stop_status.
9984         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9985         If no stop chain is passed, call build_bpstat_chain to build it.
9986         * breakpoint.h (build_bpstat_chain): Declare.
9987         (bpstat_stop_status): Move documentation here from breakpoint.c.
9988         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9989         build the stop chain and pass it to skip_inline_frames.
9990         Pass this stop chain to bpstat_stop_status.
9991         * inline-frame.c: Include breakpoint.h.
9992         (stopped_by_user_bp_inline_frame): New function.
9993         (skip_inline_frames): Add parameter `stop_chain'.
9994         Move documention to inline-frame.h.
9995         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9996         whether the frame should be elided.
9997         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9998         Add moved documentation and update for new parameter.
9999
10000 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10001
10002         PR cli/14975
10003         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10004         unittests/format_pieces-selftests.c.
10005         * common/format.h (format_piece) <operator==>: New.
10006         (format_pieces) <operator[]>: Remove.
10007         * common/format.c (format_pieces::format_pieces): Handle \e.
10008         * unittests/format_pieces-selftests.c: New.
10009
10010 2018-05-17  Tom Tromey  <tom@tromey.com>
10011
10012         PR symtab/23010:
10013         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10014         (dw2_instantiate_symtab): Add skip_partial parameter.
10015         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10016         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10017         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10018         (dw2_expand_symtabs_matching_one)
10019         (dw2_find_pc_sect_compunit_symtab)
10020         (dw2_debug_names_lookup_symbol)
10021         (dw2_debug_names_expand_symtabs_for_function): Update.
10022         (init_cutu_and_read_dies): Add skip_partial parameter.
10023         (process_psymtab_comp_unit, build_type_psymtabs_1)
10024         (process_skeletonless_type_unit, load_partial_comp_unit)
10025         (psymtab_to_symtab_1): Update.
10026         (load_full_comp_unit): Add skip_partial parameter.
10027         (process_imported_unit_die, dwarf2_read_addr_index)
10028         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10029         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10030         (read_signatured_type): Update.
10031
10032 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10033
10034         * value.c (release_value): Remove unused variable.
10035         (record_latest_value): Likewise.
10036         (access_value_history): Likewise.
10037         (preserve_values): Likewise.
10038
10039 2018-05-17  Tom Tromey  <tom@tromey.com>
10040
10041         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10042         Initialize.
10043
10044 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10045
10046         PR gdb/22286
10047         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10048         Also handle registers whose width is not a multiple of
10049         PTRACE_TYPE_RET.
10050         (linux_nat_trad_target::store_register): Likewise.
10051
10052 2018-05-16  Tom Tromey  <tom@tromey.com>
10053
10054         * gdbcore.h (core_bfd): Redefine.
10055         * corelow.c (core_target::close): Update.
10056         (core_target_open): Update.
10057         * progspace.h (struct program_space) <cbfd>: Now a
10058         gdb_bfd_ref_ptr.
10059
10060 2018-05-16  Tom Tromey  <tom@tromey.com>
10061
10062         PR cli/19551:
10063         * symfile-add-flags.h (enum symfile_add_flags)
10064         <SYMFILE_NOT_FILENAME>: New constant.
10065         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10066         objfile name from BFD.
10067         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10068         * minidebug.c (find_separate_debug_file_in_section): Put
10069         ".gnu_debugdata" into BFD's file name.
10070
10071 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10072
10073         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10074         Remove.
10075
10076 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10077
10078         PR binutils/21446
10079         * aarch64-tdep.c (aarch64_analyze_prologue,
10080         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10081         Indicate not interested in errors.
10082
10083 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10084
10085         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10086         Supply the MIPS_ZERO_REGNUM register.
10087
10088 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10089
10090         * mips-tdep.c (mask_address_var): Make variable static.
10091
10092 2018-05-14  Tom Tromey  <tom@tromey.com>
10093
10094         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10095
10096 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10097
10098         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10099         FXSAVE_ADDR for the mxcsr register.
10100
10101 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10102
10103         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10104
10105 2018-05-11  Pedro Alves  <palves@redhat.com>
10106
10107         * corelow.c (core_target) <core_target>: No longer inline.
10108         Initialize m_core_gdbarch, m_core_vec and build the section table
10109         here.
10110         <~core_target>: New.
10111         <core_gdbarch, get_core_register_section>: New methods.
10112         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10113         factored out from ...
10114         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10115         (core_ops): Delete.
10116         (sniff_core_bfd): Add gdbarch parameter.
10117         (core_close): Delete, merged into ...
10118         (core_target::close): ... here.  Delete self.
10119         (core_close_cleanup): Delete.
10120         (core_target_open): Allocate a core_target on the heap.  Use a
10121         unique_ptr instead of a cleanup.  Bits moved into the core_target
10122         ctor.  Adjust to use core_target methods instead of globals.
10123         (get_core_register_section): Rename to ...
10124         (core_target::get_core_register_section): ... this and adjust.
10125         (struct get_core_registers_cb_data): New.
10126         (get_core_registers_cb): Use it.  Use bool.
10127         (core_target::fetch_registers, core_target::files_info)
10128         (core_target::xfer_partial, core_target::read_description)
10129         (core_target::pid_to, core_target::thread_name): Adjust to
10130         reference class fields instead of globals.
10131         * target.h (struct target_ops_deleter, target_ops_up): New.
10132
10133 2018-05-11  Pedro Alves  <palves@redhat.com>
10134
10135         * corefile.c (core_file_command): Move to corelow.c.
10136         * corelow.c (the_core_target): Delete.
10137         (core_file_command): Moved from corefile.c.  Check exec_bfd
10138         instead of the_core_target.  Use target_detach instead of calling
10139         into the_core_target directly.
10140         (maybe_say_no_core_file_now): New.
10141         (core_target::detach): Use it.
10142         (_initialize_corelow): Remove references to the_core_target.
10143         * gdbcore.h (the_core_target): Delete.
10144
10145 2018-05-11  Tom Tromey  <tromey@redhat.com>
10146             Pedro Alves  <palves@redhat.com>
10147
10148         * corefile.c (core_bfd): Remove.
10149         * gdbcore.h (core_bfd): Now a macro.
10150         * progspace.h (struct program_space) <cbfd>: New field.
10151
10152 2018-05-11  Tom Tromey  <tom@tromey.com>
10153
10154         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10155         gdb::def_vector.
10156
10157 2018-05-10  Tom Tromey  <tom@tromey.com>
10158
10159         * configure: Rebuild.
10160         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10161
10162 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10163
10164         PR server/23158:
10165         * regformats/regdat.sh: Adjust script, following the addition
10166         of the new expedite_regs parameter to init_target_desc.
10167
10168 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10169     
10170         PR gdb/23127
10171         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10172         set_gdbarch_significant_addr_bit.
10173         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10174         set_gdbarch_significant_addr_bit.
10175         * utils.c (address_significant): Update to sign extend addr.
10176
10177 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10178
10179         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10180         (xtensa_linux_init_abi): Limit tdep->num_regs by
10181         tdep->num_nopriv_regs.
10182         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10183         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10184         not initialized.
10185
10186 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10187
10188         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10189
10190 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10191
10192         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10193         (I387_MXCSR_INIT_VAL): New constant.
10194         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10195         buffer if it was supplied by the inferior.
10196         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10197         (i387_xsave_get_clear_bv): New function.
10198         (i387_supply_xsave): Only read x87 control registers from the
10199         xsave buffer if the feature is enabled, and the state will have
10200         been written, otherwise, provide a suitable default.
10201         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10202         including x87 control registers.  Update control registers if they
10203         have changed from the default value, and mark features as enabled
10204         as required.
10205         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10206
10207 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10208
10209         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10210
10211 2018-05-07  Tom Tromey  <tom@tromey.com>
10212
10213         * configure: Rebuild.
10214         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10215
10216 2018-05-07  Tom Tromey  <tom@tromey.com>
10217
10218         PR tdep/20362:
10219         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10220         bit.  Use correct value for VDIV.
10221
10222 2018-05-04  Tom Tromey  <tom@tromey.com>
10223
10224         * configure: Rebuild.
10225         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10226
10227 2018-05-04  Tom Tromey  <tom@tromey.com>
10228
10229         * linux-record.c (record_linux_system_call) <case
10230         RECORD_SYS_RECVFROM>: Add "break".
10231
10232 2018-05-04  Tom Tromey  <tom@tromey.com>
10233
10234         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10235         Add missing "break".
10236         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10237         Add missing "break".
10238
10239 2018-05-04  Tom Tromey  <tom@tromey.com>
10240
10241         * rs6000-tdep.c (ppc_process_record_op4)
10242         (ppc_process_record_op63): Add fall-through comment.
10243
10244 2018-05-04  Tom Tromey  <tom@tromey.com>
10245
10246         * i386-tdep.c (i386_process_record): Add fall-through comment.
10247
10248 2018-05-04  Tom Tromey  <tom@tromey.com>
10249
10250         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10251         comment.
10252
10253 2018-05-04  Tom Tromey  <tom@tromey.com>
10254
10255         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10256         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10257         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10258         comment.
10259         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10260         comment.
10261         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10262         comment.
10263
10264 2018-05-04  Tom Tromey  <tom@tromey.com>
10265
10266         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10267
10268 2018-05-04  Tom Tromey  <tom@tromey.com>
10269
10270         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10271         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10272         * symfile.c (section_is_mapped): Fix fall-through comment.
10273         * stabsread.c (define_symbol, read_member_functions): Fix
10274         fall-through comment.
10275         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10276         comment.
10277         * remote.c (remote_wait_as): Fix fall-through comment.
10278         * p-exp.y (yylex): Fix fall-through comment.
10279         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10280         comment.
10281         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10282         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10283         * jv-exp.y (yylex): Fix fall-through comment.
10284         * go-exp.y (lex_one_token): Fix fall-through comment.
10285         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10286         fall-through comment.
10287         * f-exp.y (yylex): Fix fall-through comment.
10288         * dwarf2read.c (process_die): Fix fall-through comments.
10289         * dbxread.c (process_one_symbol): Fix fall-through comment.
10290         * d-exp.y (lex_one_token): Fix fall-through comment.
10291         * cp-name-parser.y (yylex): Fix fall-through comment.
10292         * coffread.c (coff_symtab_read): Fix fall-through comment.
10293         * c-exp.y (lex_one_token): Fix fall-through comment.
10294         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10295         comment.
10296         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10297         comment.
10298
10299 2018-05-04  Tom Tromey  <tom@tromey.com>
10300
10301         PR python/22730:
10302         * NEWS: Mention gdb.execute change.
10303         * gdbcmd.h (execute_control_command): Don't declare.
10304         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10305         execute_control_commands, execute_control_commands_to_string.
10306         * cli/cli-script.h (execute_control_commands)
10307         (execute_control_commands_to_string): Declare.
10308         (execute_control_command): Add from_tty parameter.
10309         * cli/cli-script.c (execute_control_commands)
10310         (execute_control_commands_to_string): New functions.
10311         (execute_user_command): Use execute_control_commands.
10312         (execute_control_command_1): Add "from_tty" parameter.  Update.
10313         (execute_control_command): Likewise.
10314
10315 2018-05-04  Tom Tromey  <tom@tromey.com>
10316
10317         PR python/22731:
10318         * NEWS: Mention that breakpoint commands are writable.
10319         * python/py-breakpoint.c (bppy_set_commands): New function.
10320         (breakpoint_object_getset) <"commands">: Use it.
10321
10322 2018-05-04  Tom Tromey  <tom@tromey.com>
10323
10324         * tracepoint.c (actions_command): Update.
10325         * mi/mi-cmd-break.c (mi_command_line_array)
10326         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10327         (mi_read_next_line): Remove.
10328         (mi_cmd_break_commands): Update.
10329         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10330         function_view.
10331         * cli/cli-script.c (get_command_line): Update.
10332         (process_next_line): Use function_view.  Constify.
10333         (recurse_read_control_structure, read_command_lines)
10334         (read_command_lines_1): Change argument types to function_view.
10335         (do_define_command, document_command): Update.
10336         * breakpoint.h (check_tracepoint_command): Don't declare.
10337         * breakpoint.c (check_tracepoint_command): Remove.
10338         (commands_command_1, create_tracepoint_from_upload): Update.
10339
10340 2018-05-04  Tom Tromey  <tom@tromey.com>
10341
10342         PR gdb/11750:
10343         * cli/cli-script.h (enum command_control_type) <define_control>:
10344         New constant.
10345         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10346         (build_command_line, execute_control_command_1)
10347         (process_next_line): Likewise.
10348         (do_define_command): New function, extracted from define_command.
10349         (define_command): Use it.
10350
10351 2018-05-04  Tom Tromey  <tom@tromey.com>
10352
10353         * tracepoint.c (actions_command): Update.
10354         * cli/cli-script.h (read_command_lines): Update.
10355         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10356         (MAX_TMPBUF): Remove define.
10357         (define_command): Use string_printf.
10358         (document_command): Likewise.
10359         * breakpoint.c (commands_command_1): Update.
10360
10361 2018-05-04  Tom Tromey  <tom@tromey.com>
10362
10363         * top.c (execute_command): Update.
10364         * cli/cli-script.h (print_command_lines): Now varargs.
10365         * cli/cli-script.c (print_command_lines): Now varargs.
10366         (execute_control_command_1) <case while_control, case if_control>:
10367         Update.
10368
10369 2018-05-04  Tom Tromey  <tom@tromey.com>
10370
10371         * tracepoint.c (all_tracepoint_actions): Rename from
10372         all_tracepoint_actions_and_cleanup.  Change return type.
10373         (actions_command, encode_actions_1, encode_actions)
10374         (trace_dump_actions, tdump_command): Update.
10375         * remote.c (remote_download_command_source): Update.
10376         * python/python.c (gdbpy_eval_from_control_command)
10377         (python_command, python_interactive_command): Update.
10378         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10379         * guile/guile.c (guile_command)
10380         (gdbscm_eval_from_control_command, guile_command): Update.
10381         * compile/compile.c (compile_code_command)
10382         (compile_print_command, compile_to_object): Update.
10383         * cli/cli-script.h (struct command_lines_deleter): New.
10384         (counted_command_line): New typedef.
10385         (struct command_line): Add constructor, destructor.
10386         <body_list>: Remove.
10387         <body_list_0, body_list_1>: New members.
10388         (command_line_up): Remove typedef.
10389         (read_command_lines, read_command_lines_1, get_command_line):
10390         Update.
10391         (copy_command_lines): Don't declare.
10392         * cli/cli-script.c (build_command_line): Use "new".
10393         (get_command_line): Return counted_command_line.
10394         (print_command_lines, execute_user_command)
10395         (execute_control_command_1, while_command, if_command): Update.
10396         (realloc_body_list): Remove.
10397         (process_next_line, recurse_read_control_structure): Update.
10398         (read_command_lines, read_command_lines_1): Return counted_command_line.
10399         (free_command_lines): Use "delete".
10400         (copy_command_lines): Remove.
10401         (define_command, document_command, show_user_1): Update.
10402         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10403         a counted_command_line.
10404         * breakpoint.h (counted_command_line): Remove typedef.
10405         (breakpoint_set_commands): Update.
10406         * breakpoint.c (check_no_tracepoint_commands)
10407         (validate_commands_for_breakpoint): Update.
10408         (breakpoint_set_commands): Change commands to be a
10409         counted_command_line.
10410         (commands_command_1, update_dprintf_command_list)
10411         (create_tracepoint_from_upload): Update.
10412
10413 2018-05-04  Tom Tromey  <tom@tromey.com>
10414
10415         * cli/cli-decode.h (cmd_list_element): New constructor.
10416         (~cmd_list_element): New destructor.
10417         (struct cmd_list_element): Add initializers.
10418         * cli/cli-decode.c (do_add_cmd): Use "new".
10419         (delete_cmd): Use "delete".
10420
10421 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10422             Pedro Alves <palves@redhat.com>
10423
10424         PR breakpoints/19806 and support for PR external/20207.
10425         * NEWS: Mention Aarch64 watchpoint improvements.
10426         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10427         watchpoints and PR external/20207 watchpoints.
10428         * nat/aarch64-linux-hw-point.c
10429         (kernel_supports_any_contiguous_range): New.
10430         (aarch64_watchpoint_offset): New.
10431         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10432         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10433         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10434         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10435         next_addr_orig_p.  Support PR external/20207 watchpoints.
10436         (aarch64_downgrade_regs): New.
10437         (aarch64_dr_state_insert_one_point): New parameters offset and
10438         addr_orig.
10439         (aarch64_dr_state_remove_one_point): Likewise.
10440         (aarch64_handle_breakpoint): Update caller.
10441         (aarch64_handle_aligned_watchpoint): Likewise.
10442         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10443         aligned_offset.
10444         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10445         aarch64_downgrade_regs.
10446         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10447         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10448         (DR_CONTROL_MASK): ... this.
10449         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10450         (unsigned int aarch64_watchpoint_offset): New prototype.
10451         (aarch64_linux_set_debug_regs): Remove const from state.
10452         * utils.c (align_up, align_down): Move to ...
10453         * common/common-utils.c (align_up, align_down): ... here.
10454         * utils.h (align_up, align_down): Move to ...
10455         * common/common-utils.h (align_up, align_down): ... here.
10456
10457 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10458
10459         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10460         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10461         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10462         Re-implement to match the ABI as summarized in GCC's
10463         gcc/config/sparc/sparc.c.  All callers updated.
10464         (sparc32_store_arguments): Remove assertion.
10465
10466 2018-05-04  Tom Tromey  <tom@tromey.com>
10467
10468         * printcmd.c: Don't include tui.h.
10469         (decode_format): Use skip_spaces.
10470
10471 2018-05-04  Tom Tromey  <tom@tromey.com>
10472
10473         PR gdb/22619:
10474         * printcmd.c (last_count): New global.
10475         (x_command): Use saved count when repeating.
10476
10477 2018-05-04  Tom Tromey  <tom@tromey.com>
10478
10479         * nto-procfs.c (do_closedir_cleanup): Remove.
10480         (procfs_pidlist): Use gdb_dir_up.
10481         * procfs.c (do_closedir_cleanup): Remove.
10482         (proc_update_threads): Use gdb_dir_up.
10483         * common/filestuff.h (struct gdb_dir_deleter): New.
10484         (gdb_dir_up): New typedef.
10485
10486 2018-05-04  Tom Tromey  <tom@tromey.com>
10487
10488         * ada-lang.c (print_mention_exception): Use std::string.
10489
10490 2018-05-04  Tom Tromey  <tom@tromey.com>
10491
10492         * ada-lang.c (create_excep_cond_exprs): Update.
10493         (ada_exception_catchpoint_cond_string): Use std::string.
10494
10495 2018-05-04  Tom Tromey  <tom@tromey.com>
10496
10497         * ada-lang.c (xget_renaming_scope): Return std::string.
10498         (old_renaming_is_invisible): Update.
10499
10500 2018-05-04  Tom Tromey  <tom@tromey.com>
10501
10502         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10503         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10504
10505 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10506
10507         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10508
10509 2018-05-04  Tom Tromey  <tom@tromey.com>
10510
10511         * remote.c (remote_query_supported_append): Change type.
10512         (remote_check_symbols): Update.
10513
10514 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10515
10516         PR gdb/11420
10517         * configure.ac: Prepend libpython.
10518         * python/python-config.py: Likewise.
10519         * configure: Regenerate.
10520
10521 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10522
10523         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10524
10525 2018-05-03  Pedro Alves  <palves@redhat.com>
10526
10527         * s390-linux-nat.c
10528         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10529         override.  Write 'true' instead of '1'.
10530         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10531         declaration.
10532
10533 2018-05-02  Pedro Alves  <palves@redhat.com>
10534
10535         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10536         add_inf_child_target.
10537         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10538         add_inf_child_target.
10539         * aix-thread.c (aix_thread_target_info): New.
10540         (aix_thread_target) <shortname, longname, doc>: Delete.
10541         <info>: New.
10542         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10543         add_inf_child_target.
10544         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10545         add_inf_child_target.
10546         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10547         add_inf_child_target.
10548         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10549         add_inf_child_target.
10550         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10551         add_inf_child_target.
10552         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10553         add_inf_child_target.
10554         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10555         add_inf_child_target.
10556         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10557         add_inf_child_target.
10558         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10559         add_inf_child_target.
10560         * bfd-target.c (target_bfd_target_info): New.
10561         (target_bfd) <shortname, longname, doc>: Delete.
10562         <info>: New.
10563         * bsd-kvm.c (bsd_kvm_target_info): New.
10564         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10565         <info>: New.
10566         (bsd_kvm_target::open): Rename to ...
10567         (bsd_kvm_target_open): ... this.  Adjust.
10568         * bsd-uthread.c (bsd_uthread_target_info): New.
10569         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10570         <info>: New.
10571         * corefile.c (core_file_command): Adjust.
10572         * corelow.c (core_target_info): New.
10573         (core_target) <shortname, longname, doc>: Delete.
10574         <info>: New.
10575         (core_target::open): Rename to ...
10576         (core_target_open): ... this.  Adjust.
10577         * ctf.c (ctf_target_info): New.
10578         (ctf_target) <shortname, longname, doc>: Delete.
10579         <info>: New.
10580         (ctf_target::open): Rename to ...
10581         (ctf_target_open): ... this.
10582         (_initialize_ctf): Adjust.
10583         * exec.c (exec_target_info): New.
10584         (exec_target) <shortname, longname, doc>: Delete.
10585         <info>: New.
10586         (exec_target::open): Rename to ...
10587         (exec_target_open): ... this.
10588         * gdbcore.h (core_target_open): Declare.
10589         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10590         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10591         add_inf_child_target.
10592         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10593         add_inf_child_target.
10594         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10595         add_inf_child_target.
10596         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10597         add_inf_child_target.
10598         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10599         add_inf_child_target.
10600         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10601         add_inf_child_target.
10602         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10603         add_inf_child_target.
10604         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10605         add_inf_child_target.
10606         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10607         add_inf_child_target.
10608         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10609         add_inf_child_target.
10610         * inf-child.c (inf_child_target_info): New.
10611         (inf_child_target::info): New.
10612         (inf_child_open_target): Remove 'target' parameter.  Use
10613         get_native_target instead.
10614         (inf_child_target::open): Delete.
10615         (add_inf_child_target): New.
10616         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10617         Delete.
10618         <info>: New.
10619         (add_inf_child_target): Declare.
10620         (inf_child_open_target): Declare.
10621         * linux-thread-db.c (thread_db_target_info): New.
10622         (thread_db_target) <shortname, longname, doc>: Delete.
10623         <info>: New.
10624         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10625         add_inf_child_target.
10626         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10627         add_inf_child_target.
10628         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10629         add_inf_child_target.
10630         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10631         add_inf_child_target.
10632         * make-target-delegates (print_class): Adjust.
10633         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10634         add_inf_child_target.
10635         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10636         add_inf_child_target.
10637         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10638         add_inf_child_target.
10639         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10640         add_inf_child_target.
10641         * nto-procfs.c (nto_native_target_info): New.
10642         (nto_procfs_target_native) <shortname, longname, doc>:
10643         Delete.
10644         <info>: New.
10645         (nto_procfs_target_info): New.
10646         (nto_procfs_target_procfs) <shortname, longname, doc>:
10647         Delete.
10648         <info>: New.
10649         (init_procfs_targets): Adjust.
10650         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10651         add_inf_child_target.
10652         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10653         add_inf_child_target.
10654         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10655         add_inf_child_target.
10656         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10657         add_inf_child_target.
10658         * ravenscar-thread.c (ravenscar_target_info): New.
10659         (ravenscar_thread_target) <shortname, longname, doc>:
10660         Delete.
10661         <info>: New.
10662         * record-btrace.c (record_btrace_target_info):
10663         (record_btrace_target) <shortname, longname, doc>: Delete.
10664         <info>: New.
10665         (record_btrace_target::open): Rename to ...
10666         (record_btrace_target_open): ... this.  Adjust.
10667         * record-full.c (record_longname, record_doc): New.
10668         (record_full_base_target) <shortname, longname, doc>: Delete.
10669         <info>: New.
10670         (record_full_target_info): New.
10671         (record_full_target): <shortname>: Delete.
10672         <info>: New.
10673         (record_full_core_open_1, record_full_open_1): Update comments.
10674         (record_full_base_target::open): Rename to ...
10675         (record_full_open): ... this.
10676         (cmd_record_full_restore): Update.
10677         (_initialize_record_full): Update.
10678         * remote-sim.c (remote_sim_target_info): New.
10679         (gdbsim_target) <shortname, longname, doc>: Delete.
10680         <info>: New.
10681         (gdbsim_target::open): Rename to ...
10682         (gdbsim_target_open): ... this.
10683         (_initialize_remote_sim): Adjust.
10684         * remote.c (remote_doc): New.
10685         (remote_target_info): New.
10686         (remote_target) <shortname, longname, doc>: Delete.
10687         <info>: New.
10688         (extended_remote_target_info): New.
10689         (extended_remote_target) <shortname, longname, doc>: Delete.
10690         <info>: New.
10691         (remote_target::open_1): Make static.  Adjust.
10692         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10693         * s390-linux-nat.c (_initialize_s390_nat): Use
10694         add_inf_child_target.
10695         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10696         add_inf_child_target.
10697         * sol-thread.c (thread_db_target_info): New.
10698         (sol_thread_target) <shortname, longname, doc>: Delete.
10699         <info>: New.
10700         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10701         add_inf_child_target.
10702         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10703         add_inf_child_target.
10704         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10705         add_inf_child_target.
10706         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10707         add_inf_child_target.
10708         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10709         add_inf_child_target.
10710         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10711         add_inf_child_target.
10712         * spu-linux-nat.c (_initialize_spu_nat): Use
10713         add_inf_child_target.
10714         * spu-multiarch.c (spu_multiarch_target_info): New.
10715         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10716         <info>: New.
10717         * target-delegates.c: Regenerate.
10718         * target.c: Include <unordered_map>.
10719         (target_ops_p): Delete.
10720         (DEF_VEC_P(target_ops_p)): Delete.
10721         (target_factories): New.
10722         (test_target_info): New.
10723         (test_target_ops::info): New.
10724         (open_target): Adjust to use target_factories.
10725         (add_target_with_completer): Rename to ...
10726         (add_target): ... this.  Change prototype.  Register target_info
10727         and open callback in target_factories.  Register target_info in
10728         command context instead of target_ops.
10729         (add_target): Delete old implementation.
10730         (add_deprecated_target_alias): Change prototype.  Adjust.
10731         (the_native_target): New.
10732         (set_native_target, get_native_target): New.
10733         (find_default_run_target): Use the_native_target.
10734         (find_attach_target, find_run_target): Simplify.
10735         (target_ops::open): Delete.
10736         (dummy_target_info): New.
10737         (dummy_target::shortname, dummy_target::longname)
10738         (dummy_target::doc): Delete.
10739         (dummy_target::info): New.
10740         (debug_target::shortname, debug_target::longname)
10741         (debug_target::doc): Delete.
10742         (debug_target::info): New.
10743         * target.h (struct target_info): New.
10744         (target_ops::~target_ops): Add comment.
10745         (target_ops::info): New.
10746         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10747         longer virtual.  Implement in terms of target_info.
10748         (set_native_target, get_native_target): Declare.
10749         (target_open_ftype): New.
10750         (add_target, add_target_with_completer)
10751         (add_deprecated_target_alias): Change prototype.
10752         (test_target) <shortname, longname, doc>: Delete.
10753         <info>: New.
10754         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10755         add_inf_child_target.
10756         * tracefile-tfile.c (tfile_target_info): New.
10757         (tfile_target) <shortname, longname, doc>: Delete.
10758         <info>: New.
10759         (tfile_target::open): Rename to ...
10760         (tfile_target_open): ... this.
10761         (_initialize_tracefile_tfile): Adjust.
10762         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10763         add_inf_child_target.
10764         * windows-nat.c (_initialize_windows_nat): Use
10765         add_inf_child_target.
10766         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10767         add_inf_child_target.
10768
10769 2018-05-02  Pedro Alves  <palves@redhat.com>
10770
10771         * linux-nat.h (linux_nat_target) <low_new_thread,
10772         low_delete_thread, low_new_fork, low_forget_process,
10773         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10774         New virtual methods.
10775         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10776         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10777         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10778         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10779         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10780         Delete.
10781         * linux-fork.c (delete_fork): Adjust to call low method.
10782         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10783         (linux_nat_new_fork, linux_nat_forget_process_hook)
10784         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10785         (linux_nat_status_is_event):
10786         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10787         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10788         to call low method.
10789         (sigtrap_is_event): Rename to ...
10790         (linux_nat_target::low_status_is_event): ... this.
10791         (linux_nat_set_status_is_event): Delete.
10792         (save_stop_reason, linux_nat_wait_1)
10793         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10794         low methods.
10795         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10796         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10797         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10798         (linux_nat_set_prepare_to_resume): Delete.
10799         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10800         low virtual methods.
10801         * amd64-linux-nat.c: Likewise.
10802         * arm-linux-nat.c: Likewise.
10803         * i386-linux-nat.c: Likewise.
10804         * ia64-linux-nat.c: Likewise.
10805         * mips-linux-nat.c: Likewise.
10806         * ppc-linux-nat.c: Likewise.
10807         * s390-linux-nat.c: Likewise.
10808         * sparc64-linux-nat.c: Likewise.
10809         * x86-linux-nat.c: Likewise.
10810         * x86-linux-nat.h: Include "nat/x86-linux.h".
10811         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10812         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10813         Override methods.
10814
10815 2018-05-02  Pedro Alves  <palves@redhat.com>
10816
10817         * target.h (target_ops)
10818         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10819         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10820         stopped_by_watchpoint, have_continuable_watchpoint,
10821         stopped_data_address, watchpoint_addr_within_range,
10822         can_accel_watchpoint_condition, can_run, thread_alive,
10823         has_all_memory, has_memory, has_stack, has_registers,
10824         has_execution, can_async_p, is_async_p, supports_non_stop,
10825         always_non_stop_p, can_execute_reverse, supports_multi_process,
10826         supports_enable_disable_tracepoint,
10827         supports_disable_randomization, supports_string_tracing,
10828         supports_evaluation_of_breakpoint_conditions,
10829         can_run_breakpoint_commands, filesystem_is_local,
10830         can_download_tracepoint, get_trace_state_variable_value,
10831         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10832         record_is_replaying, record_will_replay,
10833         augmented_libraries_svr4_read>: Adjust to return bool.
10834         * aarch64-linux-nat.c: All implementations adjusted.
10835         * aix-thread.c: All implementations adjusted.
10836         * arm-linux-nat.c: All implementations adjusted.
10837         * breakpoint.c: All implementations adjusted.
10838         * bsd-kvm.c: All implementations adjusted.
10839         * bsd-uthread.c: All implementations adjusted.
10840         * corelow.c: All implementations adjusted.
10841         * ctf.c: All implementations adjusted.
10842         * darwin-nat.c: All implementations adjusted.
10843         * darwin-nat.h: All implementations adjusted.
10844         * exec.c: All implementations adjusted.
10845         * fbsd-nat.c: All implementations adjusted.
10846         * fbsd-nat.h: All implementations adjusted.
10847         * gnu-nat.c: All implementations adjusted.
10848         * gnu-nat.h: All implementations adjusted.
10849         * go32-nat.c: All implementations adjusted.
10850         * ia64-linux-nat.c: All implementations adjusted.
10851         * inf-child.c: All implementations adjusted.
10852         * inf-child.h: All implementations adjusted.
10853         * inf-ptrace.c: All implementations adjusted.
10854         * inf-ptrace.h: All implementations adjusted.
10855         * linux-nat.c: All implementations adjusted.
10856         * linux-nat.h: All implementations adjusted.
10857         * mips-linux-nat.c: All implementations adjusted.
10858         * nto-procfs.c: All implementations adjusted.
10859         * ppc-linux-nat.c: All implementations adjusted.
10860         * procfs.c: All implementations adjusted.
10861         * ravenscar-thread.c: All implementations adjusted.
10862         * record-btrace.c: All implementations adjusted.
10863         * record-full.c: All implementations adjusted.
10864         * remote-sim.c: All implementations adjusted.
10865         * remote.c: All implementations adjusted.
10866         * s390-linux-nat.c: All implementations adjusted.
10867         * sol-thread.c: All implementations adjusted.
10868         * spu-multiarch.c: All implementations adjusted.
10869         * target-delegates.c: All implementations adjusted.
10870         * target.c: All implementations adjusted.
10871         * target.h: All implementations adjusted.
10872         * tracefile-tfile.c: All implementations adjusted.
10873         * tracefile.c: All implementations adjusted.
10874         * tracefile.h: All implementations adjusted.
10875         * windows-nat.c: All implementations adjusted.
10876         * x86-linux-nat.h: All implementations adjusted.
10877         * x86-nat.h: All implementations adjusted.
10878
10879 2018-05-02  Pedro Alves  <palves@redhat.com>
10880
10881         * make-target-delegates (scan_target_h): Don't trim lines here.
10882         Replace sequences of tabs and/or whitespace with a single
10883         whitespace.
10884         (top level, parsing methods): Trim each line before processing it
10885         here.
10886
10887 2018-05-02  Pedro Alves  <palves@redhat.com>
10888             John Baldwin  <jhb@freebsd.org>
10889
10890         * target.h (enum strata) <debug_stratum>: New.
10891         (struct target_ops) <all delegation methods>: Replace by C++
10892         virtual methods, and drop "to_" prefix.  All references updated
10893         throughout.
10894         <to_shortname, to_longname, to_doc, to_data,
10895         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10896         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10897         virtual methods.  All references updated throughout.
10898         <can_attach, supports_terminal_ours, can_create_inferior,
10899         get_thread_control_capabilities, attach_no_wait>: New
10900         virtual methods.
10901         <insert_breakpoint, remove_breakpoint>: Now
10902         TARGET_DEFAULT_NORETURN methods.
10903         <info_proc>: Now returns bool.
10904         <to_magic>: Delete.
10905         (OPS_MAGIC): Delete.
10906         (current_target): Delete.  All references replaced by references
10907         to ...
10908         (target_stack): ... this.  New.
10909         (target_shortname, target_longname): Adjust.
10910         (target_can_run): Now a function declaration.
10911         (default_child_has_all_memory, default_child_has_memory)
10912         (default_child_has_stack, default_child_has_registers)
10913         (default_child_has_execution): Remove target_ops parameter.
10914         (complete_target_initialization): Delete.
10915         (memory_breakpoint_target): New template class.
10916         (test_target_ops): Refactor as a C++ class with virtual methods.
10917         * make-target-delegates (NAME_PART): Tighten.
10918         (POINTER_PART, CP_SYMBOL): New.
10919         (SIMPLE_RETURN_PART): Reimplement.
10920         (VEC_RETURN_PART): Expect less.
10921         (RETURN_PART, VIRTUAL_PART): New.
10922         (METHOD): Adjust to C++ virtual methods.
10923         (scan_target_h): Remove reference to C99.
10924         (dname): Output "target_ops::" prefix.
10925         (write_function_header): Adjust to output a C++ class method.
10926         (write_declaration): New.
10927         (write_delegator): Adjust to output a C++ class method.
10928         (tdname): Output "dummy_target::" prefix.
10929         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10930         method.
10931         (tdefault_names, debug_names): Delete.
10932         (return_types, tdefaults, styles, argtypes_array): New.
10933         (top level): All methods are delegators.
10934         (print_class): New.
10935         (top level): Print dummy_target and debug_target classes.
10936         * target-delegates.c: Regenerate.
10937         * target-debug.h (target_debug_print_enum_info_proc_what)
10938         (target_debug_print_thread_control_capabilities)
10939         (target_debug_print_thread_info_p): New.
10940         * target.c (dummy_target): Delete.
10941         (the_dummy_target, the_debug_target): New.
10942         (target_stack): Now extern.
10943         (set_targetdebug): Push/unpush debug target.
10944         (default_child_has_all_memory, default_child_has_memory)
10945         (default_child_has_stack, default_child_has_registers)
10946         (default_child_has_execution): Remove target_ops parameter.
10947         (complete_target_initialization): Delete.
10948         (add_target_with_completer): No longer call
10949         complete_target_initialization.
10950         (target_supports_terminal_ours): Use regular delegation.
10951         (update_current_target): Delete.
10952         (push_target): No longer check magic number.  Don't call
10953         update_current_target.
10954         (unpush_target): Don't call update_current_target.
10955         (target_is_pushed): No longer check magic number.
10956         (target_require_runnable): Skip for all stratums over
10957         process_stratum.
10958         (target_ops::info_proc): New.
10959         (target_info_proc): Use find_target_at and
10960         find_default_run_target.
10961         (target_supports_disable_randomization): Use regular delegation.
10962         (target_get_osdata): Use find_target_at.
10963         (target_ops::open, target_ops::close, target_ops::can_attach)
10964         (target_ops::attach, target_ops::can_create_inferior)
10965         (target_ops::create_inferior, target_ops::can_run)
10966         (target_can_run): New.
10967         (default_fileio_target): Use regular delegation.
10968         (target_ops::fileio_open, target_ops::fileio_pwrite)
10969         (target_ops::fileio_pread, target_ops::fileio_fstat)
10970         (target_ops::fileio_close, target_ops::fileio_unlink)
10971         (target_ops::fileio_readlink): New.
10972         (target_fileio_open_1, target_fileio_unlink)
10973         (target_fileio_readlink): Always call the target method.  Handle
10974         FILEIO_ENOSYS.
10975         (return_zero, return_zero_has_execution): Delete.
10976         (init_dummy_target): Delete.
10977         (dummy_target::dummy_target, dummy_target::shortname)
10978         (dummy_target::longname, dummy_target::doc)
10979         (debug_target::debug_target, debug_target::shortname)
10980         (debug_target::longname, debug_target::doc): New.
10981         (target_supports_delete_record): Use regular delegation.
10982         (setup_target_debug): Delete.
10983         (maintenance_print_target_stack): Skip debug_stratum.
10984         (initialize_targets): Instantiate the_dummy_target and
10985         the_debug_target.
10986         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10987         use target_stack.
10988         (target_auxv_search, fprint_target_auxv): Adjust.
10989         (info_auxv_command): Adjust to use target_stack.
10990         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10991         * exceptions.c (print_flush): Handle a NULL target_stack.
10992         * regcache.c (target_ops_no_register): Refactor as class with
10993         virtual methods.
10994
10995         * exec.c (exec_target): New class.
10996         (exec_ops): Now an exec_target.
10997         (exec_open, exec_close_1, exec_get_section_table)
10998         (exec_xfer_partial, exec_files_info, exec_has_memory)
10999         (exec_make_note_section): Refactor as exec_target methods.
11000         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11001         Delete.
11002         (exec_target::find_memory_regions): New.
11003         (_initialize_exec): Don't call init_exec_ops.
11004         * gdbcore.h (exec_file_clear): Delete.
11005
11006         * corefile.c (core_target): Delete.
11007         (core_file_command): Adjust.
11008         * corelow.c (core_target): New class.
11009         (the_core_target): New.
11010         (core_close): Remove target_ops parameter.
11011         (core_close_cleanup): Adjust.
11012         (core_target::close): New.
11013         (core_open, core_detach, get_core_registers, core_files_info)
11014         (core_xfer_partial, core_thread_alive, core_read_description)
11015         (core_pid_to_str, core_thread_name, core_has_memory)
11016         (core_has_stack, core_has_registers, core_info_proc): Rework as
11017         core_target methods.
11018         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11019         (_initialize_corelow): Initialize the_core_target.
11020         * gdbcore.h (core_target): Delete.
11021         (the_core_target): New.
11022
11023         * ctf.c: (ctf_target): New class.
11024         (ctf_ops): Now a ctf_target.
11025         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11026         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11027         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11028         methods.
11029         (init_ctf_ops): Delete.
11030         (_initialize_ctf): Don't call it.
11031         * tracefile-tfile.c (tfile_target): New class.
11032         (tfile_ops): Now a tfile_target.
11033         (tfile_open, tfile_close, tfile_files_info)
11034         (tfile_get_tracepoint_status, tfile_trace_find)
11035         (tfile_fetch_registers, tfile_xfer_partial)
11036         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11037         Refactor as tfile_target methods.
11038         (tfile_xfer_partial_features): Remove target_ops parameter.
11039         (init_tfile_ops): Delete.
11040         (_initialize_tracefile_tfile): Don't call it.
11041         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11042         (tracefile_has_stack, tracefile_has_registers)
11043         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11044         tracefile_target methods.
11045         (init_tracefile_ops): Delete.
11046         (tracefile_target::tracefile_target): New.
11047         * tracefile.h: Include "target.h".
11048         (tracefile_target): New class.
11049         (init_tracefile_ops): Delete.
11050
11051         * spu-multiarch.c (spu_multiarch_target): New class.
11052         (spu_ops): Now a spu_multiarch_target.
11053         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11054         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11055         (spu_search_memory, spu_mourn_inferior): Refactor as
11056         spu_multiarch_target methods.
11057         (init_spu_ops): Delete.
11058         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11059         complete_target_initialization.
11060
11061         * ravenscar-thread.c (ravenscar_thread_target): New class.
11062         (ravenscar_ops): Now a ravenscar_thread_target.
11063         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11064         (ravenscar_thread_alive, ravenscar_pid_to_str)
11065         (ravenscar_fetch_registers, ravenscar_store_registers)
11066         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11067         (ravenscar_stopped_by_hw_breakpoint)
11068         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11069         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11070         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11071         methods.
11072         (init_ravenscar_thread_ops): Delete.
11073         (_initialize_ravenscar): Remove references to
11074         init_ravenscar_thread_ops and complete_target_initialization.
11075
11076         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11077         (bsd_uthread_target): New class.
11078         (bsd_uthread_ops): Now a bsd_uthread_target.
11079         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11080         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11081         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11082         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11083         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11084         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11085         (bsd_uthread_target): Delete function.
11086         (_initialize_bsd_uthread): Remove reference to
11087         complete_target_initialization.
11088
11089         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11090         (target_bfd): ... this new class.
11091         (target_bfd_xfer_partial, target_bfd_get_section_table)
11092         (target_bfd_close): Refactor as target_bfd methods.
11093         (target_bfd::~target_bfd): New.
11094         (target_bfd_reopen): Adjust.
11095         (target_bfd::close): New.
11096
11097         * record-btrace.c (record_btrace_target): New class.
11098         (record_btrace_ops): Now a record_btrace_target.
11099         (record_btrace_open, record_btrace_stop_recording)
11100         (record_btrace_disconnect, record_btrace_close)
11101         (record_btrace_async, record_btrace_info)
11102         (record_btrace_insn_history, record_btrace_insn_history_range)
11103         (record_btrace_insn_history_from, record_btrace_call_history)
11104         (record_btrace_call_history_range)
11105         (record_btrace_call_history_from, record_btrace_record_method)
11106         (record_btrace_is_replaying, record_btrace_will_replay)
11107         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11108         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11109         (record_btrace_store_registers, record_btrace_prepare_to_store)
11110         (record_btrace_to_get_unwinder)
11111         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11112         (record_btrace_commit_resume, record_btrace_wait)
11113         (record_btrace_stop, record_btrace_can_execute_reverse)
11114         (record_btrace_stopped_by_sw_breakpoint)
11115         (record_btrace_supports_stopped_by_sw_breakpoint)
11116         (record_btrace_stopped_by_hw_breakpoint)
11117         (record_btrace_supports_stopped_by_hw_breakpoint)
11118         (record_btrace_update_thread_list, record_btrace_thread_alive)
11119         (record_btrace_goto_begin, record_btrace_goto_end)
11120         (record_btrace_goto, record_btrace_stop_replaying_all)
11121         (record_btrace_execution_direction)
11122         (record_btrace_prepare_to_generate_core)
11123         (record_btrace_done_generating_core): Refactor as
11124         record_btrace_target methods.
11125         (init_record_btrace_ops): Delete.
11126         (_initialize_record_btrace): Remove reference to
11127         init_record_btrace_ops.
11128         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11129         the execution_direction global.
11130         (record_full_base_target, record_full_target)
11131         (record_full_core_target): New classes.
11132         (record_full_ops): Now a record_full_target.
11133         (record_full_core_ops): Now a record_full_core_target.
11134         (record_full_target::detach, record_full_target::disconnect)
11135         (record_full_core_target::disconnect)
11136         (record_full_target::mourn_inferior, record_full_target::kill):
11137         New.
11138         (record_full_open, record_full_close, record_full_async): Refactor
11139         as methods of the record_full_base_target class.
11140         (record_full_resume, record_full_commit_resume): Refactor
11141         as methods of the record_full_target class.
11142         (record_full_wait, record_full_stopped_by_watchpoint)
11143         (record_full_stopped_data_address)
11144         (record_full_stopped_by_sw_breakpoint)
11145         (record_full_supports_stopped_by_sw_breakpoint)
11146         (record_full_stopped_by_hw_breakpoint)
11147         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11148         methods of the record_full_base_target class.
11149         (record_full_store_registers, record_full_xfer_partial)
11150         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11151         Refactor as methods of the record_full_target class.
11152         (record_full_can_execute_reverse, record_full_get_bookmark)
11153         (record_full_goto_bookmark, record_full_execution_direction)
11154         (record_full_record_method, record_full_info, record_full_delete)
11155         (record_full_is_replaying, record_full_will_replay)
11156         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11157         (record_full_stop_replaying): Refactor as methods of the
11158         record_full_base_target class.
11159         (record_full_core_resume, record_full_core_kill)
11160         (record_full_core_fetch_registers)
11161         (record_full_core_prepare_to_store)
11162         (record_full_core_store_registers, record_full_core_xfer_partial)
11163         (record_full_core_insert_breakpoint)
11164         (record_full_core_remove_breakpoint)
11165         (record_full_core_has_execution): Refactor
11166         as methods of the record_full_core_target class.
11167         (record_full_base_target::supports_delete_record): New.
11168         (init_record_full_ops): Delete.
11169         (init_record_full_core_ops): Delete.
11170         (record_full_save): Refactor as method of the
11171         record_full_base_target class.
11172         (_initialize_record_full): Remove references to
11173         init_record_full_ops and init_record_full_core_ops.
11174
11175         * remote.c (remote_target, extended_remote_target): New classes.
11176         (remote_ops): Now a remote_target.
11177         (extended_remote_ops): Now an extended_remote_target.
11178         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11179         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11180         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11181         (remote_pass_signals, remote_set_syscall_catchpoint)
11182         (remote_program_signals, )
11183         (remote_thread_always_alive): Remove target_ops parameter.
11184         (remote_thread_alive, remote_thread_name)
11185         (remote_update_thread_list, remote_threads_extra_info)
11186         (remote_static_tracepoint_marker_at)
11187         (remote_static_tracepoint_markers_by_strid)
11188         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11189         (remote_open): Refactor as methods of remote_target.
11190         (extended_remote_open, extended_remote_detach)
11191         (extended_remote_attach, extended_remote_post_attach):
11192         (extended_remote_supports_disable_randomization)
11193         (extended_remote_create_inferior): : Refactor as method of
11194         extended_remote_target.
11195         (remote_set_permissions, remote_open_1, remote_detach)
11196         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11197         (remote_resume, remote_commit_resume, remote_stop)
11198         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11199         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11200         (remote_prepare_to_store, remote_store_registers)
11201         (remote_flash_erase, remote_flash_done, remote_files_info)
11202         (remote_kill, remote_mourn, remote_insert_breakpoint)
11203         (remote_remove_breakpoint, remote_insert_watchpoint)
11204         (remote_watchpoint_addr_within_range)
11205         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11206         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11207         (remote_supports_stopped_by_sw_breakpoint)
11208         (remote_stopped_by_hw_breakpoint)
11209         (remote_supports_stopped_by_hw_breakpoint)
11210         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11211         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11212         (remote_verify_memory): Refactor as methods of remote_target.
11213         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11214         parameter.
11215         (remote_xfer_partial, remote_get_memory_xfer_limit)
11216         (remote_search_memory, remote_rcmd, remote_memory_map)
11217         (remote_pid_to_str, remote_get_thread_local_address)
11218         (remote_get_tib_address, remote_read_description): Refactor as
11219         methods of remote_target.
11220         (remote_target::fileio_open, remote_target::fileio_pwrite)
11221         (remote_target::fileio_pread, remote_target::fileio_close): New.
11222         (remote_hostio_readlink, remote_hostio_fstat)
11223         (remote_filesystem_is_local, remote_can_execute_reverse)
11224         (remote_supports_non_stop, remote_supports_disable_randomization)
11225         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11226         (remote_supports_enable_disable_tracepoint)
11227         (remote_supports_string_tracing)
11228         (remote_can_run_breakpoint_commands, remote_trace_init)
11229         (remote_download_tracepoint, remote_can_download_tracepoint)
11230         (remote_download_trace_state_variable, remote_enable_tracepoint)
11231         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11232         (remote_trace_start, remote_get_trace_status)
11233         (remote_get_tracepoint_status, remote_trace_stop)
11234         (remote_trace_find, remote_get_trace_state_variable_value)
11235         (remote_save_trace_data, remote_get_raw_trace_data)
11236         (remote_set_disconnected_tracing, remote_core_of_thread)
11237         (remote_set_circular_trace_buffer, remote_traceframe_info)
11238         (remote_get_min_fast_tracepoint_insn_len)
11239         (remote_set_trace_buffer_size, remote_set_trace_notes)
11240         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11241         (remote_disable_btrace, remote_teardown_btrace)
11242         (remote_read_btrace, remote_btrace_conf)
11243         (remote_augmented_libraries_svr4_read, remote_load)
11244         (remote_pid_to_exec_file, remote_can_do_single_step)
11245         (remote_execution_direction, remote_thread_handle_to_thread_info):
11246         Refactor as methods of remote_target.
11247         (init_remote_ops, init_extended_remote_ops): Delete.
11248         (remote_can_async_p, remote_is_async_p, remote_async)
11249         (remote_thread_events, remote_upload_tracepoints)
11250         (remote_upload_trace_state_variables): Refactor as methods of
11251         remote_target.
11252         (_initialize_remote): Remove references to init_remote_ops and
11253         init_extended_remote_ops.
11254
11255         * remote-sim.c (gdbsim_target): New class.
11256         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11257         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11258         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11259         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11260         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11261         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11262         Refactor as methods of gdbsim_target.
11263         (gdbsim_ops): Now a gdbsim_target.
11264         (init_gdbsim_ops): Delete.
11265         (gdbsim_cntrl_c): Adjust.
11266         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11267
11268         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11269         (the_amd64_linux_nat_target): New.
11270         (amd64_linux_fetch_inferior_registers)
11271         (amd64_linux_store_inferior_registers): Refactor as methods of
11272         amd64_linux_nat_target.
11273         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11274         * i386-linux-nat.c: Don't include "linux-nat.h".
11275         (i386_linux_nat_target): New class.
11276         (the_i386_linux_nat_target): New.
11277         (i386_linux_fetch_inferior_registers)
11278         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11279         as methods of i386_linux_nat_target.
11280         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11281         * inf-child.c (inf_child_ops): Delete.
11282         (inf_child_fetch_inferior_registers)
11283         (inf_child_store_inferior_registers): Delete.
11284         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11285         methods of inf_child_target.
11286         (inf_child_target::supports_terminal_ours)
11287         (inf_child_target::terminal_init)
11288         (inf_child_target::terminal_inferior)
11289         (inf_child_target::terminal_ours_for_output)
11290         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11291         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11292         New.
11293         (inf_child_open, inf_child_disconnect, inf_child_close)
11294         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11295         (inf_child_post_startup_inferior, inf_child_can_run)
11296         (inf_child_pid_to_exec_file): Refactor as methods of
11297         inf_child_target.
11298         (inf_child_follow_fork): Delete.
11299         (inf_child_target::can_create_inferior)
11300         (inf_child_target::can_attach): New.
11301         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11302         (inf_child_target::has_stack, inf_child_target::has_registers)
11303         (inf_child_target::has_execution): New.
11304         (inf_child_fileio_open, inf_child_fileio_pwrite)
11305         (inf_child_fileio_pread, inf_child_fileio_fstat)
11306         (inf_child_fileio_close, inf_child_fileio_unlink)
11307         (inf_child_fileio_readlink, inf_child_use_agent)
11308         (inf_child_can_use_agent): Refactor as methods of
11309         inf_child_target.
11310         (return_zero, inf_child_target): Delete.
11311         (inf_child_target::inf_child_target): New.
11312         * inf-child.h: Include "target.h".
11313         (inf_child_target): Delete function prototype.
11314         (inf_child_target): New class.
11315         (inf_child_open_target, inf_child_mourn_inferior)
11316         (inf_child_maybe_unpush_target): Delete.
11317         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11318         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11319         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11320         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11321         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11322         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11323         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11324         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11325         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11326         methods of inf_ptrace_target.
11327         (inf_ptrace_target): Delete function.
11328         * inf-ptrace.h: Include "inf-child.h".
11329         (inf_ptrace_target): Delete function declaration.
11330         (inf_ptrace_target): New class.
11331         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11332         * linux-nat.c (linux_target): New.
11333         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11334         (linux_nat_target::~linux_nat_target): New.
11335         (linux_child_post_attach, linux_child_post_startup_inferior)
11336         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11337         (linux_child_remove_fork_catchpoint)
11338         (linux_child_insert_vfork_catchpoint)
11339         (linux_child_remove_vfork_catchpoint)
11340         (linux_child_insert_exec_catchpoint)
11341         (linux_child_remove_exec_catchpoint)
11342         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11343         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11344         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11345         (linux_nat_stopped_data_address)
11346         (linux_nat_stopped_by_sw_breakpoint)
11347         (linux_nat_supports_stopped_by_sw_breakpoint)
11348         (linux_nat_stopped_by_hw_breakpoint)
11349         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11350         (linux_nat_kill, linux_nat_mourn_inferior)
11351         (linux_nat_xfer_partial, linux_nat_thread_alive)
11352         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11353         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11354         (linux_child_static_tracepoint_markers_by_strid)
11355         (linux_nat_is_async_p, linux_nat_can_async_p)
11356         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11357         (linux_nat_supports_multi_process)
11358         (linux_nat_supports_disable_randomization, linux_nat_async)
11359         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11360         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11361         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11362         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11363         methods of linux_nat_target.
11364         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11365         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11366         parameter.
11367         (check_stopped_by_watchpoint): Adjust.
11368         (linux_xfer_partial): Delete.
11369         (linux_target_install_ops, linux_target, linux_nat_add_target):
11370         Delete.
11371         (linux_nat_target::linux_nat_target): New.
11372         * linux-nat.h: Include "inf-ptrace.h".
11373         (linux_nat_target): New.
11374         (linux_target, linux_target_install_ops, linux_nat_add_target):
11375         Delete function declarations.
11376         (linux_target): Declare global.
11377         * linux-thread-db.c (thread_db_target): New.
11378         (thread_db_target::thread_db_target): New.
11379         (thread_db_ops): Delete.
11380         (the_thread_db_target): New.
11381         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11382         (thread_db_update_thread_list, thread_db_pid_to_str)
11383         (thread_db_extra_thread_info)
11384         (thread_db_thread_handle_to_thread_info)
11385         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11386         (thread_db_resume): Refactor as methods of thread_db_target.
11387         (init_thread_db_ops): Delete.
11388         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11389         * x86-linux-nat.c: Don't include "linux-nat.h".
11390         (super_post_startup_inferior): Delete.
11391         (x86_linux_nat_target::~x86_linux_nat_target): New.
11392         (x86_linux_child_post_startup_inferior)
11393         (x86_linux_read_description, x86_linux_enable_btrace)
11394         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11395         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11396         methods of x86_linux_nat_target.
11397         (x86_linux_create_target): Delete.  Bits folded ...
11398         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11399         pointer.
11400         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11401         (x86_linux_nat_target): New class.
11402         (x86_linux_create_target): Delete.
11403         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11404         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11405         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11406         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11407         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11408         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11409         make extern.
11410         (x86_use_watchpoints): Delete.
11411         * x86-nat.h: Include "breakpoint.h" and "target.h".
11412         (x86_use_watchpoints): Delete.
11413         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11414         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11415         (x86_insert_watchpoint, x86_remove_watchpoint)
11416         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11417         (x86_stopped_by_hw_breakpoint): New declarations.
11418         (x86_nat_target): New template class.
11419
11420         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11421         (the_ppc_linux_nat_target): New.
11422         (ppc_linux_fetch_inferior_registers)
11423         (ppc_linux_can_use_hw_breakpoint)
11424         (ppc_linux_region_ok_for_hw_watchpoint)
11425         (ppc_linux_ranged_break_num_registers)
11426         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11427         (ppc_linux_insert_mask_watchpoint)
11428         (ppc_linux_remove_mask_watchpoint)
11429         (ppc_linux_can_accel_watchpoint_condition)
11430         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11431         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11432         (ppc_linux_watchpoint_addr_within_range)
11433         (ppc_linux_masked_watch_num_registers)
11434         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11435         (ppc_linux_read_description): Refactor as methods of
11436         ppc_linux_nat_target.
11437         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11438
11439         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11440         (procfs_target): New class.
11441         (the_procfs_target): New.
11442         (procfs_target): Delete function.
11443         (procfs_auxv_parse, procfs_attach, procfs_detach)
11444         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11445         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11446         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11447         (procfs_create_inferior, procfs_update_thread_list)
11448         (procfs_thread_alive, procfs_pid_to_str)
11449         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11450         (procfs_stopped_data_address, procfs_insert_watchpoint)
11451         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11452         (proc_find_memory_regions, procfs_info_proc)
11453         (procfs_make_note_section): Refactor as methods of procfs_target.
11454         (_initialize_procfs): Adjust.
11455         * sol-thread.c (sol_thread_target): New class.
11456         (sol_thread_ops): Now a sol_thread_target.
11457         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11458         (sol_thread_fetch_registers, sol_thread_store_registers)
11459         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11460         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11461         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11462         (init_sol_thread_ops): Delete.
11463         (_initialize_sol_thread): Adjust.  Remove references to
11464         init_sol_thread_ops and complete_target_initialization.
11465
11466         * windows-nat.c (windows_nat_target): New class.
11467         (windows_fetch_inferior_registers)
11468         (windows_store_inferior_registers, windows_resume, windows_wait)
11469         (windows_attach, windows_detach, windows_pid_to_exec_file)
11470         (windows_files_info, windows_create_inferior)
11471         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11472         (windows_close, windows_pid_to_str, windows_xfer_partial)
11473         (windows_get_tib_address, windows_get_ada_task_ptid)
11474         (windows_thread_name, windows_thread_alive): Refactor as
11475         windows_nat_target methods.
11476         (do_initial_windows_stuff): Adjust.
11477         (windows_target): Delete function.
11478         (_initialize_windows_nat): Adjust.
11479
11480         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11481         (darwin_mourn_inferior, darwin_kill_inferior)
11482         (darwin_create_inferior, darwin_attach, darwin_detach)
11483         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11484         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11485         (darwin_supports_multi_process): Refactor as darwin_nat_target
11486         methods.
11487         (darwin_resume_to, darwin_files_info): Delete.
11488         (_initialize_darwin_inferior): Rename to ...
11489         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11490         * darwin-nat.h: Include "inf-child.h".
11491         (darwin_nat_target): New class.
11492         (darwin_complete_target): Delete.
11493         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11494         (darwin_target): New.
11495         (i386_darwin_fetch_inferior_registers)
11496         (i386_darwin_store_inferior_registers): Refactor as methods of
11497         darwin_nat_target.
11498         (darwin_complete_target): Delete, with ...
11499         (_initialize_i386_darwin_nat): ... bits factored out here.
11500
11501         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11502         (the_alpha_linux_nat_target): New.
11503         (alpha_linux_register_u_offset): Refactor as
11504         alpha_linux_nat_target method.
11505         (_initialize_alpha_linux_nat): Adjust.
11506         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11507         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11508         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11509         methods of linux_nat_trad_target.
11510         (linux_trad_target): Delete.
11511         * linux-nat-trad.h (linux_trad_target): Delete function.
11512         (linux_nat_trad_target): New class.
11513         * mips-linux-nat.c (mips_linux_nat_target): New class.
11514         (super_fetch_registers, super_store_registers, super_close):
11515         Delete.
11516         (the_mips_linux_nat_target): New.
11517         (mips64_linux_regsets_fetch_registers)
11518         (mips64_linux_regsets_store_registers)
11519         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11520         (mips_linux_register_u_offset, mips_linux_read_description)
11521         (mips_linux_can_use_hw_breakpoint)
11522         (mips_linux_stopped_by_watchpoint)
11523         (mips_linux_stopped_data_address)
11524         (mips_linux_region_ok_for_hw_watchpoint)
11525         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11526         (mips_linux_close): Refactor as methods of mips_linux_nat.
11527         (_initialize_mips_linux_nat): Adjust to C++ification.
11528
11529         * aix-thread.c (aix_thread_target): New class.
11530         (aix_thread_ops): Now an aix_thread_target.
11531         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11532         (aix_thread_fetch_registers, aix_thread_store_registers)
11533         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11534         (aix_thread_thread_alive, aix_thread_pid_to_str)
11535         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11536         Refactor as methods of aix_thread_target.
11537         (init_aix_thread_ops): Delete.
11538         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11539         and complete_target_initialization.
11540         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11541         (rs6000_nat_target): New class.
11542         (the_rs6000_nat_target): New.
11543         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11544         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11545         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11546         (super_create_inferior): Delete.
11547         (_initialize_rs6000_nat): Adjust to C++ification.
11548
11549         * arm-linux-nat.c (arm_linux_nat_target): New class.
11550         (the_arm_linux_nat_target): New.
11551         (arm_linux_fetch_inferior_registers)
11552         (arm_linux_store_inferior_registers, arm_linux_read_description)
11553         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11554         (arm_linux_remove_hw_breakpoint)
11555         (arm_linux_region_ok_for_hw_watchpoint)
11556         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11557         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11558         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11559         arm_linux_nat_target.
11560         (_initialize_arm_linux_nat): Adjust to C++ification.
11561
11562         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11563         (the_aarch64_linux_nat_target): New.
11564         (aarch64_linux_fetch_inferior_registers)
11565         (aarch64_linux_store_inferior_registers)
11566         (aarch64_linux_child_post_startup_inferior)
11567         (aarch64_linux_read_description)
11568         (aarch64_linux_can_use_hw_breakpoint)
11569         (aarch64_linux_insert_hw_breakpoint)
11570         (aarch64_linux_remove_hw_breakpoint)
11571         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11572         (aarch64_linux_region_ok_for_hw_watchpoint)
11573         (aarch64_linux_stopped_data_address)
11574         (aarch64_linux_stopped_by_watchpoint)
11575         (aarch64_linux_watchpoint_addr_within_range)
11576         (aarch64_linux_can_do_single_step): Refactor as methods of
11577         aarch64_linux_nat_target.
11578         (super_post_startup_inferior): Delete.
11579         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11580
11581         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11582         (the_hppa_linux_nat_target): New.
11583         (hppa_linux_fetch_inferior_registers)
11584         (hppa_linux_store_inferior_registers): Refactor as methods of
11585         hppa_linux_nat_target.
11586         (_initialize_hppa_linux_nat): Adjust to C++ification.
11587
11588         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11589         (the_ia64_linux_nat_target): New.
11590         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11591         (ia64_linux_stopped_data_address)
11592         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11593         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11594         ia64_linux_nat_target methods.
11595         (super_xfer_partial): Delete.
11596         (_initialize_ia64_linux_nat): Adjust to C++ification.
11597
11598         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11599         (the_m32r_linux_nat_target): New.
11600         (m32r_linux_fetch_inferior_registers)
11601         (m32r_linux_store_inferior_registers): Refactor as
11602         m32r_linux_nat_target methods.
11603         (_initialize_m32r_linux_nat): Adjust to C++ification.
11604
11605         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11606         (the_m68k_linux_nat_target): New.
11607         (m68k_linux_fetch_inferior_registers)
11608         (m68k_linux_store_inferior_registers): Refactor as
11609         m68k_linux_nat_target methods.
11610         (_initialize_m68k_linux_nat): Adjust to C++ification.
11611
11612         * s390-linux-nat.c (s390_linux_nat_target): New class.
11613         (the_s390_linux_nat_target): New.
11614         (s390_linux_fetch_inferior_registers)
11615         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11616         (s390_insert_watchpoint, s390_remove_watchpoint)
11617         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11618         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11619         (s390_auxv_parse, s390_read_description): Refactor as methods of
11620         s390_linux_nat_target.
11621         (_initialize_s390_nat): Adjust to C++ification.
11622
11623         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11624         (the_sparc_linux_nat_target): New.
11625         (_initialize_sparc_linux_nat): Adjust to C++ification.
11626         * sparc-nat.c (sparc_fetch_inferior_registers)
11627         (sparc_store_inferior_registers): Remove target_ops parameter.
11628         * sparc-nat.h (sparc_fetch_inferior_registers)
11629         (sparc_store_inferior_registers): Remove target_ops parameter.
11630         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11631         (the_sparc64_linux_nat_target): New.
11632         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11633
11634         * spu-linux-nat.c (spu_linux_nat_target): New class.
11635         (the_spu_linux_nat_target): New.
11636         (spu_child_post_startup_inferior, spu_child_post_attach)
11637         (spu_child_wait, spu_fetch_inferior_registers)
11638         (spu_store_inferior_registers, spu_xfer_partial)
11639         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11640         methods.
11641         (_initialize_spu_nat): Adjust to C++ification.
11642
11643         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11644         (the_tilegx_linux_nat_target): New.
11645         (fetch_inferior_registers, store_inferior_registers):
11646         Refactor as methods.
11647         (_initialize_tile_linux_nat): Adjust to C++ification.
11648
11649         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11650         (the_xtensa_linux_nat_target): New.
11651         (xtensa_linux_fetch_inferior_registers)
11652         (xtensa_linux_store_inferior_registers): Refactor as
11653         xtensa_linux_nat_target methods.
11654         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11655
11656         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11657         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11658         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11659         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11660         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11661         (fbsd_stopped_by_sw_breakpoint)
11662         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11663         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11664         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11665         (fbsd_post_startup_inferior, fbsd_post_attach)
11666         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11667         (fbsd_set_syscall_catchpoint)
11668         (super_xfer_partial, super_resume, super_wait)
11669         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11670         (fbsd_handle_debug_trap): Remove target_ops parameter.
11671         (fbsd_nat_add_target): Delete.
11672         * fbsd-nat.h: Include "inf-ptrace.h".
11673         (fbsd_nat_add_target): Delete.
11674         (USE_SIGTRAP_SIGINFO): Define.
11675         (fbsd_nat_target): New class.
11676
11677         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11678         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11679         (amd64bsd_target): Delete.
11680         * amd64-bsd-nat.h: New file.
11681         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11682         "x86-bsd-nat.h".
11683         (amd64_fbsd_nat_target): New class.
11684         (the_amd64_fbsd_nat_target): New.
11685         (amd64fbsd_read_description): Refactor as method of
11686         amd64_fbsd_nat_target.
11687         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11688         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11689         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11690         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11691         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11692         (i386bsd_target): Delete.
11693         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11694         (i386bsd_fetch_inferior_registers)
11695         (i386bsd_store_inferior_registers): Declare.
11696         (i386_bsd_nat_target): New class.
11697         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11698         (the_i386_fbsd_nat_target): New.
11699         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11700         i386_fbsd_nat_target methods.
11701         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11702         (_initialize_i386fbsd_nat): Adjust to C++ification.
11703         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11704         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11705         (_initialize_x86_bsd_nat): Adjust to C++ification.
11706         * x86-bsd-nat.h: Include "x86-nat.h".
11707         (x86bsd_target): Delete declaration.
11708         (x86bsd_nat_target): New class.
11709
11710         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11711         (the_aarch64_fbsd_nat_target): New.
11712         (aarch64_fbsd_fetch_inferior_registers)
11713         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11714         aarch64_fbsd_nat_target.
11715         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11716         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11717         (the_alpha_bsd_nat_target): New.
11718         (alphabsd_fetch_inferior_registers)
11719         (alphabsd_store_inferior_registers): Refactor as
11720         alpha_bsd_nat_target methods.
11721         (_initialize_alphabsd_nat): Refactor as methods of
11722         alpha_bsd_nat_target.
11723         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11724         (the_amd64_nbsd_nat_target): New.
11725         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11726         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11727         (the_amd64_obsd_nat_target): New.
11728         (_initialize_amd64obsd_nat): Adjust to C++ification.
11729         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11730         (the_arm_fbsd_nat_target): New.
11731         (arm_fbsd_fetch_inferior_registers)
11732         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11733         (_initialize_arm_fbsd_nat): Refactor as methods of
11734         arm_fbsd_nat_target.
11735         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11736         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11737         (the_arm_netbsd_nat_target): New.
11738         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11739         arm_netbsd_nat_target.
11740         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11741         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11742         (the_hppa_nbsd_nat_target): New.
11743         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11744         hppa_nbsd_nat_target methods.
11745         (_initialize_hppanbsd_nat): Adjust to C++ification.
11746         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11747         (the_hppa_obsd_nat_target): New.
11748         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11749         methods of hppa_obsd_nat_target.
11750         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11751         add_target.
11752         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11753         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11754         add_target.
11755         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11756         (_initialize_i386obsd_nat): Use add_target.
11757         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11758         (the_m68k_bsd_nat_target): New.
11759         (m68kbsd_fetch_inferior_registers)
11760         (m68kbsd_store_inferior_registers): Refactor as methods of
11761         m68k_bsd_nat_target.
11762         (_initialize_m68kbsd_nat): Adjust to C++ification.
11763         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11764         (the_mips_fbsd_nat_target): New.
11765         (mips_fbsd_fetch_inferior_registers)
11766         (mips_fbsd_store_inferior_registers): Refactor as methods of
11767         mips_fbsd_nat_target.
11768         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11769         add_target.
11770         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11771         (the_mips_nbsd_nat_target): New.
11772         (mipsnbsd_fetch_inferior_registers)
11773         (mipsnbsd_store_inferior_registers): Refactor as methods of
11774         mips_nbsd_nat_target.
11775         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11776         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11777         (the_mips64_obsd_nat_target): New.
11778         (mips64obsd_fetch_inferior_registers)
11779         (mips64obsd_store_inferior_registers): Refactor as methods of
11780         mips64_obsd_nat_target.
11781         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11782         add_target.
11783         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11784         nbsd_nat_target.
11785         * nbsd-nat.h: Include "inf-ptrace.h".
11786         (nbsd_nat_target): New class.
11787         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11788         (obsd_wait): Refactor as methods of obsd_nat_target.
11789         (obsd_add_target): Delete.
11790         * obsd-nat.h: Include "inf-ptrace.h".
11791         (obsd_nat_target): New class.
11792         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11793         (the_ppc_fbsd_nat_target): New.
11794         (ppcfbsd_fetch_inferior_registers)
11795         (ppcfbsd_store_inferior_registers): Refactor as methods of
11796         ppc_fbsd_nat_target.
11797         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11798         add_target.
11799         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11800         (the_ppc_nbsd_nat_target): New.
11801         (ppcnbsd_fetch_inferior_registers)
11802         (ppcnbsd_store_inferior_registers): Refactor as methods of
11803         ppc_nbsd_nat_target.
11804         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11805         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11806         (the_ppc_obsd_nat_target): New.
11807         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11808         methods of ppc_obsd_nat_target.
11809         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11810         add_target.
11811         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11812         (the_sh_nbsd_nat_target): New.
11813         (shnbsd_fetch_inferior_registers)
11814         (shnbsd_store_inferior_registers): Refactor as methods of
11815         sh_nbsd_nat_target.
11816         (_initialize_shnbsd_nat): Adjust to C++ification.
11817         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11818         (inf_ptrace_xfer_partial): Delete.
11819         (sparc_xfer_partial, sparc_target): Delete.
11820         * sparc-nat.h (sparc_fetch_inferior_registers)
11821         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11822         (sparc_target): Delete function declaration.
11823         (sparc_target): New template class.
11824         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11825         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11826         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11827         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11828         add_target.
11829         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11830         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11831         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11832         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11833         add_target.
11834         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11835         (the_vax_bsd_nat_target): New.
11836         (vaxbsd_fetch_inferior_registers)
11837         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11838         methods.
11839         (_initialize_vaxbsd_nat): Adjust to C++ification.
11840
11841         * bsd-kvm.c (bsd_kvm_target): New class.
11842         (bsd_kvm_ops): Now a bsd_kvm_target.
11843         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11844         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11845         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11846         bsd_kvm_target.
11847         (bsd_kvm_return_one): Delete.
11848         (bsd_kvm_add_target): Adjust to C++ification.
11849
11850         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11851         (nto_procfs_target_procfs): New classes.
11852         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11853         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11854         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11855         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11856         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11857         (procfs_remove_hw_breakpoint, procfs_resume)
11858         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11859         (procfs_kill_inferior, procfs_store_registers)
11860         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11861         as methods of nto_procfs_target.
11862         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11863         (nto_native_ops): Delete.
11864         (procfs_open, procfs_native_open): Delete.
11865         (nto_native_ops): Now an nto_procfs_target_native.
11866         (init_procfs_targets): Adjust to C++ification.
11867         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11868         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11869         Refactor as methods of nto_procfs_target.
11870
11871         * go32-nat.c (go32_nat_target): New class.
11872         (the_go32_nat_target): New.
11873         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11874         (go32_store_registers, go32_xfer_partial, go32_files_info)
11875         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11876         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11877         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11878         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11879         (go32_target): Delete.
11880         (_initialize_go32_nat): Adjust to C++ification.
11881
11882         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11883         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11884         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11885         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11886         gnu_nat_target.
11887         (gnu_target): Delete.
11888         * gnu-nat.h (gnu_target): Delete.
11889         (gnu_nat_target): New class.
11890         * i386-gnu-nat.c (gnu_base_target): New.
11891         (i386_gnu_nat_target): New class.
11892         (the_i386_gnu_nat_target): New.
11893         (_initialize_i386gnu_nat): Adjust to C++ification.
11894
11895 2018-05-02  Pedro Alves  <palves@redhat.com>
11896
11897         * bfd-target.c (target_bfd_xclose): Rename to ...
11898         (target_bfd_close): ... this.
11899         (target_bfd_reopen): Adjust.
11900         * target.c (target_close): Remove references to to_xclose.
11901         * target.h (target_ops::to_xclose): Delete.
11902         (target_ops::to_close): Update comments.
11903
11904 2018-05-02  Pedro Alves  <palves@redhat.com>
11905
11906         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11907         "linux-nat.h".
11908         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11909         * inf-ptrace.c (inf_ptrace_register_u_offset)
11910         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11911         (inf_ptrace_store_register, inf_ptrace_store_registers)
11912         (inf_ptrace_trad_target): Move to ...
11913         * linux-nat-trad.c: ... this new file.
11914         * linux-nat-trad.h: New file.
11915         * linux-nat.c (linux_target_install_ops): Make extern.
11916         (linux_trad_target): Delete.
11917         * linux-nat.h (linux_trad_target): Delete declaration.
11918         (linux_target_install_ops): Declare.
11919         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11920         "linux-nat.h".
11921
11922 2018-05-02  Pedro Alves  <palves@redhat.com>
11923
11924         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11925         procfs_target/add_target here.
11926         * procfs.c (procfs_target): Make static.
11927         (_initialize_procfs): Call add_target here.
11928         * procfs.h (struct target_ops): Remove forward declaration.
11929         (procfs_target): Remove declaration.
11930         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11931
11932 2018-05-02  Pedro Alves  <palves@redhat.com>
11933
11934         * procfs.c (procfs_stopped_by_watchpoint)
11935         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11936         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11937         Forward declare.
11938         (procfs_use_watchpoints): Delete, move contents...
11939         (procfs_target): ... here.
11940         * procfs.h (procfs_use_watchpoints): Delete declaration.
11941         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11942         procfs_use_watchpoints.
11943         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11944         procfs_use_watchpoints.
11945
11946 2018-05-02  Tom Tromey  <tom@tromey.com>
11947
11948         PR python/20084:
11949         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11950         and var_zuinteger_unlimited.
11951         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11952         and PARAM_ZUINTEGER_UNLIMITED.
11953         (set_parameter_value): Handle var_zuinteger and
11954         var_zuinteger_unlimited.
11955         (add_setshow_generic): Likewise.
11956         (parmpy_init): Likewise.
11957
11958 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11959
11960         PR rust/23124
11961         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11962         pointer is not null before dereferencing it.
11963
11964 2018-04-30  Tom Tromey  <tom@tromey.com>
11965
11966         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11967         is_mi_like_p.
11968
11969 2018-04-30  Tom Tromey  <tom@tromey.com>
11970
11971         * breakpoint.c (mention): Remove use of is_mi_like_p.
11972         (print_mention_ranged_breakpoint): Likewise.
11973         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11974         of is_mi_like_p.
11975
11976 2018-04-30  Tom Tromey  <tom@tromey.com>
11977
11978         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11979
11980 2018-04-30  Tom Tromey  <tom@tromey.com>
11981
11982         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11983         (info_spu_event_command): Remove some uses of is_mi_like_p.
11984
11985 2018-04-30  Tom Tromey  <tom@tromey.com>
11986
11987         * python/py-framefilter.c (py_print_single_arg)
11988         (enumerate_locals, py_print_args, py_print_frame): Remove some
11989         uses of is_mi_like_p.
11990
11991 2018-04-30  Tom Tromey  <tom@tromey.com>
11992
11993         * ui-out.c: Update.
11994         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11995         * ui-out.h (ui_out::is_mi_like_p): Now const.
11996         (ui_out::do_is_mi_like_p): Now const.
11997         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11998
11999 2018-04-30  Tom Tromey  <tom@tromey.com>
12000
12001         * varobj.c (varobj_set_visualizer): Use new_reference.
12002         * python/python.c (gdbpy_decode_line): Use new_reference.
12003         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12004         new_reference.
12005
12006 2018-04-30  Tom Tromey  <tom@tromey.com>
12007
12008         * varobj.c (install_new_value): Use new_reference.
12009         * value.h (value_incref): Return void.  Swap intro comment with
12010         value_decref.
12011         * value.c (set_value_parent): Use new_reference.
12012         (value_incref): Return void.  Update intro comment.
12013         (release_value): Use new_reference.
12014         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12015
12016 2018-04-30  Tom Tromey  <tom@tromey.com>
12017
12018         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12019         * gdb_bfd.h (new_bfd_ref): Remove.
12020         (gdb_bfd_open): Update comment.
12021         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12022         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12023         (gdb_bfd_fdopenr): Use new_reference.
12024         * exec.c (exec_file_attach): Use new_reference.
12025
12026 2018-04-30  Tom Tromey  <tom@tromey.com>
12027
12028         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12029         method.
12030
12031 2018-04-30  Tom Tromey  <tom@tromey.com>
12032
12033         * jit.c (jit_read_code_entry): Use type_align.
12034         * i386-tdep.c (i386_gdbarch_init): Don't call
12035         set_gdbarch_long_long_align_bit.
12036         * gdbarch.sh: Remove long_long_align_bit.
12037         * gdbarch.c, gdbarch.h: Rebuild.
12038         * arc-tdep.c (arc_type_align): New function.
12039         (arc_gdbarch_init): Use arc_type_align.  Don't call
12040         set_gdbarch_long_long_align_bit.
12041
12042 2018-04-30  Tom Tromey  <tom@tromey.com>
12043
12044         * rust-lang.c (rust_type_alignment): Remove.
12045         (rust_composite_type): Use type_align.
12046
12047 2018-04-30  Tom Tromey  <tom@tromey.com>
12048
12049         * NEWS: Mention Type.align.
12050         * python/py-type.c (typy_get_alignof): New function.
12051         (type_object_getset): Add "alignof".
12052
12053 2018-04-30  Tom Tromey  <tom@tromey.com>
12054
12055         PR exp/17095:
12056         * NEWS: Update.
12057         * std-operator.def (UNOP_ALIGNOF): New operator.
12058         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12059         New.
12060         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12061         * c-lang.c (c_op_print_tab): Add alignof.
12062         * c-exp.y (ALIGNOF): New token.
12063         (exp): Add "ALIGNOF" production.
12064         (ident_tokens): Add _Alignof and alignof.
12065
12066 2018-04-30  Tom Tromey  <tom@tromey.com>
12067
12068         * i386-tdep.c (i386_type_align): New function.
12069         (i386_gdbarch_init): Update.
12070         * gdbarch.sh (type_align): New method.
12071         * gdbarch.c, gdbarch.h: Rebuild.
12072         * arch-utils.h (default_type_align): Declare.
12073         * arch-utils.c (default_type_align): New function.
12074         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12075         (struct type) <align_log2>: New field.
12076         <instance_flags>: Now a bitfield.
12077         (TYPE_RAW_ALIGN): New macro.
12078         (type_align, type_raw_align, set_type_align): Declare.
12079         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12080         functions.
12081         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12082         (get_alignment, maybe_set_alignment): New functions.
12083         (read_structure_type, read_enumeration_type, read_array_type)
12084         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12085         (read_subrange_type, read_base_type): Set type alignment.
12086
12087 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12088
12089         * dwarf2read.c (read_index_from_section): Use bool.
12090
12091 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12092
12093         PR gdb/22950
12094         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12095         with #ifdef.
12096
12097 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12098
12099         PR build/22873
12100         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12101         last step, and do it atomically.
12102
12103 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12104
12105         * compile/compile-c-types.c (convert_int, convert_float):
12106         Update for C FE v1.
12107
12108 2018-04-27  Tom Tromey  <tom@tromey.com>
12109
12110         PR rust/22545:
12111         * rust-lang.c (rust_inclusive_range_type_p): New function.
12112         (rust_range): Handle inclusive ranges.
12113         (rust_compute_range): Likewise.
12114         * rust-exp.y (struct rust_op) <inclusive>: New field.
12115         (DOTDOTEQ): New constant.
12116         (range_expr): Add "..=" productions.
12117         (operator_tokens): Add "..=" token.
12118         (ast_range): Add "inclusive" parameter.
12119         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12120         ranges.
12121         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12122         bounds values.
12123         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12124         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12125         Update comments.
12126         * expprint.c (print_subexp_standard): Handle new bounds values.
12127         (dump_subexp_body_standard): Likewise.
12128
12129 2018-04-27  Tom Tromey  <tom@tromey.com>
12130
12131         * configure: Rebuild.
12132         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12133         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12134         "OVERRIDE".
12135         (class symbol_needs_eval_context): Likewise.
12136         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12137         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12138         "virtual".
12139         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12140         "override".
12141         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12142         * aarch64-tdep.c (instruction_reader::read): Use "override".
12143         (instruction_reader_test::read): Likewise.
12144         * arm-tdep.c (instruction_reader::read): Use "override".
12145         (instruction_reader_thumb::read): Likewise.
12146
12147 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12148
12149         PR remote/9665
12150         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12151         instead of remote_send.
12152         (remote_send): Remove.
12153
12154 2018-04-26  Pedro Alves  <palves@redhat.com>
12155
12156         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12157         find_function_start_sal instead of find_pc_line.
12158
12159 2018-04-26  Pedro Alves  <palves@redhat.com>
12160
12161         * breakpoint.c (set_breakpoint_location_function): Handle
12162         mst_data_gnu_ifunc.
12163         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12164         * elfread.c (elf_symtab_read): Give data symbols with
12165         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12166         (elf_rel_plt_read): Update comment.
12167         * linespec.c (convert_linespec_to_sals): Handle
12168         mst_data_gnu_ifunc.
12169         (minsym_found): Handle mst_data_gnu_ifunc.
12170         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12171         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12172         * parse.c (find_minsym_type_and_address): Handle
12173         mst_data_gnu_ifunc.
12174         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12175         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12176         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12177         comment.
12178         <mst_data_gnu_ifunc>: New enumerator.
12179
12180 2018-04-26  Pedro Alves  <palves@redhat.com>
12181
12182         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12183         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12184         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12185         Handle it.
12186         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12187         (lookup_minimal_symbol_by_pc): Adjust.
12188         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12189         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12190         * minsyms.h (lookup_msym_prefer): New enum.
12191         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12192         parameter by a lookup_msym_prefer parameter.
12193
12194 2018-04-26  Pedro Alves  <palves@redhat.com>
12195
12196         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12197         ends in "@plt" instead of looking at the symbol's section.
12198
12199 2018-04-26  Pedro Alves  <palves@redhat.com>
12200
12201         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12202         all references.
12203         (find_pc_partial_function_gnu_ifunc): Rename to ...
12204         (find_pc_partial_function): ... this, and remove references to
12205         'is_gnu_ifunc_p'.
12206         (find_pc_partial_function): Delete old implementation.
12207         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12208
12209 2018-04-26  Pedro Alves  <palves@redhat.com>
12210
12211         * linespec.c (struct bound_minimal_symbol_search_key): New.
12212         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12213         skip first line if we found a GNU ifunc minimal symbol by name.
12214         (compare_msymbols): Change parameters to work with a destructured
12215         lhs minsym.
12216         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12217         functions.
12218
12219 2018-04-26  Pedro Alves  <palves@redhat.com>
12220
12221         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12222         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12223         address/name.
12224         (add_location_to_breakpoint): Store the minsym and the objfile in
12225         the breakpoint location.
12226         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12227         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12228         Record the minsym in the sal.
12229         * symtab.h (symtab_and_line) <msymbol>: New field.
12230
12231 2018-04-26  Pedro Alves  <palves@redhat.com>
12232
12233         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12234         unless we actually resolved the ifunc.
12235
12236 2018-04-26  Pedro Alves  <palves@redhat.com>
12237
12238         * c-exp.y (variable production): Prefer ifunc minsyms over
12239         regular function symbols.
12240         * symtab.c (find_gnu_ifunc): New function.
12241         * minsyms.h (lookup_msym_prefer): New enum.
12242         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12243         parameter by a lookup_msym_prefer parameter.
12244         * symtab.h (find_gnu_ifunc): New declaration.
12245
12246 2018-04-26  Pedro Alves  <palves@redhat.com>
12247
12248         * blockframe.c (find_gnu_ifunc_target_type): New function.
12249         (find_function_type): New.
12250         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12251         return a value with a memory address.
12252         (eval_call): For calls to GNU ifunc functions, try to find the
12253         type of the target function from the type that the resolver
12254         returns.
12255         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12256         symbols.
12257         * infcall.c (find_function_return_type): Delete.
12258         (find_function_addr): Add 'function_type' parameter.  For calls to
12259         GNU ifunc functions, try to find the type of the target function
12260         from the type that the resolver returns, and return it via
12261         FUNCTION_TYPE.
12262         (call_function_by_hand_dummy): Adjust to use the function type
12263         returned by find_function_addr.
12264         (find_function_addr): Add 'function_type' parameter and move
12265         description here.
12266         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12267         declarations.
12268
12269 2018-04-26  Pedro Alves  <palves@redhat.com>
12270
12271         * c-exp.y (variable production): Skip finding an alias for ifunc
12272         symbols.
12273
12274 2018-04-26  Pedro Alves  <palves@redhat.com>
12275
12276         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12277
12278 2018-04-25  Pedro Alves  <palves@redhat.com>
12279
12280         * infcmd.c (kill_command): Print the pid as string, not the whole
12281         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12282         message.
12283         * remote.c (remote_detach_1): Print the pid as string, not the
12284         whole thread's ptid.
12285
12286 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12287             Sergio Durigan Junior  <sergiodj@redhat.com>
12288             Pedro Alves  <palves@redhat.com>
12289
12290         * infcmd.c (kill_command): Print message when inferior has
12291         been killed.
12292         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12293         '1'.
12294         (add_inferior): Improve message printed when
12295         'print_inferior_events' is on.
12296         (exit_inferior): Remove message printed when
12297         'print_inferior_events' is on.
12298         (detach_inferior): Improve message printed when
12299         'print_inferior_events' is on.
12300         (initialize_inferiors): Use 'add_inferior_silent' to set
12301         'current_inferior_'.
12302         * inferior.h (print_inferior_events): Declare here as
12303         'extern'.
12304         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12305         '[Detaching...]' messages when 'print_inferior_events' is on.
12306         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12307         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12308         'Detaching after fork from child...', replace it by '... from
12309         parent...'.
12310         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12311         prefix/suffix when printing 'Detaching...' messages.  Print
12312         them when 'print_inferior_events' is on.
12313         * remote.c (remote_detach_1): Print message when detaching
12314         from inferior and '!is_fork_parent'.
12315
12316 2018-04-24  Tom Tromey  <tom@tromey.com>
12317
12318         * cli-out.h: Reindent.
12319
12320 2018-04-24  Tom Tromey  <tom@tromey.com>
12321
12322         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12323         (cli_ui_out::do_field_string): Use fputs_filtered.
12324         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12325
12326 2018-04-23  Tom Tromey  <tom@tromey.com>
12327
12328         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12329         gdb::unique_xmalloc_ptr.
12330
12331 2018-04-23  Tom Tromey  <tom@tromey.com>
12332
12333         * configure: Rebuild.
12334
12335 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12336
12337         PR gdb/23095
12338         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12339         prepare_for_testing.  Set normal_bp to r_debug_state if target
12340         is bsd.
12341
12342 2018-04-21  Pedro Alves  <palves@redhat.com>
12343             Rajendra SY  <rajendra.sy@gmail.com>
12344
12345         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12346         * remote.c (extended_remote_attach): In all-stop mode, mark the
12347         thread as executing.
12348
12349 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12350
12351         * thread.c (thread_apply_all_command): Fix comment.
12352         (thread_command): Fix comment.
12353
12354 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12355
12356         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12357         parameter.
12358         * features/aarch64-core.c (create_feature_aarch64_core):
12359         Regenerate.
12360         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12361         Likewise.
12362         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12363         Likewise.
12364         * features/i386/32bit-avx512.c
12365         (create_feature_i386_32bit_avx512): Likewise.
12366         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12367         Likewise.
12368         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12369         Likewise.
12370         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12371         Likewise.
12372         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12373         Likewise.
12374         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12375         Likewise.
12376         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12377         Likewise.
12378         * features/i386/64bit-avx512.c
12379         (create_feature_i386_64bit_avx512): Likewise.
12380         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12381         Likewise.
12382         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12383         Likewise.
12384         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12385         Likewise.
12386         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12387         Likewise.
12388         * features/i386/64bit-segments.c
12389         (create_feature_i386_64bit_segments): Likewise.
12390         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12391         Likewise.
12392         * features/i386/x32-core.c
12393         (create_feature_i386_x32_core): Likewise.
12394         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12395         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12396         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12397         * target-descriptions.c: In generated code, don't pass xml
12398         filename.
12399
12400 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12401
12402         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12403         (print_xml_feature::visit_post): Likewise.
12404         (print_xml_feature::visit): Likewise.
12405         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12406         (print_xml_feature): Add new class.
12407         * regformats/regdat.sh: Null xmltarget on feature targets.
12408         * target-descriptions.c (struct target_desc): Add xmltarget.
12409         (maintenance_check_tdesc_xml_convert): Add unittest function.
12410         (tdesc_get_features_xml): Add function to get xml.
12411         (maintenance_check_xml_descriptions): Test xml generation.
12412         * xml-tdesc.c (string_read_description_xml): Add function.
12413         * xml-tdesc.h (string_read_description_xml): Add declaration.
12414
12415 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12416
12417         * features/Makefile: Add feature marker to targets with new style
12418         target descriptions.
12419         * regformats/aarch64.dat: Regenerate.
12420         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12421         * regformats/i386/amd64-avx-linux.dat: Likewise.
12422         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12423         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12424         * regformats/i386/amd64-linux.dat: Likewise.
12425         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12426         * regformats/i386/amd64.dat: Likewise.
12427         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12428         * regformats/i386/i386-avx-linux.dat: Likewise.
12429         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12430         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12431         * regformats/i386/i386-linux.dat: Likewise.
12432         * regformats/i386/i386-mmx-linux.dat: Likewise.
12433         * regformats/i386/i386-mpx-linux.dat: Likewise.
12434         * regformats/i386/i386.dat: Likewise.
12435         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12436         * regformats/i386/x32-avx-linux.dat: Likewise.
12437         * regformats/i386/x32-linux.dat: Likewise.
12438         * regformats/tic6x-c62x-linux.dat: Likewise.
12439         * regformats/tic6x-c64x-linux.dat: Likewise.
12440         * regformats/tic6x-c64xp-linux.dat: Likewise.
12441         * regformats/regdat.sh: Parse feature marker.
12442
12443 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12444
12445         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12446         (tdesc_osabi_name): Likewise.
12447         * target-descriptions.c (tdesc_architecture_name): Add new
12448         function.
12449         (tdesc_osabi_name): Likewise.
12450
12451 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12452
12453         * common/tdesc.c (tdesc_predefined_type): Move to here.
12454         (tdesc_named_type): Likewise.
12455         (tdesc_create_vector): Likewise.
12456         (tdesc_create_struct): Likewise.
12457         (tdesc_set_struct_size): Likewise.
12458         (tdesc_create_union): Likewise.
12459         (tdesc_create_flags): Likewise.
12460         (tdesc_create_enum): Likewise.
12461         (tdesc_add_field): Likewise.
12462         (tdesc_add_typed_bitfield): Likewise.
12463         (tdesc_add_bitfield): Likewise.
12464         (tdesc_add_flag): Likewise.
12465         (tdesc_add_enum_value): Likewise.
12466         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12467         (struct tdesc_type_vector): Likewise.
12468         (struct tdesc_type_field): Likewise.
12469         (struct tdesc_type_with_fields): Likewise.
12470         (tdesc_create_enum): Add declaration.
12471         (tdesc_add_typed_bitfield): Likewise.
12472         (tdesc_add_enum_value): Likewise.
12473         * target-descriptions.c (tdesc_type_field): Move from here.
12474         (tdesc_type_builtin): Likewise.
12475         (tdesc_type_vector): Likewise.
12476         (tdesc_type_with_fields): Likewise.
12477         (tdesc_predefined_types): Likewise.
12478         (tdesc_named_type): Likewise.
12479         (tdesc_create_vector): Likewise.
12480         (tdesc_create_struct): Likewise.
12481         (tdesc_set_struct_size): Likewise.
12482         (tdesc_create_union): Likewise.
12483         (tdesc_create_flags): Likewise.
12484         (tdesc_create_enum): Likewise.
12485         (tdesc_add_field): Likewise.
12486         (tdesc_add_typed_bitfield): Likewise.
12487         (tdesc_add_bitfield): Likewise.
12488         (tdesc_add_flag): Likewise.
12489         (tdesc_add_enum_value): Likewise.
12490         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12491         (tdesc_add_typed_bitfield): Likewise.
12492         (tdesc_add_enum_value): Likewise.
12493
12494 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12495
12496         * common/tdesc.c (tdesc_feature::accept): Move to here.
12497         (tdesc_feature::operator==): Likewise.
12498         (tdesc_create_reg): Likewise.
12499         * common/tdesc.h (tdesc_type_kind): Likewise.
12500         (struct tdesc_type): Likewise.
12501         (struct tdesc_feature): Likewise.
12502         * regformats/regdat.sh: Create a feature.
12503         * target-descriptions.c (tdesc_type_kind): Move from here.
12504         (tdesc_type): Likewise.
12505         (tdesc_type_up): Likewise.
12506         (tdesc_feature): Likewise.
12507         (tdesc_create_reg): Likewise.
12508
12509 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12510
12511         * Makefile.in: Add arch/tdesc.c
12512         * common/tdesc.c: New file.
12513         * common/tdesc.h (tdesc_element_visitor): Move to here.
12514         (tdesc_element): Likewise.
12515         (tdesc_reg): Likewise.
12516         (tdesc_reg_up): Likewise.
12517         * regformats/regdef.h (reg): Add offset to constructors.
12518         * target-descriptions.c (tdesc_element_visitor): Move from here.
12519         (tdesc_element): Likewise.
12520         (tdesc_reg): Likewise.
12521         (tdesc_reg_up): Likewise.
12522
12523 2018-04-17  Tom Tromey  <tom@tromey.com>
12524
12525         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12526         discriminant field.
12527
12528 2018-04-17  Tom Tromey  <tom@tromey.com>
12529
12530         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12531
12532 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12533
12534         * symtab.c (print_symbol_info): Skip printing filename and line
12535         number when `last' is NULL.
12536         (symtab_symbol_info): Use empty string instead of NULL for first
12537         invocation of print_symbol_info.
12538         (rbreak_command): Pass NULL to `last' parameter of
12539         print_symbol_info.
12540
12541 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12542
12543         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12544         instead of nullptr.
12545
12546 2018-04-16  Pedro Alves  <palves@redhat.com>
12547
12548         * MAINTAINERS (sh): Remove.
12549         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12550         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12551         (ALLDEPFILES): Remove sh64-tdep.c.
12552         * NEWS: Mentions that support for SH-5/SH64 is removed.
12553         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12554         (sh*-*-openbsd*): Ditto.
12555         (sh64-*-elf*): Remove.
12556         (sh*): Remove.
12557         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12558         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12559         * sh-tdep.c: No longer include "sh64-tdep.h".
12560         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12561         * sh64-tdep.c, sh64-tdep.h: Remove files.
12562
12563 2018-04-16  Pedro Alves  <palves@redhat.com>
12564
12565         * MAINTAINERS: Remove m88k.
12566         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12567         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12568         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12569         * NEWS: Mention that support for m88k was removed.
12570         * configure.host (m88*-*-*): Remove support.
12571         * configure.nat (m88k-*-*): Remove support.
12572         * configure.tgt (m88*-*-openbsd*): Remove.
12573         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12574
12575 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12576
12577         * configure.tgt (x86_tobjs): New variable.
12578         (amd64_tobjs, i386_tobjs): Use it.
12579
12580 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12581
12582         * symtab.c (print_symbol_info): Precede the symbol definition by
12583         the line number when available.
12584         * NEWS: Advertise this enhancement.
12585
12586 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12587
12588         * NEWS (New options): announce set/show record btrace cpu.
12589         * btrace.c: Include record-btrace.h.
12590         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12591         the vendor is unknown.
12592         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12593         Maybe overwrite the btrace configuration's cpu.
12594         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12595         (btrace_fetch): Add cpu parameter.  Update callers.
12596         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12597         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12598         errata workarounds if the vendor is unknown.
12599         * python/py-record-btrace.c: Include record-btrace.h.
12600         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12601         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12602         * record-btrace.c (record_btrace_cpu_state_kind): New.
12603         (record_btrace_cpu): New.
12604         (set_record_btrace_cpu_cmdlist): New.
12605         (record_btrace_get_cpu): New.
12606         (require_btrace_thread, record_btrace_info)
12607         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12608         (cmd_set_record_btrace_cpu_none): New.
12609         (cmd_set_record_btrace_cpu_auto): New.
12610         (cmd_set_record_btrace_cpu): New.
12611         (cmd_show_record_btrace_cpu): New.
12612         (_initialize_record_btrace): Initialize set/show record btrace cpu
12613         commands.
12614         * record-btrace.h (record_btrace_get_cpu): New.
12615
12616 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12617
12618         * record.c (set_record_command): Fix typo in message.
12619
12620 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12621
12622         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12623
12624 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12625
12626         * infrun.c (process_event_stop_test): Call
12627         gdbarch_in_indirect_branch_thunk.
12628         * gdbarch.sh (in_indirect_branch_thunk): New.
12629         * gdbarch.c: Regenerated.
12630         * gdbarch.h: Regenerated.
12631         * x86-tdep.h: New.
12632         * x86-tdep.c: New.
12633         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12634         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12635         (ALLDEPFILES): Add x86-tdep.c.
12636         * arch-utils.h (default_in_indirect_branch_thunk): New.
12637         * arch-utils.c (default_in_indirect_branch_thunk): New.
12638         * i386-tdep: Include x86-tdep.h.
12639         (i386_in_indirect_branch_thunk): New.
12640         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12641         function.
12642         * amd64-tdep: Include x86-tdep.h.
12643         (amd64_in_indirect_branch_thunk): New.
12644         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12645
12646 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12647
12648         PR gdb/23053
12649         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12650         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12651         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12652         regression.
12653
12654 2018-04-12  Tom Tromey  <tom@tromey.com>
12655
12656         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12657         (rust_evaluate_subexp): Likewise.
12658
12659 2018-04-12  Pedro Alves  <palves@redhat.com>
12660
12661         * procfs.c (procfs_detach): Make forward declaration's prototype
12662         match definition's protototype.
12663         (proc_get_LDT_entry): Remove stale do_cleanups call.
12664
12665 2018-04-12  Pedro Alves  <palves@redhat.com>
12666
12667         * target.h (target_ops::to_has_exited): Delete.
12668         (target_has_exited): Delete.
12669         * target-delegates.c: Regenerate.
12670
12671 2018-04-11  Pedro Alves  <palves@redhat.com>
12672
12673         * target.c (fileio_fh_t::t): Add comment.
12674         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12675         (target_fileio_close): Handle a NULL target.
12676         (invalidate_fileio_fh): New.
12677         (target_close): Call it.
12678         * remote.c (remote_hostio_send_command): No longer check whether
12679         remote_desc is open.
12680
12681 2018-04-11  Pedro Alves  <palves@redhat.com>
12682
12683         * target.c (fileio_fh_t): Make it a named struct instead of a
12684         typedef.
12685         (fileio_fh_t::is_closed): New method.
12686         (DEF_VEC_O (fileio_fh_t)): Remove.
12687         (fileio_fhandles): Now a std::vector.
12688         (is_closed_fileio_fh): Delete.
12689         (acquire_fileio_fd): Adjust.  Rename parameters.
12690         (release_fileio_fd): Adjust.
12691         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12692         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12693         (target_fileio_close): Adjust.
12694
12695 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12696
12697         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12698         index.
12699
12700 2018-04-10  Pedro Alves  <palves@redhat.com>
12701
12702         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12703         (scoped_finish_thread_state): New class.
12704         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12705         cleanup.
12706         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12707         (fetch_inferior_event, normal_stop): Likewise.
12708         * thread.c (finish_thread_state_cleanup): Delete.
12709
12710 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12711             Pedro Alves  <palves@redhat.com>
12712
12713         * value.c: Include "selftest.h" and "common/array-view.h".
12714         (struct range) <operator ==>: New.
12715         (test_ranges_contain): New.
12716         (check_ranges_vector): New.
12717         (test_insert_into_bit_range_vector): New.
12718         (_initialize_values): Register selftests.
12719         * common/array-view.h (operator==, operator!=): New.
12720
12721 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12722
12723         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12724         an iterator.
12725         * inline-frame.c: Include <algorithm>.
12726         (struct inline_state): Add constructor.
12727         (inline_state_s): Remove.
12728         (DEF_VEC_O(inline_state_s)): Remove.
12729         (inline_states): Change type to std::vector.
12730         (find_inline_frame_state): Adjust to std::vector.
12731         (allocate_inline_frame_state): Remove.
12732         (clear_inline_frame_state): Adjust to std::vector.
12733         (skip_inline_frames): Adjust to std::vector.
12734
12735 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12736
12737         * tracepoint.h (struct trace_state_variable): Add constructor.
12738         <name>: Change type to std::string.
12739         * tracepoint.c (tsv_s): Remove.
12740         (DEF_VEC_O(tsv_s)): Remove.
12741         (tvariables): Change to std::vector.
12742         (create_trace_state_variable): Adjust to std::vector.
12743         (find_trace_state_variable): Likewise.
12744         (find_trace_state_variable_by_number): Likewise.
12745         (delete_trace_state_variable): Likewise.
12746         (trace_variable_command): Adjust to std::string.
12747         (delete_trace_variable_command): Likewise.
12748         (tvariables_info_1): Adjust to std::vector.
12749         (save_trace_state_variables): Likewise.
12750         (start_tracing): Likewise.
12751         (merge_uploaded_trace_state_variables): Adjust to std::vector
12752         and std::string.
12753         * target.h (struct target_ops)
12754         <to_download_trace_state_variable>: Pass reference to
12755         trace_state_variable.
12756         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12757         * target-delegates.c: Re-generate.
12758         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12759         (mi_tsv_deleted): Likewise.
12760         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12761         * remote.c (remote_download_trace_state_variable): Change
12762         pointer to reference and adjust.
12763         * make-target-delegates (parse_argtypes): Handle references.
12764         (write_function_header): Likewise.
12765         (munge_type): Likewise.
12766
12767 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12768
12769         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12770         string_view-selftests.c.
12771         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12772         testsuite.
12773         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12774         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12775         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12776         * unittests/basic_string_view/element_access/char/1.cc:
12777         Likewise.
12778         * unittests/basic_string_view/element_access/char/empty.cc:
12779         Likewise.
12780         * unittests/basic_string_view/element_access/char/front_back.cc:
12781         Likewise.
12782         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12783         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12784         Likewise.
12785         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12786         Likewise.
12787         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12788         Likewise.
12789         * unittests/basic_string_view/operations/compare/char/1.cc:
12790         Likewise.
12791         * unittests/basic_string_view/operations/compare/char/13650.cc:
12792         Likewise.
12793         * unittests/basic_string_view/operations/copy/char/1.cc:
12794         Likewise.
12795         * unittests/basic_string_view/operations/data/char/1.cc:
12796         Likewise.
12797         * unittests/basic_string_view/operations/find/char/1.cc:
12798         Likewise.
12799         * unittests/basic_string_view/operations/find/char/2.cc:
12800         Likewise.
12801         * unittests/basic_string_view/operations/find/char/3.cc:
12802         Likewise.
12803         * unittests/basic_string_view/operations/find/char/4.cc:
12804         Likewise.
12805         * unittests/basic_string_view/operations/rfind/char/1.cc:
12806         Likewise.
12807         * unittests/basic_string_view/operations/rfind/char/2.cc:
12808         Likewise.
12809         * unittests/basic_string_view/operations/rfind/char/3.cc:
12810         Likewise.
12811         * unittests/basic_string_view/operations/substr/char/1.cc:
12812         Likewise.
12813         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12814         * unittests/string_view-selftests.c: New file.
12815
12816 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12817
12818         * unittests/basic_string_view/capacity/1.cc: New file.
12819         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12820         * unittests/basic_string_view/cons/char/1.cc: New file.
12821         * unittests/basic_string_view/cons/char/2.cc: New file.
12822         * unittests/basic_string_view/cons/char/3.cc: New file.
12823         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12824         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12825         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12826         * unittests/basic_string_view/element_access/char/1.cc: New file.
12827         * unittests/basic_string_view/element_access/char/2.cc: New file.
12828         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12829         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12830         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12831         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12832         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12833         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12834         * unittests/basic_string_view/include.cc: New file.
12835         * unittests/basic_string_view/inserters/char/1.cc: New file.
12836         * unittests/basic_string_view/inserters/char/2.cc: New file.
12837         * unittests/basic_string_view/inserters/char/3.cc: New file.
12838         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12839         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12840         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12841         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12842         * unittests/basic_string_view/literals/types.cc: New file.
12843         * unittests/basic_string_view/literals/values.cc: New file.
12844         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12845         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12846         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12847         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12848         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12849         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12850         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12851         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12852         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12853         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12854         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12855         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12856         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12857         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12858         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12859         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12860         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12861         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12862         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12863         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12864         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12865         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12866         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12867         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12868         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12869         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12870         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12871         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12872         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12873         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12874         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12875         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12876         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12877         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12878         * unittests/basic_string_view/operators/char/2.cc: New file.
12879         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12880         * unittests/basic_string_view/range_access/char/1.cc: New file.
12881         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12882         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12883         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12884         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12885         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12886         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12887         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12888         * unittests/basic_string_view/typedefs.cc: New file.
12889         * unittests/basic_string_view/types/1.cc: New file.
12890
12891 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12892
12893         * common/gdb_string_view.h: Remove libstdc++ implementation
12894         details, adjust to gdb reality.
12895         * common/gdb_string_view.tcc: Likewise.
12896         * cli/cli-script.c (struct string_view): Remove.
12897         (user_args) <m_args>: Change element type to gdb::string_view.
12898         (user_args::insert_args): Adjust.
12899
12900 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12901
12902         * common/gdb_string_view.h: New file.
12903         * common/gdb_string_view.tcc: New file.
12904
12905 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12906
12907         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12908         * configure: Re-generate.
12909
12910 2018-04-09  Pedro Alves  <palves@redhat.com>
12911
12912         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12913         (set_target_gdbarch): Call
12914         gdb::observers::architecture_changed.notify instead of
12915         observer_notify_architecture_changed.
12916
12917 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12918
12919         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12920         (do_restore_current_traceframe_cleanup): Remove.
12921         (restore_current_traceframe_cleanup_dtor): Remove.
12922         (make_cleanup_restore_current_traceframe): Remove.
12923         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12924         New.
12925         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12926         * infrun.c (fetch_inferior_event): Use
12927         scoped_restore_current_traceframe.
12928
12929 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12930
12931         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12932         Remove.
12933         <n_allocated_type_units>: Remove.
12934         <all_type_units>: Change to std::vector.
12935         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12936         to std::vector change.
12937         (dwarf2_per_objfile::get_cutu): Likewise.
12938         (dwarf2_per_objfile::get_tu): Likewise.
12939         (create_signatured_type_table_from_index): Likewise.
12940         (create_signatured_type_table_from_debug_names): Likewise.
12941         (dw2_symtab_iter_next): Likewise.
12942         (dw2_print_stats): Likewise.
12943         (dw2_expand_all_symtabs): Likewise.
12944         (dw2_expand_marked_cus): Likewise.
12945         (dw2_debug_names_iterator::next): Likewise.
12946         (dwarf2_initialize_objfile): Likewise.
12947         (add_signatured_type_cu_to_table): Likewise.
12948         (create_all_type_units): Likewise.
12949         (add_type_unit): Likewise.
12950         (struct tu_abbrev_offset): Add constructor.
12951         (build_type_psymtabs_1): Adjust to std::vector change.
12952         (print_tu_stats): Likewise.
12953         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12954         (write_debug_names): Likewise.
12955
12956 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12957
12958         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12959         Make an std::vector.
12960         <n_comp_units>: Remove.
12961         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12962         to std::vector change.
12963         (dwarf2_per_objfile::get_cutu): Likewise.
12964         (dwarf2_per_objfile::get_cu): Likewise.
12965         (create_cus_from_index): Likewise.
12966         (create_addrmap_from_index): Likewise.
12967         (create_addrmap_from_aranges): Likewise.
12968         (dwarf2_read_index): Likewise.
12969         (dw2_find_last_source_symtab): Likewise.
12970         (dw2_map_symtabs_matching_filename): Likewise.
12971         (dw2_symtab_iter_next): Likewise.
12972         (dw2_print_stats): Likewise.
12973         (dw2_expand_all_symtabs): Likewise.
12974         (dw2_expand_symtabs_with_fullname): Likewise.
12975         (dw2_expand_marked_cus): Likewise.
12976         (dw2_map_symbol_filenames): Likewise.
12977         (create_cus_from_debug_names): Likewise.
12978         (dwarf2_read_debug_names): Likewise.
12979         (dw2_debug_names_iterator::next): Likewise.
12980         (dwarf2_initialize_objfile): Likewise.
12981         (set_partial_user): Likewise.
12982         (dwarf2_build_psymtabs_hard): Likewise.
12983         (read_comp_units_from_section): Remove arguments, adjust to
12984         std::vector change.
12985         (create_all_comp_units): Adjust to std::vector and
12986         read_comp_units_from_section changes.
12987         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12988         change.
12989         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12990         (psyms_seen_size): Likewise.
12991         (write_gdbindex): Likewise.
12992         (write_debug_names): Likewise.
12993
12994 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12995
12996         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12997         with dwarf2_per_objfile.
12998         (create_cus_from_index): Likewise.
12999         (create_signatured_type_table_from_index): Likewise.
13000         (dwarf2_read_index): Likewise.
13001         (dwarf2_initialize_objfile): Likewise.
13002         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13003         per_cu rather than get_dwarf2_per_objfile.
13004
13005 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13006
13007         * dwarf2read.h (struct signatured_type): Forward declare.
13008         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13009         New methods.
13010         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13011         (dw2_get_cutu): ...this.
13012         (dwarf2_per_objfile::get_cu): Rename from...
13013         (dw2_get_cu): ...this.
13014         (dwarf2_per_objfile::get_tu): New.
13015         (create_addrmap_from_index): Adjust.
13016         (create_addrmap_from_aranges): Adjust.
13017         (dw2_find_last_source_symtab): Adjust.
13018         (dw2_map_symtabs_matching_filename): Adjust.
13019         (dw2_symtab_iter_next): Adjust.
13020         (dw2_print_stats): Adjust.
13021         (dw2_expand_all_symtabs): Adjust.
13022         (dw2_expand_symtabs_with_fullname): Adjust.
13023         (dw2_expand_marked_cus): Adjust.
13024         (dw_expand_symtabs_matching_file_matcher): Adjust.
13025         (dw2_map_symbol_filenames): Adjust.
13026         (dw2_debug_names_iterator::next): Adjust.
13027         (dwarf2_initialize_objfile): Adjust.
13028         (set_partial_user): Adjust.
13029         (dwarf2_build_psymtabs_hard): Adjust.
13030
13031 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13032
13033         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13034         Remove unused variables.
13035         (dw2_map_symtabs_matching_filename): Likewise.
13036         (dwarf2_record_block_ranges): Likewise.
13037         (dwarf2_read_addr_index): Likewise.
13038         (follow_die_offset): Likewise.
13039
13040 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13041
13042         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13043         to symbol_file_add_main.
13044
13045 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13046
13047         PR mi/22299
13048         * mi/mi-console.c (do_fputc_async_safe): New.
13049         (mi_console_file::write_async_safe): New.
13050         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13051         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13052         New.
13053         * ui-file.c (ui_file::putstrn): Adjust call to
13054         fputstrn_unfiltered.
13055         * utils.c (printchar): Replace do_fputs and do_fprintf
13056         parameters by do_fputc.
13057         (fputstr_filtered): Adjust call to printchar.
13058         (fputstr_unfiltered): Likewise.
13059         (fputstrn_filtered): Likewise.
13060         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13061         printchar.
13062         * utils.h (do_fputc_ftype): New typedef.
13063         (fputstrn_unfiltered): Add do_fputc parameter.
13064
13065 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13066
13067         * regformats/i386/i386-avx.dat: Remove.
13068
13069 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13070
13071         PR gdb/22979
13072         * amd64-tdep.c (amd64_none_init_abi): New function.
13073         (amd64_x32_none_init_abi): New function.
13074         (_initialize_amd64_tdep): Register handlers for x86-64 and
13075         x64_32 with GDB_OSABI_NONE.
13076         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13077         GDB_OSABI_NONE osabi.
13078
13079 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13080
13081         PR gdb/22980
13082         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13083         GDB_OSABI_NONE.
13084         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13085         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13086
13087 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13088
13089         * common/byte-vector.h (char_vector): New type.
13090         * target.h (target_read_alloc): Return
13091         gdb::optional<byte_vector>.
13092         (target_read_stralloc): Return gdb::optional<char_vector>.
13093         (target_get_osdata): Return gdb::optional<char_vector>.
13094         * target.c (target_read_alloc_1): Templatize.  Replacement
13095         manual memory management with vector.
13096         (target_read_alloc): Change return type, adjust.
13097         (target_read_stralloc): Change return type, adjust.
13098         (target_get_osdata): Change return type, adjust.
13099         * auxv.c (struct auxv_info) <length>: Remove.
13100         <data>: Change type to gdb::optional<byte_vector>.
13101         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13102         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13103         (target_auxv_search): Adjust.
13104         (fprint_target_auxv): Adjust.
13105         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13106         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13107         (linux_make_corefile_notes): Adjust.
13108         * osdata.c (get_osdata): Adjust.
13109         * remote.c (remote_get_threads_with_qxfer): Adjust.
13110         (remote_memory_map): Adjust.
13111         (remote_traceframe_info): Adjust.
13112         (btrace_read_config): Adjust.
13113         (remote_read_btrace): Adjust.
13114         (remote_pid_to_exec_file): Adjust.
13115         * solib-aix.c (solib_aix_get_library_list): Adjust.
13116         * solib-dsbt.c (decode_loadmap): Don't free buf.
13117         (dsbt_get_initial_loadmaps): Adjust.
13118         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13119         * solib-target.c (solib_target_current_sos): Adjust.
13120         * tracepoint.c (sdata_make_value): Adjust.
13121         * xml-support.c (xinclude_start_include): Adjust.
13122         (xml_fetch_content_from_file): Adjust.
13123         * xml-support.h (xml_fetch_another): Change return type.
13124         (xml_fetch_content_from_file): Change return type.
13125         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13126         * xml-tdesc.c (file_read_description_xml): Adjust.
13127         (fetch_available_features_from_target): Change return type.
13128         (target_fetch_description_xml): Adjust.
13129         (target_read_description_xml): Adjust.
13130
13131 2018-04-06  Tom Tromey  <tom@tromey.com>
13132
13133         * value.c (~value): Update.
13134         (struct value) <contents>: Now unique_xmalloc_ptr.
13135         (value_contents_bits_eq, allocate_value_contents)
13136         (value_contents_raw, value_contents_all_raw)
13137         (value_contents_for_printing, value_contents_for_printing_const)
13138         (set_value_enclosing_type): Update.
13139
13140 2018-04-06  Tom Tromey  <tom@tromey.com>
13141
13142         * value.c (range_s): Remove typedef, VEC.
13143         (struct range): Add operator<.
13144         (range_lessthan): Remove.
13145         (ranges_contain): Change type.
13146         (~value): Update.
13147         (struct value) <unavailable, optimized_out>: Now std::vector.
13148         (value_entirely_available)
13149         (value_entirely_covered_by_range_vector)
13150         (value_entirely_unavailable, value_entirely_optimized_out):
13151         Update.
13152         (insert_into_bit_range_vector): Change argument type.
13153         (find_first_range_overlap): Likewise.
13154         (struct ranges_and_idx, value_contents_bits_eq)
13155         (require_not_optimized_out, require_available): Update.
13156         (ranges_copy_adjusted): Change argument types.
13157         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13158
13159 2018-04-06  Tom Tromey  <tom@tromey.com>
13160
13161         * value.c (~value): Update.
13162         (struct value) <parent>: Now a value_ref_ptr.
13163         (value_parent, set_value_parent, value_address, value_copy):
13164         Update.
13165
13166 2018-04-06  Tom Tromey  <tom@tromey.com>
13167
13168         * value.c (struct value): Add constructor, destructor, and member
13169         initializers.
13170         (allocate_value_lazy, value_decref): Update.
13171
13172 2018-04-06  Tom Tromey  <tom@tromey.com>
13173
13174         * value.c (struct value) <released, next>: Remove.
13175         (all_values): Now a std::vector.
13176         (allocate_value_lazy): Update.
13177         (value_next): Remove.
13178         (value_mark, value_free_to_mark, release_value)
13179         (value_release_to_mark): Update.
13180
13181 2018-04-06  Tom Tromey  <tom@tromey.com>
13182
13183         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13184         (free_value_chain): Remove.
13185         * value.c (free_value_chain): Remove.
13186         (value_release_to_mark): Return a std::vector.
13187         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13188         std::vector.
13189         (check_condition): Update.
13190         * eval.c (fetch_subexp_value): Change "val_chain" to a
13191         std::vector.
13192         * breakpoint.c (update_watchpoint): Update.
13193         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13194
13195 2018-04-06  Tom Tromey  <tom@tromey.com>
13196
13197         * value.h (free_all_values): Remove.
13198         * value.c (free_all_values): Remove.
13199
13200 2018-04-06  Tom Tromey  <tom@tromey.com>
13201
13202         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13203         (value_history_chain, value_history_count): Remove.
13204         (value_history): New global.
13205         (record_latest_value, access_value_history, show_values)
13206         (preserve_values): Update.
13207
13208 2018-04-06  Tom Tromey  <tom@tromey.com>
13209
13210         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13211         * varobj.c (varobj_set_display_format, varobj_set_value)
13212         (install_default_visualizer, construct_visualizer)
13213         (install_new_value, ~varobj, varobj_get_value_type)
13214         (my_value_of_variable, varobj_editable_p): Update.
13215         * c-varobj.c (c_describe_child, c_value_of_variable)
13216         (cplus_number_of_children, cplus_describe_child): Update.
13217         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13218         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13219         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13220
13221 2018-04-06  Tom Tromey  <tom@tromey.com>
13222
13223         * printcmd.c (last_examine_address): Change type to
13224         value_ref_ptr.
13225         (do_examine, x_command): Update.
13226
13227 2018-04-06  Tom Tromey  <tom@tromey.com>
13228
13229         * value.c (release_value): Update.
13230         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13231         (struct bpstats) <val>: Now a value_ref_ptr.
13232         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13233         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13234         (~watchpoint, print_it_watchpoint, watch_command_1)
13235         (invalidate_bp_value_on_memory_change): Update.
13236
13237 2018-04-06  Tom Tromey  <tom@tromey.com>
13238
13239         * varobj.c (varobj_clear_saved_item)
13240         (update_dynamic_varobj_children, install_new_value, ~varobj):
13241         Update.
13242         * value.h (value_incref): Move declaration earlier.
13243         (value_decref): Rename from value_free.
13244         (struct value_ref_policy): New.
13245         (value_ref_ptr): New typedef.
13246         (struct value_deleter): Remove.
13247         (gdb_value_up): Remove typedef.
13248         (release_value): Change return type.
13249         (release_value_or_incref): Remove.
13250         * value.c (set_value_parent): Update.
13251         (value_incref): Change return type.
13252         (value_decref): Rename from value_free.
13253         (value_free_to_mark, free_all_values, free_value_chain): Update.
13254         (release_value): Return value_ref_ptr.
13255         (release_value_or_incref): Remove.
13256         (record_latest_value, set_internalvar, clear_internalvar):
13257         Update.
13258         * stack.c (info_frame_command): Don't call value_free.
13259         * python/py-value.c (valpy_dealloc, valpy_new)
13260         (value_to_value_object): Update.
13261         * printcmd.c (do_examine): Update.
13262         * opencl-lang.c (lval_func_free_closure): Update.
13263         * mi/mi-main.c (register_changed_p): Don't call value_free.
13264         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13265         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13266         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13267         value_free.
13268         * guile/scm-value.c (vlscm_free_value_smob)
13269         (vlscm_scm_from_value): Update.
13270         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13271         (frame_unwind_register_unsigned, get_frame_register_bytes)
13272         (put_frame_register_bytes): Don't call value_free.
13273         * findvar.c (address_from_register): Don't call value_free.
13274         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13275         * dwarf2loc.c (entry_data_value_free_closure)
13276         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13277         (dwarf2_evaluate_loc_desc_full): Update.
13278         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13279         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13280         (~watchpoint, watch_command_1)
13281         (invalidate_bp_value_on_memory_change): Update.
13282         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13283
13284 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13285
13286         PR gdb/23022
13287         * warning.m4: Add -Wno-error=deprecated-register.
13288         * configure: Re-generate.
13289
13290 2018-04-05  Tom Tromey  <tom@tromey.com>
13291
13292         * linespec.h: Remove include of "vec.h".
13293
13294 2018-04-05  Tom Tromey  <tom@tromey.com>
13295
13296         * linespec.c (typep): Remove typedef.
13297         (find_methods, find_superclass_methods): Take a std::vector.
13298         (find_method): Use std::vector.
13299
13300 2018-04-05  Tom Tromey  <tom@tromey.com>
13301
13302         * utils.c (compare_strings): Remove.
13303         * utils.h (compare_strings): Remove.
13304         * objc-lang.h (find_imps): Update.
13305         * objc-lang.c (find_methods): Take a std::vector.
13306         (uniquify_strings, find_imps): Likewise.
13307         * linespec.c (find_methods): Take a std::vector.
13308         (decode_objc): Use std::vector.
13309         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13310         a std::vector.
13311         (find_method, find_function_symbols): Use std::vector.
13312
13313 2018-04-05  Tom Tromey  <tom@tromey.com>
13314
13315         * completer.c (completion_tracker::completion_tracker): Remove
13316         cast.
13317         (completion_tracker::discard_completions): Likewise.
13318         * breakpoint.c (ambiguous_names_p): Remove cast.
13319         * ada-lang.c (_initialize_ada_language): Remove cast.
13320         * utils.h (streq): Update.
13321         (streq_hash): Add new declaration.
13322         * utils.c (streq): Return bool.
13323         (streq_hash): New function.
13324
13325 2018-04-05  Tom Tromey  <tom@tromey.com>
13326
13327         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13328         Remove a string copy.
13329
13330 2018-04-05  Tom Tromey  <tom@tromey.com>
13331
13332         * linespec.c (filter_results): Use std::vector.
13333         (decode_line_2, decode_line_full): Update.
13334
13335 2018-04-05  Tom Tromey  <tom@tromey.com>
13336
13337         * linespec.c (canonical_to_fullform): Return std::string.
13338         (filter_results): Update.
13339         (struct decode_line_2_item): Add constructor.
13340         <fullform, displayform>: Now std::string.
13341         (decode_line_2_compare_items): Now a std::sort comparator.
13342         (decode_line_2): Update.
13343
13344 2018-04-05  Tom Tromey  <tom@tromey.com>
13345
13346         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13347         (unexpected_linespec_error): Update.
13348         (linespec_parse_basic, parse_linespec): Update.
13349
13350 2018-04-05  Tom Tromey  <tom@tromey.com>
13351
13352         * linespec.c (linespec_parse_basic): Reindent.
13353
13354 2018-04-05  Tom Tromey  <tom@tromey.com>
13355
13356         * minsyms.h (iterate_over_minimal_symbols): Update.
13357         * minsyms.c (iterate_over_minimal_symbols): Take a
13358         gdb::function_view.
13359         * linespec.c (struct collect_minsyms): Remove.
13360         (compare_msyms): Now a std::sort comparator.
13361         (add_minsym): Add parameters.
13362         (search_minsyms_for_name): Update.  Use std::vector.
13363
13364 2018-04-03  Tom Tromey  <tom@tromey.com>
13365
13366         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13367         gdb::byte_vector.
13368
13369 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13370
13371         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13372
13373 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13374
13375         PR gdb/16959
13376         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13377         printing static type.
13378
13379 2018-04-01  Tom Tromey  <tom@tromey.com>
13380
13381         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13382         (rs6000_xfer_shared_libraries): Update.
13383
13384 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13385
13386         * common/gdb_vecs.h (char_ptr): Remove.
13387         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13388
13389 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13390
13391         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13392         with std::vector.
13393         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13394
13395 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13396
13397         * tracepoint.h (struct uploaded_tp): Initialize fields.
13398         <actions, step_actions, cmd_strings>: Change type to
13399         std::vector<char *>.
13400         * tracepoint.c (get_uploaded_tp): Allocate with new.
13401         (free_uploaded_tps): Free with delete.
13402         (parse_tracepoint_definition): Adjust to std::vector change.
13403         * breakpoint.c (read_uploaded_action): Likewise.
13404         (create_tracepoint_from_upload): Likewise.
13405         * ctf.c (ctf_write_uploaded_tp): Likewise.
13406         (SET_ARRAY_FIELD): Likewise.
13407         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13408
13409 2018-03-30  Tom Tromey  <tom@tromey.com>
13410
13411         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13412         std::unique_ptr.
13413         (svr4_keep_data_in_core): Update.
13414         (svr4_read_so_list): Update.
13415
13416 2018-03-30  Tom Tromey  <tom@tromey.com>
13417
13418         * windows-nat.c (handle_output_debug_string, handle_exception):
13419         Update.
13420         * target.h (target_read_string): Update.
13421         * target.c (target_read_string): Change "string" to
13422         unique_xmalloc_ptr.
13423         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13424         Update.
13425         * solib-frv.c (frv_current_sos): Update.
13426         * solib-dsbt.c (dsbt_current_sos): Update.
13427         * solib-darwin.c (darwin_current_sos): Update.
13428         * linux-thread-db.c (inferior_has_bug): Update.
13429         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13430         Update.  Remove alloca.
13431         * ada-lang.c (ada_main_name): Update.
13432
13433 2018-03-30  Tom Tromey  <tom@tromey.com>
13434
13435         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13436         (struct dwo_file_deleter): New.
13437         (dwo_file_up): New typedef.
13438         (open_and_init_dwo_file): Use dwo_file_up.
13439         (free_dwo_file_cleanup): Remove.
13440
13441 2018-03-30  Tom Tromey  <tom@tromey.com>
13442
13443         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13444         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13445
13446 2018-03-30  Tom Tromey  <tom@tromey.com>
13447
13448         * dwarf2read.c (class free_cached_comp_units): New class.
13449         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13450         (free_cached_comp_units): Remove function.
13451
13452 2018-03-30  Tom Tromey  <tom@tromey.com>
13453
13454         * utils.h (make_cleanup_unpush_target): Remove.
13455         * inf-ptrace.c (struct target_unpusher): New.
13456         (target_unpush_up) New typedef.
13457         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13458         target_unpush_up.
13459         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13460
13461 2018-03-27  Tom Tromey  <tom@tromey.com>
13462
13463         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13464
13465 2018-03-27  Pedro Alves  <palves@redhat.com>
13466             Tom Tromey  <tom@tromey.com>
13467
13468         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13469         destructor.  Now a class.
13470         (gdb_readline_wrapper_cleanup): Remove function.
13471         (gdb_readline_wrapper): Remove cleanups.
13472
13473 2018-03-27  Tom Tromey  <tom@tromey.com>
13474
13475         * typeprint.h (struct type_print_options) <local_typedefs,
13476         global_typedefs>: Remove "struct" keyword.
13477         (class typedef_hash_table): New class.
13478         (recursively_update_typedef_hash, add_template_parameters)
13479         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13480         (find_typedef_in_hash): Don't declare.
13481         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13482         (typedef_hash_table::recursively_update): Rename from
13483         recursively_update_typedef_hash.  Now a member.
13484         (typedef_hash_table::add_template_parameters): Rename from
13485         add_template_parameters.  Now a member.
13486         (typedef_hash_table::typedef_hash_table): Now a constructor;
13487         rename from create_typedef_hash.
13488         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13489         rename from free_typedef_hash.
13490         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13491         (do_free_global_table): Remove.
13492         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13493         from copy_type_recursive.
13494         (create_global_typedef_table): Remove.
13495         (typedef_hash_table::find_global_typedef): Now a member of
13496         typedef_hash_table.
13497         (typedef_hash_table::find_typedef): Rename from
13498         find_typedef_in_hash; now a member.
13499         (whatis_exp): Update.
13500         * extension.h (struct ext_lang_type_printers): Add constructor and
13501         destructor.
13502         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13503         declare.
13504         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13505         Now a constructor; rename from start_ext_lang_type_printers.
13506         (ext_lang_type_printers): Now a destructor; rename from
13507         free_ext_lang_type_printers.
13508         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13509         Update.
13510         (c_type_print_base_struct_union): Update.  Remove cleanups.
13511
13512 2018-03-27  Tom Tromey  <tom@tromey.com>
13513
13514         * dwarf-index-write.c: Include <cmath>.
13515
13516 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13517
13518         * NEWS: Add entry describing new "set|show varsize-limit" command.
13519         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13520         command.
13521         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13522         "set variable".
13523
13524 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13525
13526         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13527         dwarf-index-write.c
13528         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13529         * dwarf-index-common.c: New file.
13530         * dwarf-index-common.h: New file.
13531         * dwarf-index-write.c: New file.
13532         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13533         (struct dwarf2_section_info): Move from here.
13534         (dwarf2_section_info_def): Likewise.
13535         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13536         (offset_type): Likewise.
13537         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13538         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13539         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13540         (byte_swap): Likewise.
13541         (MAYBE_SWAP): Likewise.
13542         (dwarf2_per_cu_ptr): Likewise.
13543         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13544         (struct tu_stats): Likewise.
13545         (struct dwarf2_per_objfile): Likewise.
13546         (struct dwarf2_per_cu_data): Likewise.
13547         (struct signatured_type): Likewise.
13548         (sig_type_ptr): Likewise.
13549         (DEF_VEC_P (sig_type_ptr)): Likewise.
13550         (INDEX4_SUFFIX): Likewise.
13551         (INDEX5_SUFFIX): Likewise.
13552         (DEBUG_STR_SUFFIX): Likewise.
13553         (dwarf2_read_section): Make non-static.
13554         (mapped_index_string_hash): Move from here.
13555         (dwarf5_djb_hash): Likewise.
13556         (file_write): Likewise.
13557         (class data_buf): Likewise.
13558         (struct symtab_index_entry): Likewise.
13559         (struct mapped_symtab): Likewise.
13560         (find_slot): Likewise.
13561         (hash_expand): Likewise.
13562         (add_index_entry): Likewise.
13563         (uniquify_cu_indices): Likewise.
13564         (class c_str_view): Likewise.
13565         (class c_str_view_hasher): Likewise.
13566         (class vector_hasher): Likewise.
13567         (write_hash_table): Likewise.
13568         (psym_index_map): Likewise.
13569         (struct addrmap_index_data): Likewise.
13570         (add_address_entry): Likewise.
13571         (add_address_entry_worker): Likewise.
13572         (write_address_map): Likewise.
13573         (symbol_kind): Likewise.
13574         (write_psymbols): Likewise.
13575         (struct signatured_type_index_data): Likewise.
13576         (write_one_signatured_type): Likewise.
13577         (recursively_count_psymbols): Likewise.
13578         (recursively_write_psymbols): Likewise.
13579         (class debug_names): Likewise.
13580         (check_dwarf64_offsets): Likewise.
13581         (psyms_seen_size): Likewise.
13582         (write_gdbindex): Likewise.
13583         (write_debug_names): Likewise.
13584         (assert_file_size): Likewise.
13585         (write_psymtabs_to_index): Likewise.
13586         (save_gdb_index_command): Likewise.
13587         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13588         command.
13589         * dwarf2read.h: New file.
13590
13591 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13592
13593         PR gdb/22670
13594         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13595         symbol name if the CU's language stores symbol names in linkage
13596         format.
13597         * language.h (struct language_defn)
13598         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13599         all instances of this struct.
13600
13601 2018-03-26  Tom Tromey  <tom@tromey.com>
13602
13603         * stack.c (backtrace_command_1): Remove verbose code.
13604
13605 2018-03-26  Tom Tromey  <tom@tromey.com>
13606
13607         * python/py-framefilter.c (py_print_type): Don't catch
13608         exceptions.  Return void.
13609         (py_print_value): Likewise.
13610         (py_print_single_arg): Likewise.
13611         (enumerate_args): Don't catch exceptions.
13612         (py_print_args): Likewise.
13613         (py_print_frame): Likewise.
13614         (gdbpy_apply_frame_filter): Catch exceptions here.
13615
13616 2018-03-26  Tom Tromey  <tom@tromey.com>
13617
13618         * stack.c (_initialize_stack): Remove trailing newlines from help
13619         text.  Add "Usage" line to "backtrace" help.
13620
13621 2018-03-26  Tom Tromey  <tom@tromey.com>
13622
13623         PR python/16486:
13624         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13625
13626 2018-03-26  Tom Tromey  <tom@tromey.com>
13627
13628         * python/py-framefilter.c (py_print_single_arg): Return
13629         EXT_LANG_BT_ERROR from catch.
13630
13631 2018-03-26  Tom Tromey  <tom@tromey.com>
13632
13633         PR backtrace/15584:
13634         * stack.c (backtrace_command_1): Move some code into no-filters
13635         "if".
13636
13637 2018-03-26  Tom Tromey  <tom@tromey.com>
13638
13639         * python/py-framefilter.c (throw_quit_or_print_exception): New
13640         function.
13641         (gdbpy_apply_frame_filter): Use it.
13642
13643 2018-03-26  Tom Tromey  <tom@tromey.com>
13644
13645         PR cli/17716:
13646         * python/py-framefilter.c (py_print_type, py_print_value)
13647         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13648         RETURN_MASK_ERROR.
13649
13650 2018-03-26  Tom Tromey  <tom@tromey.com>
13651
13652         * python/py-framefilter.c (enumerate_args): Use
13653         gdb::unique_xmalloc_ptr.
13654
13655 2018-03-26  Tom Tromey  <tom@tromey.com>
13656
13657         * python/py-framefilter.c (py_print_frame): Return
13658         EXT_LANG_BT_OK.
13659         (gdbpy_apply_frame_filter): Update comment.
13660         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13661         Remove.
13662         <EXT_LANG_BT_NO_FILTERS>: Change value.
13663
13664 2018-03-26  Tom Tromey  <tom@tromey.com>
13665
13666         PR backtrace/15582:
13667         * stack.c (backtrace_command): Parse "hide" argument.
13668         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13669         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13670         constant.
13671
13672 2018-03-26  Tom Tromey  <tom@tromey.com>
13673
13674         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13675         add "flags".
13676         (backtrace_command): Remove "fulltrace", add "flags".
13677
13678 2018-03-26  Tom Tromey  <tom@tromey.com>
13679
13680         * stack.c (backtrace_command): Rewrite command line parsing.
13681
13682 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13683
13684         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13685
13686 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13687
13688         * filename-seen-cache.h: Add include guard.
13689
13690 2018-03-26  Keith Seitz  <keiths@redhat.com>
13691
13692         * symfile.c (place_section): Remove "struct" from section_addr_info
13693         in comment.
13694         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13695         "struct" keyword from section_addr_info.
13696
13697 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13698
13699         * regformats/regdef.h (reg): Add constructors.
13700
13701 2018-03-25  Pedro Alves  <palves@redhat.com>
13702
13703         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13704         if then/else bodies in var_func_name extraction.
13705
13706 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13707
13708         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13709         lookup_minimal_symbol() to find symbol entry.
13710         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13711
13712 2018-03-23  Keith Seitz  <keiths@redhat.com>
13713
13714         PR c++/22968
13715         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13716         nested type definitions for C++, too.
13717
13718 2018-03-23  Tom Tromey  <tom@tromey.com>
13719
13720         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13721         a typedef.
13722         (macho_register_oso): Remove.
13723         (macho_symtab_read): Take a std::vector.
13724         (oso_el_compare_name): Now a std::sort comparator.
13725         (macho_symfile_read_all_oso): Take a std::vector.
13726         (macho_symfile_read): Use std::vector.  Remove cleanups.
13727
13728 2018-03-22  Tom Tromey  <tom@tromey.com>
13729
13730         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13731         (record_full_goto_bookmark): Use std::string.
13732
13733 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13734
13735         PR tdep/18295
13736         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13737         a single mask.
13738
13739 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13740
13741         * rs6000-tdep.c (store_insn_p): New function.
13742         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13743         and cr_reg to their unshifted values. Use store_insn_p to
13744         match LR saves using either R1 or fdata->alloca_reg. Use
13745         store_insn_p to match CR saves. Set alloca_reg_offset
13746         when alloca_reg and framep are set. Remove lr_reg shift
13747         when assigning to fdata->lr_register.
13748
13749 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13750
13751         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13752         command line args instead of emitting a warning.
13753
13754 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13755
13756         * tracepoint.h (struct static_tracepoint_marker): Initialize
13757         fields, define default constructor, move constructor and move
13758         assignment, disable the rest.
13759         <str_id, extra>: Make std::string.
13760         (release_static_tracepoint_marker): Remove.
13761         (free_current_marker): Remove.
13762         * tracepoint.c (free_current_marker): Remove.
13763         (parse_static_tracepoint_marker_definition): Adjust to
13764         std::string, use new hex2str overload.
13765         (release_static_tracepoint_marker): Remove.
13766         (print_one_static_tracepoint_marker): Get marker by reference
13767         and adjust to std::string.
13768         (info_static_tracepoint_markers_command): Adjust to std::vector
13769         changes
13770         * target.h (static_tracepoint_marker_p): Remove typedef.
13771         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13772         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13773         bool.
13774         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13775         * target-debug.h
13776         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13777         (target_debug_print_std_vector_static_tracepoint_marker): New.
13778         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13779         to...
13780         (target_debug_print_static_tracepoint_marker_p): ... this.
13781         * target-delegates.c: Re-generate.
13782         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13783         Make std::string.
13784         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13785         (decode_static_tracepoint_spec): Adjust to std::vector.
13786         (tracepoint_print_one_detail): Adjust to std::string.
13787         (strace_marker_decode_location): Adjust to std::string.
13788         (update_static_tracepoint): Adjust to std::string, remove call
13789         to release_static_tracepoint_marker.
13790         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13791         Adjust to std::vector.
13792         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13793         (remote_static_tracepoint_markers_by_strid): Adjust to
13794         std::vector.
13795         * common/rsp-low.h (hex2str): New overload with explicit count
13796         of bytes.
13797         * common/rsp-low.c (hex2str): New overload with explicit count
13798         of bytes.
13799         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13800         (_initialize_rsp_low_selftests): Add test_hex2str test.
13801         * unittests/tracepoint-selftests.c
13802         (test_parse_static_tracepoint_marker_definition): Adjust to
13803         std::string.
13804
13805 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13806
13807         * tracepoint.c (parse_static_tracepoint_marker_definition):
13808         Consider case where the definition is followed by more
13809         definitions.
13810         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13811         tracepoint-selftests.c.
13812         * unittests/tracepoint-selftests.c: New.
13813
13814 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13815
13816         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13817         Carvalho.
13818
13819 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13820
13821         * symtab.c (find_pc_sect_line): fixed indentation.
13822
13823 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13824
13825         * symtab.c (find_pc_sect_line): now uses binary search.
13826
13827 2018-03-19  Tom Tromey  <tom@tromey.com>
13828
13829         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13830         "IDENT" production.
13831
13832 2018-03-19  Pedro Alves  <palves@redhat.com>
13833             Tom Tromey  <tom@tromey.com>
13834
13835         * unittests/observable-selftests.c: New file.
13836         * common/observable.h: New file.
13837         * observable.h: New file.
13838         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13839         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13840         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13841         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13842         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13843         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13844         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13845         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13846         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13847         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13848         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13849         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13850         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13851         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13852         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13853         tui/tui-interp.c, valops.c: Update all users.
13854         * tui/tui-hooks.c (tui_bp_created_observer)
13855         (tui_bp_deleted_observer, tui_bp_modified_observer)
13856         (tui_inferior_exit_observer, tui_before_prompt_observer)
13857         (tui_normal_stop_observer, tui_register_changed_observer):
13858         Remove.
13859         (tui_observers_token): New global.
13860         (attach_or_detach, tui_attach_detach_observers): New functions.
13861         (tui_install_hooks, tui_remove_hooks): Use
13862         tui_attach_detach_observers.
13863         * record-btrace.c (record_btrace_thread_observer): Remove.
13864         (record_btrace_thread_observer_token): New global.
13865         * observer.sh: Remove.
13866         * observer.c: Rename to observable.c.
13867         * observable.c (namespace gdb_observers): Define new objects.
13868         (observer_debug): Move into gdb_observers namespace.
13869         (struct observer, struct observer_list, xalloc_observer_list_node)
13870         (xfree_observer_list_node, generic_observer_attach)
13871         (generic_observer_detach, generic_observer_notify): Remove.
13872         (_initialize_observer): Update.
13873         Don't include observer.inc.
13874         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13875         (clean mostlyclean): Likewise.
13876         (observer.h, observer.inc): Remove targets.
13877         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13878         (COMMON_SFILES): Use observable.c, not observer.c.
13879         * .gitignore: Remove observer.h.
13880
13881 2018-03-18  Tom Tromey  <tom@tromey.com>
13882
13883         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13884         gdb::def_vector.
13885         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13886
13887 2018-03-17  Tom Tromey  <tom@tromey.com>
13888
13889         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13890
13891 2018-03-17  Tom Tromey  <tom@tromey.com>
13892
13893         * target.c (class scoped_target_fd): New.
13894         (target_fileio_close_cleanup): Remove.
13895         (target_fileio_read_alloc_1): Use scoped_target_fd.
13896
13897 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13898
13899         * silent-rules.mk: New.
13900         * Makefile.in: Include silent-rules.mk
13901         (srcdir, VPATH, top_srcdir): Move up.
13902         (COMPILE): Add ECHO_CXX.
13903         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13904         (init.c): Add ECHO_INIT_C.
13905         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13906         (version.c): Add ECHO_GEN.
13907         (printcmd.o): Add ECHO_CXX.
13908         (target-float.o): Add ECHO_CXX.
13909         (ada-exp.o): Add ECHO_CXX.
13910         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13911         (insight$(EXEEXT)): Add ECHO_CXXLD.
13912         * gnulib/configure.ac: Add AM_SILENT_RULES.
13913         * gnulib/aclocal.m4: Re-generate.
13914         * gnulib/configure: Re-generate.
13915         * gnulib/import/Makefile.in: Re-generate.
13916
13917 2018-03-16  Tom Tromey  <tom@tromey.com>
13918
13919         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13920         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13921         * utils.c (do_free_section_addr_info)
13922         (make_cleanup_free_section_addr_info): Remove.
13923         * symfile.h (struct other_sections): Add constructor.
13924         (struct section_addr_info): Remove.
13925         (section_addr_info): New typedef.
13926         (struct sym_fns) <sym_offsets>: Change type of parameter.
13927         (build_section_addr_info_from_objfile)
13928         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13929         (default_symfile_offsets, symbol_file_add)
13930         (symbol_file_add_from_bfd)
13931         (build_section_addr_info_from_section_table): Update.
13932         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13933         * symfile.c (alloc_section_addr_info): Remove.
13934         (build_section_addr_info_from_section_table): Change return type.
13935         Update.
13936         (build_section_addr_info_from_bfd)
13937         (build_section_addr_info_from_objfile): Likewise.
13938         (free_section_addr_info): Remove.
13939         (relative_addr_info_to_section_offsets): Change type of "addrs".
13940         (addrs_section_compar): Now a std::sort comparator.
13941         (addrs_section_sort): Change return type.
13942         (addr_info_make_relative): Change type of "addrs".  Update.
13943         (default_symfile_offsets, syms_from_objfile_1)
13944         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13945         (symbol_file_add_separate): Update.
13946         (symbol_file_add): Change type of "addrs".  Update.
13947         (add_symbol_file_command): Update.  Remove cleanups.
13948         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13949         cleanups.
13950         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13951         * solib.c (solib_read_symbols): Update.
13952         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13953         * machoread.c (macho_symfile_offsets): Update.
13954         * jit.c (jit_bfd_try_read_symtab): Update.
13955
13956 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13957
13958         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13959         unittests/utils-selftests.c.
13960         * unittests/utils-selftests.c: New file.
13961
13962 2018-03-14  Tom Tromey  <tom@tromey.com>
13963
13964         PR cli/14977:
13965         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13966         for NULL.
13967
13968 2018-03-14  Tom Tromey  <tom@tromey.com>
13969
13970         PR cli/19918:
13971         * printcmd.c (printf_pointer): Allow "-" in format.
13972
13973 2018-03-14  Tom Tromey  <tom@tromey.com>
13974
13975         * printcmd.c (_initialize_printcmd): Add usage to printf.
13976
13977 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13978
13979         * MAINTAINERS: Update my email address.
13980
13981 2018-03-13  Tom Tromey  <tom@tromey.com>
13982
13983         * machoread.c (macho_check_dsym): Change filenamep to a
13984         std::string*.
13985         (macho_symfile_read): Update.
13986         * symfile.c (load_command): Use std::string.
13987
13988 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13989
13990         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13991         to error message string.
13992         (riscv_register_name): Use xsnprintf instead of sprintf.
13993         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13994         internal_error.
13995         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13996         error.
13997         (riscv_push_dummy_call): Likewise.
13998
13999 2018-03-12  Tom Tromey  <tom@tromey.com>
14000
14001         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14002         Use gdb::byte_vector.
14003         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14004
14005 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14006
14007         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14008         parameter type to readable_regcache.
14009         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14010         the declaration.
14011
14012 2018-03-11  Tom Tromey  <tom@tromey.com>
14013
14014         * dwarf2read.c (struct nextfield): Add initializers.
14015         (struct nextfnfield): Remove.
14016         (struct fnfieldlist): Add initializers.  Remove "length" and
14017         "head", use std::vector.
14018         (struct decl_field_list): Remove.
14019         (struct field_info): Add initializers.
14020         <fields, baseclasses>: Now std::vector.
14021         <nbaseclasses, nfnfields, typedef_field_list_count,
14022         nested_types_list_count>: Remove.
14023         (dwarf2_add_field, dwarf2_add_type_defn)
14024         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14025         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14026         (process_structure_scope): Update.
14027
14028 2018-03-11  Tom Tromey  <tom@tromey.com>
14029
14030         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14031         for use by std::sort.
14032         (build_type_psymtabs_1): Use std::vector.
14033
14034 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14035
14036         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14037         and LIBMPFR in the printed configuration.
14038
14039 2018-03-08  Tom Tromey  <tom@tromey.com>
14040
14041         * source.c (get_filename_and_charpos): Use scoped_fd.
14042         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14043         (procfs_pidlist): Likewise.
14044         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14045         (iterate_over_mappings): Likewise.
14046
14047 2018-03-08  Tom Tromey  <tom@tromey.com>
14048
14049         * infcall.c (struct call_return_meta_info)
14050         <stack_temporaries_enabled>: Remove.
14051         (get_call_return_value, call_function_by_hand_dummy): Update.
14052         * thread.c (disable_thread_stack_temporaries): Remove.
14053         (enable_thread_stack_temporaries): Remove.
14054         (thread_stack_temporaries_enabled_p): Return bool.
14055         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14056         (get_last_thread_stack_temporary): Update.
14057         * eval.c (evaluate_subexp): Update.
14058         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14059         class, not a function.
14060         (value_ptr, value_vec): Remove typedefs.
14061         (class thread_info) <stack_temporaries_enabled>: Now bool.
14062         <stack_temporaries>: Now a std::vector.
14063         (thread_stack_temporaries_enabled_p)
14064         (value_in_thread_stack_temporaries): Return bool.
14065
14066 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14067
14068         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14069         (getpkt_or_notif_sane_1): Likewise.
14070
14071 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14072
14073         * build-id.c (build_id_to_debug_bfd): Use std::string.
14074
14075 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14076
14077         * build-id.c (find_separate_debug_file_by_buildid): Return
14078         std::string.
14079         * build-id.h (find_separate_debug_file_by_buildid): Return
14080         std::string.
14081         * coffread.c (coff_symfile_read): Adjust to std::string.
14082         * elfread.c (elf_symfile_read): Adjust to std::string.
14083         * symfile.c (separate_debug_file_exists): Change parameter to
14084         std::string.
14085         (find_separate_debug_file): Return std::string.
14086         (find_separate_debug_file_by_debuglink): Return std::string.
14087         * symfile.h (find_separate_debug_file_by_debuglink): Return
14088         std::string.
14089
14090 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14091
14092         * common/xml-utils.c (xml_escape_text): Move code to...
14093         (xml_escape_text_append): ... this new function.
14094         * common/xml-utils.h (xml_escape_text_append): New declaration.
14095         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14096         New function.
14097         (_initialize_xml_utils): register test_xml_escape_text_append as
14098         a selftest.
14099
14100 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14101
14102         * defs.h: Remove MAX_REGISTER_SIZE.
14103         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14104         asserts.
14105         * python/py-unwind.c (pyuw_sniffer): Likewise.
14106
14107 2018-03-07  Tom Tromey  <tom@tromey.com>
14108
14109         * linux-tdep.c (linux_info_proc): Update.
14110         * target.h (struct target_ops) <to_fileio_readlink>: Return
14111         optional<string>.
14112         (target_fileio_readlink): Return optional<string>.
14113         * remote.c (remote_hostio_readlink): Return optional<string>.
14114         * inf-child.c (inf_child_fileio_readlink): Return
14115         optional<string>.
14116         * target.c (target_fileio_readlink): Return optional<string>.
14117
14118 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14119
14120         * regcache.c (cooked_read_test): Add riscv to the list of
14121         architectures that have a save_reggroup.
14122
14123 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14124
14125         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14126         value is not a dynamic class object.
14127
14128 2018-03-06  Tom Tromey  <tom@tromey.com>
14129
14130         * rust-exp.y: Formatting fixes.
14131
14132 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14133
14134         * riscv-tdep.c (riscv_register_name): Remove target description
14135         support.
14136         (riscv_gdbarch_init): Remove target description check.
14137
14138 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14139
14140         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14141         comment.
14142         * riscv-tdep.h: Likewise.
14143
14144 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14145
14146         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14147         (riscv_pseudo_register_write): Delete.
14148         (riscv_gdbarch_init): Remove all use of pseudo registers.
14149
14150 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14151
14152         * record-btrace.c (btrace_print_lines): Replace cleanup
14153         parameter with RAII equivalents.
14154         (btrace_insn_history): Replace cleanup with RAII equivalents.
14155         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14156         make_cleanup_ui_out_tuple_begin_end): Remove.
14157         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14158         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14159         make_cleanup_ui_out_list_begin_end): Remove.
14160
14161 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14162
14163         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14164         parameter types to std::vector.  Use bool.
14165         (record_btrace_wait): Replace VEC(tp_t) with
14166         std::vector<thread_info *>.
14167         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14168
14169 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14170
14171         * record-btrace.c (record_btrace_disable_callback): Remove.
14172         (struct scoped_btrace_disable): New.
14173         (record_btrace_open): Use scoped_btrace_disable.
14174
14175 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14176
14177         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14178         reading values from registers.
14179
14180 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14181
14182         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14183         where appropriate.
14184
14185 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14186
14187         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14188         change parameter type.  Use GDB's print functions, and use
14189         core_addr_to_string where appropriate.
14190         (riscv_push_dummy_call): Use core_addr_to_string where
14191         appropriate, update call to riscv_print_arg_location, and reindent
14192         a few lines.
14193         (riscv_return_value): Update call to riscv_print_arg_location.
14194
14195 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14196             Tim Newsome <tim@sifive.com>
14197             Albert Ou <a0u@eecs.berkeley.edu>
14198             Darius Rad <darius@bluespec.com>
14199
14200         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14201         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14202         (ALLDEPFILES): Add riscv-tdep.c
14203         * configure.tgt: Add riscv support.
14204         * riscv-tdep.c: New file.
14205         * riscv-tdep.h: New file.
14206         * NEWS: Mention new target.
14207         * MAINTAINERS: Add entry for riscv.
14208
14209 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14210
14211         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14212         fields within aggregates.
14213
14214 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14215
14216         * record-btrace.c (btrace_print_lines): Change type of flags to
14217         gdb_disassembly_flags.
14218
14219 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14220
14221         * fbsd-nat.c: Include "inf-ptrace.h".
14222         (USE_SIGTRAP_SIGINFO): Conditionally define.
14223         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14224         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14225         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14226         function.
14227         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14228         Likewise.
14229         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14230         Likewise.
14231         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14232         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14233         "supports_stopped_by_hw_breakpoint" target methods.
14234
14235 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14236
14237         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14238         * fbsd-nat.c (debug_fbsd_nat): New variable.
14239         (show_fbsd_nat_debug): New function.
14240         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14241         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14242
14243 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14244
14245         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14246         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14247         prototype.
14248         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14249         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14250         method.
14251
14252 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14253
14254         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14255         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14256
14257 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14258
14259         * charset.c (struct charset_vector): New.
14260         (charsets): Change type to charset_vector.
14261         (find_charset_names): Adjust.
14262         (add_one): Adjust.
14263         (_initialize_charset): Adjust.
14264
14265 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14266
14267         * progspace.h (struct program_space) <deleted_solibs>: Change
14268         type to std::vector<std::string>.
14269         * progspace.c (clear_program_space_solib_cache): Adjust.
14270         * breakpoint.c (print_solib_event): Adjust.
14271         (check_status_catch_solib): Adjust.
14272         * solib.c (update_solib_list): Adjust.
14273         * ui-out.h (class ui_out) <field_string>: New overload.
14274         * ui-out.c (ui_out::field_string): New overload.
14275
14276 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14277
14278         * progspace.h (struct program_space): Add constructor and
14279         destructor, initialize fields.
14280         (add_program_space): Remove.
14281         * progspace.c (add_program_space): Rename to...
14282         (program_space::program_space): ... this.
14283         (release_program_space): Rename to...
14284         (program_space::~program_space): ... this.
14285         (delete_program_space): Use delete to delete program_space.
14286         (initialize_progspace): Use new to allocate program_space.
14287         * inferior.c (add_inferior_with_spaces): Likewise.
14288         (clone_inferior_command): Likewise.
14289         * infrun.c (follow_fork_inferior): Likewise.
14290         (handle_vfork_child_exec_or_exit): Likewise.
14291
14292 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14293
14294         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14295         (delim_string_to_char_ptr_vec): Return std::vector of
14296         gdb::unique_xmalloc_ptr.
14297         (dirnames_to_char_ptr_vec_append): Take std::vector of
14298         gdb::unique_xmalloc_ptr.
14299         (dirnames_to_char_ptr_vec): Return std::vector of
14300         gdb::unique_xmalloc_ptr.
14301         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14302         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14303         (delim_string_to_char_ptr_vec): Return an std::vector of
14304         gdb::unique_xmalloc_ptr, adjust the code.
14305         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14306         gdb::unique_xmalloc_ptr, adjust the code.
14307         (dirnames_to_char_ptr_vec): Return an std::vector of
14308         gdb::unique_xmalloc_ptr, adjust the code.
14309         * auto-load.c (auto_load_safe_path_vec): Change type to
14310         std::vector of gdb::unique_xmalloc_ptr.
14311         (auto_load_expand_dir_vars): Return an std::vector of
14312         gdb::unique_xmalloc_ptr, adjust the code.
14313         (auto_load_safe_path_vec_update): Adjust.
14314         (filename_is_in_auto_load_safe_path_vec): Adjust.
14315         (auto_load_objfile_script_1): Adjust.
14316         * build-id.c (build_id_to_debug_bfd): Adjust.
14317         * linux-thread-db.c (thread_db_load_search): Adjust.
14318         * source.c (add_path): Adjust.
14319         (openp): Adjust.
14320         * symfile.c (find_separate_debug_file): Adjust.
14321         * utils.c (do_free_char_ptr_vec): Remove.
14322         (make_cleanup_free_char_ptr_vec): Remove.
14323
14324 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14325
14326         PR gdb/22907
14327         * common/pathstuff.c: Conditionally include "<windows.h>".
14328
14329 2018-03-01  Georg Sauthoff  <mail@georg.so>
14330
14331         PR gdb/22888
14332         * gcore.in: Quote variables and switch interpreter to bash.
14333
14334 2018-03-01  Tom Tromey  <tom@tromey.com>
14335
14336         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14337         assertion.  Add assertion for discriminant_index.
14338         (quirk_rust_enum): Use correct base type name in univariant case.
14339
14340 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14341
14342         * record.c (get_call_history_modifiers): Return a
14343         record_print_flags.
14344         (cmd_record_call_history): Adjust.
14345         * record-btrace.c (record_btrace_call_history): Adjust.
14346         (record_btrace_call_history_range): Adjust.
14347         (record_btrace_call_history_from): Adjust.
14348         * target-debug.h (target_debug_print_record_print_flags): New.
14349         * target-delegates.c: Re-generate.
14350         * target.c (target_call_history): Change flags type.
14351         (target_call_history_from): Likewise.
14352         (target_call_history_range): Likewise.
14353         * target.h (struct target_ops) <target_call_history>: Likewise.
14354         (target_call_history_from): Likewise.
14355         (target_call_history_range): Likewise.
14356
14357 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14358             Simon Marchi  <simon.marchi@polymtl.ca>
14359
14360         * common/common-utils.c: Include "sys/stat.h".
14361         (is_regular_file): Move here from "source.c"; change return
14362         type to "bool".
14363         * common/common-utils.h (is_regular_file): New prototype.
14364         * common/pathstuff.c (contains_dir_separator): New function.
14365         * common/pathstuff.h (contains_dir_separator): New prototype.
14366         * source.c: Don't include "sys/stat.h".
14367         (is_regular_file): Move to "common/common-utils.c".
14368
14369 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14370
14371         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14372         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14373         * auto-load.c: Include "common/pathstuff.h".
14374         * common/common-def.h (current_directory): Move here.
14375         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14376         function.
14377         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14378         prototype.
14379         * common/pathstuff.c: New file.
14380         * common/pathstuff.h: New file.
14381         * compile/compile.c: Include "common/pathstuff.h".
14382         * defs.h (current_directory): Move to "common/common-defs.h".
14383         * dwarf2read.c: Include "common/pathstuff.h".
14384         * exec.c: Likewise.
14385         * guile/scm-safe-call.c: Likewise.
14386         * linux-thread-db.c: Likewise.
14387         * main.c: Likewise.
14388         * nto-tdep.c: Likewise.
14389         * objfiles.c: Likewise.
14390         * source.c: Likewise.
14391         * symtab.c: Likewise.
14392         * utils.c: Include "common/pathstuff.h".
14393         (gdb_realpath): Move to "common/pathstuff.c".
14394         (gdb_realpath_keepfile): Likewise.
14395         (gdb_abspath): Likewise.
14396         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14397         (gdb_realpath_keepfile): Likewise.
14398         (gdb_abspath): Likewise.
14399
14400 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14401
14402         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14403         wildcard process pid for super_resume for kernels with a
14404         specific bug.
14405
14406 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14407
14408         * compile/compile.c (get_args): Add additional comments
14409         explaining function.
14410
14411 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14412             Tom Tromey  <tom@tromey.com>
14413
14414         * target.h (memory_write_request_s): Remove typedef.  Don't define
14415         VEC.
14416         (target_write_memory_blocks): Change argument to std::vector.
14417         (struct memory_write_request): Add constructor.
14418         * target-memory.c (compare_block_starting_address): Return bool.
14419         Change argument types.
14420         (claim_memory): Change arguments to use std::vector.
14421         (split_regular_and_flash_blocks, blocks_to_erase)
14422         (compute_garbled_blocks): Likewise.
14423         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14424         (target_write_memory_blocks): Change argument to std::vector.
14425         * symfile.c (struct load_section_data): Add constructor and
14426         destructor.  Use std::vector for "requests".
14427         (struct load_progress_data): Add initializers.
14428         (load_section_callback): Update.  Use "new".
14429         (clear_memory_write_data): Remove.
14430         (generic_load): Update.
14431
14432 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14433
14434         * arch/aarch64.h: Use common/tdesc.h.
14435
14436 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14437
14438         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14439         architecture with a 64-bit ABI.
14440
14441 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14442
14443         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14444         ahead of target description loading.
14445
14446 2018-02-26  Tom Tromey  <tom@tromey.com>
14447
14448         * stack.c (backtrace_command_1): Update.
14449         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14450         of "flags".
14451         * python/py-framefilter.c (py_print_frame)
14452         (gdbpy_apply_frame_filter): Change type of "flags".
14453         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14454         of "flags".
14455         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14456         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14457         * extension.h (enum frame_filter_flag): Rename from
14458         frame_filter_flags.
14459         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14460         (apply_ext_lang_frame_filter): Change type of "flags".
14461         * extension.c (apply_ext_lang_frame_filter): Change type of
14462         "flags".
14463         * extension-priv.h (struct extension_language_ops)
14464         <apply_frame_filter>: Change type of "flags".
14465
14466 2018-02-26  Tom Tromey  <tom@tromey.com>
14467
14468         PR python/16497:
14469         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14470         off-by-one in py_end computation.
14471         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14472         PRINT_MORE_FRAMES.
14473         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14474         constant.
14475
14476 2018-02-26  Tom Tromey  <tom@tromey.com>
14477
14478         * dwarf2read.c (struct variant_field): New.
14479         (struct nextfield) <variant>: New field.
14480         (dwarf2_add_field): Handle DW_TAG_variant_part.
14481         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14482         discriminated union.
14483         (read_structure_type): Handle DW_TAG_variant_part.
14484         (handle_struct_member_die): New function, extracted from
14485         process_structure_scope.  Handle DW_TAG_variant.
14486         (process_structure_scope): Handle discriminated unions.  Call
14487         handle_struct_member_die.
14488
14489 2018-02-26  Tom Tromey  <tom@tromey.com>
14490
14491         * rust-lang.h (rust_last_path_segment): Declare.
14492         * rust-lang.c (rust_last_path_segment): Now public.  Change
14493         contract.
14494         (struct disr_info): Remove.
14495         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14496         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14497         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14498         (rust_enum_p, rust_enum_variant): New function.
14499         (rust_underscore_fields): Remove "offset" parameter.
14500         (rust_print_enum): New function.
14501         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14502         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14503         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14504         enums.
14505         (rust_internal_print_type): New function, from rust_print_type.
14506         Remove enum code.
14507         (rust_print_type): Call rust_internal_print_type.
14508         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14509         Update enum handling.
14510         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14511         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14512         (rust_union_quirks): New functions.
14513         (process_full_comp_unit, process_full_type_unit): Call
14514         rust_union_quirks.
14515         (process_structure_scope): Update rust_unions if necessary.
14516
14517 2018-02-26  Tom Tromey  <tom@tromey.com>
14518
14519         * value.h (value_union_variant): Declare.
14520         * valops.c (value_union_variant): New function.
14521         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14522         (struct discriminant_info): New.
14523         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14524         enumerator.
14525         (struct main_type) <flag_discriminated_union>: New field.
14526
14527 2018-02-26  Tom Tromey  <tom@tromey.com>
14528
14529         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14530         unittests/unpack-selftests.c.
14531         * unittests/unpack-selftests.c: New file.
14532         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14533
14534 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14535
14536         * dwarf2read.c (struct partial_die_info) <read>: New method.
14537         (read_partial_die): Remove the declaration.
14538         (load_partial_dies): Update.
14539         (partial_die_info::partial_die_info):
14540         (read_partial_die): Change it to partial_die_info::read.
14541
14542 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14543
14544         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14545         (fixup_partial_die): Remove declaration.
14546         (scan_partial_symbols): Update.
14547         (partial_die_parent_scope): Likewise.
14548         (partial_die_full_name): Likewise.
14549         (fixup_partial_die): Change it to partial_die_info::fixup.
14550
14551 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14552
14553         * dwarf2read.c (read_partial_die): Update the declaration.
14554         (load_partial_dies): Caller update.
14555         (read_partial_die): Remove one argument abbrev_len.
14556
14557 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14558
14559         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14560         assignment operator.
14561         (load_partial_dies): Use ctor and copy ctor.
14562         (read_partial_die): Update.
14563         (dwarf2_cu::find_partial_die): Use ctor.
14564
14565 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14566
14567         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14568         (find_partial_die_in_comp_unit): Change it to
14569         dwarf2_cu::find_partial_die.
14570         (find_partial_die): Update.
14571
14572 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14573
14574         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14575         is NULL.
14576
14577 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14578
14579         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14580
14581 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14582
14583         * arch/amd64.h: Use common/tdesc.h.
14584         * arch/i386.c: Likewise.
14585         * arch/i386.h: Likewise.
14586         * arch/tic6x.c: Likewise.
14587         * arch/tdesc.h: Move file from here...
14588         * common/tdesc.h: ...to here.
14589         * features/aarch64-core.c: Regenerate.
14590         * features/aarch64-fpu.c: Regenerate.
14591         * features/i386/32bit-avx.c: Regenerate.
14592         * features/i386/32bit-avx512.c: Regenerate.
14593         * features/i386/32bit-core.c: Regenerate.
14594         * features/i386/32bit-linux.c: Regenerate.
14595         * features/i386/32bit-mpx.c: Regenerate.
14596         * features/i386/32bit-pkeys.c: Regenerate.
14597         * features/i386/32bit-sse.c: Regenerate.
14598         * features/i386/64bit-avx.c: Regenerate.
14599         * features/i386/64bit-avx512.c: Regenerate.
14600         * features/i386/64bit-core.c: Regenerate.
14601         * features/i386/64bit-linux.c: Regenerate.
14602         * features/i386/64bit-mpx.c: Regenerate.
14603         * features/i386/64bit-pkeys.c: Regenerate.
14604         * features/i386/64bit-segments.c: Regenerate.
14605         * features/i386/64bit-sse.c: Regenerate.
14606         * features/i386/x32-core.c: Regenerate.
14607         * features/tic6x-c6xp.c: Regenerate.
14608         * features/tic6x-core.c: Regenerate.
14609         * features/tic6x-gp.c: Regenerate.
14610         * target-descriptions.c: Use common/tdesc.h.
14611         * target-descriptions.h: Likewise.
14612
14613 2018-02-24  Tom Tromey  <tom@tromey.com>
14614
14615         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14616         (try_thread_db_load_from_dir, thread_db_load_search): Use
14617         std::string.
14618         (info_auto_load_libthread_db_compare): Return bool.  Change
14619         argument types.
14620         (info_auto_load_libthread_db): Use std::vector, std::string.
14621         Remove cleanups.
14622
14623 2018-02-24  Tom Tromey  <tom@tromey.com>
14624
14625         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14626         std::string.
14627         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14628         std::string*.
14629         * gdbarch.c: Rebuild.
14630         * gdbarch.h: Rebuild.
14631         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14632         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14633         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14634         std::string*.
14635
14636 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14637
14638         * gdbtypes.h (sect_offset): Change type to uint64_t.
14639         (sect_offset_str): New function.
14640         * dwarf2read.c (create_addrmap_from_aranges): Use
14641         sect_offset_str.
14642         (error_check_comp_unit_head): Likewise.
14643         (create_debug_type_hash_table): Likewise.
14644         (read_cutu_die_from_dwo): Likewise.
14645         (init_cutu_and_read_dies): Likewise.
14646         (init_cutu_and_read_dies_no_follow): Likewise.
14647         (process_psymtab_comp_unit_reader): Likewise.
14648         (partial_die_parent_scope): Likewise.
14649         (peek_die_abbrev): Likewise.
14650         (process_queue): Likewise.
14651         (dwarf2_physname): Likewise.
14652         (read_namespace_alias): Likewise.
14653         (read_import_statement): Likewise.
14654         (create_dwo_cu_reader): Likewise.
14655         (create_cus_hash_table): Likewise.
14656         (lookup_dwo_cutu): Likewise.
14657         (inherit_abstract_dies): Likewise.
14658         (read_func_scope): Likewise.
14659         (read_call_site_scope): Likewise.
14660         (dwarf2_add_member_fn): Likewise.
14661         (read_common_block): Likewise.
14662         (read_module_type): Likewise.
14663         (read_typedef): Likewise.
14664         (read_subrange_type): Likewise.
14665         (load_partial_dies): Likewise.
14666         (read_partial_die): Likewise.
14667         (find_partial_die): Likewise.
14668         (read_str_index): Likewise.
14669         (dwarf2_string_attr): Likewise.
14670         (build_error_marker_type): Likewise.
14671         (lookup_die_type): Likewise.
14672         (dump_die_shallow): Likewise.
14673         (follow_die_ref): Likewise.
14674         (dwarf2_fetch_die_loc_sect_off): Likewise.
14675         (dwarf2_fetch_constant_bytes): Likewise.
14676         (follow_die_sig): Likewise.
14677         (get_signatured_type): Likewise.
14678         (get_DW_AT_signature_type): Likewise.
14679         (dwarf2_find_containing_comp_unit): Likewise.
14680         (set_die_type): Likewise.
14681
14682 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14683
14684         * arch/aarch64.c: Include "common-defs.h".
14685         * arch/amd64.c: Likewise.
14686         * arch/i386.c: Likewise.
14687
14688 2018-02-21  Tom Tromey  <tom@tromey.com>
14689
14690         * value.h: (extract_field_op): Update.
14691         * eval.c (extract_field_op): Return a const char *.
14692         * expression.h (parse_expression_for_completion): Update.
14693         * completer.c (complete_expression): Update.
14694         (add_struct_fields): Make fieldname const.
14695         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14696         (mark_completion_tag, parse_exp_in_context_1): Update.
14697         (parse_expression_for_completion): Change "name" to
14698         unique_xmalloc_ptr*.
14699
14700 2018-02-21  Tom Tromey  <tom@tromey.com>
14701
14702         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14703
14704 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14705
14706         * avr-tdep.c (avr_read_pc): Change parameter type to
14707         readable_regcache.
14708         * gdbarch.sh (read_pc): Likewise.
14709         * gdbarch.c: Re-generated.
14710         * gdbarch.h: Re-generated.
14711         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14712         readable_regcache.
14713         * ia64-tdep.c (ia64_read_pc): Likewise.
14714         * mips-tdep.c (mips_read_pc): Likewise.
14715         * spu-tdep.c (spu_read_pc): Likewise.
14716
14717 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14718
14719         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14720         * regcache-dump.c: New file.
14721         * regcache.c: Move register_dump to regcache-dump.c.
14722         (maintenance_print_registers): Likewise.
14723         (maintenance_print_raw_registers): Likewise.
14724         (maintenance_print_cooked_registers): Likewise.
14725         (maintenance_print_register_groups): Likewise.
14726         (maintenance_print_remote_registers): Likewise.
14727         (_initialize_regcache): Likewise.
14728         * regcache.h (register_dump): Moved from regcache.c.
14729
14730 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14731
14732         * regcache.c (regcache::regcache): Update.
14733         (regcache::invalidate): Move it to detached_regcache::invalidate.
14734         (get_thread_arch_aspace_regcache): Update.
14735         (regcache::raw_update): Update.
14736         (regcache::cooked_read): Remove some code.
14737         (regcache::cooked_read_value): Likewise.
14738         (regcache::raw_write): Remove assert on m_readonly_p.
14739         (regcache::raw_supply_integer): Move it to
14740         detached_regcache::raw_supply_integer.
14741         (regcache::raw_supply_zeroed): Likewise.
14742         * regcache.h (detached_regcache) <raw_supply_integer>: New
14743         declaration.
14744         <raw_supply_zeroed, invalidate>: Likewise.
14745         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14746         <invalidate>: Likewise.
14747         <m_readonly_p>: Removed.
14748
14749 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14750
14751         * infcmd.c (get_return_value): Let stop_regs point to
14752         get_current_regcache.
14753         * regcache.c (regcache::regcache): Remove.
14754         (register_dump_reg_buffer): New class.
14755         (regcache_print): Adjust.
14756         * regcache.h (regcache): Remove constructors.
14757
14758 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14759
14760         * regcache.c (class register_dump): New class.
14761         (register_dump_regcache, register_dump_none): New class.
14762         (register_dump_remote, register_dump_groups): New class.
14763         (regcache_print): Update.
14764         * regcache.h (regcache_dump_what): Move it to regcache.c.
14765         (regcache) <dump>: Remove.
14766
14767 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14768
14769         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14770          reg_buffer_rw *.
14771         (jit_unwind_reg_set_impl): Call raw_supply.
14772         (jit_frame_sniffer): Use reg_buffer_rw.
14773         * record-full.c (record_full_core_regbuf): Change its type.
14774         (record_full_core_open_1): Use reg_buffer_rw.
14775         (record_full_close): Likewise.
14776         (record_full_core_fetch_registers): Use regcache->raw_supply.
14777         (record_full_core_store_registers): Likewise.
14778         * regcache.c (regcache::get_register_status): Move it to
14779         reg_buffer.
14780         (regcache_raw_set_cached_value): Remove.
14781         (regcache::raw_set_cached_value): Remove.
14782         (regcache::raw_write): Call raw_supply.
14783         (regcache::raw_supply): Move it to reg_buffer_rw.
14784         * regcache.h (regcache_raw_set_cached_value): Remove.
14785         (reg_buffer_rw): New class.
14786
14787 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14788
14789         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14790         readonly_detached_regcache.
14791         (dummy_frame_prev_register): Use regcache->cooked_read.
14792         * frame.c (frame_save_as_regcache): Change return type.
14793         (frame_pop): Update.
14794         * frame.h (frame_save_as_regcache): Update declaration.
14795         * inferior.h (get_infcall_suspend_state_regcache): Update
14796         declaration.
14797         * infrun.c (infcall_suspend_state) <registers>: use
14798         readonly_detached_regcache.
14799         (save_infcall_suspend_state): Don't use regcache_dup.
14800         (get_infcall_suspend_state_regcache): Change return type.
14801         * linux-fork.c (struct fork_info) <savedregs>: Change to
14802         readonly_detached_regcache.
14803         <pc>: New field.
14804         (fork_save_infrun_state): Don't use regcache_dup.
14805         (info_checkpoints_command): Adjust.
14806         * mi/mi-main.c (register_changed_p): Update declaration.
14807         (mi_cmd_data_list_changed_registers): Use
14808         readonly_detached_regcache.
14809         (register_changed_p): Change parameter type to
14810         readonly_detached_regcache.
14811         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14812         readonly_detached_regcache.
14813         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14814         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14815         New.
14816         (regcache::save): Move it to reg_buffer.
14817         (regcache::restore): Change parameter type.
14818         (regcache_dup): Remove.
14819         * regcache.h (reg_buffer) <save>: New method.
14820         (readonly_detached_regcache): New class.
14821         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14822         readonly_detached_regcache.
14823         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14824
14825 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14826
14827         * frame.c (frame_save_as_regcache): Use regcache method save.
14828         (frame_pop): Use regcache method restore.
14829         * infrun.c (restore_infcall_suspend_state): Likewise.
14830         * linux-fork.c (fork_load_infrun_state): Likewise.
14831         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14832         save.
14833         * regcache.c (regcache_save): Remove.
14834         (regcache::restore): More asserts.
14835         (regcache_cpy): Remove.
14836         * regcache.h (regcache_save): Remove the declaration.
14837         (regcache::restore): Move from private to public.
14838         Remove the friend declaration of regcache_cpy.
14839         (regcache_cpy): Remove declaration.
14840
14841 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14842
14843         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14844         parameter type to 'readable_regcache *'.
14845         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14846         * arm-tdep.c (arm_neon_quad_read): Likewise.
14847         (arm_pseudo_read): Likewise.
14848         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14849         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14850         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14851         * gdbarch.c: Re-generated.
14852         * gdbarch.h: Re-generated.
14853         * gdbarch.sh (pseudo_register_read): Change parameter type to
14854         'readable_regcache *'.
14855         (pseudo_register_read_value): Likewise.
14856         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14857         (h8300_pseudo_register_read): Likewise.
14858         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14859         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14860         (i386_pseudo_register_read_into_value): Likewise.
14861         (i386_pseudo_register_read_value): Likewise.
14862         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14863         declaration.
14864         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14865         * m32c-tdep.c (m32c_raw_read): Likewise.
14866         (m32c_read_flg): Likewise.
14867         (m32c_banked_register): Likewise.
14868         (m32c_banked_read): Likewise.
14869         (m32c_sb_read): Likewise.
14870         (m32c_part_read): Likewise.
14871         (m32c_cat_read): Likewise.
14872         (m32c_r3r2r1r0_read): Likewise.
14873         (m32c_pseudo_register_read): Likewise.
14874         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14875         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14876         (mep_pseudo_cr64_read): Likewise.
14877         (mep_pseudo_register_read): Likewise.
14878         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14879         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14880         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14881         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14882         (regcache::cooked_read): Likewise.
14883         (regcache::cooked_read_value): Likewise.
14884         (regcache_cooked_read_signed):
14885         (regcache::cooked_read): Likewise.
14886         * regcache.h (readable_regcache): New class.
14887         (regcache): Inherit readable_regcache.  Move some methods to
14888         readable_regcache.
14889         * rl78-tdep.c (rl78_pseudo_register_read): Change
14890         parameter type to 'readable_regcache *'.
14891         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14892         (e500_pseudo_register_read): Change parameter type to
14893         'readable_regcache *'.
14894         (dfp_pseudo_register_read): Likewise.
14895         (vsx_pseudo_register_read): Likewise.
14896         (efpr_pseudo_register_read): Likewise.
14897         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14898         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14899         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14900         (sh64_pseudo_register_read): Likewise.
14901         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14902         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14903         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14904         (spu_pseudo_register_read): Likewise.
14905         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14906         (xtensa_pseudo_register_read): Likewise.
14907
14908 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14909
14910         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14911         (regcache::arch): Move it to reg_buffer::arch.
14912         (regcache::register_buffer): Likewise.
14913         (regcache::assert_regnum): Likewise.
14914         (regcache::num_raw_registers): Likewise.
14915         * regcache.h (reg_buffer): New class.
14916         (regcache): Inherit reg_buffer.
14917
14918 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14919
14920         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14921         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14922
14923 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14924
14925         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14926
14927 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14928
14929         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14930         (SFILES): Remove common/*.c files.
14931         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14932         * common/common.host: Add common reference.
14933         * configure.ac: Likewise.
14934         * configure: Regenerate.
14935
14936 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14937
14938         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14939         (block_initialize_namespace): Use new.
14940         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14941         (dwarf2_free_objfile): Use delete.
14942         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14943         (copy_type_recursive): Use new.
14944         * gdb_obstack.h (allocate_on_obstack): New.
14945
14946 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14947
14948         PR gdb/22849
14949         * inferior.c (exit_inferior_1): Reset inf->control.
14950
14951 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14952
14953         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14954         declaration.
14955
14956 2018-02-14  Pedro Alves  <palves@redhat.com>
14957
14958         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14959         frame_cleanup_after_sniffer on exception.
14960
14961 2018-02-14  Tom Tromey  <tom@tromey.com>
14962
14963         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14964         const.
14965         (solib_bfd_open): Make pathname const.
14966         * solib.c (solib_bfd_open): Make pathname const.
14967         * solib-spu.c (spu_bfd_fopen): Make name const.
14968         (spu_bfd_open): Make pathname const.
14969         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14970         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14971
14972 2018-02-14  Tom Tromey  <tom@tromey.com>
14973
14974         * symfile.c (symfile_bfd_open): Update.
14975         * source.h (openp, source_full_path_of, find_and_open_source):
14976         Change argument type to unique_xmalloc_ptr.
14977         * source.c (openp): Take a unique_xmalloc_ptr.
14978         (source_full_path_of, find_and_open_source): Likewise.
14979         (open_source_file, symtab_to_fullname): Update.
14980         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14981         unique_xmalloc_ptr.
14982         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14983         (exec_file_find): Update.
14984         * psymtab.c (psymtab_to_fullname): Update.
14985         * nto-tdep.h (nto_find_and_open_solib): Update.
14986         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14987         unique_xmalloc_ptr.
14988         * exec.c (exec_file_attach): Update.
14989         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14990         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14991
14992 2018-02-14  Tom Tromey  <tom@tromey.com>
14993
14994         * solib.c: Include source.h.
14995         * nto-tdep.c: Include source.h.
14996         * mi/mi-cmd-env.c: Include source.h.
14997         * infcmd.c: Include source.h.
14998         * exec.c: Include source.h.
14999         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15000         (add_path, directory_switch, source_path, init_source_path): Move
15001         declarations...
15002         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15003         (add_path, directory_switch, source_path, init_source_path):
15004         ...here.
15005
15006 2018-02-14  Tom Tromey  <tom@tromey.com>
15007
15008         * solist.h (exec_file_find, solib_find): Return
15009         unique_xmalloc_ptr.
15010         (solib_bfd_fopen): Take a const char *.
15011         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15012         (exec_file_find, solib_find): Likewise.
15013         (solib_bfd_fopen): Do not take ownership of "pathname".
15014         (solib_bfd_open): Use unique_xmalloc_ptr.
15015         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15016         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15017         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15018         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15019
15020 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15021
15022         * ada-lang.c (name_match_type_from_name): Remove reference to
15023         ada_name_for_lookup in function's documentation.
15024         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15025
15026 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15027
15028         * defs.h (enum openp_flags): New enum.
15029         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15030         Move to enum openp_flags.
15031         (openp_flags): New enum flags.
15032         (openp): Change parameter type to openp_flags.
15033         * source.c (openp): Change parameter type to openp_flags.
15034         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15035         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15036
15037 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15038
15039         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15040         per-command.
15041
15042 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15043
15044         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15045         into...
15046         (class dwarf2_queue_guard): ...the destructor of this new class.
15047         (dw2_do_instantiate_symtab): Create instance of the new class
15048         dwarf2_queue_guard, remove cleanup.
15049
15050 2018-02-09  Tom Tromey  <tom@tromey.com>
15051
15052         * source.c (find_source_lines): Don't reference past the end of
15053         the vector.
15054
15055 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15056
15057         * remote.c (remote_btrace_maybe_reopen): Change error message.
15058         * btrace.c (btrace_enable): Likewise.
15059         (parse_xml_btrace): Likewise.
15060         (parse_xml_btrace_conf): Likewise.
15061
15062 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15063
15064         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15065         (linux_enable_pt, linux_enable_bts): Call
15066         diagnose_perf_event_open_fail.
15067
15068 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15069
15070         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15071         Remove parameter and change return type.  Update callers.  Move it.
15072         (linux_enable_bts, linux_enable_pt): Improve error message.
15073         (linux_enable_pt): Remove zero buffer size check.
15074         (linux_enable_btrace): Improve error messages.  Remove NULL return
15075         check.
15076
15077 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15078
15079         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15080         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15081         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15082         (linux_supports_pt, linux_supports_btrace): Remove.
15083         (linux_enable_bts): Call cpu_supports_bts.
15084         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15085         * remote.c (remote_supports_btrace): Remove.
15086         (init_remote_ops): Remove remote_supports_btrace.
15087         * target-delegates.c: Regenerated.
15088         * target.c (target_supports_btrace): Remove.
15089         * target.h (target_ops) <to_supports_btrace>: Remove
15090         (target_supports_btrace): Remove.
15091         * x86-linux-nat.c (x86_linux_create_target): Remove
15092         linux_supports_btrace.
15093
15094 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15095
15096         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15097         btrace failed.
15098         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15099         exception and use message in own exception.
15100
15101 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15102
15103         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15104         (perf_event_pt_event_type): Use gdb_file_up.
15105         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15106         scoped_fd, and scoped_mmap.
15107
15108 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15109
15110         * common/scoped_mmap.h: New.
15111         * unittests/scoped_mmap-selftest.c: New.
15112         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15113         unittests/scoped_mmap-selftest.c.
15114
15115 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15116
15117         * common/scoped_fd.h: New.
15118         * unittests/scoped_fd-selftest.c: New.
15119         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15120         unittests/scoped_fd-selftest.c.
15121
15122 2018-02-09  Tom Tromey  <tom@tromey.com>
15123
15124         * auto-load.c (auto_load_section_scripts): Use
15125         gdb::unique_xmalloc_ptr.
15126
15127 2018-02-09  Tom Tromey  <tom@tromey.com>
15128
15129         * auto-load.c (execute_script_contents): Use std::string.
15130
15131 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15132
15133         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15134         Python function, rather than a new command.
15135
15136 2018-02-08  Tom Tromey  <tom@tromey.com>
15137
15138         * solib.c (solib_find_1): Use std::string.
15139         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15140
15141 2018-02-08  Tom Tromey  <tom@tromey.com>
15142
15143         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15144
15145 2018-02-08  Tom Tromey  <tom@tromey.com>
15146
15147         * source.c (find_source_lines): Use gdb::def_vector.
15148
15149 2018-02-08  Tom Tromey  <tom@tromey.com>
15150
15151         * macrocmd.c (struct temporary_macro_definition): New.
15152         (macro_define_command): Use temporary_macro_definition.  Remove
15153         cleanups.
15154         (free_macro_definition_ptr): Remove.
15155
15156 2018-02-08  Tom Tromey  <tom@tromey.com>
15157
15158         * macroexp.c (maybe_expand): Use std::string.
15159
15160 2018-02-08  Tom Tromey  <tom@tromey.com>
15161
15162         * macroexp.c (struct macro_buffer): Add initializers for some
15163         members.
15164         (init_buffer, init_shared_buffer, free_buffer)
15165         (free_buffer_return_text): Remove.
15166         (macro_buffer): New constructors.
15167         (~macro_buffer): New destructor.
15168         (macro_buffer::set_shared): New method.
15169         (macro_buffer::resize_buffer, macro_buffer::appendc)
15170         (macro_buffer::appendmem): Now methods, not free functions.
15171         (set_token, append_tokens_without_splicing, stringify)
15172         (macro_stringify): Update.
15173         (gather_arguments): Change return type.  Remove argc_p argument,
15174         add args_ptr argument.  Use std::vector.
15175         (substitute_args): Remove argc argument.  Accept std::vector.
15176         (expand): Update.  Use std::vector.
15177         (scan, macro_expand, macro_expand_next): Update.
15178
15179 2018-02-08  Tom Tromey  <tom@tromey.com>
15180
15181         * symtab.c (default_collect_symbol_completion_matches_break_on):
15182         Use unique_xmalloc_ptr.
15183         * macroscope.h: (sal_macro_scope, user_macro_scope)
15184         (default_macro_scope): Return unique_xmalloc_ptr.
15185         * macroscope.c (sal_macro_scope, user_macro_scope)
15186         (default_macro_scope): Return unique_xmalloc_ptr.
15187         * macroexp.h (macro_expand, macro_expand_once): Return
15188         unique_xmalloc_ptr.
15189         * macroexp.c (macro_expand, macro_expand_once): Return
15190         unique_xmalloc_ptr.
15191         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15192         (info_macro_command, info_macros_command): Use
15193         unique_xmalloc_ptr.
15194         * compile/compile-c-support.c (write_macro_definitions): Use
15195         unique_xmalloc_ptr.
15196         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15197
15198 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15199
15200         * value.c (value_static_field): Assign field type instead of
15201         containing type when returning an optimized out value.
15202
15203 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15204
15205         * ft32-tdep.c (ft32_read_pc): Remove.
15206         (ft32_write_pc): Remove.
15207         (ft32_gdbarch_init): Update.
15208         * m32r-tdep.c (m32r_read_pc): Remove.
15209         (m32r_gdbarch_init): Update.
15210         * mep-tdep.c (mep_read_pc): Remove.
15211         (mep_gdbarch_init): Update.
15212         * microblaze-tdep.c (microblaze_write_pc): Remove.
15213         (microblaze_gdbarch_init): Update.
15214         * mn10300-tdep.c (mn10300_read_pc): Remove.
15215         (mn10300_write_pc): Remove.
15216         (mn10300_gdbarch_init): Update.
15217         * moxie-tdep.c (moxie_read_pc): Remove.
15218         (moxie_write_pc): Remove.
15219         (moxie_gdbarch_init): Update.
15220
15221 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15222
15223         * expprint.c (print_subexp_standard): Handle
15224         OP_F77_UNDETERMINED_ARGLIST.
15225         (dump_subexp_body_standard): Likewise.
15226
15227 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15228
15229         * target-descriptions.c (tdesc_element_visitor) Add empty
15230         implementations.
15231         (tdesc_type): Move make_gdb_type from here.
15232         (tdesc_type_builtin): Likewise.
15233         (tdesc_type_vector): Likewise.
15234         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15235         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15236         (make_gdb_type_union): Likewise.
15237         (make_gdb_type_flags): Likewise.
15238         (make_gdb_type_enum): Likewise.
15239         (make_gdb_type): New function.
15240         (tdesc_register_type): Use static make_gdb_type.
15241
15242 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15243
15244         * infcmd.c (default_print_one_register_info): Align natural-format
15245         column values consistently one under another.
15246         (pad_to_column): New function.
15247
15248 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15249
15250         * dwarf2read.c (dwarf2_physname): Move commment.
15251
15252 2018-02-01  Leszek Swirski  <leszeks@google.com>
15253
15254         * varobj.c (varobj_formatted_print_options): Allow recursive
15255         pretty printing if pretty printing is enabled.
15256
15257 2018-02-01  Leszek Swirski  <leszeks@google.com>
15258
15259         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15260         names after a structop as a filename.
15261
15262 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15263
15264         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15265         (arm_record_coproc_data_proc): Likewise.
15266
15267 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15268
15269         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15270
15271 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15272
15273         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15274         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15275
15276 2018-01-31  Pedro Alves  <palves@redhat.com>
15277
15278         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15279         * inflow.c (child_terminal_save_inferior): Wrap reference to
15280         tcgetpgrp in HAVE_TERMIOS_H.
15281         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15282         _WIN32.
15283         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15284         always iterate over all inferiors.
15285         (gdbsim_cntrl_c): Adjust.
15286         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15287
15288 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15289
15290         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15291         index type is objfile-owned if the element type is as well.
15292
15293 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15294
15295         GDB 8.1 released.
15296
15297 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15298
15299         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15300         "features/s390x-linux64.c".
15301         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15302         s390_linux32 and s390x_linux64.
15303         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15304         default tdesc.
15305         * s390-tdep.c: Include "features/s390-linux32.c" and
15306         "features/s390x-linux64.c".
15307         (s390_tdesc_valid): Add check for tdesc_has_registers.
15308         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15309         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15310         tdesc_s390x_linux64.
15311         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15312         tdesc_s390x_linux64 to...
15313         * s390-tdep.h: ...here.
15314
15315 2018-01-30  Pedro Alves  <palves@redhat.com>
15316
15317         PR gdb/13211
15318         * config.in, configure: Regenerate.
15319         * configure.ac: Check for getpgid.
15320         * go32-nat.c (go32_pass_ctrlc): New.
15321         (go32_target): Install it.
15322         * inf-child.c (inf_child_target): Install
15323         child_terminal_save_inferior, child_pass_ctrlc and
15324         child_interrupt.
15325         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15326         (inf_ptrace_target): No longer install it.
15327         * infcmd.c (interrupt_target_1): Adjust.
15328         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15329         (child_interrupt): Declare.
15330         (inferior::terminal_state): New.
15331         * inflow.c (struct terminal_info): Update comments.
15332         (inferior_process_group): Delete.
15333         (terminal_is_ours): Delete.
15334         (gdb_tty_state): New.
15335         (child_terminal_init): Adjust.
15336         (is_gdb_terminal, sharing_input_terminal_1)
15337         (sharing_input_terminal): New functions.
15338         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15339         Set the process's actual process group in the foreground if
15340         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15341         mark terminal as the inferior's if not sharing GDB's terminal.
15342         Don't check attach_flag.
15343         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15344         pass down a target_terminal_state.
15345         (child_terminal_save_inferior): New, factored out from ...
15346         (child_terminal_ours_1): ... this.  Handle
15347         target_terminal_state::is_ours_for_output.
15348         (child_interrupt, child_pass_ctrlc): New.
15349         (inflow_inferior_exit): Clear the inferior's terminal_state.
15350         (copy_terminal_info): Copy the inferior's terminal state.
15351         (_initialize_inflow): Remove reference to terminal_is_ours.
15352         * inflow.h (inferior_process_group): Delete.
15353         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15354         * procfs.c (procfs_target): Don't install procfs_interrupt.
15355         (procfs_interrupt): Delete.
15356         * remote.c (remote_serial_quit_handler): Adjust.
15357         (remote_interrupt): Remove ptid parameter.  Adjust.
15358         * target-delegates.c: Regenerate.
15359         * target.c: Include "terminal.h".
15360         (target_terminal::terminal_state): Rename to ...
15361         (target_terminal::m_terminal_state): ... this.
15362         (target_terminal::init): Adjust.
15363         (target_terminal::inferior): Adjust to per-inferior
15364         terminal_state.
15365         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15366         (target_terminal::ours, target_terminal::ours_for_output): Use
15367         target_terminal_is_ours_kind.
15368         (target_interrupt): Remove ptid parameter.  Adjust.
15369         (default_target_pass_ctrlc): Adjust.
15370         * target.h (target_ops::to_terminal_save_inferior): New field.
15371         (target_ops::to_interrupt): Remove ptid_t parameter.
15372         (target_interrupt): Remove ptid_t parameter.  Update comment.
15373         (target_pass_ctrlc): Update comment.
15374         * target/target.h (target_terminal_state): New scoped enum,
15375         factored out of ...
15376         (target_terminal::terminal_state): ... here.
15377         (target_terminal::inferior): Update comments.
15378         (target_terminal::restore_inferior): New.
15379         (target_terminal::is_inferior, target_terminal::is_ours)
15380         (target_terminal::is_ours_for_output): Adjust.
15381         (target_terminal::scoped_restore_terminal_state): Adjust to
15382         rename, and call restore_inferior() instead of inferior().
15383         (target_terminal::scoped_restore_terminal_state::m_state): Change
15384         type.
15385         (target_terminal::terminal_state): Rename to ...
15386         (target_terminal::m_terminal_state): ... this and change type.
15387
15388 2018-01-30  Pedro Alves  <palves@redhat.com>
15389
15390         * linux-nat.c (wait_for_signal): New function.
15391         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15392         directly.
15393         (async_terminal_is_ours)
15394         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15395         (linux_nat_add_target): Don't override
15396         to_terminal_inferior/to_terminal_ours.
15397
15398 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15399
15400         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15401
15402 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15403
15404         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15405         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15406         dwarf2_per_objfile_free here.
15407         (dwarf2_per_objfile_free): Remove.
15408         (_initialize_dwarf2_read): Don't register
15409         dwarf2_per_objfile_free as a registry cleanup.
15410
15411 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15412
15413         Avoid compilation errors in MinGW native builds
15414
15415         The error is triggered by including python-internal.h, and the
15416         error message is:
15417
15418              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15419                       from build-gnulib/import/math.h:27,
15420                       from d:/usr/Python26/include/pyport.h:235,
15421                       from d:/usr/Python26/include/Python.h:58,
15422                       from python/python-internal.h:94,
15423                       from python/py-arch.c:24:
15424              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15425         using ::hypot;
15426                 ^~~~~
15427
15428         This happens because Python headers define 'hypot' to expand t
15429         '_hypot' in the Windows builds.
15430         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15431         'hypoth'.  This avoids a compilation error.
15432
15433 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15434
15435         * MAINTAINERS (Write After Approval): Fix ordering.
15436
15437 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15438
15439         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15440
15441 2018-01-26  Alan Modra  <amodra@gmail.com>
15442
15443         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15444         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15445         Remove nop.  Make const.  Comment.
15446         (powerpc32_plt_stub_so_2): New.
15447         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15448         Correct count.  Update uses.
15449         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15450         Move common code reading PLT entry word.  Correct
15451         powerpc32_plt_stub PLT address calculation.
15452         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15453         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15454         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15455         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15456         (ppc64_standard_linkage8): Likewise.
15457         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15458         Correct insns description.
15459         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15460
15461 2018-01-24  Pedro Alves  <palves@redhat.com>
15462
15463         GCC PR libstdc++/83906
15464         * gdbtypes.c (operator==(const dynamic_prop &,
15465         const dynamic_prop &)): New.
15466         (operator==(const range_bounds &, const range_bounds &)): New.
15467         (check_types_equal): Use them instead of memcmp.
15468         * gdbtypes.h (operator==(const dynamic_prop &,
15469         const dynamic_prop &)): Declare.
15470         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15471         (operator==(const range_bounds &, const range_bounds &)): Declare.
15472         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15473
15474 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15475
15476         * s390-linux-tdep.c (s390_record_address_mask)
15477         (s390_record_calc_disp_common, s390_record_calc_disp)
15478         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15479         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15480         (s390_process_record): Move to s390-tdep.c.
15481         (s390_linux_init_abi_any): Adjust.
15482         * s390-tdep.c (s390_record_address_mask)
15483         (s390_record_calc_disp_common, s390_record_calc_disp)
15484         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15485         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15486         (s390_process_record): Moved from s390-linux-tdep.c
15487         (s390_gdbarch_init): Adjust.
15488
15489 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15490
15491         * s390-linux-nat.c (s390-tdep.h): New include.
15492         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15493         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15494         (ALLDEPFILES): Add s390-tdep.c.
15495         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15496         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15497         * s390-tdep.h: ...this.  New file.
15498         * s390-linux-tdep.c (s390-tdep.h): New include.
15499         (_initialize_s390_tdep): Rename to...
15500         (_initialize_s390_linux_tdep): ...this and adjust.
15501         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15502         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15503         s390-tdep.h.
15504         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15505         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15506         (s390_is_partial_instruction, s390_software_single_step)
15507         (is_non_branch_ril, s390_displaced_step_copy_insn)
15508         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15509         (s390_prologue_data, s390_addr, s390_store, s390_load)
15510         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15511         (s390_register_call_saved, s390_guess_tracepoint_registers)
15512         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15513         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15514         (s390_pseudo_register_name, s390_pseudo_register_type)
15515         (s390_pseudo_register_read, s390_pseudo_register_write)
15516         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15517         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15518         (s390_addr_bits_remove, s390_address_class_type_flags)
15519         (s390_address_class_type_flags_to_name)
15520         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15521         (s390_function_arg_float, s390_function_arg_vector)
15522         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15523         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15524         (s390_frame_align, s390_register_return_value, s390_return_value)
15525         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15526         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15527         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15528         (s390_trad_frame_prev_register, s390_unwind_cache)
15529         (s390_prologue_frame_unwind_cache)
15530         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15531         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15532         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15533         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15534         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15535         (s390_frame_base_address, s390_local_base_address)
15536         (s390_frame_base, s390_gcc_target_options)
15537         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15538         (s390_validate_reg_range, s390_tdesc_valid)
15539         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15540         * s390-tdep.c: ...this.  New file.
15541
15542 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15543
15544         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15545         (s390_process_record, s390_gdbarch_tdep_alloc)
15546         (s390_linux_init_abi_any): Use/set new hook.
15547
15548 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15549
15550         * s390-linux-tdep.c (osabi.h): New include.
15551         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15552         (s390_linux_init_abi_any): New functions.
15553         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15554
15555 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15556
15557         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15558         tdesc_has_registers check
15559
15560 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15561
15562         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15563         (s390_validate_reg_range): New macro.
15564         (s390_gdbarch_init): Adjust.
15565
15566 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15567
15568         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15569         (s390_gdbarch_tdep_alloc): Adjust.
15570         (s390_gdbarch_init): Adjust.
15571
15572 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15573
15574         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15575         <have_tdb>: Change type to bool.
15576         (s390_gdbarch_tdep_alloc): Adjust.
15577         (s390_gdbarch_init): Adjust.
15578
15579 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15580
15581         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15582         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15583         (s390_gdbarch_tdep_alloc): New function.
15584         (s390_gdbarch_init): Allocate tdep at start and use its fields
15585         instead of separate variables.
15586
15587 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15588
15589         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15590         when looking for cached gdbarch and add comment for remaining.
15591
15592 2018-01-22  Pedro Alves  <palves@redhat.com>
15593             Sergio Durigan Junior  <sergiodj@redhat.com>
15594
15595         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15596         case.
15597
15598 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15599
15600         * MAINTAINERS: Update my company e-mail address.
15601
15602 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15603
15604         * regcache.c (cooked_write_test): New function.
15605         (_initialize_regcache): Register the test.
15606
15607 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15608
15609         * ia64-tdep.c (ia64_pseudo_register_read): Call
15610         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15611         * m32c-tdep.c (m32c_cat_read): Likewise.
15612         (m32c_r3r2r1r0_read): Likewise.
15613         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15614         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15615
15616 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15617
15618         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15619         method raw_read instead of regcache_raw_read.
15620         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15621         * arm-tdep.c (arm_neon_quad_read): Likewise.
15622         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15623         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15624         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15625         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15626         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15627         (i386_pseudo_register_read_into_value): Likewise.
15628         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15629         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15630         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15631         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15632         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15633         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15634         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15635         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15636         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15637
15638 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15639
15640         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15641         * configure.tgt: Remove target mt.
15642         * mt-tdep.c: Remove.
15643         * regcache.c (cooked_read_test): Remove the check for mt.
15644
15645 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15646
15647         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15648         instead of gdbarch_pseudo_register_read_value.
15649
15650 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15651
15652         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15653         language is Ada.
15654
15655 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15656
15657         * linespec.c (create_sals_line_offset): Remove code that preserved
15658         the symtab_and_line's line number.
15659
15660 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15661
15662         * varobj.c (varobj_create): Don't set valid_block when creating a
15663         floating varobj.
15664
15665 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15666
15667         * varobj.c (varobj_create): Remove out of date comment.
15668
15669 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15670
15671         PR mi/20395
15672         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15673         updating innermost block.
15674         * parse.c (innermost_block_tracker::update): Take extra type
15675         parameter, and check types match before updating innermost block.
15676         (write_dollar_variable): Update innermost block for registers.
15677         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15678         (innermost_block_tracker::innermost_block_tracker): Initialise
15679         m_types member.
15680         (innermost_block_tracker::reset): Take type parameter.
15681         (innermost_block_tracker::update): Take type parameter, and pass
15682         type through as needed.
15683         (innermost_block_tracker::m_types): New member.
15684         * varobj.c (varobj_create): Pass type when reseting innermost
15685         block.
15686
15687 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15688
15689         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15690         * ada-lang.c (resolve_subexp): Likewise.
15691         * breakpoint.c (set_breakpoint_condition) Likewise.
15692         (watch_command_1) Likewise.
15693         * c-exp.y (variable): Likewise.
15694         * d-exp.y (PrimaryExpression): Likewise.
15695         * f-exp.y (variable): Likewise.
15696         * go-exp.y (variable): Likewise.
15697         * m2-exp.y (variable): Likewise.
15698         * objfiles.c (objfile::~objfile): Likewise.
15699         * p-exp.y (variable): Likewise.
15700         * parse.c (innermost_block): Change type.
15701         * parser-defs.h (class innermost_block_tracker): New.
15702         (innermost_block): Change to innermost_block_tracker.
15703         * printcmd.c (display_command): Switch to innermost_block API.
15704         (do_one_display): Likewise.
15705         * rust-exp.y (do_one_display): Likewise.
15706         * symfile.c (clear_symtab_users): Likewise.
15707         * varobj.c (varobj_create): Switch to innermost_block API, replace
15708         use of innermost_block with block stored on varobj object.
15709
15710 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15711
15712         * expression.h (innermost_block): Remove declaration.
15713         * varobj.c: Add 'parser-defs.h' include.
15714
15715 2018-01-19  Tom Tromey  <tom@tromey.com>
15716
15717         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15718         symbols in the static and global blocks.
15719
15720 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15721
15722         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15723         gdb_ptrace.h, and move including gdb_wait.h ...
15724         * nat/linux-ptrace.h: ... to here.
15725
15726 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15727
15728         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15729         inf_ptrace_detach_success.
15730         (inf_ptrace_detach_success): Add inferior parameter, use it
15731         instead of inferior_ptid, pass it to detach_inferior.
15732         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15733         parameter.
15734         * inferior.c (detach_inferior): Add overload that takes an
15735         inferior object.
15736         * inferior.h (detach_inferior): Likewise.
15737         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15738         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15739         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15740
15741 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15742
15743         * target.h (struct target_ops) <to_detach>: Add inferior
15744         parameter.
15745         (target_detach): Likewise.
15746         * target.c (dispose_inferior): Pass inferior down.
15747         (target_detach): Pass inferior down.  Assert that it is equal to
15748         the current inferior.
15749         * aix-thread.c (aix_thread_detach): Pass inferior down.
15750         * corefile.c (core_file_command): Pass current_inferior() down.
15751         * corelow.c (core_detach): Add inferior parameter.
15752         * darwin-nat.c (darwin_detach): Likewise.
15753         * gnu-nat.c (gnu_detach): Likewise.
15754         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15755         * infcmd.c (detach_command): Pass current_inferior() down to
15756         target_detach.
15757         * infrun.c (follow_fork_inferior): Pass parent_inf to
15758         target_detach.
15759         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15760         target_detach.
15761         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15762         * linux-thread-db.c (thread_db_detach): Likewise.
15763         * nto-procfs.c (procfs_detach): Likewise.
15764         * procfs.c (procfs_detach): Likewise.
15765         * record.c (record_detach): Likewise.
15766         * record.h (struct inferior): Forward-declare.
15767         (record_detach): Add inferior parameter.
15768         * remote-sim.c (gdbsim_detach): Likewise.
15769         * remote.c (remote_detach_1): Likewise.
15770         (remote_detach): Likewise.
15771         (extended_remote_detach): Likewise.
15772         * sol-thread.c (sol_thread_detach): Likewise.
15773         * target-debug.h (target_debug_print_inferior_p): New macro.
15774         * target-delegates.c: Re-generate.
15775         * top.c (kill_or_detach): Pass inferior down to target_detach.
15776         * windows-nat.c (windows_detach): Add inferior parameter.
15777
15778 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15779
15780         * target.h (struct target_ops) <to_detach>: Remove args
15781         parameter.
15782         (target_detach): Likewise.
15783         * target.c (dispose_inferior): Adjust.
15784         (target_detach): Remove args parameter, adjust.
15785         * aix-thread.c (aix_thread_detach): Adjust.
15786         * corefile.c (core_file_command): Adjust.
15787         * corelow.c (core_detach): Adjust.
15788         * darwin-nat.c (darwin_detach): Adjust.
15789         * gnu-nat.c (gnu_detach): Adjust.
15790         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15791         * infcmd.c (detach_command): Adjust
15792         * infrun.c (follow_fork_inferior): Adjust.
15793         (handle_vfork_child_exec_or_exit): Adjust.
15794         * linux-fork.c (linux_fork_detach): Remove args parameter.
15795         * linux-fork.h (linux_fork_detach): Likewise.
15796         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15797         * linux-thread-db.c (thread_db_detach): Likewise.
15798         * nto-procfs.c (procfs_detach): Likewise.
15799         * procfs.c (procfs_detach): Likewise.
15800         (do_detach): Remove signo parameter.
15801         * record.c (record_detach): Remove args parameter.
15802         * record.h (record_detach): Likewise.
15803         * remote-sim.c (gdbsim_detach): Likewise.
15804         * remote.c (remote_detach_1): Likewise.
15805         (remote_detach): Likewise.
15806         (extended_remote_detach): Likewise.
15807         * sol-thread.c (sol_thread_detach): Likewise.
15808         * target-delegates.c: Re-generate.
15809         * top.c (struct qt_args) <args>: Remove field.
15810         (kill_or_detach): Don't pass args.
15811         (quit_force): Don't set args.
15812         * windows-nat.c (windows_detach): Remove args parameter.
15813
15814 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15815
15816         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15817         (arm_linux_init_abi): Install it.
15818
15819 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15820
15821         * osabi.c (gdb_osabi_names): Extend the regexp for
15822         arm-linux-gnueabihf.
15823
15824 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15825
15826         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15827         m_abbrevs.
15828         (abbrev_table::add_abbrev): Update.
15829         (abbrev_table::lookup_abbrev): Update.
15830
15831 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15832
15833         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15834
15835 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15836
15837         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15838         to "std::string".
15839
15840 2018-01-17  Tom Tromey  <tom@tromey.com>
15841
15842         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15843
15844 2018-01-17  Tom Tromey  <tom@tromey.com>
15845
15846         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15847         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15848         (create_array_type_with_stride): Update.
15849         * dwarf2read.c (set_die_type): Update.
15850
15851 2018-01-17  Tom Tromey  <tom@tromey.com>
15852
15853         * dwarf2read.c (delayed_method_info): Remove typedef.
15854         (dwarf2_cu::method_info): Now a std::vector.
15855         (add_to_method_list): Update.
15856         (free_delayed_list): Remove.
15857         (compute_delayed_physnames): Update.
15858         (process_full_comp_unit, process_full_type_unit): Clear the method
15859         list.  Remove cleanups.
15860         (psymtab_include_file_name): Add name_holder parameter.  Use
15861         unique_xmalloc_ptr.
15862         (dwarf_decode_lines): Update.
15863
15864 2018-01-17  Tom Tromey  <tom@tromey.com>
15865             Simon Marchi  <simon.marchi@ericsson.com>
15866
15867         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15868         (dwarf2_per_objfile::free_cached_comp_units)
15869         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15870         (init_cutu_and_read_dies_no_follow): Update.
15871         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15872         (dwarf2_cu::~dwarf2_cu): New.
15873         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15874         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15875
15876 2018-01-17  Tom Tromey  <tom@tromey.com>
15877             Simon Marchi  <simon.marchi@ericsson.com>
15878
15879         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15880         (struct die_reader_specs) <abbrev_table>: New member.
15881         (struct abbrev_table): Add constructor.
15882         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15883         <abbrev_obstack>: Now an auto_obstack.
15884         (abbrev_table_up): New typedef.
15885         (init_cu_die_reader): Add abbrev_table parameter.
15886         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15887         Add result_dwo_abbrev_table.
15888         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15889         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15890         Update.
15891         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15892         parameter.
15893         (skip_children): Update.
15894         (abbrev_table::alloc_abbrev): Rename from
15895         abbrev_table_alloc_abbrev.
15896         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15897         (abbrev_table::lookup_abbrev): Rename from
15898         abbrev_table_lookup_abbrev.
15899         (abbrev_table_read_table): Return abbrev_table_up.
15900         (abbrev_table_free, abbrev_table_free_cleanup)
15901         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15902         (load_partial_dies): Update.
15903
15904 2018-01-17  Tom Tromey  <tom@tromey.com>
15905
15906         * dwarf2read.c (dwarf2_compute_name): Update comment.
15907         (read_func_scope, read_variable): Update.
15908         (new_symbol): Remove.
15909         (new_symbol_full): Rename to new_symbol.
15910
15911 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15912
15913         PR gdb/16577
15914         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15915         a warning instead of throwing an error, set section size to 0 and return
15916         NULL.
15917         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15918
15919 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15920
15921         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15922         std::string.
15923         (linux_ptrace_attach_fail_reason_string): Likewise.
15924         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15925         Likewise.
15926         (linux_ptrace_attach_fail_reason_string): Likewise.
15927         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15928
15929 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15930
15931         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15932
15933 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15934
15935         PR gdb/21559
15936         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15937         checking for fs_base/gs_base fields in struct user_regs_struct.
15938         * configure: Regenerate.
15939
15940 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15941
15942         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15943         function.
15944         (aarch64_linux_init_abi): Install it to gdbarch hook
15945         gcc_target_options.
15946
15947 2018-01-15  Pedro Alves  <palves@redhat.com>
15948
15949         * common/signals-state-save-restore.c
15950         (save_original_signals_state): Fix typos.
15951
15952 2017-01-12  Tom Tromey  <tom@tromey.com>
15953             Sergio Durigan Junior  <sergiodj@redhat.com>
15954
15955         * Makefile.in (install-only): Install gdb-add-index.
15956
15957 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15958
15959         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15960
15961 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15962
15963         * infrun.c (keep_going_pass_signal): Clear step-over info when
15964         insert_breakpoints fails.
15965
15966 2018-01-11  Pedro Alves  <palves@redhat.com>
15967
15968         PR gdb/22583
15969         * infrun.c (resume): Rename to ...
15970         (resume_1): ... this.
15971         (resume): Reimplement as wrapper around resume_1.
15972
15973 2018-01-11  Pedro Alves  <palves@redhat.com>
15974
15975         PR remote/22597
15976         * remote.c (remote_parse_stop_reply): Default to the last-set
15977         general thread instead of to 'magic_null_ptid'.
15978
15979 2018-01-10  Pedro Alves  <palves@redhat.com>
15980
15981         * language.h (language_get_symbol_name_matcher): Rename ...
15982         (get_symbol_name_matcher): ... this.
15983         * language.c (language_get_symbol_name_matcher): Ditto.
15984         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15985         callers adjusted.
15986
15987 2018-01-10  Pedro Alves  <palves@redhat.com>
15988
15989         PR gdb/22670
15990         * dwarf2read.c
15991         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15992         Adjust to use language_get_symbol_name_matcher instead of
15993         language_defn::la_get_symbol_name_matcher.
15994         * language.c (language_get_symbol_name_matcher): If in Ada mode
15995         and the lookup name is a verbatim match, return Ada's matcher.
15996         * language.h (language_get_symbol_name_matcher): Adjust comment.
15997         (ada_lookup_name_info::verbatim_p):: New method.
15998
15999 2018-01-10  Pedro Alves  <palves@redhat.com>
16000
16001         PR gdb/22670
16002         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16003         minsym's language is language_auto or language_cplus, pass down
16004         language_ada instead.
16005         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16006
16007 2018-01-10  Pedro Alves  <palves@redhat.com>
16008
16009         PR gdb/22670
16010         * minsyms.c (linkage_name_str): New function.
16011         (iterate_over_minimal_symbols): Use it.
16012
16013 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16014
16015         * NEWS: Document that 'info proc' now works on FreeBSD.
16016
16017 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16018
16019         * configure.ac: Check for kinfo_getfile in libutil.
16020         * configure: Regenerate.
16021         * config.in: Regenerate.
16022         * fbsd-nat.c: Include "fbsd-tdep.h".
16023         (fbsd_fetch_cmdline): New.
16024         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16025         rather than calling error.
16026         (fbsd_info_proc): New.
16027         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16028         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16029         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16030
16031 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16032
16033         * fbsd-nat.c (struct free_deleter): Remove.
16034         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16035
16036 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16037
16038         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16039         NULL for an empty pathname.
16040
16041 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16042
16043         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16044         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16045         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16046         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16047         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16048         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16049         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16050         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16051         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16052         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16053         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16054         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16055         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16056         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16057         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16058
16059 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16060
16061         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16062         (gnu_xfer_auxv): New function.
16063         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16064         TARGET_OBJECT_AUXV.
16065
16066 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16067             Simon Marchi  <simon.marchi@ericsson.com>
16068
16069         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16070         common/selftest.c.
16071         (COMMON_OBS): Remove selftest.o.
16072         * configure.ac: Append selftest-arch.c and common/selftest.c to
16073         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16074         * configure: Re-generated.
16075         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16076         GDB_SELF_TEST.
16077         (maintenance_info_selftests): Likewise.
16078
16079 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16080
16081         * ada-valprint.c (val_print_packed_array_elements): Use
16082         proper number of elements when printing an array indexed
16083         by an enumeration type.
16084
16085 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16086
16087         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16088         (dw2_get_file_names_reader): Adjust.
16089         (lookup_dwo_signatured_type): Adjust.
16090         (lookup_dwp_signatured_type): Adjust.
16091         (lookup_signatured_type): Adjust.
16092         (create_type_unit_group): Adjust.
16093         (get_type_unit_group): Adjust.
16094         (process_psymtab_comp_unit_reader): Adjust.
16095         (build_type_psymtabs_reader): Adjust.
16096         (scan_partial_symbols): Adjust.
16097         (add_partial_symbol): Adjust.
16098         (add_partial_subprogram): Adjust.
16099         (peek_die_abbrev): Adjust.
16100         (fixup_go_packaging): Adjust.
16101         (process_imported_unit_die): Adjust.
16102         (dwarf2_compute_name): Adjust.
16103         (dwarf2_physname): Adjust.
16104         (read_import_statement): Adjust.
16105         (handle_DW_AT_stmt_list): Adjust.
16106         (read_file_scope): Adjust.
16107         (read_func_scope): Adjust.
16108         (read_lexical_block_scope): Adjust.
16109         (read_call_site_scope): Adjust.
16110         (read_variable): Adjust.
16111         (dwarf2_rnglists_process): Adjust.
16112         (dwarf2_ranges_process): Adjust.
16113         (dwarf2_ranges_read): Adjust.
16114         (dwarf2_get_pc_bounds): Adjust.
16115         (dwarf2_record_block_ranges): Adjust.
16116         (dwarf2_add_field): Adjust.
16117         (dwarf2_add_member_fn): Adjust.
16118         (read_structure_type): Adjust.
16119         (process_structure_scope): Adjust.
16120         (read_enumeration_type): Adjust.
16121         (read_array_type): Adjust.
16122         (mark_common_block_symbol_computed): Adjust.
16123         (read_common_block): Adjust.
16124         (read_namespace_type): Adjust.
16125         (read_namespace): Adjust.
16126         (read_module_type): Adjust.
16127         (read_tag_pointer_type): Adjust.
16128         (read_tag_ptr_to_member_type): Adjust.
16129         (read_tag_string_type): Adjust.
16130         (read_subroutine_type): Adjust.
16131         (read_typedef): Adjust.
16132         (read_base_type): Adjust.
16133         (attr_to_dynamic_prop): Adjust.
16134         (read_subrange_type): Adjust.
16135         (read_unspecified_type): Adjust.
16136         (dwarf2_read_abbrevs): Adjust.
16137         (load_partial_dies): Adjust.
16138         (read_partial_die): Adjust.
16139         (find_partial_die): Adjust.
16140         (guess_partial_die_structure_name): Adjust.
16141         (fixup_partial_die): Adjust.
16142         (read_attribute_value): Adjust.
16143         (read_addr_index): Adjust.
16144         (read_addr_index_from_leb128): Adjust.
16145         (read_str_index): Adjust.
16146         (dwarf2_string_attr): Adjust.
16147         (get_debug_line_section): Adjust.
16148         (dwarf_decode_line_header): Adjust.
16149         (lnp_state_machine::check_line_address): Adjust.
16150         (dwarf_decode_lines_1): Adjust.
16151         (dwarf_decode_lines): Adjust.
16152         (dwarf2_start_symtab): Adjust.
16153         (var_decode_location): Adjust.
16154         (new_symbol_full): Adjust.
16155         (dwarf2_const_value_data): Adjust.
16156         (dwarf2_const_value_attr): Adjust.
16157         (dwarf2_const_value): Adjust.
16158         (die_type): Adjust.
16159         (die_containing_type): Adjust.
16160         (build_error_marker_type): Adjust.
16161         (lookup_die_type): Adjust.
16162         (guess_full_die_structure_name): Adjust.
16163         (anonymous_struct_prefix): Adjust.
16164         (determine_prefix): Adjust.
16165         (dwarf2_name): Adjust.
16166         (follow_die_ref_or_sig): Adjust.
16167         (follow_die_offset): Adjust.
16168         (follow_die_ref): Adjust.
16169         (follow_die_sig_1): Adjust.
16170         (follow_die_sig): Adjust.
16171         (get_signatured_type): Adjust.
16172         (get_DW_AT_signature_type): Adjust.
16173         (decode_locdesc): Adjust.
16174         (dwarf_decode_macros): Adjust.
16175         (cu_debug_loc_section): Adjust.
16176         (fill_in_loclist_baton): Adjust.
16177         (dwarf2_symbol_mark_computed): Adjust.
16178         (init_one_comp_unit): Don't assign
16179         dwarf2_cu::dwarf2_per_objfile.
16180         (set_die_type): Adjust.
16181
16182 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16183
16184         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16185         <dwarf2_per_objfile>: New field.
16186         (dwarf2_per_objfile): Remove global.
16187         (get_dwarf2_per_objfile): New function.
16188         (set_dwarf2_per_objfile): New function.
16189         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16190         dwarf2_per_objfile.
16191         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16192         (read_abbrev_offset): Likewise.
16193         (read_indirect_string): Likewise.
16194         (read_indirect_line_string): Likewise.
16195         (read_indirect_string_at_offset): Likewise.
16196         (read_indirect_string_from_dwz): Likewise.
16197         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16198         dwarf2_per_objfile.
16199         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16200         (create_all_comp_units): Change objfile parameter to
16201         dwarf2_per_objfile.
16202         (create_all_type_units): Likewise.
16203         (process_queue): Add dwarf2_per_objfile parameter.
16204         (read_and_check_comp_unit_head): Likewise.
16205         (lookup_dwo_unit_in_dwp): Likewise.
16206         (get_dwp_file): Likewise.
16207         (process_cu_includes): Likewise.
16208         (struct free_dwo_file_cleanup_data): New struct.
16209         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16210         set_dwarf2_per_objfile.
16211         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16212         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16213         context, adjust calls.
16214         (dw2_instantiate_symtab): Likewise.
16215         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16216         (dw2_get_cu): Likewise.
16217         (create_cu_from_index_list): Change objfile parameter to
16218         dwarf2_per_objfile.
16219         (create_cus_from_index_list): Get dwarf2_per_objfile from
16220         context, adjust calls.
16221         (create_cus_from_index): Likewise.
16222         (create_signatured_type_table_from_index): Change objfile
16223         parameter to dwarf2_per_objfile.
16224         (create_signatured_type_table_from_debug_names): Change objfile
16225         parameter to dwarf2_per_objfile.
16226         (create_addrmap_from_index): Likewise.
16227         (create_addrmap_from_aranges): Likewise.
16228         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16229         (dw2_setup): Remove.
16230         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16231         context.
16232         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16233         get_dwarf2_per_objfile.
16234         (dw2_forget_cached_source_info): Likewise.
16235         (dw2_map_symtabs_matching_filename): Likewise.
16236         (struct dw2_symtab_iterator) <index>: Remove.
16237         <dwarf2_per_objfile>: New field.
16238         (dw2_symtab_iter_init): Replace index parameter with
16239         dwarf2_per_objfile.
16240         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16241         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16242         (dw2_print_stats): Likewise.
16243         (dw2_dump): Likewise.
16244         (dw2_expand_symtabs_for_function): Likewise.
16245         (dw2_expand_all_symtabs): Likewise.
16246         (dw2_expand_symtabs_with_fullname): Likewise.
16247         (dw2_expand_marked_cus): Replace index and objfile parameters
16248         with dwarf2_per_objfile.
16249         (dw_expand_symtabs_matching_file_matcher): Add
16250         dwarf2_per_objfile parameter and adjust calls.
16251         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16252         adjust calls.
16253         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16254         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16255         adjust calls.
16256         (create_cus_from_debug_names_list): Replace objfile parameter
16257         with dwarf2_per_objfile and adjust calls.
16258         (create_cus_from_debug_names): Likewise.
16259         (dwarf2_read_debug_names): Likewise.
16260         (mapped_debug_names::namei_to_name): Adjust call.
16261         (dw2_debug_names_iterator::next): Likewise.
16262         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16263         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16264         (dw2_debug_names_dump): Likewise.
16265         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16266         (dw2_debug_names_expand_symtabs_matching): Likewise.
16267         (dwarf2_initialize_objfile): Likewise.
16268         (dwarf2_build_psymtabs): Likewise.
16269         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16270         this_cu.
16271         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16272         (read_and_check_comp_unit_head): Likewise.
16273         (read_abbrev_offset): Likewise.
16274         (create_debug_type_hash_table): Likewise.
16275         (create_debug_types_hash_table): Likewise.
16276         (create_all_type_units): Replace objfile parameter with
16277         dwarf2_per_objfile.
16278         (add_type_unit): Add dwarf2_per_objfile parameter.
16279         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16280         with dwarf2_per_objfile.
16281         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16282         (lookup_dwp_signatured_type): Likewise.
16283         (lookup_signatured_type): Likewise.
16284         (read_cutu_die_from_dwo): Likewise.
16285         (init_tu_and_read_dwo_dies): Likewise.
16286         (init_cutu_and_read_dies): Likewise.
16287         (init_cutu_and_read_dies_no_follow): Likewise.
16288         (allocate_type_unit_groups_table): Add objfile parameter.
16289         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16290         (get_type_unit_group): Likewise.
16291         (process_psymtab_comp_unit): Update call.
16292         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16293         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16294         (print_tu_stats): Likewise.
16295         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16296         in void* parameter.
16297         (build_type_psymtabs): Change objfile parameter to
16298         dwarf2_per_objfile.
16299         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16300         passed in void* parameter.
16301         (process_skeletonless_type_units): Change objfile parameter to
16302         dwarf2_per_objfile.
16303         (set_partial_user): Likewise.
16304         (dwarf2_build_psymtabs_hard): Likewise.
16305         (read_comp_units_from_section): Likewise.
16306         (create_all_comp_units): Likewise.
16307         (scan_partial_symbols): Update calls.
16308         (add_partial_symbol): Likewise.
16309         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16310         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16311         (process_queue): Add dwarf2_per_objfile parameter.
16312         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16313         (compute_compunit_symtab_includes): Likewise.
16314         (process_cu_includes): Add dwarf2_per_objfile parameter.
16315         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16316         (process_full_type_unit): Likewise.
16317         (process_imported_unit_die): Update call.
16318         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16319         (read_file_scope): Likewise.
16320         (allocate_dwo_file_hash_table): Add objfile parameter.
16321         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16322         (create_cus_hash_table): Likewise.
16323         (create_dwp_hash_table): Likewise.
16324         (create_dwo_unit_in_dwp_v1): Likewise.
16325         (create_dwp_v2_section): Likewise.
16326         (create_dwo_unit_in_dwp_v2): Likewise.
16327         (lookup_dwo_unit_in_dwp): Likewise.
16328         (try_open_dwop_file): Likewise.
16329         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16330         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16331         cleanup to include a reference to dwarf2_per_objfile.
16332         (open_dwp_file): Add dwarf2_per_objfile parameter.
16333         (open_and_init_dwp_file): Likewise.
16334         (get_dwp_file): Likewise.
16335         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16336         (queue_and_load_all_dwo_tus): Update call.
16337         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16338         data.
16339         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16340         (dwarf2_ranges_process): Likewise.
16341         (dwarf2_get_pc_bounds): Likewise.
16342         (mark_common_block_symbol_computed): Likewise.
16343         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16344         (dwarf2_read_abbrevs): Update call.
16345         (read_partial_die): Use dwarf2_per_objfile from cu.
16346         (find_partial_die): Likewise.
16347         (fixup_partial_die): Likewise.
16348         (read_attribute_value): Likewise.
16349         (read_indirect_string_at_offset_from): Add objfile parameter.
16350         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16351         parameter.
16352         (read_indirect_string_from_dwz): Add objfile parameter.
16353         (read_indirect_string): Add objfile parameter.
16354         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16355         (read_addr_index): Use dwarf2_per_objfile from cu.
16356         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16357         call dw2_setup.
16358         (read_str_index): Use dwarf2_per_objfile from cu.
16359         (get_debug_line_section): Likewise.
16360         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16361         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16362         (new_symbol_full): Use dwarf2_per_objfile from cu.
16363         (build_error_marker_type): Likewise.
16364         (lookup_die_type): Likewise.
16365         (determine_prefix): Likewise.
16366         (follow_die_offset): Likewise.
16367         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16368         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16369         (dwarf2_fetch_die_type_sect_off): Likewise.
16370         (dwarf2_get_die_type): Likewise.
16371         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16372         (get_signatured_type): Likewise.
16373         (get_DW_AT_signature_type): Likewise.
16374         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16375         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16376         (cu_debug_loc_section): Likewise.
16377         (fill_in_loclist_baton): Likewise.
16378         (dwarf2_symbol_mark_computed): Likewise.
16379         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16380         dwarf2_per_objfile.
16381         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16382         parameter.
16383         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16384         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16385         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16386         (set_die_type): Use dwarf2_free_objfile from cu.
16387         (get_die_type_at_offset): Likewise.
16388         (dwarf2_per_objfile_free): Don't assign global variable.
16389         (debug_names) <constructor>: Add dwarf2_per_objfile
16390         parameter, update m_debugstrlookup construction.
16391         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16392         parameter.
16393         <m_dwarf2_per_objfile>: New field.
16394         <lookup>: Use m_dwarf2_per_objfile.
16395         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16396         (psyms_seen_size): Likewise.
16397         (write_gdbindex): Replace objfile parameter with
16398         dwarf2_per_objfile.
16399         (write_debug_names): Likewise.
16400         (write_psymtabs_to_index): Likewise.
16401         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16402         calls.
16403
16404 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16405
16406         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16407         <dwarf2_per_objfile>: New field.
16408         (struct dwarf2_per_cu_data) <objfile>: Remove.
16409         <dwarf2_per_objfile>: New field.
16410         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16411         of objfile.
16412         (create_signatured_type_table_from_index): Likewise.
16413         (create_debug_type_hash_table): Likewise.
16414         (fill_in_sig_entry_from_dwo_entry): Likewise.
16415         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16416         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16417         objfile.
16418         (create_partial_symtab): Access objfile through
16419         dwarf2_per_objfile.
16420         (process_psymtab_comp_unit_reader): Likewise.
16421         (read_comp_units_from_section): Likewise.
16422         (scan_partial_symbols): Likewise.
16423         (add_partial_symbol): Likewise.
16424         (add_partial_subprogram): Likewise.
16425         (peek_die_abbrev): Likewise.
16426         (fixup_go_packaging): Likewise.
16427         (process_full_comp_unit): Likewise.
16428         (process_full_type_unit): Likewise.
16429         (process_imported_unit_die): Likewise.
16430         (dwarf2_compute_name): Likewise.
16431         (dwarf2_physname): Likewise.
16432         (read_import_statement): Likewise.
16433         (create_cus_hash_table): Assign dwarf2_physname instead of
16434         objfile.
16435         (read_func_scope): Access objfile through dwarf2_per_objfile.
16436         (read_lexical_block_scope): Likewise.
16437         (read_call_site_scope): Likewise.
16438         (read_variable): Likewise.
16439         (dwarf2_rnglists_process): Likewise.
16440         (dwarf2_ranges_process): Likewise.
16441         (dwarf2_ranges_read): Likewise.
16442         (dwarf2_record_block_ranges): Likewise.
16443         (dwarf2_add_field): Likewise.
16444         (dwarf2_add_member_fn): Likewise.
16445         (read_structure_type): Likewise.
16446         (process_structure_scope): Likewise.
16447         (read_enumeration_type): Likewise.
16448         (read_array_type): Likewise.
16449         (read_common_block): Likewise.
16450         (read_namespace_type): Likewise.
16451         (read_namespace): Likewise.
16452         (read_module_type): Likewise.
16453         (read_tag_pointer_type): Likewise.
16454         (read_tag_ptr_to_member_type): Likewise.
16455         (read_tag_string_type): Likewise.
16456         (read_subroutine_type): Likewise.
16457         (read_typedef): Likewise.
16458         (read_base_type): Likewise.
16459         (attr_to_dynamic_prop): Likewise.
16460         (read_subrange_type): Likewise.
16461         (read_unspecified_type): Likewise.
16462         (load_partial_dies): Likewise.
16463         (read_partial_die): Likewise.
16464         (find_partial_die): Likewise.
16465         (guess_partial_die_structure_name): Likewise.
16466         (fixup_partial_die): Likewise.
16467         (read_attribute_value): Likewise.
16468         (read_addr_index_from_leb128): Likewise.
16469         (dwarf2_read_addr_index): Likewise.
16470         (dwarf2_string_attr): Likewise.
16471         (lnp_state_machine::check_line_address): Likewise.
16472         (dwarf_decode_lines_1): Likewise.
16473         (dwarf_decode_lines): Likewise.
16474         (dwarf2_start_symtab): Likewise.
16475         (var_decode_location): Likewise.
16476         (new_symbol_full): Likewise.
16477         (dwarf2_const_value_data): Likewise.
16478         (dwarf2_const_value_attr): Likewise.
16479         (dwarf2_const_value): Likewise.
16480         (die_type): Likewise.
16481         (die_containing_type): Likewise.
16482         (lookup_die_type): Likewise.
16483         (guess_full_die_structure_name): Likewise.
16484         (anonymous_struct_prefix): Likewise.
16485         (dwarf2_name): Likewise.
16486         (follow_die_ref_or_sig): Likewise.
16487         (follow_die_offset): Likewise.
16488         (follow_die_ref): Likewise.
16489         (dwarf2_fetch_die_loc_sect_off): Likewise.
16490         (dwarf2_fetch_constant_bytes): Likewise.
16491         (dwarf2_fetch_die_type_sect_off): Likewise.
16492         (dwarf2_get_die_type): Likewise.
16493         (follow_die_sig): Likewise.
16494         (decode_locdesc): Likewise.
16495         (dwarf2_per_cu_objfile): Likewise.
16496         (dwarf2_per_cu_text_offset): Likewise.
16497         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16498         objfile.
16499         (set_die_type): Access objfile through
16500         dwarf2_per_objfile.
16501
16502 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16503
16504         * valprint.c (converted_character_d): Remove typedef.
16505         (DEF_VEC_O (converted_character_d)): Remove.
16506         (count_next_character): Use std::vector.
16507         (print_converted_chars_to_obstack): Likewise.
16508         (generic_printstr): Likewise.
16509
16510 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16511
16512         * xml-support.h (struct gdb_xml_value): Add constructor.
16513         <value>: Change type to unique_xmalloc_ptr.
16514         (gdb_xml_value_s): Remove typedef.
16515         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16516         (gdb_xml_element_start_handler): Change parameter type to
16517         std::vector.
16518         (xml_find_attribute): Likewise.
16519         * xml-support.c (xml_find_attribute): Change parameter type to
16520         std::vector and adjust.
16521         (gdb_xml_values_cleanup): Remove.
16522         (gdb_xml_parser::start_element): Adjust to std::vector.
16523         (xinclude_start_include): Change paraeter type to std::vector
16524         and adjust.
16525         * btrace.c (check_xml_btrace_version): Likewise.
16526         (parse_xml_btrace_block): Likewise.
16527         (parse_xml_btrace_pt_config_cpu): Likewise.
16528         (parse_xml_btrace_pt): Likewise.
16529         (parse_xml_btrace_conf_bts): Likewise.
16530         (parse_xml_btrace_conf_pt): Likewise.
16531         * memory-map.c (memory_map_start_memory): Likewise.
16532         (memory_map_start_property): Likewise.
16533         * osdata.c (osdata_start_osdata): Likewise.
16534         (osdata_start_item): Likewise.
16535         (osdata_start_column): Likewise.
16536         * remote.c (start_thread): Likewise.
16537         * solib-aix.c (library_list_start_library): Likewise.
16538         (library_list_start_list): Likewise.
16539         * solib-svr4.c (library_list_start_library): Likewise.
16540         (svr4_library_list_start_list): Likewise.
16541         * solib-target.c (library_list_start_segment): Likewise.
16542         (library_list_start_section): Likewise.
16543         (library_list_start_library): Likewise.
16544         (library_list_start_list): Likewise.
16545         * tracepoint.c (traceframe_info_start_memory): Likewise.
16546         (traceframe_info_start_tvar): Likewise.
16547         * xml-syscall.c (syscall_start_syscall): Likewise.
16548         * xml-tdesc.c (tdesc_start_target): Likewise.
16549         (tdesc_start_feature): Likewise.
16550         (tdesc_start_reg): Likewise.
16551         (tdesc_start_union): Likewise.
16552         (tdesc_start_struct): Likewise.
16553         (tdesc_start_flags): Likewise.
16554         (tdesc_start_enum): Likewise.
16555         (tdesc_start_field): Likewise.
16556         (tdesc_start_enum_value): Likewise.
16557         (tdesc_start_vector): Likewise.
16558
16559 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16560
16561         * extension.h (struct xmethod_worker) <clone>: Remove.
16562         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16563         Remove.
16564         (python_xmethod_worker::clone): Remove.
16565         * valops.c (find_overload_match): Use std::move instead of
16566         clone.
16567
16568 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16569
16570         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16571         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16572         <free_xmethod_worker_data>: Remove.
16573         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16574         <get_xmethod_arg_types>: Remove.
16575         <get_xmethod_result_type>: Remove.
16576         <invoke_xmethod>: Remove.
16577         * extension.c (new_xmethod_worker): Remove.
16578         (clone_xmethod_worker): Remove.
16579         (get_matching_xmethod_workers): Return void, pass std::vector by
16580         pointer.
16581         (get_xmethod_arg_types): Rename to...
16582         (xmethod_worker::get_arg_types): ... this, and adjust.
16583         (get_xmethod_result_type): Rename to...
16584         (xmethod_worker::get_result_type): ... this, and adjust.
16585         (invoke_xmethod): Remove.
16586         (free_xmethod_worker): Remove.
16587         (free_xmethod_worker_vec): Remove.
16588         * extension.h (enum ext_lang_rc): Move here from
16589         extension-priv.h.
16590         (struct xmethod_worker): Add constructor and destructor.
16591         <data>: Remove.
16592         <value>: Remove.
16593         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16594         virtual pure methods.
16595         <get_arg_types, get_result_type>: New methods.
16596         (xmethod_worker_ptr): Remove typedef.
16597         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16598         (xmethod_worker_vec): Remove typedef.
16599         (xmethod_worker_up): New typedef.
16600         (invoke_xmethod): Remove.
16601         (clone_xmethod_worker): Remove.
16602         (free_xmethod_worker): Remove.
16603         (free_xmethod_worker_vec): Remove.
16604         (get_xmethod_arg_types): Remove.
16605         (get_xmethod_result_type): Remove.
16606         * valops.c (find_method_list): Use std::vector, don't use
16607         intermediate vector.
16608         (value_find_oload_method_list): Use std::vector.
16609         (find_overload_match): Use std::vector.
16610         (find_oload_champ): Use std::vector.
16611         * value.c (value_free): Use operator delete.
16612         (value_of_xmethod): Rename to...
16613         (value_from_xmethod): ... this.  Don't assign
16614         xmethod_worker::value, take rvalue-reference.
16615         (result_type_of_xmethod): Adjust.
16616         (call_xmethod): Adjust.
16617         * value.h: Include extension.h.
16618         (struct xmethod_worker): Don't forward-declare.
16619         (value_of_xmethod): Rename to...
16620         (value_from_xmethod): ... this, take rvalue-reference.
16621         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16622         (struct python_xmethod_worker): ... this, add constructor and
16623         destructor.
16624         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16625         (gdbpy_free_xmethod_worker_data): Rename to...
16626         (python_xmethod_worker::~python_xmethod_worker): ... this and
16627         adjust.
16628         (gdbpy_clone_xmethod_worker_data): Rename to...
16629         (python_xmethod_worker::clone): ... this and adjust.
16630         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16631         temporary vector.
16632         (gdbpy_get_xmethod_arg_types): Rename to...
16633         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16634         (gdbpy_get_xmethod_result_type): Rename to...
16635         (python_xmethod_worker::do_get_result_type): ... this and
16636         adjust.
16637         (gdbpy_invoke_xmethod): Rename to...
16638         (python_xmethod_worker::invoke): ... this and adjust.
16639         (new_python_xmethod_worker): Rename to...
16640         (python_xmethod_worker::python_xmethod_worker): ... this and
16641         adjust.
16642         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16643         Remove.
16644         (gdbpy_free_xmethod_worker_data): Remove.
16645         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16646         (gdbpy_get_xmethod_arg_types): Remove.
16647         (gdbpy_get_xmethod_result_type): Remove.
16648         (gdbpy_invoke_xmethod): Remove.
16649         * python/python.c (python_extension_ops): Remove obsolete
16650         callbacks.
16651
16652 2018-01-05  Pedro Alves  <palves@redhat.com>
16653
16654         PR gdb/18653
16655         * common/signals-state-save-restore.c
16656         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16657         find a custom handler preinstalled, instead of internal erroring.
16658         But only warn if !quiet.
16659         * common/signals-state-save-restore.h
16660         (save_original_signals_state): New parameter 'quiet'.
16661         * main.c (captured_main_1): Move save_original_signals_state call
16662         after option handling, and pass QUIET.
16663
16664 2018-01-05  Pedro Alves  <palves@redhat.com>
16665
16666         * spu-tdep.c (spu_catch_start): Pass
16667         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16668
16669 2018-01-05  Pedro Alves  <palves@redhat.com>
16670
16671         PR gdb/22670
16672         * ada-lang.c (literal_symbol_name_matcher): New function.
16673         (ada_get_symbol_name_matcher): Use it for
16674         symbol_name_match_type::SEARCH_NAME.
16675         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16676         it down instead of assuming symbol_name_match_type::FULL.
16677         * block.h (block_lookup_symbol): New parameter 'match_type'.
16678         * c-valprint.c (print_unpacked_pointer): Use
16679         lookup_symbol_search_name instead of lookup_symbol.
16680         * compile/compile-object-load.c (get_out_value_type): Pass down
16681         symbol_name_match_type::SEARCH_NAME.
16682         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16683         symbol_name_match_type::FULL.
16684         * cp-support.c (cp_get_symbol_name_matcher): Handle
16685         symbol_name_match_type::SEARCH_NAME.
16686         * infrun.c (insert_exception_resume_breakpoint): Use
16687         lookup_symbol_search_name.
16688         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16689         * psymtab.c (maintenance_check_psymtabs): Use
16690         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16691         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16692         SYMBOL_SEARCH_NAME.
16693         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16694         if symbol_name_match_type::SEARCH_NAME.
16695         (lookup_symbol_in_language): Pass down
16696         symbol_name_match_type::FULL.
16697         (lookup_symbol_search_name): New.
16698         (lookup_language_this): Pass down
16699         symbol_name_match_type::SEARCH_NAME.
16700         (lookup_symbol_aux, lookup_local_symbol): New parameter
16701         'match_type'.  Pass it down.
16702         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16703         (lookup_symbol_search_name): New declaration.
16704         (lookup_symbol_in_block): New 'match_type' parameter.
16705
16706 2018-01-05  Pedro Alves  <palves@redhat.com>
16707
16708         PR gdb/22670
16709         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16710         ada_lookup_symbol.
16711         (ada_lookup_symbol): Reimplement in terms of
16712         ada_lookup_symbol_list, bits factored out from
16713         ada_lookup_encoded_symbol.
16714
16715 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16716
16717         * ada-exp.y (write_object_renaming): When subscripting an array
16718         using a symbol as the index, pass the block in call to
16719         ada_lookup_encoded_symbol when looking that symbol up.
16720
16721 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16722
16723         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16724         TYPE_INDEX_TYPE.
16725
16726 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16727
16728         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16729         the case where VALUE_LVAL (val0) is not lval_memory.
16730
16731 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16732
16733         * ada-valprint.c (print_optional_low_bound): Handle
16734         character-indexed array printing like boolean-indexed array
16735         printing.
16736
16737 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16738
16739         * NEWS: Create a new section for the next release branch.
16740         Rename the section of the current branch, now that it has
16741         been cut.
16742
16743 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16744
16745         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16746         * version.in: Bump version to 8.1.50.DATE-git.
16747
16748 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16749
16750         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16751         Add field.
16752         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16753         Add field.
16754         (default_exception_support_info) <catch_handlers_sym>: Add field.
16755         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16756         (ada_exception_name_addr_1): Add "catch handlers" handling.
16757         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16758         Update all callers.
16759         (create_excep_cond_exprs) <ex>: Add parameter.
16760         (re_set_exception): Update create_excep_cond_exprs call.
16761         (print_it_exception, print_one_exception, print_mention_exception)
16762         (print_recreate_exception): Add "catch handler" handling.
16763         (allocate_location_catch_handlers, re_set_catch_handlers)
16764         (check_status_catch_handlers, print_it_catch_handlers)
16765         (print_one_catch_handlers, print_mention_catch_handlers)
16766         (print_recreate_catch_handlers): New function.
16767         (catch_handlers_breakpoint_ops): New variable.
16768         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16769         Add parameter.  Add "catch handler" handling.
16770         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16771         Add "catch handler" handling.
16772         (ada_exception_catchpoint_cond_string): Add "catch handler"
16773         handling.
16774         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16775         call.
16776         (catch_ada_handlers_command): New function.
16777         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16778         operations structure.
16779         (_initialize_ada_language): Add "catch handlers" command entry.
16780         * NEWS: Document "catch handlers" feature.
16781
16782 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16783
16784         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16785         account when creating the array type of the slice.
16786         (ada_value_slice): Likewise.
16787
16788 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16789
16790         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16791         New enum value.
16792         (create_array_type_with_stride): Add byte_stride_prop parameter.
16793         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16794         New parameter.  Update all callers in this file.
16795         (array_type_has_dynamic_stride): New function.
16796         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16797         of arrays with dynamic byte strides.
16798         * dwarf2read.c (read_array_type): Add support for dynamic
16799         DW_AT_byte_stride attributes.
16800
16801 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16802
16803         * dwarf2read.c (read_unspecified_type): Treat
16804         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16805
16806 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16807
16808         Update copyright year range in all GDB files.
16809
16810 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16811
16812         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16813         and gdb/testsuite/gdb.base/step-line.c.
16814
16815 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16816
16817         * copyright.py (main): Dump the contents of
16818         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16819         even if BY_HAND is empty.
16820
16821 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16822
16823         * top.c (print_gdb_version): Update Copyright year in version
16824         message.
16825
16826 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16827
16828         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16829
16830 For older changes see ChangeLog-2017.
16831 \f
16832 Local Variables:
16833 mode: change-log
16834 left-margin: 8
16835 fill-column: 74
16836 version-control: never
16837 coding: utf-8
16838 End: