Use unsigned as base type for some enums
[external/binutils.git] / gdb / ChangeLog
1 2018-10-03  Tom Tromey  <tom@tromey.com>
2
3         * common/enum-flags.h (enum_flags::operator~): Add static assert.
4         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
5         base type.
6         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
7         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
8         type.
9         * c-lang.h (enum c_string_type_values): Use unsigned as base
10         type.
11         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
12
13 2018-10-03  Tom Tromey  <tom@tromey.com>
14
15         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
16         <~dwarf2_frame_state_reg_info>: Update.
17         <dwarf2_frame_state_reg_info>: Update.
18         <alloc_regs>: Add assertion.  Update.
19         <reg>: Now a std::vector.
20         <num_regs>: Remove.
21         <swap>: Update.
22         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
23         (execute_cfa_program_test, dwarf2_frame_cache): Update.
24
25 2018-10-03  Tom Tromey  <tom@tromey.com>
26
27         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
28
29 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
30
31         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
32
33 2018-10-02  Tom Tromey  <tom@tromey.com>
34
35         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
36
37 2018-10-02  John Darrington <john@darrington.wattle.id.au>
38
39         * NEWS: Mention changed commands.
40         * ser-uds.c: New file.
41         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
42         * configure: Regenerate.
43         * Makefile.in: Add new file.
44         * serial.c (serial_open): Check if filename is a socket
45           and lookup the appropriate interface accordingly.
46
47 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
48
49         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
50         define.
51         (AARCH64_EXTRA_MAGIC): Likewise.
52         (AARCH64_FPSIMD_MAGIC): Likewise.
53         (AARCH64_SVE_MAGIC): Likewise.
54         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
55         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
56         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
57         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
58         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
59         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
60         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
61         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
62         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
63         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
64         (read_aarch64_ctx): Add function.
65         (aarch64_linux_sigframe_init): Detect FP registers.
66
67 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
68
69         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
70         (AARCH64_D0_REGNUM): Likewise.
71         (AARCH64_S0_REGNUM): Likewise.
72         (AARCH64_H0_REGNUM): Likewise.
73         (AARCH64_B0_REGNUM): Likewise.
74         (AARCH64_SVE_V0_REGNUM): Likewise.
75         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
76         (AARCH64_D0_REGNUM): Likewise.
77         (AARCH64_S0_REGNUM): Likewise.
78         (AARCH64_H0_REGNUM): Likewise.
79         (AARCH64_B0_REGNUM): Likewise.
80         (AARCH64_SVE_V0_REGNUM): Likewise.
81
82 2018-10-01  Gary Benson <gbenson@redhat.com>
83
84         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
85         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
86         prfpregset_t instead of gdb_prfpregset_t.
87         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
88         * configure, config.in: Rebuild.
89
90 2018-10-01  Gary Benson <gbenson@redhat.com>
91
92         * common/gdb_proc_service.h: New file, factored out from...
93         * gdb_proc_service.h: Moved common code to the above file.
94         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
95
96 2018-10-01  Gary Benson <gbenson@redhat.com>
97
98         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
99         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
100
101 2018-10-01  Gary Benson <gbenson@redhat.com>
102
103         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
104         (AC_CHECK_HEADERS): Check for linux/elf.h.
105         * configure, config.in: Rebuild.
106         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
107         doesn't define elf_fpregset_t.
108
109 2018-10-01  Gary Benson <gbenson@redhat.com>
110
111         * gdb_proc_service.h: Whitespace change.
112
113 2018-10-01  Tom Tromey  <tom@tromey.com>
114
115         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
116         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
117         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
118
119 2018-10-01  Tom Tromey  <tom@tromey.com>
120
121         * README: Minor change.
122
123 2018-09-30  Pedro Alves  <palves@redhat.com>
124
125         * darwin-nat-info.c (darwin_debug_regions_recurse)
126         (info_mach_exceptions_command): Remove unused local variables.
127         * darwin-nat.c (darwin_decode_notify_message)
128         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
129         (darwin_stop_inferior, darwin_setup_exceptions)
130         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
131         (darwin_nat_target::attach, darwin_nat_target::detach)
132         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
133         local variables.
134         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
135         variables.
136
137 2018-09-29  Tom Tromey  <tom@tromey.com>
138
139         * README: Remove some leftover text.
140
141 2018-09-29  Tom Tromey  <tom@tromey.com>
142
143         * PROBLEMS: Rewrite.
144         * README: Update.
145
146 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
147
148         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
149         case with explicit breakpoint kind.
150         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
151         'additional_info' and related logic.
152         (riscv_debug_breakpoints): New variable.
153         (riscv_breakpoint_kind_from_pc): Use the length of the existing
154         instruction to determine the breakpoint kind.
155         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
156         flag.  Update description of 'set/show riscv
157         use-compressed-breakpoints' flag.
158
159 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
160
161         (NEWS): Mention changes to frame related commands.
162         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
163         (add_prefix_cmd_suppress_notification): New function.
164         (add_com_suppress_notification): Call
165         add_cmd_suppress_notification.
166         * command.h (add_cmd_suppress_notification): Declare.
167         (add_prefix_cmd_suppress_notification): Declare.
168         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
169         (parse_frame_specification): Moved from stack.c, with
170         simplification to handle a single argument.
171         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
172         switch to the selected frame.  Add a header comment.
173         * stack.c: Remove 'safe-ctype.h' include.
174         (find_frame_for_function): Add declaration.
175         (find_frame_for_address): New function.
176         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
177         (frame_selection_by_function_completer): New function.
178         (info_frame_command): Rename to...
179         (info_frame_command_core): ...this, and update parameter types.
180         (select_frame_command): Rename to...
181         (select_frame_command_core): ...this, and update parameter types.
182         (frame_command): Rename to...
183         (frame_command_core): ...this, and update parameter types.
184         (class frame_command_helper): New class to wrap implementations of
185         frame related sub-commands.
186         (frame_apply_cmd_list): New static global.
187         (frame_cmd_list): Make static.
188         (select_frame_cmd_list): New global for sub-commands.
189         (info_frame_cmd_list): New global for sub-commands.
190         (_initialize_stack): Register sub-commands for 'frame',
191         'select-frame', and 'info frame'.  Update 'frame apply' commands
192         to use frame_apply_cmd_list.  Move function local static
193         frame_apply_list to file static frame_apply_cmd_list for
194         consistency.
195         * stack.h (select_frame_command): Delete declarationn.
196         (select_frame_for_mi): Declare new function.
197
198 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
199
200         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
201         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
202         and NOP.
203
204 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
205
206         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
207
208 2018-09-26  Tom Tromey  <tom@tromey.com>
209
210         * valops.c (auto_abandon): Remove dead code.
211
212 2018-09-26  Tom Tromey  <tom@tromey.com>
213
214         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
215
216 2018-09-24  Tom Tromey  <tom@tromey.com>
217
218         * common/pathstuff.c (get_standard_cache_dir): Make
219         "xdg_cache_home" and "home" const.
220         * top.c (init_history): Make "tmpenv" const.
221         * main.c (get_init_files): Make "homedir" const.
222
223 2018-09-23  Tom Tromey  <tom@tromey.com>
224
225         PR python/18852:
226         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
227
228 2018-09-23  Tom Tromey  <tom@tromey.com>
229
230         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
231         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
232         * python/python-internal.h (gdbpy_handle_exception): Declare.
233         * python/py-utils.c (gdbpy_handle_exception): New function.
234
235 2018-09-23  Tom Tromey  <tom@tromey.com>
236
237         PR python/17284:
238         * python/py-type.c (typy_template_argument): Check for negative
239         argument number.
240
241 2018-09-23  Tom Tromey  <tom@tromey.com>
242
243         PR python/14062:
244         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
245
246 2018-09-23  Tom Tromey  <tom@tromey.com>
247
248         PR python/18170:
249         * python/py-value.c (valpy_int): Allow conversion from pointer
250         type.
251
252 2018-09-23  Tom Tromey  <tom@tromey.com>
253
254         PR python/20126:
255         * python/py-value.c (valpy_int): Respect type sign.
256
257 2018-09-23  Tom Tromey  <tom@tromey.com>
258
259         PR python/18352;
260         * python/py-value.c (valpy_float): Allow conversions from int or
261         char.
262         (valpy_int, valpy_long): Allow conversions from float.
263
264 2018-09-23  Tom Tromey  <tom@tromey.com>
265
266         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
267         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
268
269 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
270
271         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
272         __sighndlr.
273         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
274
275 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
276
277         * windows-nat.c (windows_nat_target::wait): Remove a spurious
278         target_terminal::ours().
279
280 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
281
282         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
283         of vl to ULONGEST.
284
285 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
286
287         * breakpoint.c (update_inserted_breakpoint_locations): Remove
288         redundant condition.
289
290 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
291
292         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
293
294         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
295         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
296         * sol-thread.c (ps_pdmodel): Don't guard definition.
297
298         * procfs.c: Fix formatting.
299
300         * procfs.c (sysset_t_alloc): Remove.
301         (create_procinfo): Use XNEW instead of sysset_t_alloc.
302         (procfs_debug_inferior): Likewise.
303         (procfs_set_exec_trap): Likewise.
304         (proc_set_traced_sysentry): Don't allocate argp dynamically.
305         (proc_set_traced_sysexit): Likewise.
306
307         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
308         (dead_procinfo): Likewise.
309         (proc_warn): Likewise.
310         (proc_error): Likewise.
311         (proc_get_LDT_entry): Likewise.
312         (do_attach): Likewise.
313         (procfs_target::pid_to_str): Likewise.
314         (iterate_over_mappings): Likewise.
315
316         * procfs.c (create_procinfo): Fix ARI warning.
317         (proc_get_status): Likewise.
318         (proc_stop_process): Likewise.
319         (proc_run_process): Likewise.
320         (proc_kill): Likewise.
321         (proc_get_LDT_entry): Likewise.
322         (procfs_find_LDT_entry): Likewise.
323         (proc_update_threads): Likewise.
324         (proc_iterate_over_threads): Likewise.
325         (do_attach): Likewise.
326         (procfs_xfer_memory): Likewise.
327         (invalidate_cache): Likewise.
328         (procfs_target::resume): Likewise.
329         (procfs_init_inferior): Likewise.
330         (procfs_set_exec_trap): Likewise.
331         (procfs_target::thread_alive): Likewise.
332         (procfs_target::pid_to_exec_file): Likewise.
333         (iterate_over_mappings): Likewise.
334         (procfs_target::make_corefile_notes): Likewise.
335         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
336
337         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
338         (procfs_find_LDT_entry): Likewise.
339         * sol-thread.c (ps_lgetLDT): Likewise.
340
341 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
342
343         PR tdep/17903
344         * procfs.c (procfs_target): Declare pid_to_exec_file.
345         (procfs_target::pid_to_exec_file): New.
346
347 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
348
349         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
350         renaming.
351         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
352         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
353
354 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
355
356         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
357         (supply_fpregset, fill_fpregset): Move ...
358         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
359         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
360         Remove references to ioctl-based procfs.
361         Include <sys/reg.h>.
362         Remove PR_MODEL_NATIVE guards.
363         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
364         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
365
366 2018-09-19  Xavier Roirand  <roirand@adacore.com>
367
368         PR gdb/20981:
369         * solib-darwin.c (darwin_get_dyld_bfd): New function.
370         (darwin_solib_get_all_image_info_addr_at_init): Update call.
371         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
372
373 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
374
375         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
376         (fbsd_print_sockaddr_in6): Likewise.
377
378 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
379             Chris January  <chris.january@arm.com>
380
381         * eval.c (skip_undetermined_arglist): Skip argument list helper.
382         (evaluate_subexp_standard): Return a dummy type when
383         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
384         OP_F77_UNDETERMINED_ARGLIST case.
385         * expression.h (enum noside): Update comment.
386
387 2018-09-19  George Vasick <george.vasick@oracle.com>
388
389         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
390
391 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
392             April Chin <april.chin@oracle.com>
393             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
394
395         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
396         uint_t lwpid_t.
397         (create_procinfo): Print pids in /proc without leading zeros.
398
399 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
400
401         * nios2-tdep.c (nios2_gcc_target_options): New.
402         (nios2_gdb_arch_init): Install new hook.
403
404 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
405
406         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
407         New file.
408         * update-gnulib.sh: Apply patch.
409         * configure: Re-generate.
410
411 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
412
413         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
414         description.  Make "info proc" command descriptions more
415         consistent.
416
417 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
418
419         * NEWS: Mention 'info proc files' command.
420
421 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
422
423         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
424         descriptors for IP_FILES and IP_ALL.
425
426 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
427
428         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
429         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
430         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
431         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
432         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
433         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
434         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
435         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
436         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
437         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
438         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
439         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
440         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
441         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
442         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
443         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
444         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
445         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
446         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
447         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
448         (struct fbsd_sockaddr_un): New types.
449         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
450         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
451         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
452         (fbsd_core_info_proc_files): New functions.
453         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
454         IP_ALL.
455         * fbsd-tdep.h (fbsd_info_proc_files_header)
456         (fbsd_info_proc_files_entry): New.
457
458 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
459
460         * defs.h (enum info_proc_what) [IP_FILES]: New value.
461         * infcmd.c (info_proc_cmd_files): New function.
462         (_initialize_infcmd): Register 'info proc files' command.
463
464 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
465
466         * gnulib/aclocal-m4-deps.mk: Re-generate.
467         * gnulib/aclocal.m4: Re-generate.
468         * gnulib/config.in: Re-generate.
469         * gnulib/configure: Re-generate.
470         * gnulib/import/Makefile.am: Re-generate.
471         * gnulib/import/Makefile.in: Re-generate.
472         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
473         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
474         * gnulib/import/arpa_inet.in.h: New file.
475         * gnulib/import/inet_ntop.c: New file.
476         * gnulib/import/m4/arpa_inet_h.m4: New file.
477         * gnulib/import/m4/inet_ntop.m4: New file.
478         * gnulib/import/m4/netinet_in_h.m4: New file.
479         * gnulib/import/m4/socklen.m4: New file.
480         * gnulib/import/m4/sockpfaf.m4: New file.
481         * gnulib/import/m4/stdalign.m4: New file.
482         * gnulib/import/m4/sys_uio_h.m4: New file.
483         * gnulib/import/netinet_in.in.h: New file.
484         * gnulib/import/stdalign.in.h: New file.
485         * gnulib/import/sys_socket.c: New file.
486         * gnulib/import/sys_socket.in.h: New file.
487         * gnulib/import/sys_uio.in.h: New file.
488         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
489         module.
490
491 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
492
493         * gnulib/aclocal-m4-deps.mk: New file.
494         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
495         deterministically.
496
497 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
498
499         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
500         KVE_PATH.
501
502 2018-09-18  Tom Tromey  <tom@tromey.com>
503
504         * compile/compile-object-load.c (struct
505         link_hash_table_cleanup_data): Add constructor and destructor.
506         Use DISABLE_COPY_AND_ASSIGN.
507         (~link_hash_table_cleanup_data): Rename from
508         link_hash_table_free.  Now a destructor.
509         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
510
511 2018-09-18  Tom Tromey  <tom@tromey.com>
512
513         * compile/compile-object-run.c (do_module_cleanup): Use delete.
514         * compile/compile-object-load.c (struct munmap_list): Move to
515         header file.
516         (munmap_list::add): Rename from munmap_list_add; rewrite.
517         (munmap_list::~munmap_list): Rename from munmap_list_free.
518         (munmap_listp_free_cleanup): Remove.
519         (compile_object_load): Update.
520         * compile/compile-object-load.h (struct munmap_list): Move from
521         compile-object-load.c.  Rewrite.
522
523 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
524
525         * aarch64-tdep.c (pass_in_v): Use register size.
526         (aarch64_extract_return_value): Likewise.
527         (aarch64_store_return_value): Likewise.
528
529 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
530
531         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
532         rlim_t.
533
534 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
535
536         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
537         Fix short help line.
538
539 2018-09-17  Tom Tromey  <tom@tromey.com>
540
541         PR python/20445:
542         * configure: Rebuild.
543         * configure.ac: Conditionally use -DNDEBUG for Python.
544
545 2018-09-17  Tom Tromey  <tom@tromey.com>
546
547         * configure: Rebuild.
548         * configure.ac: Use gmp as a library dependency when checking for
549         mpfr.
550
551 2018-09-17  Pedro Alves  <palves@redhat.com>
552
553         * python/py-inferior.c (find_inferior_object): Delete.
554
555 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
556
557         * compile/compile-cplus-types.c
558         (compile_cplus_instance::enter_scope): Don't use new_scope after
559         std::move.
560
561 2018-09-17  Tom Tromey  <tom@tromey.com>
562
563         * common/pathstuff.c (get_standard_cache_dir): Use
564         ~/Library/Caches on macOS.
565         * common/pathstuff.h (get_standard_cache_dir): Update comment.
566
567 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
568
569         PR python/23669
570         * breakpoint.c (commands_cmd_element): New.
571         (_initialize_breakpoint): Assign commands_cmd_element.
572         * breakpoint.h (commands_cmd_element): New.
573         * cli/cli-script.c (while_cmd_element, if_command,
574         define_cmd_element): New.
575         (command_name_equals): Remove.
576         (process_next_line): Compare commands by pointer, not by name.
577         (_initialize_cli_script): Assign the various cmd_list_element
578         variables.
579         * compile/compile.c (compile_cmd_element): New.
580         (_initialize_compile): Assign compile_cmd_element.
581         * compile/compile.h (compile_cmd_element): New.
582         * guile/guile.c (guile_cmd_element): New.
583         (install_gdb_commands): Assign guile_cmd_element.
584         * guile/guile.h (guile_cmd_element): New.
585         * python/python.c (python_cmd_element): New.
586         (_initialize_python): Assign python_cmd_element.
587         * python/python.h (python_cmd_element): New.
588         * tracepoint.c (while_stepping_cmd_element): New.
589         (_initialize_tracepoint): Assign while_stepping_cmd_element.
590         * tracepoint.h (while_stepping_cmd_element): New.
591
592 2018-09-17  Tom Tromey  <tom@tromey.com>
593
594         * infrun.c (save_infcall_suspend_state): Return
595         infcall_suspend_state_up.
596         (save_infcall_control_state): Return infcall_control_state_up.
597         * inferior.h (save_infcall_suspend_state)
598         (save_infcall_control_state): Declare later.  Return unique
599         pointers.
600
601 2018-09-17  Tom Tromey  <tom@tromey.com>
602
603         * infrun.c (struct stop_context): Declare constructor,
604         destructor, "changed" method.
605         (stop_context::stop_context): Rename from save_stop_context.
606         (stop_context::~stop_context): Rename from
607         release_stop_context_cleanup.
608         (normal_stop): Update.
609         (stop_context::changed): Rename from stop_context_changed.  Return
610         bool.
611
612 2018-09-17  Tom Tromey  <tom@tromey.com>
613
614         * inferior.h (struct infcall_suspend_state_deleter): New.
615         (infcall_suspend_state_up): New typedef.
616         (struct infcall_control_state_deleter): New.
617         (infcall_control_state_up): New typedef.
618         (make_cleanup_restore_infcall_suspend_state)
619         (make_cleanup_restore_infcall_control_state): Don't declare.
620         * infcall.c (call_function_by_hand_dummy): Update.
621         * infrun.c (do_restore_infcall_suspend_state_cleanup)
622         (make_cleanup_restore_infcall_suspend_state): Remove.
623         (do_restore_infcall_control_state_cleanup)
624         (make_cleanup_restore_infcall_control_state): Remove.
625
626 2018-09-17  Tom Tromey  <tom@tromey.com>
627
628         * gdbthread.h (struct thread_control_state): Add initializer.
629         (class thread_info) <control>: Remove initializer.
630         * inferior.h (struct inferior_control_state): Add initializer.
631         (class inferior) <control>: Remove initializer.
632         (exit_inferior_1): Update.
633         * infrun.c (struct infcall_control_state): Add constructors.
634         (save_infcall_control_state): Use new.
635         (restore_infcall_control_state, discard_infcall_control_state):
636         Use delete.
637
638 2018-09-17  Tom Tromey  <tom@tromey.com>
639
640         * infrun.c (struct infcall_suspend_state) <registers>: Now a
641         unique_ptr.
642         <siginfo_data>: Now a unique_xmalloc_ptr.
643         (save_infcall_suspend_state, restore_infcall_suspend_state)
644         (discard_infcall_suspend_state)
645         (get_infcall_suspend_state_regcache): Update.
646
647 2018-09-17  Tom Tromey  <tom@tromey.com>
648
649         * gdbthread.h (struct thread_suspend_state): Add initializers.
650         (class thread_info) <suspend>: Remove initializer.
651         * infrun.c (struct infcall_suspend_state): Add initializers.
652         (save_infcall_suspend_state): Use new.
653         (discard_infcall_suspend_state): Use delete.
654
655 2018-09-16  Tom Tromey  <tom@tromey.com>
656
657         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
658         Remove.
659         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
660         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
661         (py_varobj_iter_new): Likewise.
662         (py_varobj_get_iterator): Use gdbpy_ref.
663
664 2018-09-16  Tom Tromey  <tom@tromey.com>
665
666         * python/py-threadevent.c (py_get_event_thread): Simplify.
667         * python/py-inferior.c (infpy_thread_from_thread_handle):
668         Return immediately after calling thread_to_thread_object.  Use
669         Py_RETURN_NONE.
670         (thread_to_thread_object): Set the exception on a NULL return.
671
672 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
673
674         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
675
676 2018-09-16  Tom Tromey  <tom@tromey.com>
677
678         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
679         Remove.
680
681 2018-09-16  Tom Tromey  <tom@tromey.com>
682
683         * python/python-internal.h (thread_to_thread_object): Change
684         return type.
685         * python/py-inferior.c (thread_to_thread_object): Return a new
686         reference.
687         (infpy_thread_from_thread_handle): Update.
688         * python/py-infthread.c (gdbpy_selected_thread): Update.
689         * python/py-stopevent.c (create_stop_event_object): Update.
690         * python/py-threadevent.c (py_get_event_thread): Return a new
691         reference.
692         (py_get_event_thread): Update.
693         * python/py-event.h (py_get_event_thread): Change return type.
694         * python/py-continueevent.c (create_continue_event_object):
695         Update.
696
697 2018-09-16  Tom Tromey  <tom@tromey.com>
698
699         * python/py-progspace.c (pspy_get_objfiles): Update.
700         * python/python-internal.h (objfile_to_objfile_object): Change
701         return type.
702         * python/py-newobjfileevent.c (create_new_objfile_event_object):
703         Update.
704         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
705         Update.
706         * python/python.c (gdbpy_get_current_objfile): Update.
707         (gdbpy_objfiles): Update.
708         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
709         Update.
710         (objfile_to_objfile_object): Return a new reference.
711         * python/py-symtab.c (stpy_get_objfile): Update.
712         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
713         Update.
714
715 2018-09-16  Tom Tromey  <tom@tromey.com>
716
717         * python/py-inferior.c (infpy_get_progspace): Update.
718         * python/python-internal.h (pspace_to_pspace_object): Change
719         return type.
720         * python/py-newobjfileevent.c
721         (create_clear_objfiles_event_object): Update.
722         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
723         Update.
724         * python/python.c (gdbpy_get_current_progspace): Update.
725         (gdbpy_progspaces): Update.
726         * python/py-progspace.c (pspace_to_pspace_object): Return a new
727         reference.
728         * python/py-objfile.c (objfpy_get_progspace): Update.
729         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
730         Update.
731
732 2018-09-16  Tom Tromey  <tom@tromey.com>
733
734         * python/lib/gdb/__init__.py (current_progspace, objfiles)
735         (solib_name, block_for_pc, find_pc_line): New functions.
736         (execute_unwinders): Update.
737         * python/py-block.c (gdbpy_block_for_pc): Remove.
738         * python/py-inferior.c (infpy_get_progspace): New function.
739         (inferior_object_getset) <progspace>: Add.
740         * python/py-progspace.c (pspy_objfiles): Rewrite.
741         (pspy_solib_name, pspy_block_for_pc)
742         (pspy_find_pc_line, pspy_is_valid): New functions.
743         (progspace_object_methods): Add entries for solib_name,
744         block_for_pc, find_pc_line, is_valid.
745         * python/python-internal.h (gdbpy_block_for_pc)
746         (build_objfiles_list): Don't declare.
747         * python/python.c: Don't include solib.h.
748         (gdbpy_solib_name, gdbpy_find_pc_line)
749         (gdbpy_get_current_progspace, build_objfiles_list)
750         (gdbpy_objfiles): Remove.
751         (GdbMethods) <current_progspace, objfiles, block_for_pc,
752         solib_name, find_pc_line>: Remove entries.
753
754 2018-09-16  Tom Tromey  <tom@tromey.com>
755
756         * top.c (new_ui_command): Use GNU style for metasyntactic
757         variables.
758         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
759         variables.
760         * maint.c (maintenance_translate_address): Remove "<>" around
761         text.
762         * interps.c (interpreter_exec_cmd): Use GNU style for
763         metasyntactic variables.
764         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
765         metasyntactic variables.
766         * tracepoint.c (tfind_range_command): Use GNU style for
767         metasyntactic variables.
768         (tfind_outside_command): Likewise.
769         (_initialize_tracepoint): Likewise.
770         * remote.c (extended_remote_target::create_inferior): Use GNU
771         style for metasyntactic variables.
772         * sparc64-tdep.c (adi_examine_command): Use GNU style for
773         metasyntactic variables.
774         (adi_assign_command): Likewise.
775
776 2018-09-16  Tom Tromey  <tom@tromey.com>
777
778         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
779         metasyntactic variables.  Print message if no disassembler options
780         are available.
781
782 2018-09-15  Tom Tromey  <tom@tromey.com>
783
784         * infcmd.c (get_inferior_args): Return const char *.
785         * inferior.h (get_inferior_args): Return type now const.
786         * linux-tdep.c (linux_fill_prpsinfo): Update.
787         * procfs.c (procfs_target::make_corefile_notes): Update.
788
789 2018-09-07  Tom Tromey  <tom@tromey.com>
790
791         * python/python.c (execute_gdb_command): Call bpstat_do_actions
792         inside the TRY.
793
794 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
795
796         * nios2-tdep.c (nios2_type_align): New.
797         (nios2_gdb_arch_init): Install type_align hook.
798
799 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
800
801         * eval.c (fake_method::fake_method): Call xzalloc directly for a
802         type that is neither object file owned, nor gdbarch owned.
803         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
804         gdbarch is non-NULL.
805         (alloc_type_instance): Allocate non-objfile owned types on the
806         gdbarch obstack.
807         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
808         using TYPE_ALLOC to ensure memory is allocated on the correct
809         obstack.
810         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
811         obstack, or the gdbarch obstack.
812         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
813
814 2018-09-14  Tom Tromey  <tom@tromey.com>
815
816         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
817         block.
818
819 2018-09-14  Tom Tromey  <tom@tromey.com>
820
821         * nat/fork-inferior.c (get_startup_shell): Remove "static".
822
823 2018-09-13  Tom Tromey  <tom@tromey.com>
824
825         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
826         static.
827
828 2018-09-13  Tom Tromey  <tom@tromey.com>
829
830         * exec.c (try_open_exec_file): Use std::string.
831
832 2018-09-13  Tom Tromey  <tom@tromey.com>
833
834         * utils.h (gdb_bfd_errmsg): Return std::string.
835         * exec.c (exec_file_attach): Update.
836         * compile/compile-object-load.c (compile_object_load): Update.
837         * utils.c (gdb_bfd_errmsg): Return std::string.
838
839 2018-09-13  Tom Tromey  <tom@tromey.com>
840
841         * procfs.c (struct procinfo_deleter): New.
842         (procinfo_up): New typedef.
843         (do_destroy_procinfo_cleanup): Remove.
844         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
845
846 2018-09-13  Tom Tromey  <tom@tromey.com>
847
848         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
849
850 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
851 2018-09-13  Tom Tromey  <tom@tromey.com>
852
853         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
854         (pspy_get_objfiles): New function.
855         (progspace_object_methods): New.
856         (pspace_object_type): Add tp_methods callback.
857         * python/python-internal.h (build_objfiles_list): New
858         declaration.
859         * python/python.c (build_objfiles_list): New function.
860         (gdbpy_objfiles): Implement using build_objfiles_list.
861         * NEWS: Mention the Progspace.objfiles method.
862
863 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
864
865         * python/py-inferior.c (infpy_get_progspace): New function.
866         (inferior_object_getset): Add progspace property.
867         * NEWS: Mention the new property.
868
869 2018-09-13  Tom Tromey  <tom@tromey.com>
870
871         PR rust/23650:
872         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
873
874 2018-09-13  Tom Tromey  <tom@tromey.com>
875
876         PR rust/23626:
877         * rust-lang.c (rust_enum_variant): Now static.
878         (rust_empty_enum_p): New function.
879         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
880         Handle empty enum.
881
882 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
883
884         * python/py-inferior.c (infpy_repr): New.
885         (inferior_object_type): Register infpy_repr.
886         * python/py-objfile.c (objfpy_repr): New.
887         (objfile_object_type): Register objfpy_repr.
888
889 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
890
891         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
892
893 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
894
895         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
896         typo.
897
898 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
899
900         * common/common-utils.c: Don't include '<sys/stat.h>'.
901         (is_regular_file): Move to...
902         * common/filestuff.c (is_regular_file): ... here.
903         * common/common-utils.h (is_regular_file): Move to...
904         * common/filestuff.h (is_regular_file): ... here.
905
906 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
907
908         * skip.c (debug_skip): New variable.
909         (skiplist_entry::do_skip_file_p): Add debug output.
910         (skiplist_entry::do_skip_gfile_p): Likewise.
911         (skiplist_entry::skip_function_p): Likewise.
912         (_initialize_step_skip): Create debug command.
913         * NEWS: Mention set/show debug skip.
914
915 2018-09-11  Xavier Roirand  <roirand@adacore.com>
916
917         * darwin-nat.c (should_disable_startup_with_shell):
918         New function.
919         (darwin_nat_target::create_inferior): Add call.
920
921 2018-09-11  Xavier Roirand  <roirand@adacore.com>
922
923         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
924         inf_port, msg_state>: Initialize.
925         (struct darwin_thread_info) <signaled, single_step>: Change
926         type and initialize.
927         (struct darwin_thread_info) <event>: Initialize.
928
929 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
930
931         PR gdb/23555
932         PR gdb/23558
933         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
934         guesses.
935
936 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
937
938         Revert:
939         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
940
941         PR gdb/23555
942         PR gdb/23558
943         * gnulib/aclocal.m4: Regenerate.
944         * gnulib/config.in: Regenerate.
945         * gnulib/configure: Regenerate.
946         * gnulib/import/Makefile.am: Update.
947         * gnulib/import/Makefile.in: Update.
948         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
949         * gnulib/import/_Noreturn.h: ... this.
950         * gnulib/import/alloca.in.h: Update.
951         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
952         * gnulib/import/arg-nonnull.h: ... this.
953         * gnulib/import/assure.h: Update.
954         * gnulib/import/at-func.c: Update.
955         * gnulib/import/basename-lgpl.c: Update.
956         * gnulib/import/extra/snippet/c++defs.h: Rename to...
957         * gnulib/import/c++defs.h: ... this.
958         * gnulib/import/canonicalize-lgpl.c: Update.
959         * gnulib/import/cdefs.h: Update.
960         * gnulib/import/chdir-long.c: Update.
961         * gnulib/import/chdir-long.h: Update.
962         * gnulib/import/cloexec.c: Update.
963         * gnulib/import/cloexec.h: Update.
964         * gnulib/import/close.c: Update.
965         * gnulib/import/closedir.c: Update.
966         * gnulib/import/config.charset: Update.
967         * gnulib/import/dirent-private.h: Update.
968         * gnulib/import/dirent.in.h: Update.
969         * gnulib/import/dirfd.c: Update.
970         * gnulib/import/dirname-lgpl.c: Update.
971         * gnulib/import/dirname.h: Update.
972         * gnulib/import/dosname.h: Update.
973         * gnulib/import/dup-safer-flag.c: Update.
974         * gnulib/import/dup-safer.c: Update.
975         * gnulib/import/dup.c: Update.
976         * gnulib/import/dup2.c: Update.
977         * gnulib/import/errno.in.h: Update.
978         * gnulib/import/error.c: Update.
979         * gnulib/import/error.h: Update.
980         * gnulib/import/exitfail.c: Update.
981         * gnulib/import/exitfail.h: Update.
982         * gnulib/import/extra/update-copyright: Update.
983         * gnulib/import/fchdir.c: Update.
984         * gnulib/import/fcntl.c: Update.
985         * gnulib/import/fcntl.in.h: Update.
986         * gnulib/import/fd-hook.c: Update.
987         * gnulib/import/fd-hook.h: Update.
988         * gnulib/import/fd-safer-flag.c: Update.
989         * gnulib/import/fd-safer.c: Update.
990         * gnulib/import/fdopendir.c: Update.
991         * gnulib/import/filename.h: Update.
992         * gnulib/import/filenamecat-lgpl.c: Update.
993         * gnulib/import/filenamecat.h: Update.
994         * gnulib/import/flexmember.h: Update.
995         * gnulib/import/float+.h: Update.
996         * gnulib/import/float.c: Update.
997         * gnulib/import/float.in.h: Update.
998         * gnulib/import/fnmatch.c: Update.
999         * gnulib/import/fnmatch.in.h: Update.
1000         * gnulib/import/fnmatch_loop.c: Update.
1001         * gnulib/import/fpucw.h: Update.
1002         * gnulib/import/frexp.c: Update.
1003         * gnulib/import/frexpl.c: Update.
1004         * gnulib/import/fstat.c: Update.
1005         * gnulib/import/fstatat.c: Update.
1006         * gnulib/import/getcwd-lgpl.c: Update.
1007         * gnulib/import/getcwd.c: Update.
1008         * gnulib/import/getdtablesize.c: Update.
1009         * gnulib/import/getlogin_r.c: Update.
1010         * gnulib/import/getprogname.c: Update.
1011         * gnulib/import/getprogname.h: Update.
1012         * gnulib/import/gettext.h: Update.
1013         * gnulib/import/gettimeofday.c: Update.
1014         * gnulib/import/glob-libc.h: Update.
1015         * gnulib/import/glob.c: Update.
1016         * gnulib/import/glob.in.h: Update.
1017         * gnulib/import/glob_internal.h: Update.
1018         * gnulib/import/glob_pattern_p.c: Update.
1019         * gnulib/import/globfree.c: Update.
1020         * gnulib/import/hard-locale.c: Update.
1021         * gnulib/import/hard-locale.h: Update.
1022         * gnulib/import/intprops.h: Update.
1023         * gnulib/import/inttypes.in.h: Update.
1024         * gnulib/import/isnan.c: Update.
1025         * gnulib/import/isnand-nolibm.h: Update.
1026         * gnulib/import/isnand.c: Update.
1027         * gnulib/import/isnanl-nolibm.h: Update.
1028         * gnulib/import/isnanl.c: Update.
1029         * gnulib/import/itold.c: Update.
1030         * gnulib/import/libc-config.h: Update.
1031         * gnulib/import/limits.in.h: Update.
1032         * gnulib/import/localcharset.c: Update.
1033         * gnulib/import/localcharset.h: Update.
1034         * gnulib/import/localtime-buffer.c: Update.
1035         * gnulib/import/localtime-buffer.h: Update.
1036         * gnulib/import/lstat.c: Update.
1037         * gnulib/import/m4/00gnulib.m4: Update.
1038         * gnulib/import/m4/__inline.m4: Update.
1039         * gnulib/import/m4/absolute-header.m4: Update.
1040         * gnulib/import/m4/alloca.m4: Update.
1041         * gnulib/import/m4/builtin-expect.m4: Update.
1042         * gnulib/import/m4/canonicalize.m4: Update.
1043         * gnulib/import/m4/chdir-long.m4: Update.
1044         * gnulib/import/m4/close.m4: Update.
1045         * gnulib/import/m4/closedir.m4: Update.
1046         * gnulib/import/m4/configmake.m4: Update.
1047         * gnulib/import/m4/d-ino.m4: Update.
1048         * gnulib/import/m4/d-type.m4: Update.
1049         * gnulib/import/m4/dirent_h.m4: Update.
1050         * gnulib/import/m4/dirfd.m4: Update.
1051         * gnulib/import/m4/dirname.m4: Update.
1052         * gnulib/import/m4/double-slash-root.m4: Update.
1053         * gnulib/import/m4/dup.m4: Update.
1054         * gnulib/import/m4/dup2.m4: Update.
1055         * gnulib/import/m4/eealloc.m4: Update.
1056         * gnulib/import/m4/environ.m4: Update.
1057         * gnulib/import/m4/errno_h.m4: Update.
1058         * gnulib/import/m4/error.m4: Update.
1059         * gnulib/import/m4/exponentd.m4: Update.
1060         * gnulib/import/m4/exponentl.m4: Update.
1061         * gnulib/import/m4/extensions.m4: Update.
1062         * gnulib/import/m4/extern-inline.m4: Update.
1063         * gnulib/import/m4/fchdir.m4: Update.
1064         * gnulib/import/m4/fcntl-o.m4: Update.
1065         * gnulib/import/m4/fcntl.m4: Update.
1066         * gnulib/import/m4/fcntl_h.m4: Update.
1067         * gnulib/import/m4/fdopendir.m4: Update.
1068         * gnulib/import/m4/filenamecat.m4: Update.
1069         * gnulib/import/m4/flexmember.m4: Update.
1070         * gnulib/import/m4/float_h.m4: Update.
1071         * gnulib/import/m4/fnmatch.m4: Update.
1072         * gnulib/import/m4/fnmatch_h.m4: Update.
1073         * gnulib/import/m4/fpieee.m4: Update.
1074         * gnulib/import/m4/frexp.m4: Update.
1075         * gnulib/import/m4/frexpl.m4: Update.
1076         * gnulib/import/m4/fstat.m4: Update.
1077         * gnulib/import/m4/fstatat.m4: Update.
1078         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1079         * gnulib/import/m4/getcwd-path-max.m4: Update.
1080         * gnulib/import/m4/getcwd.m4: Update.
1081         * gnulib/import/m4/getdtablesize.m4: Update.
1082         * gnulib/import/m4/getlogin.m4: Update.
1083         * gnulib/import/m4/getlogin_r.m4: Update.
1084         * gnulib/import/m4/getpagesize.m4: Update.
1085         * gnulib/import/m4/getprogname.m4: Update.
1086         * gnulib/import/m4/gettimeofday.m4: Update.
1087         * gnulib/import/m4/glibc21.m4: Update.
1088         * gnulib/import/m4/glob.m4: Update.
1089         * gnulib/import/m4/glob_h.m4: Update.
1090         * gnulib/import/m4/gnulib-cache.m4: Update.
1091         * gnulib/import/m4/gnulib-common.m4: Update.
1092         * gnulib/import/m4/gnulib-comp.m4: Update.
1093         * gnulib/import/m4/gnulib-tool.m4: Update.
1094         * gnulib/import/m4/hard-locale.m4: Update.
1095         * gnulib/import/m4/include_next.m4: Update.
1096         * gnulib/import/m4/inttypes-pri.m4: Update.
1097         * gnulib/import/m4/inttypes.m4: Update.
1098         * gnulib/import/m4/isnand.m4: Update.
1099         * gnulib/import/m4/isnanl.m4: Update.
1100         * gnulib/import/m4/largefile.m4: Update.
1101         * gnulib/import/m4/limits-h.m4: Update.
1102         * gnulib/import/m4/localcharset.m4: Update.
1103         * gnulib/import/m4/locale-fr.m4: Update.
1104         * gnulib/import/m4/locale-ja.m4: Update.
1105         * gnulib/import/m4/locale-zh.m4: Update.
1106         * gnulib/import/m4/localtime-buffer.m4: Update.
1107         * gnulib/import/m4/longlong.m4: Update.
1108         * gnulib/import/m4/lstat.m4: Update.
1109         * gnulib/import/m4/malloc.m4: Update.
1110         * gnulib/import/m4/malloca.m4: Update.
1111         * gnulib/import/m4/math_h.m4: Update.
1112         * gnulib/import/m4/mbrtowc.m4: Update.
1113         * gnulib/import/m4/mbsinit.m4: Update.
1114         * gnulib/import/m4/mbsrtowcs.m4: Update.
1115         * gnulib/import/m4/mbstate_t.m4: Update.
1116         * gnulib/import/m4/memchr.m4: Update.
1117         * gnulib/import/m4/memmem.m4: Update.
1118         * gnulib/import/m4/mempcpy.m4: Update.
1119         * gnulib/import/m4/memrchr.m4: Update.
1120         * gnulib/import/m4/mkdir.m4: Update.
1121         * gnulib/import/m4/mkstemp.m4: Update.
1122         * gnulib/import/m4/mmap-anon.m4: Update.
1123         * gnulib/import/m4/mode_t.m4: Update.
1124         * gnulib/import/m4/msvc-inval.m4: Update.
1125         * gnulib/import/m4/msvc-nothrow.m4: Update.
1126         * gnulib/import/m4/multiarch.m4: Update.
1127         * gnulib/import/m4/nocrash.m4: Update.
1128         * gnulib/import/m4/off_t.m4: Update.
1129         * gnulib/import/m4/onceonly.m4: Update.
1130         * gnulib/import/m4/open-cloexec.m4: Update.
1131         * gnulib/import/m4/open.m4: Update.
1132         * gnulib/import/m4/openat.m4: Update.
1133         * gnulib/import/m4/opendir.m4: Update.
1134         * gnulib/import/m4/pathmax.m4: Update.
1135         * gnulib/import/m4/rawmemchr.m4: Update.
1136         * gnulib/import/m4/readdir.m4: Update.
1137         * gnulib/import/m4/readlink.m4: Update.
1138         * gnulib/import/m4/realloc.m4: Update.
1139         * gnulib/import/m4/rename.m4: Update.
1140         * gnulib/import/m4/rewinddir.m4: Update.
1141         * gnulib/import/m4/rmdir.m4: Update.
1142         * gnulib/import/m4/save-cwd.m4: Update.
1143         * gnulib/import/m4/secure_getenv.m4: Update.
1144         * gnulib/import/m4/setenv.m4: Update.
1145         * gnulib/import/m4/signal_h.m4: Update.
1146         * gnulib/import/m4/ssize_t.m4: Update.
1147         * gnulib/import/m4/stat-time.m4: Update.
1148         * gnulib/import/m4/stat.m4: Update.
1149         * gnulib/import/m4/std-gnu11.m4: Update.
1150         * gnulib/import/m4/stdbool.m4: Update.
1151         * gnulib/import/m4/stddef_h.m4: Update.
1152         * gnulib/import/m4/stdint.m4: Update.
1153         * gnulib/import/m4/stdio_h.m4: Update.
1154         * gnulib/import/m4/stdlib_h.m4: Update.
1155         * gnulib/import/m4/strchrnul.m4: Update.
1156         * gnulib/import/m4/strdup.m4: Update.
1157         * gnulib/import/m4/strerror.m4: Update.
1158         * gnulib/import/m4/string_h.m4: Update.
1159         * gnulib/import/m4/strstr.m4: Update.
1160         * gnulib/import/m4/strtok_r.m4: Update.
1161         * gnulib/import/m4/sys_socket_h.m4: Update.
1162         * gnulib/import/m4/sys_stat_h.m4: Update.
1163         * gnulib/import/m4/sys_time_h.m4: Update.
1164         * gnulib/import/m4/sys_types_h.m4: Update.
1165         * gnulib/import/m4/tempname.m4: Update.
1166         * gnulib/import/m4/time_h.m4: Update.
1167         * gnulib/import/m4/unistd-safer.m4: Update.
1168         * gnulib/import/m4/unistd_h.m4: Update.
1169         * gnulib/import/m4/warn-on-use.m4: Update.
1170         * gnulib/import/m4/wchar_h.m4: Update.
1171         * gnulib/import/m4/wchar_t.m4: Update.
1172         * gnulib/import/m4/wctype_h.m4: Update.
1173         * gnulib/import/m4/wint_t.m4: Update.
1174         * gnulib/import/malloc.c: Update.
1175         * gnulib/import/malloc/scratch_buffer.h: Update.
1176         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1177         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1178         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1179         * gnulib/import/malloca.c: Update.
1180         * gnulib/import/malloca.h: Update.
1181         * gnulib/import/malloca.valgrind: Update.
1182         * gnulib/import/math.in.h: Update.
1183         * gnulib/import/mbrtowc.c: Update.
1184         * gnulib/import/mbsinit.c: Update.
1185         * gnulib/import/mbsrtowcs-impl.h: Update.
1186         * gnulib/import/mbsrtowcs-state.c: Update.
1187         * gnulib/import/mbsrtowcs.c: Update.
1188         * gnulib/import/memchr.c: Update.
1189         * gnulib/import/memmem.c: Update.
1190         * gnulib/import/mempcpy.c: Update.
1191         * gnulib/import/memrchr.c: Update.
1192         * gnulib/import/mkdir.c: Update.
1193         * gnulib/import/mkstemp.c: Update.
1194         * gnulib/import/msvc-inval.c: Update.
1195         * gnulib/import/msvc-inval.h: Update.
1196         * gnulib/import/msvc-nothrow.c: Update.
1197         * gnulib/import/msvc-nothrow.h: Update.
1198         * gnulib/import/open.c: Update.
1199         * gnulib/import/openat-die.c: Update.
1200         * gnulib/import/openat-priv.h: Update.
1201         * gnulib/import/openat-proc.c: Update.
1202         * gnulib/import/openat.c: Update.
1203         * gnulib/import/openat.h: Update.
1204         * gnulib/import/opendir.c: Update.
1205         * gnulib/import/pathmax.h: Update.
1206         * gnulib/import/pipe-safer.c: Update.
1207         * gnulib/import/rawmemchr.c: Update.
1208         * gnulib/import/readdir.c: Update.
1209         * gnulib/import/readlink.c: Update.
1210         * gnulib/import/realloc.c: Update.
1211         * gnulib/import/ref-add.sin: Update.
1212         * gnulib/import/ref-del.sin: Update.
1213         * gnulib/import/rename.c: Update.
1214         * gnulib/import/rewinddir.c: Update.
1215         * gnulib/import/rmdir.c: Update.
1216         * gnulib/import/same-inode.h: Update.
1217         * gnulib/import/save-cwd.c: Update.
1218         * gnulib/import/save-cwd.h: Update.
1219         * gnulib/import/scratch_buffer.h: Update.
1220         * gnulib/import/secure_getenv.c: Update.
1221         * gnulib/import/setenv.c: Update.
1222         * gnulib/import/signal.in.h: Update.
1223         * gnulib/import/stat-time.c: Update.
1224         * gnulib/import/stat-time.h: Update.
1225         * gnulib/import/stat-w32.c: Update.
1226         * gnulib/import/stat-w32.h: Update.
1227         * gnulib/import/stat.c: Update.
1228         * gnulib/import/stdbool.in.h: Update.
1229         * gnulib/import/stddef.in.h: Update.
1230         * gnulib/import/stdint.in.h: Update.
1231         * gnulib/import/stdio.in.h: Update.
1232         * gnulib/import/stdlib.in.h: Update.
1233         * gnulib/import/str-two-way.h: Update.
1234         * gnulib/import/strchrnul.c: Update.
1235         * gnulib/import/strdup.c: Update.
1236         * gnulib/import/streq.h: Update.
1237         * gnulib/import/strerror-override.c: Update.
1238         * gnulib/import/strerror-override.h: Update.
1239         * gnulib/import/strerror.c: Update.
1240         * gnulib/import/string.in.h: Update.
1241         * gnulib/import/stripslash.c: Update.
1242         * gnulib/import/strnlen1.c: Update.
1243         * gnulib/import/strnlen1.h: Update.
1244         * gnulib/import/strstr.c: Update.
1245         * gnulib/import/strtok_r.c: Update.
1246         * gnulib/import/sys_stat.in.h: Update.
1247         * gnulib/import/sys_time.in.h: Update.
1248         * gnulib/import/sys_types.in.h: Update.
1249         * gnulib/import/tempname.c: Update.
1250         * gnulib/import/tempname.h: Update.
1251         * gnulib/import/time.in.h: Update.
1252         * gnulib/import/unistd--.h: Update.
1253         * gnulib/import/unistd-safer.h: Update.
1254         * gnulib/import/unistd.in.h: Update.
1255         * gnulib/import/unsetenv.c: Update.
1256         * gnulib/import/verify.h: Update.
1257         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1258         * gnulib/import/wchar.in.h: Update.
1259         * gnulib/import/wctype.in.h: Update.
1260         * gnulib/import/xalloc-oversized.h: Update.
1261         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1262         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1263
1264 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1265
1266         * record-btrace.c (get_thread_current_frame): Remove
1267         old_inferior_ptid.
1268
1269 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1270
1271         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1272         with check_tag to 1 if and only if the type is tagged and the
1273         component being searched cannot been found in the current
1274         view. Otherwise, always call ada_to_fixed_type with
1275         check_tag to 0.
1276
1277 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1278
1279         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1280         declaration.
1281         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1282         * ada-varobj.c (ada_varobj_get_number_of_children,
1283         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1284
1285 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1286
1287         * ada-valprint.c (ada_value_print): Use type instead of
1288         enclosing type.
1289
1290 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1291
1292         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1293         an array of access to unconstrained array.
1294
1295 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1296
1297         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1298         (ada_check_typedef): Use it.
1299
1300 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1301
1302         * ada-varobj.c (ada_varobj_describe_struct_child)
1303         (ada_varobj_describe_child): Handle union case like struct one.
1304
1305 2018-09-10  Tom Tromey  <tom@tromey.com>
1306
1307         PR python/18380:
1308         * python/python.c (_initialize_python): Make example in "python"
1309         help work in Python 3.
1310
1311 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1312
1313         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1314         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1315         $(EXEEXT) to the script, as it is not a program.
1316
1317 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1318
1319         * python/py-prettyprint.c (pretty_print_one_value): Return
1320         gdbpy_ref<>.
1321         (print_string_repr): Adjust.
1322         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1323         * python/python-internal.h (apply_varobj_pretty_printer): Return
1324         gdbpy_ref<>.
1325         * varobj.c (varobj_value_get_print_value): Adjust.
1326
1327 2018-09-08  Tom Tromey  <tom@tromey.com>
1328
1329         PR python/16047:
1330         * python/py-prettyprint.c (pretty_print_one_value): Check for
1331         to_string method.
1332
1333 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1334
1335         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1336         replace_operator_with_call.
1337
1338 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1339
1340         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1341
1342 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1343
1344         * ada-typeprint.c (print_range): Print the bounds using TYPE
1345         rather than its TYPE_TARGET_TYPE.
1346
1347 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1348
1349         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1350         call to ada_to_fixed_value_create.
1351
1352 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1353
1354         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1355
1356 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1357
1358         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1359         by calls to error.
1360
1361 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1362
1363         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1364         Move update of loop variable "fi".
1365
1366 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1367
1368         * ada-lang.c (value_assign_to_component): In the case of
1369         big-endian targets, extract the bits of the given VAL
1370         using an src_offset of zero if container is not a scalar.
1371
1372 2018-09-06  Simon Ser  <contact@emersion.fr>
1373
1374         PR gdb/23105
1375         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1376         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1377         * fbsd-tdep.c (fbsd_make_note_desc): New.
1378         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1379         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1380         * target.h (enum target_object) Add FreeBSD-specific
1381         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1382
1383 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1384
1385         * compile/compile-c.h (generate_c_for_variable_locations):
1386         Change reference to pointer.
1387         * compile/compile-c-support.c (compile_program) <compute>:
1388         Likewise.
1389         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1390         (generate_c_for_for_one_variable): Likewise
1391         (generate_c_for_variable_locations): Likewise
1392         * compile/compile-c-types.c (compile_c_instance::convert_type):
1393         Likewise
1394         * compile/compile-cplus-symbols.c (convert_one_symbol):
1395         std::move the scope passed to enter_scope.
1396         * compile/compile-cplus-types.c
1397         (compile_cplus_instance::enter_scope): Make parameter
1398         rvalue-reference.
1399         (compile_cplus_instance::new_scope): Change reference to
1400         pointer.
1401         (compile_cplus_instance::convert_type): Likewise
1402         (compile_cplus_convert_typedef): std::move the scope passed to
1403         enter_scope.
1404         (compile_cplus_convert_struct_or_union): Likewise.
1405         (compile_cplus_convert_enum): Likewise.
1406         (compile_cplus_convert_namespace): Likewise.
1407         * compile/compile-cplus.h (compile_cplus_instance)
1408         <enter_scope>: Make parameter rvalue-reference.
1409         * compile/compile-internal.h (compile_instance)
1410         <get_cached_type>: Likewise
1411         * compile/compile-loc2c.c (push): Likewise
1412         (pushf): Likewise
1413         (unary): Likewise
1414         (binary): Likewise
1415         (print_label): Likewise
1416         (pushf_register_address): Likewise
1417         (pushf_register): Likewise
1418         (do_compile_dwarf_expr_to_c): Likewise
1419         (compile_dwarf_expr_to_c): Likewise
1420         (compile_dwarf_bounds_to_c): Likewise
1421         * compile/compile.c (compile_instance::get_cached_type):
1422         Likewise
1423         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1424         (compile_dwarf_bounds_to_c): Likewise
1425         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1426         (dwarf2_compile_property_to_c): Likewise
1427         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1428         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1429         Likewise
1430
1431 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1432
1433         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1434         * tui/tui-data.c (init_content_element): Don't initialize it.
1435
1436 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1437
1438         * tui/tui-data.h (struct tui_win_info)
1439         <detail::opaque>: Remove.
1440         * tui/tui-data.c (init_win_info): Remove assignment.
1441
1442 2018-09-05  Tom Tromey  <tom@tromey.com>
1443
1444         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1445         -Wformat-nonliteral.
1446         * target-float.c (host_float_ops<T>::to_string)
1447         (host_float_ops<T>::from_string): Use
1448         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1449         * configure: Rebuild.
1450
1451 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1452
1453         * printcmd.c (printf_c_string): Use
1454         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1455         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1456
1457 2018-09-05  Tom Tromey  <tom@tromey.com>
1458
1459         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1460
1461 2018-09-05  Tom de Vries  <tdevries@suse.de>
1462
1463         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1464         with resolve_abstract_p == true.
1465         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1466         defaulting to false. Propagate resolve_abstract_p to
1467         dwarf2_fetch_die_loc_sect_off.
1468         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1469         parameter, defaulting to false.
1470         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1471         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1472         parameter.
1473         * dwarf2read.h (struct die_info): Forward-declare.
1474         (die_info_ptr): New typedef.
1475         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1476
1477 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1478
1479         GDB 8.2 released.
1480
1481 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1482             Pedro Alves  <palves@redhat.com>
1483
1484         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1485         "aclocal-m4-deps.mk".  Include file here.
1486         $(srcdir)/aclocal.m4: Add "configure.ac".
1487         * gnulib/aclocal-m4-deps.mk: New file.
1488         * gnulib/update-gnulib.sh: Automatically update
1489         "aclocal-m4-deps.mk".
1490
1491 2018-09-04  Tom Tromey  <tom@tromey.com>
1492
1493         * configure: Rebuild.
1494         * configure.ac: Remove multi-ice code.
1495
1496 2018-09-04  Tom Tromey  <tom@tromey.com>
1497
1498         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1499         (ada-exp.o): Update.
1500
1501 2018-09-04  Tom Tromey  <tom@tromey.com>
1502
1503         * Makefile.in (printcmd.o, target-float.o): Remove.
1504         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1505
1506 2018-09-04  Tom Tromey  <tom@tromey.com>
1507
1508         * gnulib/Makefile.in: Remove obsolete comment.
1509         * Makefile.in: Remove obsolete comment.
1510
1511 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1512
1513         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1514         line with '+'.
1515
1516 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1517
1518         * riscv-tdep.c: Add 'prologue-value.h' include.
1519         (struct riscv_unwind_cache): New struct.
1520         (riscv_debug_unwinder): New global.
1521         (riscv_scan_prologue): Update arguments, capture register details
1522         from prologue scan.
1523         (riscv_skip_prologue): Reformat arguments line, move end of
1524         prologue calculation into riscv_scan_prologue.
1525         (riscv_frame_cache): Update return type, create
1526         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1527         details.
1528         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1529         (riscv_frame_prev_register): Use the trad_frame within the
1530         riscv_unwind_cache.
1531         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1532         flag.
1533
1534 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1535
1536         * trad-frame.h (trad_frame_set_realreg): Declare.
1537         (trad_frame_set_addr): Declare.
1538         * trad-frame.c (trad_frame_set_realreg): Define new function.
1539         (trad_frame_set_addr): Define new function.
1540         (trad_frame_set_reg_realreg): Use new function.
1541         (trad_frame_set_reg_addr): Use new function.
1542
1543 2018-09-01  Keith Seitz  <keiths@redhat.com>
1544
1545         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1546         pulongest instead of "%lld".
1547         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1548         ATTRIBUTE_UNUSED.
1549
1550 2018-08-31  Tom Tromey  <tom@tromey.com>
1551
1552         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1553         variant part type.
1554
1555 2018-08-31  Pedro Alves  <palves@redhat.com>
1556
1557         * gdbarch.h: Regenerate.
1558
1559 2018-08-31  Pedro Alves  <palves@redhat.com>
1560
1561         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1562         * target.h (Hardware watchpoint interfaces): Describe
1563         continuable/steppable/non-steppable watchpoints.
1564         * gdbarch.h, gdbarch.c: Regenerate.
1565
1566 2018-08-31  Pedro Alves  <palves@redhat.com>
1567
1568         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1569         Delete.
1570         * s390-linux-nat.c
1571         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1572         * target.h (target_ops::have_continuable_watchpoint): Delete.
1573         (target_have_continuable_watchpoint): Delete.
1574         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1575         * target-delegates.c: Regenerate.
1576
1577 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1578
1579         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1580         the files present in "gnulib/import/m4/".
1581
1582 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1583
1584         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1585         c.sw, c.swsp, and c.sdsp.
1586
1587 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1588
1589         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1590         (riscv_read_misa_reg): Don't cache value read into inferior data.
1591         (riscv_new_inferior_data): Delete.
1592         (riscv_inferior_data_cleanup): Delete.
1593         (riscv_inferior_data): Delete.
1594         (riscv_invalidate_inferior_data): Delete.
1595         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1596
1597 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1598
1599         * compile/compile-cplus-types.c
1600         (compile_cplus_instance::leave_scope): Take the address of scope
1601         object.
1602         (compile_cplus_instance::convert_qualified_base): Compare quals
1603         to 0.
1604
1605 2018-08-30  Keith Seitz  <keiths@redhat.com>
1606
1607         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1608         Use "%s" and host_address_to_string instead of "%p" in printf.
1609
1610 2018-08-29  Keith Seitz  <keiths@redhat.com>
1611
1612         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1613         and compile-cplus-types.c.
1614         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1615         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1616         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1617         Declare.
1618         * compile/compile-c-support.c: Include compile-cplus.h.
1619         (load_libcompile): Templatize.
1620         (get_compile_context): "New" function.
1621         (c_get_compile_context): Use get_compile_context.
1622         (cplus_get_compile_context): New function.
1623         (cplus_push_user_expression, cplus_pop_user_expression)
1624         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1625         (cplus_compute_program): Define new structs/functions.
1626         * compile/compile-cplus-symmbols.c: New file.
1627         * compile/compile-cplus-types.c: New file.
1628         * compile/compile-cplus.h: New file.
1629         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1630         Declare.
1631         * compile/compile-object-load.c (get_out_value_type): Use
1632         strncmp_iw when comparing symbol names.
1633         (compile_object_load): Add mst_bss and mst_data.
1634         * compile/compile.c (_initialize_compile): Remove
1635         -Wno-implicit-function-declaration from `compile_args'.
1636         * compile/gcc-cp-plugin.h: New file.
1637         * NEWS: Mention C++ compile support and new debug options.
1638
1639 2018-08-29  Keith Seitz  <keiths@redhat.com>
1640
1641         * linespec.c (collect_info::add_symbol): Make virtual.
1642         (struct symbol_searcher_collect_info): New struct.
1643         (symbol_searcher::find_all_symbols): New method.
1644         * symtab.h (class symbol_searcher): New class.
1645
1646 2018-08-29  Keith Seitz  <keiths@redhat.com>
1647
1648         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1649         Change to vector of block_symbol.  Update all users.
1650         (struct collect_info) <symbols>: Likewise.
1651         (collect_info::add_symbol): Take block_symbol as argument.
1652         Update all callers.
1653         (decode_compound_collector) <m_symbols>: Change type to vector
1654         of block_symbol.  Update all users.
1655         (decode_compound_collector::operator ()): Change parameter type
1656         to block_symbol.
1657         (find_method, find_function_symbols, find_linespec_symbols)
1658         (find_label_symbols_in_block, find_label_symbols): Change symbol
1659         vectors to block_symbol vectors.
1660         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1661         block_symbol.
1662
1663 2018-08-29  Keith Seitz  <keiths@redhat.com>
1664
1665         * linespec.c (symbolp): Remove typedef and VEC definitions.
1666         (bound_minimal_symbol_d): Likewise.
1667
1668 2018-08-29  Keith Seitz  <keiths@redhat.com>
1669
1670         * linespec.c (decode_compound_collector::decode_compound_collector):
1671         Remove initialization for `m_symtabs'.
1672         (decode_compound_collector::release_symbols): Change return type
1673         to std::vector.  Update all callers.
1674         (class decode_compound_collector) <m_symbols>: Change type to
1675         std::vector.
1676         (lookup_prefix_sym): Change return type to std::vector.  Update all
1677         callers.
1678         (compare_symbols): Remove.
1679         (std_compare_symbols): Rename to `compare_symbols'.
1680         (find_method): Change `sym_classes' parameter to std::vector.
1681         Update all callers.  Use std::sort to sort sym_classes.
1682         (find_linespec_symbols): Remove cleanup.
1683
1684 2018-08-29  Keith Seitz  <keiths@redhat.com>
1685
1686         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1687         std::vector.  Update all users.
1688         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
1689         (struct collect_info) <minimal_symbols>: Likewise.
1690         (compare_msymbols): Return bool.  Change parameters to const
1691         bound_minimal_symbol references.
1692         (find_method, find_function_symbols, find_linespec_symbols): Change
1693         `minsyms' parameter to std::vector.  Update all callers.
1694
1695 2018-08-29  Keith Seitz  <keiths@redhat.com>
1696
1697         * linespec.c (struct linespec) <label_symbols>: Change type to
1698         std::vector.  Update all users.
1699         (find_label_symbols_in_block): Change `result' parameter to
1700         std::vector.  Update all callers.
1701         (find_label_symbols): Return std::vector.  Update all callers.
1702
1703 2018-08-29  Keith Seitz  <keiths@redhat.com>
1704
1705         * linespec.c (struct linespec) <function_symbols>: Change type to
1706         std::vector.  Update all users.
1707         (struct collect_info) <function_symbols>: Likewise.
1708         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
1709         (std_compare_symbols): New function.
1710         (find_method, find_function_symbols, find_linespec_symbols)
1711         (find_label_symbols_in_block): Change `symbols' parameter to
1712         std::vector.  Update all callers.
1713         (find_label_symbols): Likewise for `function_symbols' and
1714         `label_funcs_ret'.
1715
1716 2018-08-29  Keith Seitz  <keiths@redhat.com>
1717
1718         * linespec.c (symtab_vector_up): Define.
1719         (struct linespec) <file_symtabs>: Change type to std::vector *.
1720         Update all uses.
1721         (struct collect_info) <file_symtabs>: Likewise.
1722         (collect_symtabs_from_filename): Return symtab_vector_up.
1723         Update all callers.
1724         (decode_objc): Remove cleanup.
1725         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
1726         (symtab_collector::release_symtabs): Return symtab_vector_up.
1727         Update all callers.
1728         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
1729         Update all users.
1730         (collect_symtabs_from_filename, symtabs_from_filename): Return
1731         symtab_vector_up.  Update all callers.
1732
1733 2018-08-29  Tom Tromey  <tom@tromey.com>
1734
1735         * csky-tdep.c (csky_analyze_prologue): Use
1736         core_addr_to_string_nz.
1737
1738 2018-08-29  Tom Tromey  <tom@tromey.com>
1739
1740         * windows-nat.c (struct xlate_exception) <them>: Change type to
1741         DWORD.
1742         (xlate): Fix formatting.  Remove last entry.
1743         (struct xlate_exception, xlate): Comment out.
1744         (windows_nat_target::resume): Use ranged for.
1745
1746 2018-08-29  Jim Wilson  <jimw@sifive.com>
1747
1748         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
1749         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
1750         of NT_PRFPREG.
1751         (riscv_linux_nat_target::store_registers): Likewise.
1752
1753 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1754
1755         PR gdb/23555
1756         PR gdb/23558
1757         * gnulib/aclocal.m4: Regenerate.
1758         * gnulib/config.in: Regenerate.
1759         * gnulib/configure: Regenerate.
1760         * gnulib/import/Makefile.am: Update.
1761         * gnulib/import/Makefile.in: Update.
1762         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1763         * gnulib/import/_Noreturn.h: ... this.
1764         * gnulib/import/alloca.in.h: Update.
1765         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1766         * gnulib/import/arg-nonnull.h: ... this.
1767         * gnulib/import/assure.h: Update.
1768         * gnulib/import/at-func.c: Update.
1769         * gnulib/import/basename-lgpl.c: Update.
1770         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1771         * gnulib/import/c++defs.h: ... this.
1772         * gnulib/import/canonicalize-lgpl.c: Update.
1773         * gnulib/import/cdefs.h: Update.
1774         * gnulib/import/chdir-long.c: Update.
1775         * gnulib/import/chdir-long.h: Update.
1776         * gnulib/import/cloexec.c: Update.
1777         * gnulib/import/cloexec.h: Update.
1778         * gnulib/import/close.c: Update.
1779         * gnulib/import/closedir.c: Update.
1780         * gnulib/import/config.charset: Update.
1781         * gnulib/import/dirent-private.h: Update.
1782         * gnulib/import/dirent.in.h: Update.
1783         * gnulib/import/dirfd.c: Update.
1784         * gnulib/import/dirname-lgpl.c: Update.
1785         * gnulib/import/dirname.h: Update.
1786         * gnulib/import/dosname.h: Update.
1787         * gnulib/import/dup-safer-flag.c: Update.
1788         * gnulib/import/dup-safer.c: Update.
1789         * gnulib/import/dup.c: Update.
1790         * gnulib/import/dup2.c: Update.
1791         * gnulib/import/errno.in.h: Update.
1792         * gnulib/import/error.c: Update.
1793         * gnulib/import/error.h: Update.
1794         * gnulib/import/exitfail.c: Update.
1795         * gnulib/import/exitfail.h: Update.
1796         * gnulib/import/extra/update-copyright: Update.
1797         * gnulib/import/fchdir.c: Update.
1798         * gnulib/import/fcntl.c: Update.
1799         * gnulib/import/fcntl.in.h: Update.
1800         * gnulib/import/fd-hook.c: Update.
1801         * gnulib/import/fd-hook.h: Update.
1802         * gnulib/import/fd-safer-flag.c: Update.
1803         * gnulib/import/fd-safer.c: Update.
1804         * gnulib/import/fdopendir.c: Update.
1805         * gnulib/import/filename.h: Update.
1806         * gnulib/import/filenamecat-lgpl.c: Update.
1807         * gnulib/import/filenamecat.h: Update.
1808         * gnulib/import/flexmember.h: Update.
1809         * gnulib/import/float+.h: Update.
1810         * gnulib/import/float.c: Update.
1811         * gnulib/import/float.in.h: Update.
1812         * gnulib/import/fnmatch.c: Update.
1813         * gnulib/import/fnmatch.in.h: Update.
1814         * gnulib/import/fnmatch_loop.c: Update.
1815         * gnulib/import/fpucw.h: Update.
1816         * gnulib/import/frexp.c: Update.
1817         * gnulib/import/frexpl.c: Update.
1818         * gnulib/import/fstat.c: Update.
1819         * gnulib/import/fstatat.c: Update.
1820         * gnulib/import/getcwd-lgpl.c: Update.
1821         * gnulib/import/getcwd.c: Update.
1822         * gnulib/import/getdtablesize.c: Update.
1823         * gnulib/import/getlogin_r.c: Update.
1824         * gnulib/import/getprogname.c: Update.
1825         * gnulib/import/getprogname.h: Update.
1826         * gnulib/import/gettext.h: Update.
1827         * gnulib/import/gettimeofday.c: Update.
1828         * gnulib/import/glob-libc.h: Update.
1829         * gnulib/import/glob.c: Update.
1830         * gnulib/import/glob.in.h: Update.
1831         * gnulib/import/glob_internal.h: Update.
1832         * gnulib/import/glob_pattern_p.c: Update.
1833         * gnulib/import/globfree.c: Update.
1834         * gnulib/import/hard-locale.c: Update.
1835         * gnulib/import/hard-locale.h: Update.
1836         * gnulib/import/intprops.h: Update.
1837         * gnulib/import/inttypes.in.h: Update.
1838         * gnulib/import/isnan.c: Update.
1839         * gnulib/import/isnand-nolibm.h: Update.
1840         * gnulib/import/isnand.c: Update.
1841         * gnulib/import/isnanl-nolibm.h: Update.
1842         * gnulib/import/isnanl.c: Update.
1843         * gnulib/import/itold.c: Update.
1844         * gnulib/import/libc-config.h: Update.
1845         * gnulib/import/limits.in.h: Update.
1846         * gnulib/import/localcharset.c: Update.
1847         * gnulib/import/localcharset.h: Update.
1848         * gnulib/import/localtime-buffer.c: Update.
1849         * gnulib/import/localtime-buffer.h: Update.
1850         * gnulib/import/lstat.c: Update.
1851         * gnulib/import/m4/00gnulib.m4: Update.
1852         * gnulib/import/m4/__inline.m4: Update.
1853         * gnulib/import/m4/absolute-header.m4: Update.
1854         * gnulib/import/m4/alloca.m4: Update.
1855         * gnulib/import/m4/builtin-expect.m4: Update.
1856         * gnulib/import/m4/canonicalize.m4: Update.
1857         * gnulib/import/m4/chdir-long.m4: Update.
1858         * gnulib/import/m4/close.m4: Update.
1859         * gnulib/import/m4/closedir.m4: Update.
1860         * gnulib/import/m4/configmake.m4: Update.
1861         * gnulib/import/m4/d-ino.m4: Update.
1862         * gnulib/import/m4/d-type.m4: Update.
1863         * gnulib/import/m4/dirent_h.m4: Update.
1864         * gnulib/import/m4/dirfd.m4: Update.
1865         * gnulib/import/m4/dirname.m4: Update.
1866         * gnulib/import/m4/double-slash-root.m4: Update.
1867         * gnulib/import/m4/dup.m4: Update.
1868         * gnulib/import/m4/dup2.m4: Update.
1869         * gnulib/import/m4/eealloc.m4: Update.
1870         * gnulib/import/m4/environ.m4: Update.
1871         * gnulib/import/m4/errno_h.m4: Update.
1872         * gnulib/import/m4/error.m4: Update.
1873         * gnulib/import/m4/exponentd.m4: Update.
1874         * gnulib/import/m4/exponentl.m4: Update.
1875         * gnulib/import/m4/extensions.m4: Update.
1876         * gnulib/import/m4/extern-inline.m4: Update.
1877         * gnulib/import/m4/fchdir.m4: Update.
1878         * gnulib/import/m4/fcntl-o.m4: Update.
1879         * gnulib/import/m4/fcntl.m4: Update.
1880         * gnulib/import/m4/fcntl_h.m4: Update.
1881         * gnulib/import/m4/fdopendir.m4: Update.
1882         * gnulib/import/m4/filenamecat.m4: Update.
1883         * gnulib/import/m4/flexmember.m4: Update.
1884         * gnulib/import/m4/float_h.m4: Update.
1885         * gnulib/import/m4/fnmatch.m4: Update.
1886         * gnulib/import/m4/fnmatch_h.m4: Update.
1887         * gnulib/import/m4/fpieee.m4: Update.
1888         * gnulib/import/m4/frexp.m4: Update.
1889         * gnulib/import/m4/frexpl.m4: Update.
1890         * gnulib/import/m4/fstat.m4: Update.
1891         * gnulib/import/m4/fstatat.m4: Update.
1892         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1893         * gnulib/import/m4/getcwd-path-max.m4: Update.
1894         * gnulib/import/m4/getcwd.m4: Update.
1895         * gnulib/import/m4/getdtablesize.m4: Update.
1896         * gnulib/import/m4/getlogin.m4: Update.
1897         * gnulib/import/m4/getlogin_r.m4: Update.
1898         * gnulib/import/m4/getpagesize.m4: Update.
1899         * gnulib/import/m4/getprogname.m4: Update.
1900         * gnulib/import/m4/gettimeofday.m4: Update.
1901         * gnulib/import/m4/glibc21.m4: Update.
1902         * gnulib/import/m4/glob.m4: Update.
1903         * gnulib/import/m4/glob_h.m4: Update.
1904         * gnulib/import/m4/gnulib-cache.m4: Update.
1905         * gnulib/import/m4/gnulib-common.m4: Update.
1906         * gnulib/import/m4/gnulib-comp.m4: Update.
1907         * gnulib/import/m4/gnulib-tool.m4: Update.
1908         * gnulib/import/m4/hard-locale.m4: Update.
1909         * gnulib/import/m4/include_next.m4: Update.
1910         * gnulib/import/m4/inttypes-pri.m4: Update.
1911         * gnulib/import/m4/inttypes.m4: Update.
1912         * gnulib/import/m4/isnand.m4: Update.
1913         * gnulib/import/m4/isnanl.m4: Update.
1914         * gnulib/import/m4/largefile.m4: Update.
1915         * gnulib/import/m4/limits-h.m4: Update.
1916         * gnulib/import/m4/localcharset.m4: Update.
1917         * gnulib/import/m4/locale-fr.m4: Update.
1918         * gnulib/import/m4/locale-ja.m4: Update.
1919         * gnulib/import/m4/locale-zh.m4: Update.
1920         * gnulib/import/m4/localtime-buffer.m4: Update.
1921         * gnulib/import/m4/longlong.m4: Update.
1922         * gnulib/import/m4/lstat.m4: Update.
1923         * gnulib/import/m4/malloc.m4: Update.
1924         * gnulib/import/m4/malloca.m4: Update.
1925         * gnulib/import/m4/math_h.m4: Update.
1926         * gnulib/import/m4/mbrtowc.m4: Update.
1927         * gnulib/import/m4/mbsinit.m4: Update.
1928         * gnulib/import/m4/mbsrtowcs.m4: Update.
1929         * gnulib/import/m4/mbstate_t.m4: Update.
1930         * gnulib/import/m4/memchr.m4: Update.
1931         * gnulib/import/m4/memmem.m4: Update.
1932         * gnulib/import/m4/mempcpy.m4: Update.
1933         * gnulib/import/m4/memrchr.m4: Update.
1934         * gnulib/import/m4/mkdir.m4: Update.
1935         * gnulib/import/m4/mkstemp.m4: Update.
1936         * gnulib/import/m4/mmap-anon.m4: Update.
1937         * gnulib/import/m4/mode_t.m4: Update.
1938         * gnulib/import/m4/msvc-inval.m4: Update.
1939         * gnulib/import/m4/msvc-nothrow.m4: Update.
1940         * gnulib/import/m4/multiarch.m4: Update.
1941         * gnulib/import/m4/nocrash.m4: Update.
1942         * gnulib/import/m4/off_t.m4: Update.
1943         * gnulib/import/m4/onceonly.m4: Update.
1944         * gnulib/import/m4/open-cloexec.m4: Update.
1945         * gnulib/import/m4/open.m4: Update.
1946         * gnulib/import/m4/openat.m4: Update.
1947         * gnulib/import/m4/opendir.m4: Update.
1948         * gnulib/import/m4/pathmax.m4: Update.
1949         * gnulib/import/m4/rawmemchr.m4: Update.
1950         * gnulib/import/m4/readdir.m4: Update.
1951         * gnulib/import/m4/readlink.m4: Update.
1952         * gnulib/import/m4/realloc.m4: Update.
1953         * gnulib/import/m4/rename.m4: Update.
1954         * gnulib/import/m4/rewinddir.m4: Update.
1955         * gnulib/import/m4/rmdir.m4: Update.
1956         * gnulib/import/m4/save-cwd.m4: Update.
1957         * gnulib/import/m4/secure_getenv.m4: Update.
1958         * gnulib/import/m4/setenv.m4: Update.
1959         * gnulib/import/m4/signal_h.m4: Update.
1960         * gnulib/import/m4/ssize_t.m4: Update.
1961         * gnulib/import/m4/stat-time.m4: Update.
1962         * gnulib/import/m4/stat.m4: Update.
1963         * gnulib/import/m4/std-gnu11.m4: Update.
1964         * gnulib/import/m4/stdbool.m4: Update.
1965         * gnulib/import/m4/stddef_h.m4: Update.
1966         * gnulib/import/m4/stdint.m4: Update.
1967         * gnulib/import/m4/stdio_h.m4: Update.
1968         * gnulib/import/m4/stdlib_h.m4: Update.
1969         * gnulib/import/m4/strchrnul.m4: Update.
1970         * gnulib/import/m4/strdup.m4: Update.
1971         * gnulib/import/m4/strerror.m4: Update.
1972         * gnulib/import/m4/string_h.m4: Update.
1973         * gnulib/import/m4/strstr.m4: Update.
1974         * gnulib/import/m4/strtok_r.m4: Update.
1975         * gnulib/import/m4/sys_socket_h.m4: Update.
1976         * gnulib/import/m4/sys_stat_h.m4: Update.
1977         * gnulib/import/m4/sys_time_h.m4: Update.
1978         * gnulib/import/m4/sys_types_h.m4: Update.
1979         * gnulib/import/m4/tempname.m4: Update.
1980         * gnulib/import/m4/time_h.m4: Update.
1981         * gnulib/import/m4/unistd-safer.m4: Update.
1982         * gnulib/import/m4/unistd_h.m4: Update.
1983         * gnulib/import/m4/warn-on-use.m4: Update.
1984         * gnulib/import/m4/wchar_h.m4: Update.
1985         * gnulib/import/m4/wchar_t.m4: Update.
1986         * gnulib/import/m4/wctype_h.m4: Update.
1987         * gnulib/import/m4/wint_t.m4: Update.
1988         * gnulib/import/malloc.c: Update.
1989         * gnulib/import/malloc/scratch_buffer.h: Update.
1990         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1991         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1992         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1993         * gnulib/import/malloca.c: Update.
1994         * gnulib/import/malloca.h: Update.
1995         * gnulib/import/malloca.valgrind: Update.
1996         * gnulib/import/math.in.h: Update.
1997         * gnulib/import/mbrtowc.c: Update.
1998         * gnulib/import/mbsinit.c: Update.
1999         * gnulib/import/mbsrtowcs-impl.h: Update.
2000         * gnulib/import/mbsrtowcs-state.c: Update.
2001         * gnulib/import/mbsrtowcs.c: Update.
2002         * gnulib/import/memchr.c: Update.
2003         * gnulib/import/memmem.c: Update.
2004         * gnulib/import/mempcpy.c: Update.
2005         * gnulib/import/memrchr.c: Update.
2006         * gnulib/import/mkdir.c: Update.
2007         * gnulib/import/mkstemp.c: Update.
2008         * gnulib/import/msvc-inval.c: Update.
2009         * gnulib/import/msvc-inval.h: Update.
2010         * gnulib/import/msvc-nothrow.c: Update.
2011         * gnulib/import/msvc-nothrow.h: Update.
2012         * gnulib/import/open.c: Update.
2013         * gnulib/import/openat-die.c: Update.
2014         * gnulib/import/openat-priv.h: Update.
2015         * gnulib/import/openat-proc.c: Update.
2016         * gnulib/import/openat.c: Update.
2017         * gnulib/import/openat.h: Update.
2018         * gnulib/import/opendir.c: Update.
2019         * gnulib/import/pathmax.h: Update.
2020         * gnulib/import/pipe-safer.c: Update.
2021         * gnulib/import/rawmemchr.c: Update.
2022         * gnulib/import/readdir.c: Update.
2023         * gnulib/import/readlink.c: Update.
2024         * gnulib/import/realloc.c: Update.
2025         * gnulib/import/ref-add.sin: Update.
2026         * gnulib/import/ref-del.sin: Update.
2027         * gnulib/import/rename.c: Update.
2028         * gnulib/import/rewinddir.c: Update.
2029         * gnulib/import/rmdir.c: Update.
2030         * gnulib/import/same-inode.h: Update.
2031         * gnulib/import/save-cwd.c: Update.
2032         * gnulib/import/save-cwd.h: Update.
2033         * gnulib/import/scratch_buffer.h: Update.
2034         * gnulib/import/secure_getenv.c: Update.
2035         * gnulib/import/setenv.c: Update.
2036         * gnulib/import/signal.in.h: Update.
2037         * gnulib/import/stat-time.c: Update.
2038         * gnulib/import/stat-time.h: Update.
2039         * gnulib/import/stat-w32.c: Update.
2040         * gnulib/import/stat-w32.h: Update.
2041         * gnulib/import/stat.c: Update.
2042         * gnulib/import/stdbool.in.h: Update.
2043         * gnulib/import/stddef.in.h: Update.
2044         * gnulib/import/stdint.in.h: Update.
2045         * gnulib/import/stdio.in.h: Update.
2046         * gnulib/import/stdlib.in.h: Update.
2047         * gnulib/import/str-two-way.h: Update.
2048         * gnulib/import/strchrnul.c: Update.
2049         * gnulib/import/strdup.c: Update.
2050         * gnulib/import/streq.h: Update.
2051         * gnulib/import/strerror-override.c: Update.
2052         * gnulib/import/strerror-override.h: Update.
2053         * gnulib/import/strerror.c: Update.
2054         * gnulib/import/string.in.h: Update.
2055         * gnulib/import/stripslash.c: Update.
2056         * gnulib/import/strnlen1.c: Update.
2057         * gnulib/import/strnlen1.h: Update.
2058         * gnulib/import/strstr.c: Update.
2059         * gnulib/import/strtok_r.c: Update.
2060         * gnulib/import/sys_stat.in.h: Update.
2061         * gnulib/import/sys_time.in.h: Update.
2062         * gnulib/import/sys_types.in.h: Update.
2063         * gnulib/import/tempname.c: Update.
2064         * gnulib/import/tempname.h: Update.
2065         * gnulib/import/time.in.h: Update.
2066         * gnulib/import/unistd--.h: Update.
2067         * gnulib/import/unistd-safer.h: Update.
2068         * gnulib/import/unistd.in.h: Update.
2069         * gnulib/import/unsetenv.c: Update.
2070         * gnulib/import/verify.h: Update.
2071         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2072         * gnulib/import/wchar.in.h: Update.
2073         * gnulib/import/wctype.in.h: Update.
2074         * gnulib/import/xalloc-oversized.h: Update.
2075         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2076         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2077
2078 2018-08-16  Gary Benson <gbenson@redhat.com>
2079
2080         PR gdb/13000:
2081         * gdb/main.c (captured_main_1): Exit with nonzero status
2082         in batch mode if the last command to be executed failed.
2083         * NEWS: Mention the above.
2084
2085 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2086
2087         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2088         end of warning message.
2089
2090 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2091
2092         PR gdb/22943:
2093         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2094         (aarch64_extract_return_value): Use
2095         aapcs_is_vfp_call_or_return_candidate.
2096         (aarch64_return_in_memory): Likewise.
2097         (aarch64_store_return_value): Likewise.
2098
2099 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2100
2101         * aarch64-tdep.c
2102         (aapcs_is_vfp_call_or_return_candidate): Make static
2103         (pass_in_v_or_stack): Remove function.
2104         (pass_in_v_vfp_candidate): New function.
2105         (aarch64_push_dummy_call): Check for float register candidates.
2106
2107 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2108
2109         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2110         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2111         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2112
2113 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2114
2115         PR build/23399
2116         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2117         (struct ipa_sym_addresses): Rename to...
2118         (struct ipa_sym_addresses_common): ... this.
2119         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2120
2121 2018-08-28  Tom Tromey  <tom@tromey.com>
2122
2123         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2124         (token_fifo): Now a std::vector.
2125         (yylex, c_parse): Update.
2126         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2127         (token_fifo): Now a std::vector.
2128         (yylex, d_parse): Update.
2129         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2130         (token_fifo): Now a std::vector.
2131         (yylex, go_parse): Update.
2132
2133 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2134
2135         * parser-defs.h (struct type_stack) <elements>: Change type to
2136         std::vector<union type_stack_elt>.
2137         <depth, size>: Remove.
2138         * parse.c (parse_exp_in_context_1): Adjust.
2139         (type_stack_reserve): Remove.
2140         (check_type_stack_depth): Remove.
2141         (insert_into_type_stack): Adjust to std::vector.
2142         (insert_type): Likewise.
2143         (push_type): Likewise.
2144         (push_type_int): Likewise.
2145         (insert_type_address_space): Likewise.
2146         (pop_type): Likewise.
2147         (pop_type_int): Likewise.
2148         (pop_typelist): Likewise.
2149         (pop_type_stack): Likewise.
2150         (append_type_stack): Likewise.
2151         (push_type_stack): Likewise.
2152         (get_type_stack): Likewise.
2153         (type_stack_cleanup): Likewise.
2154         (push_typelist): Likewise.
2155         (follow_types): Likewise.
2156         (_initialize_parse): Likewise.
2157
2158 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2159
2160         * NEWS: Mention csky target.
2161
2162 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2163             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2164             Don Breazeal  <donb@codesourcery.com>
2165
2166         * csky-linux-tdep.c: New file.
2167         * csky-tdep.c: Likewise.
2168         * csky-tdep.h: Likewise.
2169         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2170         csky-tdep.o.
2171         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2172         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2173         * configure.tgt: Add csky support.
2174
2175 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2176
2177         * python/py-framefilter.c (py_print_frame): Print frame architecture
2178         when printing on an MI output.
2179
2180 2018-08-27  Tom Tromey  <tom@tromey.com>
2181
2182         PR build/23087:
2183         * configure: Rebuild.
2184         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2185
2186 2018-08-27  Tom Tromey  <tom@tromey.com>
2187
2188         * aarch64-linux-tdep.c
2189         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2190         casts to int.
2191
2192 2018-08-27  Tom Tromey  <tom@tromey.com>
2193
2194         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2195         unsigned.
2196         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2197         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2198         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2199         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2200         unsigned.
2201
2202 2018-08-27  Tom Tromey  <tom@tromey.com>
2203
2204         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2205         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2206
2207 2018-08-27  Tom Tromey  <tom@tromey.com>
2208
2209         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2210         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2211         ULONGEST_MAX.
2212         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2213         ULONGEST_MAX.
2214         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2215         ULONGEST_MAX.
2216         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2217         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2218         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2219         ULONGEST_MAX.
2220         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2221         (ppc64_linux_sigaction_tramp_frame)
2222         (ppc32_linux_sighandler_tramp_frame)
2223         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2224         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2225         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2226         * mn10300-linux-tdep.c (am33_linux_sigframe)
2227         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2228         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2229         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2230         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2231         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2232         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2233         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2234         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2235         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2236         * microblaze-linux-tdep.c
2237         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2238         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2239         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2240         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2241         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2242         * common/common-types.h (ULONGEST_MAX): New define.
2243         (CORE_ADDR_MAX): Fix formatting.
2244         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2245         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2246         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2247         (arm_linux_rt_sigreturn_tramp_frame)
2248         (arm_eabi_linux_sigreturn_tramp_frame)
2249         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2250         (thumb2_eabi_linux_sigreturn_tramp_frame)
2251         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2252         (arm_linux_restart_syscall_tramp_frame)
2253         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2254         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2255         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2256         ULONGEST_MAX.
2257         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2258
2259 2018-08-27  Tom Tromey  <tom@tromey.com>
2260
2261         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2262         CORE_ADDR_MAX.
2263         * mips-tdep.c (mips_deal_with_atomic_sequence)
2264         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2265         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2266         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2267         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2268         CORE_ADDR_MAX.
2269         * aarch64-tdep.c (aarch64_software_single_step): Use
2270         CORE_ADDR_MAX.
2271
2272 2018-08-27  Tom Tromey  <tom@tromey.com>
2273
2274         * linespec.c (complete_linespec_component): Add cast to "char".
2275         * completer.c (completion_tracker::build_completion_result): Add
2276         cast to "char".
2277
2278 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2279
2280         * solist.h (struct solist, struct target_so_ops): Fix
2281         indentation.
2282
2283 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2284
2285         * ada-tasks.c (ada_task_info_s): Remove typedef.
2286         (DEF_VEC_O(ada_task_info_s)): Remove.
2287         (struct ada_tasks_inferior_data): Initialize fields.
2288         <task_list>: Make an std::vector.
2289         (get_ada_tasks_inferior_data): Allocate with new.
2290         (ada_get_task_number): Adjust.
2291         (get_task_number_from_id): Likewise.
2292         (valid_task_id): Likewise.
2293         (ada_get_task_info_from_ptid): Likewise.
2294         (iterate_over_live_ada_tasks): Likewise.
2295         (add_ada_task): Likewise.
2296         (read_known_tasks): Likewise.
2297         (ada_build_task_list): Likewise.
2298         (print_ada_task_info): Likewise.
2299         (info_task): Likewise.
2300         (task_command_1): Likewise.
2301
2302 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2303
2304         * ada-lang.c (add_angle_brackets): Return std::string.
2305
2306 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2307
2308         * python/py-threadevent.c (py_get_event_thread): Initialize
2309         pythread.
2310
2311 2018-08-24  Pedro Alves  <palves@redhat.com>
2312
2313         * python/py-bpevent.c (create_breakpoint_event_object): Use
2314         copy-initialization.
2315         * python/py-continueevent.c (emit_continue_event): Use
2316         copy-initialization.
2317         * python/py-exitedevent.c (create_exited_event_object): Return a
2318         gdbpy_ref<>.
2319         (emit_exited_event): Use copy-initialization.
2320         * python/py-inferior.c (python_new_inferior)
2321         (python_inferior_deleted, add_thread_object): Use
2322         copy-initialization.
2323         * python/py-infevents.c (create_inferior_call_event_object)
2324         (create_register_changed_event_object)
2325         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2326         (emit_inferior_call_event, emit_memory_changed_event)
2327         (emit_register_changed_event): Use copy-initialization.
2328         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2329         Return a gdbpy_ref<>.
2330         (emit_new_objfile_event): Use copy-initialization.
2331         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2332         (emit_clear_objfiles_event): Use copy-initialization.
2333         * python/py-signalevent.c (create_signal_event_object): Use
2334         copy-initialization.
2335         * python/py-threadevent.c (create_thread_event_object): Use
2336         copy-initialization.
2337
2338 2018-08-24  Pedro Alves  <palves@redhat.com>
2339             Simon Marchi  <simon.marchi@ericsson.com>
2340
2341         PR gdb/23379
2342         * python/py-continueevent.c: Include "gdbthread.h".
2343         (create_continue_event_object): Add intro comment.  Add 'ptid'
2344         parameter.  Use it to find thread to pass to
2345         create_thread_event_object.
2346         (emit_continue_event): Pass PTID down to
2347         create_continue_event_object.
2348         * python/py-event.h (py_get_event_thread): Declare.
2349         (create_thread_event_object): Remove default from 'thread'
2350         parameter.
2351         * python/py-stopevent.c (create_stop_event_object): Use
2352         py_get_event_thread.
2353         * python/py-threadevent.c (get_event_thread): Rename to ...
2354         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2355         and use it to find the thread.
2356         (create_thread_event_object): Assert that THREAD isn't null.
2357         Don't find the event thread here.
2358
2359 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2360
2361         * block.h (blockrange, blockranges): New struct declarations.
2362         (struct block): Add new field named `ranges'.
2363         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2364         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2365         macros for accessing ranges in struct block.
2366         (make_blockranges): New declaration.
2367         block.c (make_blockranges): New function.
2368         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2369         for block.
2370         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2371         * blockframe.c (cache_pc_function_block): New static global.
2372         (clear_pc_function_cache): Clear cache_pc_function_block.
2373         (find_pc_partial_function): Move comment to symtab.h.  Add
2374         support for non-contiguous blocks.
2375         * cli/cli-cmds.c (block.h): Include.
2376         (print_disassembly): Handle printing of non-contiguous blocks.
2377         (disassemble_current_function): Likewise.
2378         (disassemble_command): Likewise.
2379
2380         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2381         BLOCK_START.
2382         * blockframe.c (get_pc_function_start): Likewise.
2383         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2384         (gcc_symbol_address): Likewise.
2385         * compile/compile-object-run.c (compile_object_run): Likewise.
2386         * compile/compile.c (get_expr_block_and_pc): Likewise.
2387         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2388         (func_addr_to_tail_call_list): Likewise.
2389         * findvar.c (default_read_var_value): Likewise.
2390         * inline-frame.c (inline_frame_this_id): Likewise.
2391         (skip-inline_frames): Likewise.
2392         * infcmd.c (until_next_command): Likewise.
2393         * linespec.c (convert_linespec_to_sals): Likewise.
2394         * parse.c (parse_exp_in_context_1): Likewise.
2395         * printcmd.c (build_address_symbolic): likewise.
2396         (info_address_command): Likewise.
2397         symtab.c (find_function_start_sal): Likewise.
2398         (skip_prologue_sal): Likewise.
2399         (find_function_alias_target): Likewise.
2400         (find_gnu_ifunc): Likewise.
2401         * stack.c (find_frame_funname): Likewise.
2402         * symtab.c (fixup_symbol_section): Likewise.
2403         (find_function_start_sal): Likewise.
2404         (skip_prologue_sal): Likewsie.
2405         (find_function_alias_target): Likewise.
2406         (find_gnu_ifunc): Likewise.
2407         * tracepoint.c (info_scope_command): Likewise.
2408         * value.c (value_fn_field): Likewise.
2409
2410         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2411         in place of find_pc_partial_function.
2412         * blockframe.c (find_function_entry_range_from_pc): New function.
2413         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2414         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2415         for each range in a block.
2416
2417
2418 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2419
2420         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2421         incrementation.
2422
2423 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2424
2425         * solib-svr4.c (read_program_headers_from_bfd): Return
2426         gdb::optional<gdb::byte_vector>.
2427         (svr4_exec_displacement): Adjust.
2428
2429 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2430
2431         * solib-svr4.c (read_program_header): Return
2432         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2433         (find_program_interpreter): Return
2434         gdb::optional<gdb::byte_vector>.
2435         (scan_dyntag_auxv): Adjust.
2436         (enable_break): Adjust.
2437         (svr4_exec_displacement): Adjust.
2438
2439 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2440
2441         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2442         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2443
2444 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2445
2446         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2447         string_vprintf.
2448         * guile/scm-utils.c (gdbscm_printf): Likewise.
2449         * serial.c (serial_printf): Likewise.
2450         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2451
2452 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2453
2454         * stack.c (print_frame): Print frame architecture when printing on
2455         an MI output.
2456         * NEWS: Mention new "arch" attribute in frame output.
2457
2458 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2459
2460         * arch/aarch64.h (aarch64_regnum): Update comment.
2461
2462 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2463
2464         * NEWS: Add SVE to 8.2 section.
2465
2466 2018-08-21  Pedro Alves  <palves@redhat.com>
2467
2468         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2469         out from gdbscm_parse_function_args.
2470         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2471         gdbscm_parse_function_args_1.
2472
2473 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2474
2475         PR gdb/17816
2476         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2477         operator.
2478
2479 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2480
2481         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2482
2483 2018-08-19  Michael Spang  <spang@google.com>
2484
2485         PR gdb/11786
2486         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2487         for PT_TLS segments.
2488
2489 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2490
2491         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2492         dwarf_variable_value.
2493         * dwarf2-frame.c (class dwarf_expr_executor):
2494         Add override for dwarf_variable_value.
2495         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2496         (class symbol_needs_eval_context): Likewise.
2497         (indirect_synthetic_pointer): Add forward declaration.
2498         (sect_variable_value): New function.
2499         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2500         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2501         for DW_OP_GNU_variable_value.
2502
2503 2018-08-16  Tom Tromey  <tom@tromey.com>
2504
2505         * top.c (read_command_file): Update.
2506         (command_line_input): Remove "repeat" argument.
2507         * ada-lang.c (get_selections): Update.
2508         * linespec.c (decode_line_2): Update.
2509         * defs.h (command_line_input): Remove argument.
2510         * cli/cli-script.c (read_next_line): Update.
2511         * python/py-gdb-readline.c: Update.
2512
2513 2018-08-17  Tom Tromey  <tom@tromey.com>
2514
2515         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2516         command_line_input.
2517
2518 2018-08-15  Tom Tromey  <tom@tromey.com>
2519
2520         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2521
2522 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2523
2524         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2525         If used, use find_pc_partial_function to find address range
2526         to disassemble.
2527         * mi/mi-main.c (mi_cmd_list_features): Report
2528         "data-disassemble-a-option" feature.
2529         * NEWS: Mention new -data-disassemble option -a.
2530
2531 2018-08-13  Tom Tromey  <tom@tromey.com>
2532
2533         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2534
2535 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2536
2537         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2538         (aarch64_linux_collect_sve_regset): Likewise.
2539         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2540         * regcache.h (regcache_map_entry_size): New function.
2541
2542 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2543
2544         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2545         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2546         (SVE_HEADER_VL_LENGTH): Likewise.
2547         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2548         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2549         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2550         (SVE_HEADER_SIZE_OFFSET): Likewise.
2551         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2552         (SVE_HEADER_VL_OFFSET): Likewise.
2553         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2554         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2555         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2556         (SVE_HEADER_SIZE): Likewise.
2557         (aarch64_linux_core_read_vq): Add function.
2558         (aarch64_linux_core_read_description): Check for SVE section.
2559
2560 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2561
2562         * aarch64-fbsd-tdep.c
2563         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2564         collect_size.
2565         * aarch64-linux-tdep.c
2566         (aarch64_linux_iterate_over_regset_sections): Likewise.
2567         * alpha-linux-tdep.c
2568         (alpha_linux_iterate_over_regset_sections):
2569         * alpha-nbsd-tdep.c
2570         (alphanbsd_iterate_over_regset_sections): Likewise.
2571         * amd64-fbsd-tdep.c
2572         (amd64fbsd_iterate_over_regset_sections): Likewise.
2573         * amd64-linux-tdep.c
2574         (amd64_linux_iterate_over_regset_sections): Likewise.
2575         * arm-bsd-tdep.c
2576         (armbsd_iterate_over_regset_sections): Likewise.
2577         * arm-fbsd-tdep.c
2578         (arm_fbsd_iterate_over_regset_sections): Likewise.
2579         * arm-linux-tdep.c
2580         (arm_linux_iterate_over_regset_sections): Likewise.
2581         * corelow.c (get_core_registers_cb): Likewise.
2582         (core_target::fetch_registers): Likewise.
2583         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2584         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2585         * gdbarch.h (void): Regenerate.
2586         * gdbarch.sh: Add supply_size and collect_size.
2587         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2588         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2589         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2590         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2591         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2592         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2593         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2594         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2595         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2596         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2597         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2598         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2599         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2600         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2601         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2602         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2603         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2604         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2605         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2606         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2607         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2608         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2609         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2610         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2611         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2612         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2613         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2614         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2615         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2616         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2617
2618 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2619
2620         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2621         with string_printf.
2622
2623 2018-08-10  Keith Seitz  <keiths@redhat.com>
2624
2625         * compile/compile-c-support.c (add_code_header, add_code_footer):
2626         Move into policy class.
2627         (c_push_user_expression, pop_user_expression_nop)
2628         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2629         (compile_program): New host class.
2630         (c_compile_program): New typedef.
2631         (c_compute_porgram): Use c_compile_program.
2632
2633 2018-08-10  Keith Seitz  <keiths@redhat.com>
2634
2635         * compile/compile-internal.h (compile_instance::~compile_instance):
2636         Remove calls to htab_delete.
2637         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2638         * compile.c (compile_instance::compile_instance): Initialize
2639         htab unique pointers.
2640         (compile_instance::get_cached_type, compile_instance::insert_type)
2641         (compile_instance::error_symbol_once): Update for unique_ptr.
2642
2643 2018-08-10  Keith Seitz  <keiths@redhat.com>
2644
2645         * compile/compile-c-symbols.c (struct symbol_error)
2646         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2647         (compile_instance::insert_symbol_error)
2648         (compile_instance::error_symbol_once): Move to ...
2649         * compile/compile.c: ... here.
2650
2651 2018-08-10  Keith Seitz  <keiths@redhat.com>
2652
2653         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2654         instead of `new_compile_instance'.
2655         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2656         Update description.
2657         If the symbol error map is not initialized, create it.
2658         (generate_c_for_for_one_symbol): Do not check/initialize
2659         the symbol error map.
2660         * compile/compile-c-types.c (compile_c_instance): Make a class.
2661         Update all callers.
2662         (compile_instance::compile_instance): Initialize the type cache.
2663         (get_cached_type): New function.
2664         (insert_type): Update description.
2665         (compile_c_instance::m_default_cflags): Define.
2666         (convert_type): Update description.  Use get_cached_type.
2667         (delete_instance): Moved to destructor.
2668         (new_compile_instance): Moved to constructor.
2669         * compile/compile-c.h (compile_c_instance): Make class inheriting
2670         from compile_instance.
2671         <base>: Remove field.
2672         <type_map, symbol_err_map>: Move to base class.
2673         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2674         * compile/compile-internal.h (compile_instance): Make class.
2675         <type_map_t, symbol_err_map_t>: Define.
2676         <fe>: Rename to `m_gcc_fe'.
2677         <scope, block, gcc_target_options>: Add `m_' prefix.
2678         <m_type_map, m_symbol_err_map>: New fields, moved from
2679         compile_c_instance.
2680         <destroy>: Remove.
2681         (convert_type, new_compile_instance): Remove.
2682         * compile/compile.c (cleanup_compile_instance): Remove.
2683         (compile_to_object): Use unique_ptr to eliminate cleanups.
2684         (compile_instance::set_print_callback, compile_instance::version)
2685         (compile_instance::set_verbose)
2686         (compile_instance::set_driver_filename)
2687         (compile_instance::set_triplet_regexp)
2688         (compile_instance::set_arguments)
2689         (compile_instance::set_source_file)
2690         (compile_instance::compile): Define.
2691
2692 2018-08-10  Keith Seitz  <keiths@redhat.com>
2693
2694         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
2695         * compile/compile-c-types.c: Define GCC_METHODN macros and include
2696         gcc-c-fe.def to define C plugin.
2697         (delete_instance): Delete `c_plugin'.
2698         (new_compile_instance): Initialize `c_plugin'.
2699         * compile/compile-c.h: Include gcc_c_plugin.h.
2700         (struct compile_c_instance) <c_plugin>: New member.
2701         * gcc-c-plugin.h: New file.
2702         Update all callers with API change.
2703
2704 2018-08-10  Keith Seitz  <keiths@redhat.com>
2705
2706         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
2707         (HFILES_NO_SRCDIR): ... to here.
2708         Add compile-internal.h and compile-c.h.
2709         * compile/compile-c-support.c: Include compile-c.h.
2710         * compile/compile-c-symbols.c: Include compile-c.h.
2711         (generate_c_for_variable_locations): Update comment.
2712         * compile/compile-c-types.c: Include compile-c.h.
2713         * compile/compile-c.h: New file -- moved C language declarations
2714         from other files here.
2715         * compile/compile-internal.h: Do not include hashtab.h or
2716         common/enum-flags.h.
2717         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
2718         (gcc_convert_symbol, gcc_symbol_address)
2719         (generate_c_for_variable_locations, c_get_mode_for_size)
2720         (c_get_range_decl_name): Definitions moved to compile-c.h.
2721         * compile/compile-loc2c.c: Include compile-c.h.
2722
2723 2018-08-10  Keith Seitz  <keiths@redhat.com>
2724
2725         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
2726         (c_symbol_substitution_name): ... this.
2727         Update all callers.
2728
2729 2018-08-10  Keith Seitz  <keiths@redhat.com>
2730
2731         * compile/compile-c-support.c (c_compute_program): Use
2732         unique_xmalloc_ptr to eliminate cleanup.
2733         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
2734         Return a unique_xmalloc_ptr and eliminate cleanup.
2735         * compile/compile-internal.h (generate_c_for_variable_locations):
2736         Return unique_xmalloc_ptr and update description.
2737
2738 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
2739
2740         * corelow.c (core_target::get_core_register_section): Rename
2741         min_size to section_min_size.
2742
2743 2018-08-09  Jim Wilson  <jimw@sifive.com>
2744
2745         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
2746         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
2747         * NEWS: Mention new GNU/Linux RISC-V target.
2748         * configure.host: Add riscv*-*-linux*.
2749         * configure.nat: Add riscv*.
2750         * configure.tgt: Add riscv*-*-linux*.
2751         * riscv-linux-nat.c: New file.
2752         * riscv-linux-tdep.c: New file.
2753
2754 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2755
2756         * infrun.c (resume): Make static, add forward declaration.
2757         (proceed): Update header comment.
2758         * infrun.h (resume): Delete declaration.
2759
2760 2018-08-09  Tom Tromey  <tom@tromey.com>
2761
2762         * riscv-tdep.h: Minor formatting fixes.
2763
2764 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
2765
2766         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
2767         * dwarf-index-cache.c (create_dir_and_check): Likewise.
2768         (test_mkdir_recursive): Likewise.
2769         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
2770
2771 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2772
2773         * valarith.c (value_subscripted_rvalue): If an array is not in
2774         memory, and we don't know the upper bound, then we can't know that
2775         the requested element exists or not.
2776
2777 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
2778
2779         * target.c (str_comma_list_concat_elem): Fix typo in comment.
2780         (target_options_to_string): Add comment.
2781
2782 2018-08-08  Tom Tromey  <tom@tromey.com>
2783
2784         * unittests/scoped_mmap-selftests.c: Check result of "write".
2785
2786 2018-08-08  Jim Wilson  <jimw@sifive.com>
2787
2788         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
2789         (decode_register_index_short): New.
2790         (decode_j_type_insn, decode_cj_type_insn): New.
2791         (decode_b_type_insn, decode_cb_type_insn): New.
2792         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2793         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2794         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2795         is_c_sw_insn instead of is_sw_insn.
2796         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2797         (riscv_software_single_step): New.
2798         * riscv-tdep.h (riscv_software_single_step): Declare.
2799
2800         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2801         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2802
2803 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2804
2805         PR gdb/18050:
2806         * target.c (dispose_inferior): Don't dispose of inferiors that are
2807         already killed.
2808
2809 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2810
2811         * remote.c (remote_target::download_tracepoint): Change char* to
2812         const char*.
2813
2814 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2815
2816         * target.h (target_options_to_string): Return an std::string.
2817         * target.c (str_comma_list_concat_elem): Return void, use
2818         std::string.
2819         (do_option): Likewise.
2820         (target_options_to_string): Return an std::string.
2821         * linux-nat.c (linux_nat_target::wait): Adjust.
2822         * target-debug.h (target_debug_print_options): Adjust.
2823
2824 2018-08-07  Tom Tromey  <tom@tromey.com>
2825
2826         * Makefile.in (CPPFLAGS): New variable.
2827         (INTERNAL_CPPFLAGS): Use it.
2828
2829 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2830
2831         * NEWS: Mention the index cache.
2832
2833 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2834
2835         * common/pathstuff.h (get_standard_cache_dir): New.
2836         * common/pathstuff.c (get_standard_cache_dir): New.
2837         * build-id.h (build_id_to_string): New.
2838         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2839         DEBUG_STR_SUFFIX): Move to here.
2840         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2841         DEBUG_STR_SUFFIX): Move from there.
2842         (write_psymtabs_to_index): Make non-static, add basename
2843         parameter.  Write to temporary files, rename when done.
2844         (save_gdb_index_command): Adjust call to
2845         write_psymtabs_to_index.
2846         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2847         field.
2848         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2849         (get_gdb_index_contents_from_cache): New.
2850         (get_gdb_index_contents_from_cache_dwz): New.
2851         (dwarf2_initialize_objfile): Read index from cache.
2852         (dwarf2_build_psymtabs): Save to index.
2853         * dwarf-index-cache.h: New file.
2854         * dwarf-index-cache.c: New file.
2855         * dwarf-index-write.h: New file.
2856
2857 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2858
2859         * gnulib/aclocal.m4: Re-generate.
2860         * gnulib/config.in: Re-generate.
2861         * gnulib/configure: Re-generate.
2862         * gnulib/import/Makefile.am: Re-generate.
2863         * gnulib/import/Makefile.in: Re-generate.
2864         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2865         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2866         * gnulib/import/m4/mkdir.m4: New file.
2867         * gnulib/import/mkdir.c: New file.
2868         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2869         module.
2870
2871 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2872
2873         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2874         * common/scoped_mmap.c: New file.
2875         * common/scoped_mmap.h (destroy): New method.
2876         (~scoped_mmap, reset): Use destroy.
2877         (scoped_mmap): New move constructor.
2878         (mmap_file): New declaration.
2879         * unittests/scoped_mmap-selftests.c (test_normal,
2880         test_invalid_filename, run_tests): New functions.
2881         (_initialize_scoped_mmap_selftests): Register selftest.
2882
2883 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2884
2885         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2886         (read_gdb_index_from_buffer): ... this.  Remove section
2887         parameter, add buffer parameter.
2888         (get_gdb_index_contents_ftype,
2889         get_gdb_index_contents_dwz_ftype): New typedefs.
2890         (dwarf2_read_gdb_index): Add callback parameters to get the
2891         index contents.
2892         (get_gdb_index_contents_from_section): New.
2893         (dwarf2_initialize_objfile): Update call to
2894         dwarf2_read_gdb_index.
2895
2896 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2897
2898         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2899         (gdb_open_cloexec): Likewise.
2900         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2901         (commandline_from_pid): Likewise.
2902         (linux_xfer_osdata_threads): Likewise.
2903         (linux_xfer_osdata_fds): Likewise.
2904         * ada-lang.c (is_package_name): Likewise.
2905         * auxv.c (procfs_xfer_auxv): Likewise.
2906         * breakpoint.c (print_one_breakpoint_location): Use
2907         uiout::field_fmt.
2908         (print_one_catch_solib): Use string_printf.
2909         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2910         (add_pe_forwarded_sym): Likewise.
2911         * dwarf2read.c (create_type_unit_group): Likewise.
2912         (build_error_marker_type): Likewise.
2913         * infcall.c (get_function_name): Likewise.
2914         * valprint.c (print_converted_chars_to_obstack): Likewise.
2915         * xtensa-tdep.c (xtensa_register_type): Likewise.
2916
2917 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2918
2919         * remote.c (remote_target::download_tracepoint): Fix format
2920         string errors.
2921
2922 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2923
2924         * tracefile.c: Include common/byte-vector.h.
2925         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2926         with trace_regblock_size if needed.  Update uses of buf.
2927
2928 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2929
2930         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2931         std::vector<unsigned char>.
2932         * tracepoint.c (collection_list::collection_list): Remove
2933         m_regs_mask initializer from initializer list.  Resize
2934         m_regs_mask using the largest remote register number.
2935         (collection_list::add_remote_register): Remove size check on
2936         m_regs_mask.  Use at to access element.
2937         (collection_list::stringify): Change type of temp_buf to
2938         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2939         stringify the register mask.  Use pack_hex_byte for the register
2940         mask.
2941
2942 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2943
2944         * tracepoint.h (class collection_list) <add_register>: Remove.
2945         <add_remote_register, add_ax_registers, add_local_register>:
2946         Declare.
2947         <add_memrange>: Add scope parameter.
2948         * tracepoint.c (encode_actions_1): Likewise.
2949         (collection_list::add_register): Rename to ...
2950         (collection_list::add_remote_register): ... this.  Update
2951         comment.
2952         (collection_list::add_ax_registers, add_local_register): New
2953         methods.
2954         (collection_list::add_memrange): Add scope parameter.  Call
2955         add_local_register instead of add_register.
2956         (finalize_tracepoint_aexpr): New function.
2957         (collection_list::collect_symbol): Update calls to add_memrange.
2958         Call add_local_register instead of add_register.  Call
2959         add_ax_registers.  Call finalize_tracepoint_aexpr.
2960         (encode_actions_1): Get remote regnos for $reg action.  Call
2961         add_remote_register, add_ax_registers, and add_local_register.
2962         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2963         (validate_actionline): Call finalize_tracepoint_aexpr.
2964
2965 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2966
2967         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2968         Replace array buf with gdb::char_vector buf, of size
2969         get_remote_packet_size ().  Replace references to buf and
2970         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2971         and xsnprintf with snprintf.  Raise errors if the buffer is too
2972         small.
2973
2974 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2975
2976         * remote.c (remote_target::download_tracepoint): Fix the has_more
2977         predicate in the QTDP action list iteration.
2978
2979 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2980
2981         * remote.c (remote_target::download_tracepoint): Fix indentation
2982         in for block.
2983
2984 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2985
2986         * proc-api.c (_initialize_proc_api): Remove c, unused.
2987         * procfs.c (procfs_init_inferior): Remove signals, unused.
2988         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2989         unused.
2990
2991 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2992             Andrew Burgess  <andrew.burgess@embecosm.com>
2993
2994         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2995         'W_STOPCODE (0)' as this could be ambiguous.
2996
2997 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2998
2999         * ser-tcp.c (net_open): Fix thinko when deciding whether to
3000         disable TCP's Nagle algorithm (use "ai_protocol" instead of
3001         "ai_socktype").
3002
3003 2018-08-02  Tom Tromey  <tom@tromey.com>
3004
3005         PR symtab/16842.
3006         * dwarf2read.c (read_func_scope): Set symtab on template parameter
3007         symbols.
3008         (process_structure_scope): Likewise.
3009
3010 2018-08-02  Xavier Roirand  <roirand@adacore.com>
3011
3012         PR gdb/22629:
3013         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3014         kill inferior.
3015
3016 2018-08-02  Tom Tromey  <tom@tromey.com>
3017
3018         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3019         (darwin_suspend_inferior, darwin_resume_inferior)
3020         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3021         (darwin_check_new_threads): Check result of get_darwin_inferior.
3022
3023 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3024
3025         GDB 8.1.1 released.
3026
3027 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3028
3029         * varobj.c (varobj_get_path_expr_parent): Report an error if
3030         parent is a dynamic varobj.
3031
3032 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3033
3034         * gnulib/aclocal.m4: Re-generate.
3035         * gnulib/config.in: Re-generate.
3036         * gnulib/configure: Re-generate.
3037         * gnulib/import/Makefile.in: Re-generate.
3038         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3039         * gnulib/import/m4/onceonly.m4: Re-generate.
3040
3041 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3042
3043         * target-descriptions.c (struct xml_test_tdesc): New.
3044         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3045         (record_xml_tdesc): Update.
3046         (maintenance_check_xml_descriptions): Update.
3047         * target-descriptions.h (record_xml_tdesc): Update comment.
3048
3049 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3050
3051         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3052         checking array bounds are defined.
3053
3054 2018-07-30  Tom Tromey  <tom@tromey.com>
3055
3056         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3057         irreflexivity violation.
3058
3059 2018-07-30  Tom Tromey  <tom@tromey.com>
3060
3061         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3062         * value.c (unpack_long): Remove lint code.
3063         * valops.c (value_ind): Remove lint code.
3064         * valarith.c (value_x_binop, value_x_unop, value_equal)
3065         (value_pos): Remove lint code.
3066
3067 2018-07-28  Tom de Vries  <tdevries@suse.de>
3068
3069         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3070         with undefined upper bound as <optimized out>.
3071
3072 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3073
3074         * gcore.in: Rename variable "name" to "prefix".  Expand
3075         "usage" text.
3076
3077 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3078
3079         * windows-nat.c (windows_nat_target::create_inferior): Update to
3080         call close() in global namespace.
3081
3082 2018-07-26  Tom Tromey  <tom@tromey.com>
3083
3084         * dwarf-index-write.c (add_address_entry): Don't add objfile
3085         offsets.
3086         * dbxread.c (find_stab_function): Rename from
3087         find_stab_function_addr.  Return a bound_minimal_symbol.
3088         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3089         Don't add objfile offsets.
3090         (end_psymtab): Use raw_text_low, raw_text_high,
3091         MSYMBOL_VALUE_RAW_ADDRESS.
3092         (read_ofile_symtab): Update.
3093         (process_one_symbol): Update.
3094         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3095         offsets.
3096         (dw2_relocate): Remove.
3097         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3098         searching addrmap.
3099         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3100         Update.
3101         (process_psymtab_comp_unit_reader, add_partial_symbol)
3102         (add_partial_subprogram, dwarf2_ranges_read): Update.
3103         (load_partial_dies): Update.
3104         (add_address_entry): Don't add objfile offsets.
3105         (dwarf2_build_include_psymtabs): Update.
3106         (create_addrmap_from_aranges): Don't add objfile offsets.
3107         (dw2_find_pc_sect_compunit_symtab): Update.
3108         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3109         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3110         Update.
3111         (parse_partial_symbols): Don't add objfile offsets.  Use
3112         raw_text_low, raw_text_high.  Update.
3113         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3114         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3115         or call 'relocate' quick function.  Clear psymbol_map.
3116         * psympriv.h (struct partial_symbol) <address>: Add section
3117         offset.
3118         <set_unrelocated_address>: Rename from set_address.
3119         <raw_text_low, raw_text_high>: New methods.
3120         <text_low, text_high>: Add objfile parameter.
3121         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3122         set_unrelocated_address.
3123         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3124         (find_pc_psymbol): Update.
3125         (fixup_psymbol_section, relocate_psymtabs): Remove.
3126         (dump_psymtab, psym_functions): Update.
3127         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3128         parameter.
3129         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3130         (start_psymtab_common): Update.
3131         * symfile-debug.c (debug_qf_relocate): Remove.
3132         (debug_sym_quick_functions): Update.
3133         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3134         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3135         Update.
3136
3137 2018-07-26  Tom Tromey  <tromey@redhat.com>
3138
3139         * dbxread.c (end_psymtab): Use text_high_valid and
3140         text_low_valid.
3141         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3142         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3143         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3144         Update comment.
3145         <text_low_valid, text_high_valid>: New fields.
3146         <set_text_low, set_text_high>: Update.
3147         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3148
3149 2018-07-26  Tom Tromey  <tom@tromey.com>
3150
3151         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3152         Update.
3153         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3154         textlow and texthigh fields.
3155         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3156         Update.
3157         * mdebugread.c (parse_lines, parse_partial_symbols)
3158         (psymtab_to_symtab_1): Update.
3159         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3160         Rename fields.  Update comment.  Now private.
3161         <text_low, text_high, set_text_low, set_text_high>: New methods.
3162         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3163         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3164         (start_psymtab_common, maintenance_info_psymtabs)
3165         (maintenance_check_psymtabs): Update.
3166         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3167         texthigh fields.
3168         (scan_xcoff_symtab): Update.
3169
3170 2018-07-26  Tom Tromey  <tromey@redhat.com>
3171
3172         * psympriv.h (struct partial_symbol) <unrelocated_address,
3173         address, set_address>: New methods.
3174         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3175         (fixup_psymbol_section, relocate_psymtabs): Update.
3176         (print_partial_symbols): Add 'objfile' parameter.  Update.
3177         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3178         Update.
3179
3180 2018-07-26  Tom Tromey  <tom@tromey.com>
3181
3182         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3183         (debug_names::write_psymbols): Update.
3184         * psympriv.h (struct partial_symbol): Derive from
3185         general_symbol_info.
3186         <obj_section>: New method.
3187         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3188         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3189         (find_pc_sect_psymbol, fixup_psymbol_section)
3190         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3191         (print_partial_symbols, recursively_search_psymtabs)
3192         (compare_psymbols, psymbol_hash, psymbol_compare)
3193         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3194         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3195
3196 2018-07-26  Tom Tromey  <tromey@redhat.com>
3197
3198         * dbxread.c (end_psymtab): Remove dead code.
3199
3200 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3201
3202         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3203         DWARF unwinders are disabled.
3204         * dwarf2-frame.c: Add dwarf2read.h include.
3205         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3206         disabled.
3207         (dwarf2_frame_unwinders_enabled_p): Define.
3208         (show_dwarf_unwinders_enabled_p): New function.
3209         (_initialize_dwarf2_frame): Register switch to control DWARF
3210         unwinder use.
3211         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3212         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3213         (show_dwarf_cmdlist): Remove static keyword.
3214         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3215         (show_dwarf_cmdlist): Declare.
3216         * NEWS: Document new feature.
3217
3218 2018-07-26  Tom de Vries  <tdevries@suse.de>
3219
3220         PR breakpoints/23366
3221         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3222
3223 2018-07-26  Tom de Vries  <tdevries@suse.de>
3224
3225         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3226         DW_AT_count can't be translated to a dynamic prop.
3227
3228 2018-07-25  Tom de Vries  <tdevries@suse.de>
3229
3230         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3231         try/catch.
3232
3233 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3234
3235         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3236
3237 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3238
3239         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3240
3241 2018-07-24  Keith Seitz  <keiths@redhat.comt
3242
3243         PR symtab/23010
3244         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3245         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3246         instead of add_symbol_to_list.
3247         (read_file_scope): Call prepare_one_comp_unit before reading
3248         any other DIEs.
3249
3250 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3251
3252         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3253
3254 2018-07-24  Tom Tromey  <tom@tromey.com>
3255
3256         * utils.c (malloc, realloc, free): Don't declare.
3257         * configure, config.in: Rebuild.
3258         * configure.ac: Don't check for declarations of free, malloc, or
3259         realloc.
3260
3261 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3262
3263         * aarch64-linux-nat.c
3264         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3265         variable.
3266         * arm-linux-nat.c (fetch_regs): Likewise.
3267         (store_regs): Likewise.
3268         (fetch_vfp_regs): Likewise.
3269         (store_vfp_regs): Likewise.
3270         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3271         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3272         (arm_linux_nat_target::insert_watchpoint): Likewise.
3273         (arm_linux_nat_target::remove_watchpoint): Likewise.
3274         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3275         Likewise.
3276         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3277         Likewise.
3278         * ppc-linux-nat.c (fetch_register): Likewise.
3279         (fetch_all_gp_regs): Likewise.
3280         (fetch_ppc_registers): Likewise.
3281         (store_all_gp_regs): Likewise.
3282         (store_ppc_registers): Likewise.
3283         (hwdebug_insert_point): Likewise.
3284         (can_use_watchpoint_cond_accel): Likewise.
3285         * remote-sim.c (gdb_os_write_stdout): Likewise.
3286
3287 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3288             Tom Tromey  <tom@tromey.com>
3289
3290         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3291         test for it.
3292         * configure: Rebuild.
3293
3294 2018-07-22  Tom Tromey  <tom@tromey.com>
3295
3296         * regformats/regdat.sh: Define xmltarget_${name} inside
3297         #ifndef IN_PROCESS_AGENT.
3298
3299 2018-07-22  Tom Tromey  <tom@tromey.com>
3300
3301         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3302
3303 2018-07-22  Tom Tromey  <tom@tromey.com>
3304
3305         * symfile.c (reread_symbols): Notify iter, not objfile.
3306
3307 2018-07-22  Tom Tromey  <tom@tromey.com>
3308
3309         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3310         Use arch_ops.
3311         (ravenscar_thread_target::prepare_to_store): Likewise.
3312
3313 2018-07-22  Tom Tromey  <tom@tromey.com>
3314
3315         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3316         unused variable.  Call value_fetch_lazy when needed.
3317         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3318         Remove unused variable.  Call value_fetch_lazy when needed.
3319
3320 2018-07-22  Tom Tromey  <tom@tromey.com>
3321
3322         * m32c-tdep.c (mark_dma): Return void.
3323         (make_regs): Remove unused declarations.
3324
3325 2018-07-22  Tom Tromey  <tom@tromey.com>
3326
3327         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3328         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3329         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3330         bkscm_get_valid_block_smob_arg_unsafe for effect.
3331
3332 2018-07-22  Tom Tromey  <tom@tromey.com>
3333
3334         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3335         value_type.
3336
3337 2018-07-22  Tom Tromey  <tom@tromey.com>
3338
3339         * windows-nat.c (saved_context): Conditionally define.
3340         * remote.c (remote_target::remote_btrace_maybe_reopen):
3341         Conditionally declare "warned".
3342         * inflow.c (sigquit_ours): Conditionally define.
3343         (new_tty): Move "tty" declaration inside #if.
3344         * guile/guile.c (guile_datadir): Conditionally define.
3345         * charset.c (set_be_le_names): Move some declarations inside #if.
3346         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3347         #if.
3348         (parse_xml_btrace_conf): Likewise.
3349
3350 2018-07-22  Tom Tromey  <tom@tromey.com>
3351
3352         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3353
3354 2018-07-22  Tom Tromey  <tom@tromey.com>
3355
3356         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3357         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3358         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3359         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3360         * stack.c (frame_apply_level_command): Remove unused variable.
3361         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3362         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3363         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3364         unused variable.
3365         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3366         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3367         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3368         variable.
3369         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3370         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3371         variable.
3372         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3373         Remove unused variable.
3374         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3375         variable.
3376         * common/tdesc.c (print_xml_feature::visit): Remove unused
3377         variable.
3378         * compile/compile-object-load.c (store_regs): Remove unused
3379         variables.
3380         * complaints.c (clear_complaints): Remove unused variable.
3381         * corelow.c (core_target_open): Remove unused variable.
3382         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3383         variable.
3384         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3385         variable.
3386         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3387         variable.
3388         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3389         variable.
3390         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3391         variable.
3392         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3393         variable.
3394         * ia64-tdep.c (examine_prologue): Remove unused variable.
3395         * infcall.c (run_inferior_call): Remove unused variable.
3396         * inferior.c (exit_inferior): Remove unused variable.
3397         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3398         * linespec.c (decode_line_2): Remove unused variable.
3399         * linux-nat.c (super_close): Remove.
3400         * linux-tdep.c (linux_info_proc): Remove unused variable.
3401         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3402         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3403         Remove unused variable.
3404         * parse.c (find_minsym_type_and_address): Remove unused variable.
3405         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3406         variable.
3407         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3408         variable.
3409         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3410         variables.
3411         * record-btrace.c (record_btrace_target::store_registers): Remove
3412         unused variable.
3413         (cmd_show_record_btrace_cpu): Remove unused variable.
3414         * riscv-tdep.c (riscv_register_reggroup_p)
3415         (riscv_push_dummy_call, riscv_return_value): Remove unused
3416         variable.
3417         * rust-exp.y (literal): Remove unused variable.
3418         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3419         unused variable.
3420         <STRUCTOP_ANONYMOUS>: Likewise.
3421         * s390-linux-tdep.c (s390_linux_init_abi_31)
3422         (s390_linux_init_abi_64): Remove unused variable.
3423         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3424         (file_select_thread, net_windows_open, _initialize_ser_windows):
3425         Remove unused variables.
3426         * symtab.c (find_pc_sect_line): Remove unused variable.
3427         * target-memory.c (compute_garbled_blocks): Remove unused
3428         variable.
3429         (target_write_memory_blocks): Remove unused variable.
3430         * target.c (target_stack::unpush): Remove unused variables.
3431         * tracepoint.c (start_tracing, all_tracepoint_actions)
3432         (merge_uploaded_trace_state_variables)
3433         (print_one_static_tracepoint_marker): Remove unused variable.
3434         * unittests/basic_string_view/element_access/char/1.cc (test01):
3435         Remove unused variable.
3436         * windows-nat.c (windows_continue, windows_add_all_dlls)
3437         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3438         Remove unused variables.
3439
3440 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3441
3442         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3443         attr_profile in HAVE_ELF.
3444         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3445         HAVE_ELF.
3446
3447 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3448
3449         * frame.c (frame_register_unwind): Change parameter name.
3450         (frame_unwind_register): Likewise.
3451         (frame_unwind_register_value): Likewise.
3452         (frame_unwind_register_signed): Likewise.
3453         (frame_unwind_register_unsigned): Likewise.
3454         * frame.h (frame_register_unwind): Likewise.
3455         (frame_unwind_register): Likewise.
3456         (frame_unwind_register_value): Likewise.
3457         (frame_unwind_register_signed): Likewise.
3458         (frame_unwind_register_unsigned): Likewise.
3459         (frame_unwind_arch): Likewise.
3460
3461 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3462
3463         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3464         ISA maintenance.
3465
3466 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3467
3468         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3469         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3470         hand.
3471
3472 2018-07-20  Keith Seitz  <keiths@redhat.com>
3473
3474         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3475         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3476         m_compunit_symtab, m_language>: Add "m_" prefix.
3477         Update all uses.
3478         * buildsym.c: Update all uses.
3479
3480 2018-07-20  Tom Tromey  <tom@tromey.com>
3481
3482         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3483         * buildsym.h (record_line_ftype): Remove typedef.
3484
3485 2018-07-20  Tom Tromey  <tom@tromey.com>
3486
3487         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3488         (end_expandable_symtab): Likewise.
3489         (end_symtab_get_static_block): Likewise.
3490         (end_symtab_from_static_block): Likewise.
3491         * buildsym-legacy.c (augment_type_symtab): Remove.
3492         (end_expandable_symtab): Remove.
3493         (end_symtab_get_static_block): Remove.
3494         (end_symtab_from_static_block): Remove.
3495
3496 2018-07-20  Tom Tromey  <tom@tromey.com>
3497
3498         * dwarf2read.c: Include buildsym.h.
3499         (struct dwarf2_cu) <builder>: New method.
3500         (fixup_go_packaging): Update.
3501         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3502         use scoped_free_pendings.
3503         (using_directives): Add "cu" parameter, remove "language".
3504         (read_import_statement, setup_type_unit_groups, )
3505         (read_func_scope, read_lexical_block_scope)
3506         (dwarf2_record_block_ranges, read_namespace): Update.
3507         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3508         (lnp_state_machine::handle_end_sequence): Update.
3509         (class lnp_state_machine) <m_cu>: New member.
3510         <m_record_line_callback>: Remove.
3511         <m_currently_recording_lines>: New member.
3512         (lnp_state_machine::handle_set_file): Update.
3513         (noop_record_line): Remove.
3514         (dwarf_record_line_p): Add cu parameter.
3515         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3516         (lnp_state_machine::record_line)
3517         (lnp_state_machine::lnp_state_machine)
3518         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3519         (dwarf_decode_lines): Update.
3520         (dwarf2_start_subfile): Add cu parameter.
3521         (dwarf2_start_symtab, new_symbol): Update.
3522         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3523         Remove dwarf2_per_objfile parameter.
3524         (dwarf_decode_macros): Update.
3525
3526 2018-07-20  Tom Tromey  <tom@tromey.com>
3527
3528         * stabsread.c (define_symbol): Update.
3529         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3530         * dwarf2read.c (new_symbol): Update.
3531         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3532         * cp-namespace.c: Include buildsym.h.
3533         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3534         * buildsym-legacy.c (get_buildsym_compunit): New function.
3535
3536 2018-07-20  Tom Tromey  <tom@tromey.com>
3537
3538         * xcoffread.c: Include buildsym-legacy.h.
3539         * windows-nat.c: Include buildsym-legacy.h.
3540         * stabsread.c: Include buildsym-legacy.h.
3541         * mdebugread.c: Include buildsym-legacy.h.
3542         * buildsym-legacy.h: New file.
3543         * buildsym-legacy.c: New file, from buildsym.c.
3544         * go32-nat.c: Include buildsym-legacy.h.
3545         * dwarf2read.c: Include buildsym-legacy.h.
3546         * dbxread.c: Include buildsym-legacy.h.
3547         * cp-namespace.c: Include buildsym-legacy.h.
3548         * coffread.c: Include buildsym-legacy.h.
3549         * buildsym.h: Move some contents to buildsym-legacy.h.
3550         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3551         buildsym-legacy.c.
3552         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3553
3554 2018-07-20  Tom Tromey  <tom@tromey.com>
3555
3556         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3557         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3558         (buildsym_compunit::buildsym_compunit)
3559         (buildsym_compunit::~buildsym_compunit)
3560         (buildsym_compunit::get_macro_table): Define.
3561
3562 2018-07-20  Tom Tromey  <tom@tromey.com>
3563
3564         * buildsym.c (reset_symtab_globals): Remove.
3565         (buildsym_compunit::end_symtab_from_static_block): Update.
3566         (buildsym_compunit::augment_type_symtab): Update.
3567         (end_symtab_from_static_block): Call free_buildsym_compunit.
3568         (augment_type_symtab, end_symtab, end_expandable_symtab):
3569         Likewise.
3570
3571 2018-07-20  Tom Tromey  <tom@tromey.com>
3572
3573         * arch-utils.c: Do not include buildsym.h.
3574         * mipsread.c: Do not include buildsym.h.
3575         * machoread.c: Do not include buildsym.h.
3576         * elfread.c: Do not include buildsym.h.
3577
3578 2018-07-20  Tom Tromey  <tom@tromey.com>
3579
3580         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3581         initialization.
3582         (buildsym_compunit): Add new constructor.
3583         (struct buildsym_compunit) <get_last_source_file, finish_block,
3584         record_block_range, start_subfile, patch_subfile_names,
3585         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3586         set_last_source_start_addr, get_last_source_start_addr,
3587         get_local_using_directives, set_local_using_directives,
3588         get_global_using_directives, outermost_context_p,
3589         get_current_context_stack, get_context_stack_depth,
3590         get_current_subfile, get_local_symbols, get_file_symbols,
3591         get_global_symbols, record_debugformat, record_producer,
3592         push_context, pop_context, end_symtab_get_static_block,
3593         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3594         New public methods.
3595         <record_pending_block, finish_block_internal, make_blockvector,
3596         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3597         private methods.
3598         Update all users.
3599
3600 2018-05-22  Tom Tromey  <tom@tromey.com>
3601
3602         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3603         parameter.
3604         (finish_block_internal): Update.
3605
3606 2018-07-20  Tom Tromey  <tom@tromey.com>
3607
3608         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3609         parameter.
3610         (finish_block_internal): Update.
3611
3612 2018-07-20  Tom Tromey  <tom@tromey.com>
3613
3614         * buildsym.h (EXTERN): Don't define or undef.
3615         * buildsym.c (EXTERN): Don't define.
3616
3617 2018-07-20  Tom Tromey  <tom@tromey.com>
3618
3619         * buildsym.c: Remove TODO comment.
3620
3621 2018-07-20  Tom Tromey  <tom@tromey.com>
3622
3623         * coffread.c (coff_symtab_read): Update.
3624         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3625         (xcoff_new_init): Update.
3626         * mipsread.c (mipscoff_new_init): Update.
3627         * mdebugread.c (mdebug_build_psymtabs): Update.
3628         * elfread.c (elf_new_init): Update.
3629         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3630         Update.
3631         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3632         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3633         (stabsect_build_psymtabs): Update.
3634         * buildsym.h (buildsym_init): Don't declare.
3635         * buildsym.c: Update comment.
3636         (prepare_for_building): Remove.
3637         (start_symtab, restart_symtab): Update.
3638         (reset_symtab_globals): Update comment.
3639         (buildsym_init): Remove.
3640
3641 2018-07-20  Tom Tromey  <tom@tromey.com>
3642
3643         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3644         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3645         (read_enum_type, common_block_start, common_block_end)
3646         (cleanup_undefined_types_1, finish_global_stabs): Update.
3647         * mdebugread.c (psymtab_to_symtab_1): Update.
3648         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3649         (read_lexical_block_scope, new_symbol): Update.
3650         * dbxread.c (process_one_symbol): Update.
3651         * coffread.c (coff_symtab_read, process_coff_symbol)
3652         (coff_read_enum_type): Update.
3653         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3654         declare.
3655         (get_local_symbols, get_file_symbols, get_global_symbols): New
3656         functions.
3657         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3658         m_global_symbols.
3659         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3660         (~scoped_free_pendings): Update.
3661         (finish_block, prepare_for_building, reset_symtab_globals)
3662         (end_symtab_get_static_block, end_symtab_with_blockvector)
3663         (augment_type_symtab, push_context): Update.
3664         (get_local_symbols, get_file_symbols, get_global_symbols): New
3665         functions.
3666         (buildsym_init): Update.
3667
3668 2018-07-20  Tom Tromey  <tom@tromey.com>
3669
3670         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3671         (process_full_type_unit): Likewise.
3672         (dwarf2_start_symtab): Set list_in_scope.
3673
3674 2018-07-20  Tom Tromey  <tom@tromey.com>
3675
3676         * dwarf2read.c (process_psymtab_comp_unit_reader)
3677         (build_type_psymtabs_reader): Do not set list_in_scope.
3678
3679 2018-07-20  Tom Tromey  <tom@tromey.com>
3680
3681         * buildsym.c (free_pendings): Remove.
3682         (add_symbol_to_list, scoped_free_pendings)
3683         (finish_block_internal, buildsym_init): Update.
3684
3685 2018-07-20  Tom Tromey  <tom@tromey.com>
3686
3687         * xcoffread.c (read_xcoff_symtab): Update.
3688         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
3689         Update.
3690         * dbxread.c (process_one_symbol): Update.
3691         * coffread.c (coff_symtab_read): Update.
3692         * buildsym.h (finish_block): Update.
3693         * buildsym.c (finish_block): Remove "listhead" argument.
3694         (end_symtab_get_static_block): Update.
3695
3696 2018-07-20  Tom Tromey  <tom@tromey.com>
3697
3698         * buildsym.h (class scoped_free_pendings): Remove constructor.
3699         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
3700         method.
3701         <m_pending_block_obstack, m_pending_blocks>: New members.
3702         (pending_block_obstack, pending_blocks): Remove.
3703         (scoped_free_pendings::scoped_free_pendings): Default.
3704         (~scoped_free_pendings): Update.
3705         (free_pending_blocks): Remove.
3706         (finish_block_internal, record_pending_block, make_blockvector)
3707         (end_symtab_get_static_block, augment_type_symtab, push_context)
3708         (buildsym_init): Update.
3709
3710 2018-07-20  Tom Tromey  <tom@tromey.com>
3711
3712         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
3713         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
3714         members.
3715         (pending_addrmap, pending_addrmap_obstack)
3716         (pending_addrmap_interesting): Remove.
3717         (scoped_free_pendings, record_block_range, make_blockvector)
3718         (prepare_for_building, reset_symtab_globals, buildsym_init):
3719         Update.
3720
3721 2018-07-20  Tom Tromey  <tom@tromey.com>
3722
3723         * xcoffread.c (process_linenos): Update.
3724         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
3725         * mdebugread.c (psymtab_to_symtab_1): Update.
3726         * dwarf2read.c (setup_type_unit_groups)
3727         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
3728         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
3729         * dbxread.c (process_one_symbol): Update.
3730         * coffread.c (coff_symtab_read, enter_linenos)
3731         (process_coff_symbol): Update.
3732         * buildsym.h (current_subfile): Don't declare.
3733         (get_current_subfile): Declare.
3734         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
3735         member.
3736         (start_subfile, free_buildsym_compunit, push_subfile)
3737         (prepare_for_building, start_symtab): Update.
3738         (get_current_subfile): New function.
3739
3740 2018-07-20  Tom Tromey  <tom@tromey.com>
3741
3742         * coffread.c (coff_symtab_read): Update.
3743         * xcoffread.c (read_xcoff_symtab): Update.
3744         * dwarf2read.c (new_symbol): Update.
3745         (read_func_scope, read_lexical_block_scope): Update.
3746         * dbxread.c (process_one_symbol): Update.
3747         * buildsym.h (context_stack, context_stack_depth): Don't declare.
3748         (outermost_context_p): Remove macro.
3749         (outermost_context_p, get_current_context_stack)
3750         (get_context_stack_depth): Declare.
3751         (pop_context): Return struct context_stack.
3752         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
3753         member.
3754         (context_stack_size): Remove.
3755         (INITIAL_CONTEXT_STACK_SIZE): Remove.
3756         (prepare_for_building, end_symtab_get_static_block)
3757         (augment_type_symtab, push_context): Update.
3758         (pop_context): Return struct context_stack.
3759         (outermost_context_p, get_current_context_stack)
3760         (get_context_stack_depth): New functions.
3761         (buildsym_init): Update.
3762
3763 2018-07-20  Tom Tromey  <tom@tromey.com>
3764
3765         * rust-exp.y: Now a pure parser.  Update all rules.
3766         (%union): Move earlier.
3767         (current_parser, work_obstack): Remove globals.
3768         (rust_parser, ~rust_parser): Update.
3769         (class rust_parser) <copy_name, concat3, crate_name, super_name,
3770         lex_character, lex_number, lex_string, lex_identifier,
3771         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
3772         convert_name, convert_params_to_expression,
3773         convert_ast_to_expression, ast_basic_type, ast_operation,
3774         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
3775         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
3776         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
3777         ast_array_type, ast_slice_type, ast_reference_type,
3778         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
3779         (rust_parse): Update.
3780         (rustyyerror, rustyylex): Add parser parameter.
3781         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
3782         (rust_lex_stringish_test, rust_lex_test_sequence)
3783         (rust_lex_test_trailing_dot, rust_lex_test_completion)
3784         (rust_lex_test_push_back, rust_lex_tests): Update.
3785
3786 2018-07-19  Pedro Alves  <palves@redhat.com>
3787
3788         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
3789         gdb::unique_xmalloc_ptr.
3790         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
3791         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
3792         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3793         copy-initialization.
3794         * guile/scm-pretty-print.c (ppscm_print_children): Use
3795         gdb::unique_xmalloc_ptr instead of cleanups.
3796         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3797         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3798         gdb::unique_xmalloc_ptr.
3799         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3800         Adjust to use gdb::unique_xmalloc_ptr.
3801         * guile/scm-utils.c (extract_arg): Adjust.
3802         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3803         gdb::unique_xmalloc_ptr instead of a cleanup.
3804
3805 2018-07-19  Tom Tromey  <tom@tromey.com>
3806
3807         * utils.c (do_value_free_to_mark)
3808         (make_cleanup_value_free_to_mark): Remove.
3809         * utils.h (make_cleanup_value_free_to_mark): Remove.
3810
3811 2018-07-19  Pedro Alves  <palves@redhat.com>
3812
3813         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3814         forwarding reference.
3815
3816 2018-07-18  Pedro Alves  <palves@redhat.com>
3817
3818         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3819         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3820         cleanup.
3821
3822 2018-07-18  Pedro Alves  <palves@redhat.com>
3823
3824         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3825         exceptions.
3826         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3827         (gdbscm_wrap): New.
3828         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3829         directly instead of a cleanup.
3830         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3831         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3832         (vlscm_binop_gdbthrow): New, factored out from ...
3833         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3834         (vlscm_rich_compare): Use gdbscm_wrap.
3835         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3836         instead of a cleanup.
3837         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3838         cleanup.
3839         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3840         Use xfree directly instead of a cleanup.
3841         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3842         Adjust to use gdbscm_wrap and scoped_value_mark.
3843         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3844         (gdbscm_value_address, gdbscm_value_dereference)
3845         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3846         scoped_value_mark.
3847         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3848         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3849         scoped_value_mark.
3850         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3851         gdbscm_wrap and scoped_value_mark.
3852         (gdbscm_value_to_string): Use xfree directly instead of a
3853         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3854         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3855         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3856         scoped_value_mark.
3857         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3858         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3859         scoped_value_mark.
3860         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3861         gdbscm_wrap.
3862
3863 2018-07-18  Tom de Vries  <tdevries@suse.de>
3864
3865         * findvar.c (default_read_var_value): Also resolve dynamic type for
3866         LOC_OPTIMIZED_OUT vars.
3867
3868 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3869
3870         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3871         decoding.
3872
3873 2018-07-17  Tom Tromey  <tom@tromey.com>
3874
3875         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3876         (compute_enum_list, pascm_set_param_value_x)
3877         (gdbscm_parameter_value): Update.
3878         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3879         (gdbscm_scm_to_host_string): Update.
3880         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3881         Update.
3882         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3883         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3884         * guile/scm-string.c (gdbscm_scm_to_string): Return
3885         unique_xmalloc_ptr.
3886         (gdbscm_scm_to_host_string): Likewise.
3887
3888 2018-07-17  Tom Tromey  <tom@tromey.com>
3889
3890         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3891         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3892         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3893         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3894         unique_xmalloc_ptr.
3895
3896 2018-07-17  Tom Tromey  <tom@tromey.com>
3897
3898         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3899         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3900         Update.
3901         * guile/scm-cmd.c (cmdscm_function): Update.
3902         * guile/scm-pretty-print.c
3903         (ppscm_print_exception_unless_memory_error): Update.
3904         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3905         Return unique_xmalloc_ptr.
3906
3907 2018-07-17  Tom Tromey  <tom@tromey.com>
3908
3909         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3910         Use string_printf.
3911
3912 2018-07-17  Jim Wilson  <jimw@sifive.com>
3913
3914         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3915         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3916         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3917         unecessary braces after EF_RISCV_RVC test.  Delete call to
3918         set_gdbarch_decr_pc_after_break.
3919
3920         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3921         RISCV_LAST_FP_REGNUM + 1.
3922         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3923
3924 2018-07-17  Tom Tromey  <tom@tromey.com>
3925
3926         * configure.ac: Remove --disable-gdbcli.
3927         * configure: Rebuild.
3928         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3929         (SUBDIR_CLI_CFLAGS): Remove.
3930         (SFILES): Use SUBDIR_CLI_SRCS.
3931         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3932
3933 2018-07-17  Tom Tromey  <tom@tromey.com>
3934
3935         PR gdb/18624:
3936         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3937
3938 2018-07-16  Jim Wilson  <jimw@sifive.com>
3939
3940         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3941
3942 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3943
3944         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3945         variable.
3946         (libunwind_frame_sniffer): Likewise.
3947         (libunwind_frame_prev_register): Likewise.
3948         (libunwind_sigtramp_frame_sniffer): Likewise.
3949         * ia64-tdep.c (ia64_access_reg): Likewise.
3950         (ia64_access_rse_reg): Likewise.
3951         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3952         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3953
3954 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3955
3956         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3957
3958 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3959
3960         * remote-sim.c (gdbsim_target::close,
3961         gdbsim_target::mourn_inferior): Remove unused variables.
3962
3963 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3964
3965         * ia64-tdep.c (ktab_buf): New global.
3966         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3967         (get_kernel_table): Adjust.
3968
3969 2018-07-16  Tom Tromey  <tom@tromey.com>
3970
3971         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3972         * dwarf2read.c (using_directives, new_symbol): Use
3973         outermost_context_p.
3974         * dbxread.c (process_one_symbol): Use outermost_context_p.
3975         * coffread.c (coff_symtab_read): Use outermost_context_p.
3976
3977 2018-07-16  Tom Tromey  <tom@tromey.com>
3978
3979         * dwarf2read.c (using_directives, read_func_scope)
3980         (read_lexical_block_scope): Update.
3981         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3982         * buildsym.h (local_using_directives, global_using_directives):
3983         Don't declare.
3984         (get_local_using_directives, set_local_using_directives)
3985         (get_global_using_directives): Declare.
3986         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3987         m_global_using_directives>: New members.
3988         (finish_block_internal, prepare_for_building)
3989         (reset_symtab_globals, end_symtab_get_static_block)
3990         (push_context): Update.
3991         (get_local_using_directives, set_local_using_directives)
3992         (get_global_using_directives): New functions.
3993         (buildsym_init): Update.
3994
3995 2018-07-16  Tom Tromey  <tom@tromey.com>
3996
3997         * xcoffread.c (xcoff_initial_scan): Don't call
3998         free_pending_blocks.
3999         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
4000         * buildsym.h (class scoped_free_pendings): Add constructor.
4001         (free_pending_blocks): Don't declare.
4002         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
4003         (free_pending_blocks): Now static.
4004
4005 2018-07-16  Tom Tromey  <tom@tromey.com>
4006
4007         * buildsym.h (push_subfile, pop_subfile): Update declarations.
4008         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
4009         member.
4010         (struct subfile_stack): Remove.
4011         (subfile_stack): Remove.
4012         (push_subfile, pop_subfile, buildsym_init): Update.
4013
4014 2018-07-16  Tom Tromey  <tom@tromey.com>
4015
4016         * buildsym.c (push_subfile): Use gdb_assert.
4017         (pop_subfile): Use gdb_assert.
4018
4019 2018-07-16  Tom Tromey  <tom@tromey.com>
4020
4021         * buildsym.h (merge_symbol_lists): Remove.
4022         * buildsym.c (merge_symbol_lists): Remove.
4023
4024 2018-07-16  Tom Tromey  <tom@tromey.com>
4025
4026         * stabsread.c (scan_file_globals): Update comment.
4027         * stabsread.h (scan_file_globals): Move from buildsym.h.
4028         * buildsym.h (scan_file_globals): Move to stabsread.h.
4029
4030 2018-07-16  Tom Tromey  <tom@tromey.com>
4031
4032         * xcoffread.c (xcoff_new_init): Update.
4033         * mipsread.c (mipscoff_new_init): Update.
4034         * mdebugread.c (mdebug_build_psymtabs): Update.
4035         * elfread.c (elf_new_init): Update.
4036         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4037         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4038         * buildsym.h (buildsym_new_init): Don't declare.
4039         * buildsym.c (buildsym_new_init): Remove.
4040
4041 2018-07-16  Tom Tromey  <tom@tromey.com>
4042
4043         * stabsread.h (within_function): Move from buildsym.h.
4044         * stabsread.c (start_stabs): Clear within_function.
4045         * coffread.c (coff_start_symtab): Clear within_function.
4046         * buildsym.h (within_function): Move to stabsread.h.
4047         * buildsym.c (prepare_for_building): Update.
4048
4049 2018-07-16  Tom Tromey  <tom@tromey.com>
4050
4051         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4052         * dwarf2read.c (dwarf2_start_symtab): Don't set
4053         processing_gcc_compilation.
4054         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4055
4056 2018-07-16  Tom Tromey  <tom@tromey.com>
4057
4058         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4059         (next_symbol_text_func): Move from buildsym.h.
4060         * stabsread.c (hashname): Move from buildsym.c.
4061         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4062         (next_symbol_text_func, hashname): Move to stabsread.h.
4063         * buildsym.c: Don't include bcache.h
4064         (hashname): Move to stasbread.c.
4065
4066 2018-07-16  Tom Tromey  <tom@tromey.com>
4067
4068         * buildsym.h (context_stack_size): Don't declare.
4069         * buildsym.c (context_stack_size): New global.
4070
4071 2018-07-16  Tom Tromey  <tom@tromey.com>
4072
4073         * dbxread.c (processing_acc_compilation): New global.
4074         * buildsym.h (processing_acc_compilation): Don't declare.
4075
4076 2018-07-16  Tom Tromey  <tom@tromey.com>
4077
4078         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4079         * dbxread.c (read_ofile_symtab): Update.
4080         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4081         * buildsym.h (last_source_start_addr): Remove.
4082         (set_last_source_start_addr, get_last_source_start_addr):
4083         Declare.
4084         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4085         parameter.
4086         (struct buildsym_compunit) <m_last_source_start_addr>: New
4087         member.
4088         (prepare_for_building): Remove start_addr parameter.
4089         (start_symtab, restart_symtab, end_symtab_get_static_block)
4090         (end_symtab_with_blockvector): Update.
4091         (set_last_source_start_addr, get_last_source_start_addr): New
4092         functions.
4093
4094 2018-07-16  Tom Tromey  <tom@tromey.com>
4095
4096         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4097         member.
4098         (have_line_numbers): Remove.
4099         (record_line, prepare_for_building, end_symtab_get_static_block)
4100         (augment_type_symtab): Update.
4101
4102 2018-07-16  Tom Tromey  <tom@tromey.com>
4103
4104         * buildsym.c (~buildsym_compunit): Free the macro table.
4105         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4106         methods.
4107         <m_pending_macros>: New member.
4108         (pending_macros): Remove.
4109         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4110         (reset_symtab_globals, end_symtab_get_static_block)
4111         (end_symtab_with_blockvector, augment_type_symtab)
4112         (buildsym_init): Update.
4113
4114 2018-07-16  Tom Tromey  <tom@tromey.com>
4115
4116         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4117         parameter.
4118         (buildsym_compunit::set_last_source_file): New method.
4119         <m_last_source_file>: New member.
4120         (prepare_for_building): Remove "name" parameter.
4121         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4122         (last_source_file): Remove.
4123         (set_last_source_file, get_last_source_file): Update.
4124
4125 2018-07-16  Tom Tromey  <tom@tromey.com>
4126
4127         * buildsym.c (prepare_for_building): Add assert.
4128
4129 2018-07-16  Tom Tromey  <tom@tromey.com>
4130
4131         * buildsym.c (~buildsym_compunit): Update.
4132         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4133         (start_subfile, patch_subfile_names)
4134         (end_symtab_with_blockvector): Update.
4135
4136 2018-07-16  Tom Tromey  <tom@tromey.com>
4137
4138         * buildsym.c (struct buildsym_compunit): Add constructor,
4139         destructor, initializers.
4140         (start_buildsym_compunit): Remove.
4141         (free_buildsym_compunit): Use "delete".
4142         (start_symtab, restart_symtab): Use "new".
4143
4144 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4145
4146         * symfile.c (set_objfile_default_section_offset): Remove struct
4147         keyword.
4148
4149 2018-07-14  Stafford Horne  <shorne@gmail.com>
4150
4151         * (Responsible Maintainers): Add myself as or1k maintainer.
4152
4153 2018-07-13  Tom Tromey  <tom@tromey.com>
4154
4155         * symfile.c (set_objfile_default_section_offset): Use extra braces
4156         around initializer.
4157
4158 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4159
4160         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4161         non-branching basr.
4162
4163 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4164
4165         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4166         unittests/cli-utils-selftests.c
4167         * unittests/cli-utils-selftests.c: New file.
4168
4169 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4170
4171         * NEWS: Mention new commands. Mention change to 'thread apply'.
4172
4173 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4174
4175         * thread.c (thr_try_catch_cmd): New function.
4176         (thread_apply_all_command): Handle qcs flags.
4177         (thread_apply_command): Handle qcs flags.
4178         (taas_command): New function.
4179         (tfaas_command): New function.
4180         (_initialize_thread): Update to setup the new commands 'taas
4181         and 'tfaas'. Change doc string for 'thread apply'.
4182
4183 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4184
4185         * stack.c: (trailing_outermost_frame): New function, mostly
4186         extracted from backtrace_command_1.
4187         (leading_innermost_frame): New function.
4188         (backtrace_command_1): Update to call trailing_outermost_frame.
4189         (frame_apply_command_count): New function.
4190         (frame_apply_level_command): New function.
4191         (frame_apply_all_command): New function.
4192         (frame_apply_command): New function.
4193         (faas_command): New function.
4194         (frame_cmd_list): New variable.
4195         (_initialize_stack): Update to setup the new commands 'frame apply'
4196         and 'faas'.
4197
4198 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4199
4200         * cli-utils.c (number_or_range_parser::get_number): Only handle
4201         numbers or convenience var as numbers.
4202         (parse_flags): New function.
4203         (parse_flags_qcs): New function.
4204         (number_or_range_parser::finished): Ensure parsing end is detected
4205         before end of string.
4206         * cli-utils.h (parse_flags): New function.
4207         (parse_flags_qcs): New function.
4208         (number_or_range_parser): Remove m_finished bool.
4209         (number_or_range_parser::skip_range): Set m_in_range to false.
4210
4211 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4212
4213         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4214         on Windows.
4215
4216 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4217             Jan Kratochvil  <jan.kratochvil@redhat.com>
4218             Paul Fertser  <fercerpav@gmail.com>
4219             Tsutomu Seki  <sekiriki@gmail.com>
4220             Pedro Alves  <palves@redhat.com>
4221
4222         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4223         'unittests/parse-connection-spec-selftests.c'.
4224         (COMMON_SFILES): Add 'common/netstuff.c'.
4225         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4226         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4227         * common/netstuff.c: New file.
4228         * common/netstuff.h: New file.
4229         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4230         (wait_for_connect): Update comment.  New parameter
4231         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4232         Use 'sock' directly instead of 'scb->fd'.
4233         (try_connect): New function, with code from 'net_open'.
4234         (net_open): Rewrite main loop to deal with multiple
4235         sockets/addresses.  Handle IPv6-style hostnames; implement
4236         support for IPv6 connections.
4237         * unittests/parse-connection-spec-selftests.c: New file.
4238
4239 2018-07-11  Pedro Alves  <palves@redhat.com>
4240
4241         PR gdb/23377
4242         * remote.c (remote_target::remote_detach_pid): Call
4243         set_current_process.
4244
4245 2018-07-11  Pedro Alves  <palves@redhat.com>
4246
4247         * h8300-tdep.c (h8300_gdbarch_init): Remove
4248         set_gdbarch_ecoff_reg_to_regnum calls.
4249
4250 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4251
4252         PR c++/23373
4253         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4254         offsets/sizes for static members of a class/struct.
4255
4256 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4257
4258         * target-descriptions.c (tdesc_register_bitsize): Rename.
4259         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4260         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4261         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4262
4263 2018-07-10  Tom Tromey  <tom@tromey.com>
4264
4265         * breakpoint.c (moribund_locations): Now static and a
4266         std::vector.
4267         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4268         (build_bpstat_chain, update_global_location_list)
4269         (breakpoint_retire_moribund): Update.
4270         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4271         VEC.
4272
4273 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4274
4275         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4276         (riscv_register_reggroup_p): Use new function, remove unneeded
4277         parenthesis.
4278         (riscv_push_dummy_call): Extend assert to compare against xlen or
4279         flen based on register type.
4280
4281 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4282
4283         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4284
4285 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4286
4287         * remote.c (show_hardware_watchpoint_limit): New function.
4288         (show_hardware_watchpoint_length_limit): New function.
4289         (show_hardware_breakpoint_limit): New function.
4290         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4291         where appropriate, update help text.
4292
4293 2018-07-09  Tom Tromey  <tom@tromey.com>
4294
4295         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4296         (CLIBS): Don't mention NAT_CLIBS.
4297
4298 2018-07-09  Tom Tromey  <tom@tromey.com>
4299
4300         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4301         (LIBGDB_OBS, clean mostlyclean): Update.
4302         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4303
4304 2018-07-09  Tom Tromey  <tom@tromey.com>
4305
4306         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4307         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4308         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4309
4310 2018-07-09  Tom Tromey  <tom@tromey.com>
4311
4312         * Makefile.in (ALLDEPFILES): Remove exec.c.
4313         (COMMON_OBS): Remove exec.o.
4314         (COMMON_SFILES): Add exec.c.
4315
4316 2018-07-09  Tom Tromey  <tom@tromey.com>
4317
4318         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4319
4320 2018-07-09  Tom Tromey  <tom@tromey.com>
4321
4322         * Makefile.in (clean mostlyclean): Remove stamp-version.
4323         (version.c): Depend on stamp-version.
4324         (stamp-version): New rule, from version.c rule.
4325
4326 2018-07-09  Tom Tromey  <tom@tromey.com>
4327
4328         * Makefile.in (init.c): Depend on stamp-init.
4329         (stamp-init): New rule, from init.c rule.
4330         (clean mostlyclean): Remove stamp-init.
4331
4332 2018-07-09  Tom Tromey  <tom@tromey.com>
4333
4334         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4335         SUBDIR_GCC_COMPILE_SRCS.
4336
4337 2018-07-09  Tom Tromey  <tom@tromey.com>
4338
4339         * Makefile.in (init.c): Remove some unused sed rules.
4340
4341 2018-07-09  Tom Tromey  <tom@tromey.com>
4342
4343         * Makefile.in (TSOBS): Remove.
4344         (INIT_FILES): Update.
4345         (LIBGDB_OBS): Update.
4346         (COMMON_SFILES): Add inflow.c.
4347         (SFILES): Remove inflow.c.
4348
4349 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4350
4351         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4352
4353 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4354
4355         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4356         get_saveloc_name, is_signal_frame_name, step_name,
4357         init_remote_name, create_addr_space_name,
4358         destroy_addr_space_name, search_unwind_table_name,
4359         find_dyn_list_name): Constify.
4360
4361 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4362
4363         * darwin-nat.c (darwin_pthread_kill): New function.
4364         (darwin_resume_thread): Use darwin_pthread_kill.
4365
4366 2018-07-05  Tom de Vries  <tdevries@suse.de>
4367
4368         * macroexp.c (macro_buffer) <operator=>: New member function.
4369
4370 2018-07-04  Tom Tromey  <tom@tromey.com>
4371
4372         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4373
4374 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4375
4376         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4377         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4378         * maint.c: Likewise.
4379         * top.c: Likewise.
4380
4381 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4382
4383         * NEWS: Create a new section for the next release branch.
4384         Rename the section of the current branch, now that it has
4385         been cut.
4386
4387 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4388
4389         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4390         * version.in: Bump version to 8.2.50.DATE-git.
4391
4392 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4393             Pedro Alves  <palves@redhat.com>
4394
4395         * linux-nat.c (linux_init_ptrace): Rename to ...
4396         (linux_init_ptrace_procfs): ... this.  Call
4397         linux_proc_init_warnings.
4398         (linux_nat_target::post_attach)
4399         (linux_nat_target::post_startup_inferior): Adjust.
4400         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4401         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4402
4403 2018-07-04  Tom de Vries  <tdevries@suse.de>
4404
4405         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4406         check ...
4407         (read_comp_unit_head): ... here.
4408
4409 2018-07-03  Tom Tromey  <tom@tromey.com>
4410
4411         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4412         (stop_tracing, tstatus_command)
4413         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4414         (print_one_static_tracepoint_marker): Update.
4415         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4416         std::vector.
4417         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4418         VEC.
4419         (all_tracepoints, static_tracepoints_here): Return std::vector.
4420
4421 2018-07-03  Tom Tromey  <tom@tromey.com>
4422
4423         * common/ptid.c (ptid_equal): Remove.
4424         * common/ptid.h (ptid_equal): Don't declare.
4425         * ada-tasks.c: Update.
4426         * breakpoint.c: Update.
4427         * common/agent.c: Update.
4428         * corelow.c: Update.
4429         * darwin-nat-info.c: Update.
4430         * darwin-nat.c: Update.
4431         * dcache.c: Update.
4432         * dtrace-probe.c: Update.
4433         * dummy-frame.c: Update.
4434         * fbsd-nat.c: Update.
4435         * frame.c: Update.
4436         * gdbthread.h: Update.
4437         * gnu-nat.c: Update.
4438         * go32-nat.c: Update.
4439         * inf-loop.c: Update.
4440         * inf-ptrace.c: Update.
4441         * infcall.c: Update.
4442         * infcmd.c: Update.
4443         * inflow.c: Update.
4444         * infrun.c: Update.
4445         * linux-fork.c: Update.
4446         * linux-nat.c: Update.
4447         * linux-thread-db.c: Update.
4448         * mi/mi-cmd-var.c: Update.
4449         * mi/mi-interp.c: Update.
4450         * mi/mi-main.c: Update.
4451         * nto-procfs.c: Update.
4452         * ppc-linux-tdep.c: Update.
4453         * procfs.c: Update.
4454         * python/py-inferior.c: Update.
4455         * python/py-record-btrace.c: Update.
4456         * python/py-record.c: Update.
4457         * ravenscar-thread.c: Update.
4458         * regcache.c: Update.
4459         * remote-sim.c: Update.
4460         * remote.c: Update.
4461         * sol-thread.c: Update.
4462         * solib.c: Update.
4463         * target.c: Update.
4464         * tui/tui-stack.c: Update.
4465         * varobj.c: Update.
4466         * windows-nat.c: Update.
4467         * windows-tdep.c: Update.
4468
4469 2018-07-03  Tom Tromey  <tom@tromey.com>
4470
4471         * common/ptid.c (ptid_match): Remove.
4472         * common/ptid.h (ptid_match): Don't declare.
4473         * fbsd-nat.c: Update.
4474         * infcmd.c: Update.
4475         * infrun.c: Update.
4476         * linux-nat.c: Update.
4477         * record-btrace.c: Update.
4478         * regcache.c: Update.
4479         * remote.c: Update.
4480
4481 2018-07-03  Tom Tromey  <tom@tromey.com>
4482
4483         * common/ptid.c (ptid_tid_p): Remove.
4484         * common/ptid.h (ptid_tid_p): Don't declare.
4485         * sol-thread.c: Update.
4486
4487 2018-07-03  Tom Tromey  <tom@tromey.com>
4488
4489         * common/ptid.c (ptid_lwp_p): Remove.
4490         * common/ptid.h (ptid_lwp_p): Don't declare.
4491         * fbsd-nat.c: Update.
4492         * linux-nat.c: Update.
4493         * nat/linux-procfs.c: Update.
4494         * nat/x86-linux-dregs.c: Update.
4495         * sol-thread.c: Update.
4496
4497 2018-07-03  Tom Tromey  <tom@tromey.com>
4498
4499         * common/ptid.c (ptid_is_pid): Remove.
4500         * common/ptid.h (ptid_is_pid): Don't declare.
4501         * infrun.c: Update.
4502         * linux-nat.c: Update.
4503         * mi/mi-interp.c: Update.
4504         * remote.c: Update.
4505         * thread.c: Update.
4506
4507 2018-07-03  Tom Tromey  <tom@tromey.com>
4508
4509         * common/ptid.c (ptid_get_tid): Remove.
4510         * common/ptid.h (ptid_get_tid): Don't declare.
4511         * ada-tasks.c: Update.
4512         * aix-thread.c: Update.
4513         * bsd-uthread.c: Update.
4514         * darwin-nat.c: Update.
4515         * fbsd-nat.c: Update.
4516         * i386-darwin-nat.c: Update.
4517         * infrun.c: Update.
4518         * linux-tdep.c: Update.
4519         * nto-procfs.c: Update.
4520         * ppc-ravenscar-thread.c: Update.
4521         * python/py-infthread.c: Update.
4522         * ravenscar-thread.c: Update.
4523         * sol-thread.c: Update.
4524         * sparc-ravenscar-thread.c: Update.
4525         * windows-nat.c: Update.
4526
4527 2018-07-03  Tom Tromey  <tom@tromey.com>
4528
4529         * common/ptid.c (ptid_get_lwp): Remove.
4530         * common/ptid.h (ptid_get_lwp): Don't declare.
4531         * aarch64-linux-nat.c: Update.
4532         * ada-tasks.c: Update.
4533         * aix-thread.c: Update.
4534         * amd64-linux-nat.c: Update.
4535         * arm-linux-nat.c: Update.
4536         * corelow.c: Update.
4537         * fbsd-nat.c: Update.
4538         * fbsd-tdep.c: Update.
4539         * gnu-nat.c: Update.
4540         * i386-cygwin-tdep.c: Update.
4541         * i386-gnu-nat.c: Update.
4542         * i386-linux-nat.c: Update.
4543         * ia64-linux-nat.c: Update.
4544         * inf-ptrace.c: Update.
4545         * infrun.c: Update.
4546         * linux-fork.c: Update.
4547         * linux-nat.c: Update.
4548         * linux-tdep.c: Update.
4549         * linux-thread-db.c: Update.
4550         * mips-linux-nat.c: Update.
4551         * nat/aarch64-linux-hw-point.c: Update.
4552         * nat/aarch64-linux.c: Update.
4553         * nat/linux-btrace.c: Update.
4554         * nat/linux-osdata.c: Update.
4555         * nat/linux-procfs.c: Update.
4556         * nat/x86-linux-dregs.c: Update.
4557         * obsd-nat.c: Update.
4558         * ppc-fbsd-nat.c: Update.
4559         * ppc-linux-nat.c: Update.
4560         * procfs.c: Update.
4561         * python/py-infthread.c: Update.
4562         * ravenscar-thread.c: Update.
4563         * remote.c: Update.
4564         * s390-linux-nat.c: Update.
4565         * sol-thread.c: Update.
4566         * sol2-tdep.c: Update.
4567         * spu-linux-nat.c: Update.
4568         * x86-linux-nat.c: Update.
4569         * xtensa-linux-nat.c: Update.
4570
4571 2018-07-03  Tom Tromey  <tom@tromey.com>
4572
4573         * common/ptid.c (ptid_get_pid): Remove.
4574         * common/ptid.h (ptid_get_pid): Don't declare.
4575         * aarch64-linux-nat.c: Update.
4576         * ada-lang.c: Update.
4577         * aix-thread.c: Update.
4578         * alpha-bsd-nat.c: Update.
4579         * amd64-fbsd-nat.c: Update.
4580         * amd64-linux-nat.c: Update.
4581         * arm-linux-nat.c: Update.
4582         * arm-nbsd-nat.c: Update.
4583         * auxv.c: Update.
4584         * break-catch-syscall.c: Update.
4585         * breakpoint.c: Update.
4586         * bsd-uthread.c: Update.
4587         * corelow.c: Update.
4588         * ctf.c: Update.
4589         * darwin-nat.c: Update.
4590         * fbsd-nat.c: Update.
4591         * fbsd-tdep.c: Update.
4592         * gcore.c: Update.
4593         * gnu-nat.c: Update.
4594         * hppa-nbsd-nat.c: Update.
4595         * hppa-obsd-nat.c: Update.
4596         * i386-fbsd-nat.c: Update.
4597         * ia64-linux-nat.c: Update.
4598         * inf-ptrace.c: Update.
4599         * infcmd.c: Update.
4600         * inferior.c: Update.
4601         * inferior.h: Update.
4602         * inflow.c: Update.
4603         * infrun.c: Update.
4604         * linux-fork.c: Update.
4605         * linux-nat.c: Update.
4606         * linux-tdep.c: Update.
4607         * linux-thread-db.c: Update.
4608         * m68k-bsd-nat.c: Update.
4609         * mi/mi-interp.c: Update.
4610         * mi/mi-main.c: Update.
4611         * mips-linux-nat.c: Update.
4612         * mips-nbsd-nat.c: Update.
4613         * mips64-obsd-nat.c: Update.
4614         * nat/aarch64-linux-hw-point.c: Update.
4615         * nat/aarch64-linux.c: Update.
4616         * nat/linux-btrace.c: Update.
4617         * nat/linux-osdata.c: Update.
4618         * nat/linux-procfs.c: Update.
4619         * nat/x86-linux-dregs.c: Update.
4620         * nto-procfs.c: Update.
4621         * obsd-nat.c: Update.
4622         * ppc-linux-nat.c: Update.
4623         * ppc-nbsd-nat.c: Update.
4624         * ppc-obsd-nat.c: Update.
4625         * proc-service.c: Update.
4626         * procfs.c: Update.
4627         * python/py-inferior.c: Update.
4628         * python/py-infthread.c: Update.
4629         * ravenscar-thread.c: Update.
4630         * record.c: Update.
4631         * remote-sim.c: Update.
4632         * remote.c: Update.
4633         * rs6000-nat.c: Update.
4634         * s390-linux-nat.c: Update.
4635         * sh-nbsd-nat.c: Update.
4636         * sol-thread.c: Update.
4637         * sparc-nat.c: Update.
4638         * sparc64-tdep.c: Update.
4639         * spu-linux-nat.c: Update.
4640         * spu-tdep.c: Update.
4641         * target-debug.h: Update.
4642         * target.c: Update.
4643         * thread.c: Update.
4644         * tid-parse.c: Update.
4645         * tracefile-tfile.c: Update.
4646         * vax-bsd-nat.c: Update.
4647         * windows-nat.c: Update.
4648         * x86-linux-nat.c: Update.
4649         * x86-nat.c: Update.
4650
4651 2018-07-03  Tom Tromey  <tom@tromey.com>
4652
4653         * common/ptid.c (pid_to_ptid): Remove.
4654         * common/ptid.h (pid_to_ptid): Don't declare.
4655         * aix-thread.c: Update.
4656         * arm-linux-nat.c: Update.
4657         * common/ptid.c: Update.
4658         * common/ptid.h: Update.
4659         * corelow.c: Update.
4660         * ctf.c: Update.
4661         * darwin-nat.c: Update.
4662         * fbsd-nat.c: Update.
4663         * fork-child.c: Update.
4664         * gnu-nat.c: Update.
4665         * go32-nat.c: Update.
4666         * inf-ptrace.c: Update.
4667         * infcmd.c: Update.
4668         * inferior.c: Update.
4669         * infrun.c: Update.
4670         * linux-fork.c: Update.
4671         * linux-nat.c: Update.
4672         * nat/aarch64-linux-hw-point.c: Update.
4673         * nat/fork-inferior.c: Update.
4674         * nat/x86-linux-dregs.c: Update.
4675         * nto-procfs.c: Update.
4676         * obsd-nat.c: Update.
4677         * procfs.c: Update.
4678         * progspace.c: Update.
4679         * remote.c: Update.
4680         * rs6000-nat.c: Update.
4681         * s390-linux-nat.c: Update.
4682         * sol-thread.c: Update.
4683         * spu-linux-nat.c: Update.
4684         * target.c: Update.
4685         * top.c: Update.
4686         * tracefile-tfile.c: Update.
4687         * windows-nat.c: Update.
4688
4689 2018-07-03  Tom Tromey  <tom@tromey.com>
4690
4691         * common/ptid.h (ptid_build): Don't declare.
4692         * common/ptid.c (ptid_build): Remove.
4693         * aix-thread.c: Update.
4694         * bsd-kvm.c: Update.
4695         * bsd-uthread.c: Update.
4696         * common/agent.c: Update.
4697         * common/ptid.c: Update.
4698         * common/ptid.h: Update.
4699         * corelow.c: Update.
4700         * darwin-nat.c: Update.
4701         * fbsd-nat.c: Update.
4702         * gnu-nat.c: Update.
4703         * linux-fork.c: Update.
4704         * linux-nat.c: Update.
4705         * linux-thread-db.c: Update.
4706         * nat/linux-osdata.c: Update.
4707         * nat/linux-procfs.c: Update.
4708         * nto-procfs.c: Update.
4709         * obsd-nat.c: Update.
4710         * proc-service.c: Update.
4711         * procfs.c: Update.
4712         * ravenscar-thread.c: Update.
4713         * remote-sim.c: Update.
4714         * remote.c: Update.
4715         * sol-thread.c: Update.
4716         * target.c: Update.
4717         * windows-nat.c: Update.
4718
4719 2018-07-03  Tom Tromey  <tom@tromey.com>
4720
4721         * infrun.c (follow_exec): Use exit_inferior_silent.
4722         * inferior.c (exit_inferior_num_silent): Remove.
4723         * inferior.h (exit_inferior_num_silent): Don't declare.
4724
4725 2018-07-03  Tom Tromey  <tom@tromey.com>
4726
4727         PR cli/23340:
4728         * darwin-nat.c (darwin_attach_pid): Reset inferior and
4729         inferior_ptid on error.
4730
4731 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
4732             Simon Marchi  <simon.marchi@polymtl.ca>
4733
4734         PR tdep/8282
4735         * disasm.h (gdb_disassembler): Add
4736         `m_disassembler_options_holder'. member
4737         * disasm.c (get_all_disassembler_options): New function.
4738         (gdb_disassembler::gdb_disassembler): Use it.
4739         (gdb_buffered_insn_length_init_dis): Likewise.
4740         (gdb_buffered_insn_length): Adjust accordingly.
4741         (set_disassembler_options): Handle options with arguments.
4742         (show_disassembler_options_sfunc): Likewise.  Add a leading new
4743         line if showing options with descriptions.
4744         (disassembler_options_completer): Adapt to using the
4745         `disasm_options_and_args_t' structure.
4746         * mips-tdep.c (mips_disassembler_options): New variable.
4747         (mips_disassembler_options_o32): Likewise.
4748         (mips_disassembler_options_n32): Likewise.
4749         (mips_disassembler_options_n64): Likewise.
4750         (gdb_print_insn_mips): Don't set `disassembler_options'.
4751         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
4752         functions.
4753         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
4754         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
4755         `gdbarch_disassembler_options_implicit' and
4756         `gdbarch_valid_disassembler_options'.
4757         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
4758         `disasm_options_and_args_t' structure.
4759         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
4760         method.
4761         (valid_disassembler_options): Switch from `disasm_options_t' to
4762         the `disasm_options_and_args_t' structure.
4763         * NEWS: Document `set disassembler-options' support for the MIPS
4764         target.
4765         * gdbarch.h: Regenerate.
4766         * gdbarch.c: Regenerate.
4767
4768 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
4769
4770         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
4771
4772 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
4773
4774         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
4775         parameter in call to amd64_target_description.
4776         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
4777         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
4778         (amd64fbsd_init_abi): Likewise.
4779         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
4780         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
4781         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
4782         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
4783
4784 2018-06-29  Pedro Alves  <palves@redhat.com>
4785
4786         * gdb/amd64-tdep.h (amd64_create_target_description): Add
4787         "segments" parameter.
4788         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
4789         (_initialize_amd64_tdep): Update call to
4790         amd64_create_target_description.
4791         (amd64_target_description): Add "segments" parameter.  Adjust
4792         the implementation to use it.
4793         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4794         call to amd64_create_target_description.
4795         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4796         * gdb/arch/amd64.h (amd64_create_target_description): Add
4797         "segments" register.
4798         * gdb/arch/amd64.c (amd64_create_target_description): Add
4799         "segments" parameter.  Call create_feature_i386_64bit_segments
4800         only if SEGMENTS is true.
4801         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4802         call to amd64_create_target_description.
4803
4804 2018-06-29  Pedro Alves  <palves@redhat.com>
4805
4806         * thread.c (thread_target_id_str): New, factored out from ...
4807         (print_thread_info_1): ... here.  Use it to compute the max
4808         "Target Id" column width.
4809
4810 2018-06-29  Pedro Alves  <palves@redhat.com>
4811
4812         * remote.c (remote_target::extra_thread_info): Delete
4813         'display_buf' and 'n' locals.  from the cache, regardless of
4814         packet mechanims is in use.  Use cache for qThreadExtra and qP
4815         methods too.
4816
4817 2018-06-29  Pedro Alves  <palves@redhat.com>
4818
4819         * blockframe.c (find_pc_sect_containing_function): New function.
4820         * breakpoint.c (print_breakpoint_location): Don't call
4821         find_pc_sect_function.
4822         * linespec.c (create_sals_line_offset): Record the location's
4823         symbol in the sal.
4824         * linespec.c (convert_address_location_to_sals): Fill in sal's
4825         symbol with find_pc_sect_containing_function.
4826         * symtab.c (find_function_start_sal): Rename to ...
4827         (find_function_start_sal_1): ... this.
4828         (find_function_start_sal): Reimplement as wrapper around
4829         find_function_start_sal_1, and use
4830         find_pc_sect_containing_function to fill in the sal's symbol.
4831         (find_function_start_sal(symbol*, bool)): Adjust.
4832         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4833         comments.
4834         (find_pc_sect_containing_function): Declare.
4835
4836 2018-06-29  Pedro Alves  <palves@redhat.com>
4837
4838         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4839         true if the the location has no symbol.
4840
4841 2018-06-28  Tom Tromey  <tom@tromey.com>
4842
4843         * NEWS: Mention --enable-codesign.
4844         * silent-rules.mk (ECHO_SIGN): New variable.
4845         * configure.ac: Add --enable-codesign.
4846         * configure: Rebuild.
4847         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4848         (gdb$(EXEEXT)): Optionally invoke codesign.
4849
4850 2018-06-28  Pedro Alves  <palves@redhat.com>
4851
4852         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4853         comments.
4854         (switch_to_thread_no_regs): Adjust comment.
4855         * infcmd.c (stop_pc): Delete.
4856         (post_create_inferior, info_program_command): Replace references
4857         to stop_pc with references to thread_info->suspend.stop_pc.
4858         * inferior.h (stop_pc): Delete declaration.
4859         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4860         (handle_inferior_event_1, handle_signal_stop)
4861         (process_event_stop_test, keep_going_stepped_thread)
4862         (handle_step_into_function, handle_step_into_function_backward)
4863         (print_stop_location): Replace references to stop_pc with
4864         references to thread_info->suspend.stop_pc.
4865         (struct infcall_suspend_state) <stop_pc>: Delete field.
4866         (save_infcall_suspend_state, restore_infcall_suspend_state):
4867         Remove references to inf_stat->stop_pc.
4868         * linux-fork.c (fork_load_infrun_state): Likewise.
4869         * record-btrace.c (record_btrace_set_replay): Likewise.
4870         * record-full.c (record_full_goto_entry): Likewise.
4871         * remote.c (print_one_stopped_thread): Likewise.
4872         * target.c (target_resume): Extend comment.
4873         * thread.c (set_executing_thread): New.
4874         (set_executing): Use it.
4875         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4876         Remove references to stop_pc.
4877
4878 2018-06-28  Pedro Alves  <palves@redhat.com>
4879
4880         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4881         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4882
4883 2018-06-28  Tom Tromey  <tom@tromey.com>
4884
4885         * coffread.c (coff_symfile_finish): Update.
4886         * xcoffread.c (xcoff_symfile_finish): Update.
4887         * elfread.c (elf_symfile_finish): Update.
4888         * symfile.h (dwarf2_free_objfile): Don't declare.
4889         * dwarf2read.c (_initialize_dwarf2_read): Use
4890         register_objfile_data_with_cleanup.
4891         (dwarf2_free_objfile): Now static.  Change signature.
4892
4893 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4894
4895         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4896         option "-o" to add-symbol-file-load to add an offset to each
4897         section's load address.
4898         * symfile.c (set_objfile_default_section_offset): New function.
4899
4900 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4901
4902         * symfile.c (add_symbol_file_command): Make sure that sections
4903         with the same name are sorted in the same order.
4904
4905 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4906
4907         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4908         require the second argument.  If omitted, load sections at the
4909         addresses specified in the file.
4910
4911 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4912
4913         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4914         (_initialize_symfile): Add option "-o" to symbol-file to add an
4915         offset to each section of the symbol file.
4916
4917 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4918
4919         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4920
4921 2018-06-27  Tom Tromey  <tom@tromey.com>
4922
4923         * stack.c (_initialize_stack): Update "func" help text.
4924
4925 2018-06-27  Tom Tromey  <tom@tromey.com>
4926
4927         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4928         std::vector.
4929         (unwind_infopy_str, pyuw_create_unwind_info)
4930         (unwind_infopy_add_saved_register, pyuw_sniffer)
4931         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4932         Update.
4933         (struct saved_reg): Add constructor.
4934         <value>: Now a gdbpy_ref<>.
4935
4936 2018-06-27  Tom Tromey  <tom@tromey.com>
4937
4938         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4939
4940 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4941
4942         * gdb-gdb.py.in: Format using autopep8.
4943
4944 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4945
4946         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4947         (type_lookup_function): Recognize CORE_ADDR values.
4948
4949 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4950
4951         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4952         print tag_name.
4953
4954 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4955
4956         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4957         <__lt__>: Add.
4958
4959 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4960
4961         * gdb-gdb.py: Move to...
4962         * gdb-gdb.py.in: ... here.
4963         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4964         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4965         dependencies.
4966         (distclean): Remove gdb-gdb.py when cleaning.
4967         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4968         * configure: Re-generate.
4969
4970 2018-06-27  Pedro Alves  <palves@redhat.com>
4971
4972         * proc-service.c (get_ps_regcache): New.
4973         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4974         (ps_lsetfpregs): Use it.
4975
4976 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4977
4978         PR gdb/21695
4979         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4980         (dwarf_decode_lines_1): Adjust.
4981
4982 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4983
4984         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4985         override.
4986         <info_proc>: Likewise.
4987
4988 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4989
4990         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4991         to windows_fetch_one_register, and only handle the case of
4992         fetching one register.  Move the code that reloads the context
4993         and iterates over all registers if R is negative to...
4994         (windows_nat_target::fetch_registers): ... here.
4995         (do_windows_store_inferior_registers): Rename to
4996         windows_store_one_register, and only handle the case of storing
4997         one register.  Move the code that handles the case where r is
4998         negative to...
4999         (windows_nat_target::store_registers) ... here.
5000
5001 2018-06-26  Tom Tromey  <tom@tromey.com>
5002
5003         PR rust/22574:
5004         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
5005         * rust-lang.c (rust_print_struct_def): Add podata parameter.
5006         Update.
5007         (rust_internal_print_type): Add podata parameter.
5008         (rust_print_type): Update.
5009
5010 2018-06-26  Tom Tromey  <tom@tromey.com>
5011
5012         * typeprint.h (struct print_offset_data) <update, finish,
5013         maybe_print_hole>: New methods.
5014         <indentation>: New constant.
5015         * typeprint.c (print_offset_data::indentation): Define.
5016         (print_offset_data::maybe_print_hole, print_offset_data::update)
5017         (print_offset_data::finish): Move from c-typeprint.c and rename.
5018         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5019         (print_spaces_filtered_with_print_options): Update.
5020         (c_print_type_union_field_offset, maybe_print_hole)
5021         (c_print_type_struct_field_offset): Move to typeprint.c and
5022         rename.
5023         (c_type_print_base_struct_union): Update.
5024
5025 2018-06-25  Pedro Alves  <palves@redhat.com>
5026
5027         * gdbthread.h (thread_info_ref, delete_thread)
5028         (delete_thread_silent, first_thread_of_inferior)
5029         (any_thread_of_inferior, switch_to_thread)
5030         (enable_thread_stack_temporaries)
5031         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5032         (get_last_thread_stack_temporary)
5033         (value_in_thread_stack_temporaries, can_access_registers_thread):
5034         Spell out "struct thread_info" instead of just "thread_info".
5035         * inferior.h (notice_new_inferior): Likewise.
5036
5037 2018-06-25  Pedro Alves  <palves@redhat.com>
5038
5039         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5040         pass thread_info pointer to delete_thread.
5041         (windows_nat_target::detach): Pass inferior pointer to
5042         detach_inferior.
5043         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5044         delete_thread.
5045         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5046         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5047         and pass a thread_info pointer to delete_thread.
5048         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5049         pass thread_info pointer to delete_thread.
5050         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5051         delete_thread_silent call.
5052         * procfs.c (procfs_target::detach): Pass inferior pointer to
5053         detach_inferior.
5054         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5055         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5056         delete_thread_silent call.
5057         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5058         pass thread_info pointer to delete_thread.
5059         (windows_nat_target::detach): Pass inferior pointer to
5060         delete_inferior.
5061
5062 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5063
5064         * regcache.c (readable_regcache::read_part): Fix asserts.
5065         (reg_buffer::raw_collect_part): New function.
5066         (regcache::write_part): Fix asserts.
5067         (reg_buffer::raw_supply_part): New function.
5068         (regcache::transfer_regset_register): New helper function.
5069         (regcache::transfer_regset): Call new functions.
5070         (regcache_supply_regset): Use gdb_byte*.
5071         (regcache::supply_regset): Likewise.
5072         (regcache_collect_regset): Likewise.
5073         (regcache::collect_regset): Likewise.
5074         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5075         (reg_buffer::raw_supply_part): Likewise.
5076         (regcache::transfer_regset_register): Likewise.
5077         (regcache::transfer_regset): Use gdb_byte*.
5078
5079 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5080
5081         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5082
5083 2018-06-21  Pedro Alves  <palves@redhat.com>
5084
5085         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5086         instead of a ptid_t.  All callers adjusted.
5087         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5088         adjusted.
5089         (print_ada_task_info, display_current_task_id, task_command_1):
5090         Adjust.
5091         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5092         inferior_thread.
5093         (breakpoint_kind): Adjust.
5094         (remove_breakpoints_pid): Rename to ...
5095         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5096         pointer.  All callers adjusted.
5097         (bpstat_clear_actions): Use inferior_thread.
5098         (get_bpstat_thread): New.
5099         (bpstat_do_actions): Use it.
5100         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5101         to take a thread_info pointer.  All callers adjusted.
5102         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5103         (breakpoint_re_set_thread): Use inferior_thread.
5104         * breakpoint.h (struct inferior): Forward declare.
5105         (bpstat_stop_status): Update.
5106         (remove_breakpoints_pid): Delete.
5107         (remove_breakpoints_inf): New.
5108         * bsd-uthread.c (bsd_uthread_target::wait)
5109         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5110         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5111         (maint_btrace_packet_history_cmd)
5112         (maint_btrace_clear_packet_history_cmd): Adjust.
5113         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5114         inferior_thread.
5115         * cli/cli-interp.c: Include "inferior.h".
5116         * common/refcounted-object.h (struct
5117         refcounted_object_ref_policy): New.
5118         * compile/compile-object-load.c: Include gdbthread.h.
5119         (store_regs): Use inferior_thread.
5120         * corelow.c (core_target::close): Use current_inferior.
5121         (core_target_open): Adjust to use first_thread_of_inferior and use
5122         the current inferior.
5123         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5124         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5125         <thread>: ... this new field.  All references adjusted.
5126         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5127         Take a thread_info pointer instead of a ptid_t.
5128         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5129         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5130         thread_info pointer instead of a ptid_t.
5131         * elfread.c: Include "inferior.h".
5132         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5133         Use inferior_thread.
5134         * eval.c (evaluate_subexp): Likewise.
5135         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5136         inferior_thread.
5137         * gdb_proc_service.h (struct thread_info): Forward declare.
5138         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5139         <thread>: ... this new field.  All references adjusted.
5140         * gdbarch.h, gdbarch.c: Regenerate.
5141         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5142         'thread' parameter.  All implementations and callers adjusted.
5143         * gdbthread.h (thread_info) <set_running>: New method.
5144         (delete_thread, delete_thread_silent): Take a thread_info pointer
5145         instead of a ptid.
5146         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5147         (first_thread_of_process): Delete, replaced by ...
5148         (first_thread_of_inferior): ... this new function.  All callers
5149         adjusted.
5150         (any_live_thread_of_process): Delete, replaced by ...
5151         (any_live_thread_of_inferior): ... this new function.  All callers
5152         adjusted.
5153         (switch_to_thread, switch_to_no_thread): Declare.
5154         (is_executing): Delete.
5155         (enable_thread_stack_temporaries): Update comment.
5156         <enable_thread_stack_temporaries>: Take a thread_info pointer
5157         instead of a ptid_t.  Incref the thread.
5158         <~enable_thread_stack_temporaries>: Decref the thread.
5159         <m_ptid>: Delete
5160         <m_thr>: New.
5161         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5162         (get_last_thread_stack_temporary)
5163         (value_in_thread_stack_temporaries, can_access_registers_thread):
5164         Take a thread_info pointer instead of a ptid_t.  All callers
5165         adjusted.
5166         * infcall.c (get_call_return_value): Use inferior_thread.
5167         (run_inferior_call): Work with thread pointers instead of ptid_t.
5168         (call_function_by_hand_dummy): Work with thread pointers instead
5169         of ptid_t.  Use thread_info_ref.
5170         * infcmd.c (proceed_thread_callback): Access thread's state
5171         directly.
5172         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5173         access thread's state directly.
5174         (continue_command): Use inferior_thread.
5175         (info_program_command): Use find_thread_ptid and access thread
5176         state directly.
5177         (proceed_after_attach_callback): Use thread state directly.
5178         (notice_new_inferior): Take a thread_info pointer instead of a
5179         ptid_t.  All callers adjusted.
5180         (exit_inferior): Take an inferior pointer instead of a pid.  All
5181         callers adjusted.
5182         (exit_inferior_silent): New.
5183         (detach_inferior): Delete.
5184         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5185         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5186         (detach_inferior_command, kill_inferior_command): Use
5187         find_inferior_id instead of valid_gdb_inferior_id and
5188         gdb_inferior_id_to_pid.
5189         (inferior_command): Use inferior and thread pointers.
5190         * inferior.h (struct thread_info): Forward declare.
5191         (notice_new_inferior): Take a thread_info pointer instead of a
5192         ptid_t.  All callers adjusted.
5193         (detach_inferior): Delete declaration.
5194         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5195         instead of a pid.  All callers adjusted.
5196         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5197         (valid_gdb_inferior_id): Delete.
5198         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5199         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5200         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5201         ...
5202         <inf>: ... this new field.
5203         <step_ptid>: Delete, replaced by ...
5204         <step_thread>: ... this new field.
5205         (get_displaced_stepping_state): Take an inferior pointer instead
5206         of a pid.  All callers adjusted.
5207         (displaced_step_in_progress_any_inferior): Adjust.
5208         (displaced_step_in_progress_thread): Take a thread pointer instead
5209         of a ptid_t.  All callers adjusted.
5210         (displaced_step_in_progress, add_displaced_stepping_state): Take
5211         an inferior pointer instead of a pid.  All callers adjusted.
5212         (get_displaced_step_closure_by_addr): Adjust.
5213         (remove_displaced_stepping_state): Take an inferior pointer
5214         instead of a pid.  All callers adjusted.
5215         (displaced_step_prepare_throw, displaced_step_prepare)
5216         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5217         All callers adjusted.
5218         (start_step_over): Adjust.
5219         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5220         displaced step queue.
5221         (do_target_resume): Adjust.
5222         (fetch_inferior_event): Use inferior_thread.
5223         (context_switch, get_inferior_stop_soon): Take an
5224         execution_control_state pointer instead of a ptid_t.  All callers
5225         adjusted.
5226         (switch_to_thread_cleanup): Delete.
5227         (stop_all_threads): Use scoped_restore_current_thread.
5228         * inline-frame.c: Include "gdbthread.h".
5229         (inline_state) <inline_state>: Take a thread pointer instead of a
5230         ptid_t.  All callers adjusted.
5231         <ptid>: Delete, replaced by ...
5232         <thread>: ... this new field.
5233         (find_inline_frame_state): Take a thread pointer instead of a
5234         ptid_t.  All callers adjusted.
5235         (skip_inline_frames, step_into_inline_frame)
5236         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5237         pointer instead of a ptid_t.  All callers adjusted.
5238         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5239         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5240         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5241         pointers directly.
5242         * linux-nat.c (get_detach_signal): Likewise.
5243         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5244         (thread_db_notice_clone): Adjust.
5245         (thread_db_find_new_threads_silently)
5246         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5247         a thread pointer instead of a ptid_t.  All callers adjusted.
5248         * mi/mi-cmd-var.c: Include "inferior.h".
5249         (mi_cmd_var_update_iter): Update to use thread pointers.
5250         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5251         inferior directly.
5252         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5253         out to ...
5254         (mi_output_running): ... this new function.
5255         (mi_on_resume_1): Adjust to use it.
5256         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5257         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5258         directly.
5259         (interrupt_thread_callback): : Adjust to use thread and inferior
5260         pointers.
5261         * proc-service.c: Include "gdbthread.h".
5262         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5263         * progspace-and-thread.c: Include "inferior.h".
5264         * progspace.c: Include "inferior.h".
5265         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5266         hold a reference to an inferior_object.
5267         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5268         inferior_thread.
5269         * python/py-inferior.c (struct inferior_object): Give the type a
5270         tag name instead of a typedef.
5271         (python_on_normal_stop): No need to check if the current thread is
5272         listed.
5273         (inferior_to_inferior_object): Change return type to
5274         inferior_object.  All callers adjusted.
5275         (find_thread_object): Delete, bits factored out to ...
5276         (thread_to_thread_object): ... this new function.
5277         * python/py-infthread.c (create_thread_object): Use
5278         inferior_to_inferior_object.
5279         (thpy_is_stopped): Use thread pointer directly.
5280         (gdbpy_selected_thread): Use inferior_thread.
5281         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5282         field, replaced with ...
5283         <thread>: ... this new field.  All users adjusted.
5284         (btpy_insn_or_gap_new): Drop const.
5285         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5286         callers adjusted.
5287         * python/py-record.c: Include "gdbthread.h".
5288         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5289         a ptid_t.  All callers adjusted.
5290         (gdbpy_current_recording): Use inferior_thread.
5291         * python/py-record.h (recpy_record_object) <ptid>: Delete
5292         field, replaced with ...
5293         <thread>: ... this new field.  All users adjusted.
5294         (recpy_element_object) <ptid>: Delete
5295         field, replaced with ...
5296         <thread>: ... this new field.  All users adjusted.
5297         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5298         a ptid_t.  All callers adjusted.
5299         * python/py-threadevent.c: Include "gdbthread.h".
5300         (get_event_thread): Use thread_to_thread_object.
5301         * python/python-internal.h (struct inferior_object): Forward
5302         declare.
5303         (find_thread_object, find_inferior_object): Delete declarations.
5304         (thread_to_thread_object, inferior_to_inferior_object): New
5305         declarations.
5306         * record-btrace.c: Include "inferior.h".
5307         (require_btrace_thread): Use inferior_thread.
5308         (record_btrace_frame_sniffer)
5309         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5310         (get_thread_current_frame): Use scoped_restore_current_thread and
5311         switch_to_thread.
5312         (get_thread_current_frame): Use thread pointer directly.
5313         (record_btrace_replay_at_breakpoint): Use thread's inferior
5314         pointer directly.
5315         * record-full.c: Include "inferior.h".
5316         * regcache.c: Include "gdbthread.h".
5317         (get_thread_arch_regcache): Use the inferior's address space
5318         directly.
5319         (get_thread_regcache, registers_changed_thread): New.
5320         * regcache.h (get_thread_regcache(thread_info *thread)): New
5321         overload.
5322         (registers_changed_thread): New.
5323         (remote_target) <remote_detach_1>: Swap order of parameters.
5324         (remote_add_thread): <remote_add_thread>: Return the new thread.
5325         (get_remote_thread_info(ptid_t)): New overload.
5326         (remote_target::remote_notice_new_inferior): Use thread pointers
5327         directly.
5328         (remote_target::process_initial_stop_replies): Use
5329         thread_info::set_running.
5330         (remote_target::remote_detach_1, remote_target::detach)
5331         (extended_remote_target::detach): Adjust.
5332         * stack.c (frame_show_address): Use inferior_thread.
5333         * target-debug.h (target_debug_print_thread_info_pp): New.
5334         * target-delegates.c: Regenerate.
5335         * target.c (default_thread_address_space): Delete.
5336         (memory_xfer_partial_1): Use current_inferior.
5337         (target_detach): Use current_inferior.
5338         (target_thread_address_space): Delete.
5339         (generic_mourn_inferior): Use current_inferior.
5340         * target.h (struct target_ops) <thread_address_space>: Delete.
5341         (target_thread_address_space): Delete.
5342         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5343         pointers directly.
5344         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5345         thread pointer instead of a ptid_t.  Adjust all callers.
5346         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5347         (first_thread_of_process): Delete, replaced by ...
5348         (first_thread_of_inferior): ... this new function.  All callers
5349         adjusted.
5350         (any_thread_of_process): Rename to ...
5351         (any_thread_of_inferior): ... this, and take an inferior pointer.
5352         (any_live_thread_of_process): Rename to ...
5353         (any_live_thread_of_inferior): ... this, and take an inferior
5354         pointer.
5355         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5356         (value_in_thread_stack_temporaries)
5357         (get_last_thread_stack_temporary): Take a thread pointer instead
5358         of a ptid_t.  Adjust all callers.
5359         (thread_info::set_running): New.
5360         (validate_registers_access): Use inferior_thread.
5361         (can_access_registers_ptid): Rename to ...
5362         (can_access_registers_thread): ... this, and take a thread
5363         pointer.
5364         (print_thread_info_1): Adjust to compare thread pointers instead
5365         of ptids.
5366         (switch_to_no_thread, switch_to_thread): Make extern.
5367         (scoped_restore_current_thread::~scoped_restore_current_thread):
5368         Use m_thread pointer directly.
5369         (scoped_restore_current_thread::scoped_restore_current_thread):
5370         Use inferior_thread.
5371         (thread_command): Use thread pointer directly.
5372         (thread_num_make_value_helper): Use inferior_thread.
5373         * top.c (execute_command): Use inferior_thread.
5374         * tui/tui-interp.c: Include "inferior.h".
5375         * varobj.c (varobj_create): Use inferior_thread.
5376         (value_of_root_1): Use find_thread_global_id instead of
5377         global_thread_id_to_ptid.
5378
5379 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5380
5381         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5382         possible.
5383         (regcache::write_part): Likewise.
5384         (readable_regcache::cooked_read_part): Update comment.
5385         (readable_regcache::cooked_write_part): Likewise.
5386         * regcache.h: (readable_regcache::read_part): Likewise.
5387         (regcache::write_part): Likewise.
5388
5389 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5390             Dirk Schubert  <dirk.schubert@arm.com>
5391
5392         * aarch64-linux-nat.c (post_attach): New.
5393         (aarch64_linux_nat_target::post_attach): Override post_attach to
5394         record the number of hardware debug registers.
5395
5396 2018-06-20  Tom Tromey  <tom@tromey.com>
5397
5398         * python/py-param.c (add_setshow_generic): Make parameters const.
5399         (parmpy_init): Update.
5400
5401 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5402
5403         * regcache.h (regcache_cooked_read_ftype): Rename to...
5404         (register_read_ftype): ...this, change type to function_view.
5405         (class reg_buffer) <save>: Remove src parameter.
5406         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5407         parameter non-const in first overload.  Remove src parameter in
5408         second overload.
5409         * regcache.c (do_cooked_read): Remove.
5410         (readonly_detached_regcache::readonly_detached_regcache): Make
5411         parameter non-const, adjust call to other constructor.
5412         (reg_buffer::save): Remove src parameter.
5413         * frame.c (do_frame_register_read): Remove.
5414         (frame_save_as_regcache): Use lambda function.
5415         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5416         parameter to ppu2spu_data *.
5417         (ppu2spu_sniffer): Use lambda function.
5418
5419 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5420
5421         * record-full.c (record_full_target::insert_breakpoint): Remove
5422         "struct" keyword, add const.
5423
5424 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5425
5426         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5427         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5428         * configure.ac: Remove AC_PREREQ, add missing quoting.
5429         * gnulib/configure.ac: Modernize usage of
5430         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5431         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5432         (AUTOMAKE_VERSION): Bump to 1.15.1.
5433         * configure: Re-generate.
5434         * config.in: Re-generate.
5435         * aclocal.m4: Re-generate.
5436         * gnulib/aclocal.m4: Re-generate.
5437         * gnulib/config.in: Re-generate.
5438         * gnulib/configure: Re-generate.
5439         * gnulib/import/Makefile.in: Re-generate.
5440
5441 2018-06-19  Pedro Alves  <palves@redhat.com>
5442
5443         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5444         (lookup_minimal_symbol_by_pc_section): ... here with
5445         gdb_assert_not_reached added.
5446
5447 2018-06-19  Pedro Alves  <palves@redhat.com>
5448
5449         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5450         parameter with a block parameter.  Compare location's block symbol
5451         with the frame's block instead of addresses.
5452         (skip_inline_frames): Pass the current block instead of the
5453         frame's address.  Break out as soon as we determine the frame
5454         should not be skipped.
5455
5456 2018-06-18  Tom Tromey  <tom@tromey.com>
5457
5458         * solib-aix.c (solib_aix_get_section_offsets): Return
5459         unique_xmalloc_ptr.
5460         (solib_aix_solib_create_inferior_hook): Update.
5461
5462 2018-06-18  Tom Tromey  <tom@tromey.com>
5463
5464         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5465
5466 2018-06-18  Tom Tromey  <tom@tromey.com>
5467
5468         * solib-frv.c (frv_relocate_main_executable): Use
5469         unique_xmalloc_ptr.
5470         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5471         unique_xmalloc_ptr.
5472
5473 2018-06-18  Tom Tromey  <tom@tromey.com>
5474
5475         * objfiles.h (inhibit_section_map_updates): Update.
5476         (resume_section_map_updates, resume_section_map_updates_cleanup):
5477         Remove.
5478         * solib-svr4.c (svr4_handle_solib_event): Update.
5479         * objfiles.c (inhibit_section_map_updates): Return
5480         scoped_restore_tmpl<int>.
5481         (resume_section_map_updates, resume_section_map_updates_cleanup):
5482         Remove.
5483
5484 2018-06-18  Tom Tromey  <tom@tromey.com>
5485
5486         * valprint.h (read_string): Update.
5487         * valprint.c (read_string): Change type of "buffer".
5488         (val_print_string): Update.
5489         * python/py-value.c (valpy_string): Update.
5490         * language.h (struct language_defn) <la_get_string>: Change
5491         type of "buffer".
5492         (default_get_string, c_get_string): Update.
5493         * language.c (default_get_string): Change type of "buffer".
5494         * guile/scm-value.c (gdbscm_value_to_string): Update.
5495         * c-lang.c (c_get_string): Change type of "buffer".
5496
5497 2018-06-18  Tom Tromey  <tom@tromey.com>
5498
5499         * ser-mingw.c (struct pipe_state_destroyer): New.
5500         (pipe_state_up): New typedef.
5501         (cleanup_pipe_state): Remove.
5502         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5503
5504 2018-06-18  Tom Tromey  <tom@tromey.com>
5505
5506         * rust-lang.h (rust_yyerror): Don't declare.
5507         * rust-lang.c (rust_language_defn): Update.
5508         * rust-exp.y (yyerror): Now static.
5509         * parse.c (parse_exp_in_context_1): Update.
5510         * p-lang.h (p_yyerror): Don't declare.
5511         * p-lang.c (p_language_defn): Update.
5512         * p-exp.y (yyerror): Now static.
5513         * opencl-lang.c (opencl_language_defn): Update.
5514         * objc-lang.c (objc_language_defn): Update.
5515         * m2-lang.h (m2_yyerror): Don't declare.
5516         * m2-lang.c (m2_language_defn): Update.
5517         * m2-exp.y (yyerror): Now static.
5518         * language.h (struct language_defn) <la_error>: Remove.
5519         * language.c (unk_lang_error): Remove.
5520         (unknown_language_defn, auto_language_defn): Remove.
5521         * go-lang.h (go_yyerror): Don't declare.
5522         * go-lang.c (go_language_defn): Update.
5523         * go-exp.y (yyerror): Now static.
5524         * f-lang.h (f_yyerror): Don't declare.
5525         * f-lang.c (f_language_defn): Update.
5526         * f-exp.y (yyerror): Now static.
5527         * d-lang.h (d_yyerror): Don't declare.
5528         * d-lang.c (d_language_defn): Update.
5529         * d-exp.y (yyerror): Now static.
5530         * c-lang.h (c_yyerror): Don't declare.
5531         * c-lang.c (c_language_defn, cplus_language_defn)
5532         (asm_language_defn, minimal_language_defn): Update.
5533         * c-exp.y (yyerror): Now static.
5534         * ada-lang.h (ada_yyerror): Don't declare.
5535         * ada-lang.c (ada_language_defn): Update.
5536         * ada-exp.y (yyerror): Now static.
5537
5538 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5539
5540         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5541         (store_sveregs_to_thread): Likewise.
5542         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5543         (aarch64_linux_store_inferior_registers): Likewise.
5544         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5545         function.
5546         (aarch64_sve_regs_copy_to_regcache): Likewise.
5547         (aarch64_sve_regs_copy_from_regcache): Likewise.
5548         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5549         declaration.
5550         (aarch64_sve_regs_copy_to_regcache): Likewise.
5551         (aarch64_sve_regs_copy_from_regcache): Likewise.
5552         (sve_context): Structure from Linux headers.
5553         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5554         (SVE_SIG_ZREG_SIZE): Likewise.
5555         (SVE_SIG_PREG_SIZE): Likewise.
5556         (SVE_SIG_FFR_SIZE): Likewise.
5557         (SVE_SIG_REGS_OFFSET): Likewise.
5558         (SVE_SIG_ZREGS_OFFSET): Likewise.
5559         (SVE_SIG_ZREG_OFFSET): Likewise.
5560         (SVE_SIG_ZREGS_SIZE): Likewise.
5561         (SVE_SIG_PREGS_OFFSET): Likewise.
5562         (SVE_SIG_PREG_OFFSET): Likewise.
5563         (SVE_SIG_PREGS_SIZE): Likewise.
5564         (SVE_SIG_FFR_OFFSET): Likewise.
5565         (SVE_SIG_REGS_SIZE): Likewise.
5566         (SVE_SIG_CONTEXT_SIZE): Likewise.
5567         (SVE_PT_REGS_MASK): Likewise.
5568         (SVE_PT_REGS_FPSIMD): Likewise.
5569         (SVE_PT_REGS_SVE): Likewise.
5570         (SVE_PT_VL_INHERIT): Likewise.
5571         (SVE_PT_VL_ONEXEC): Likewise.
5572         (SVE_PT_REGS_OFFSET): Likewise.
5573         (SVE_PT_FPSIMD_OFFSET): Likewise.
5574         (SVE_PT_FPSIMD_SIZE): Likewise.
5575         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5576         (SVE_PT_SVE_PREG_SIZE): Likewise.
5577         (SVE_PT_SVE_FFR_SIZE): Likewise.
5578         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5579         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5580         (__SVE_SIG_TO_PT): Likewise.
5581         (SVE_PT_SVE_OFFSET): Likewise.
5582         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5583         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5584         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5585         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5586         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5587         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5588         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5589         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5590         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5591         (SVE_PT_SVE_SIZE): Likewise.
5592         (SVE_PT_SIZE): Likewise.
5593         (HAS_SVE_STATE): New define.
5594
5595 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5596
5597         * nat/aarch64-sve-linux-sigcontext.h: New file.
5598         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5599         new files.
5600         (SVE_VQ_MIN): Likewise.
5601         (SVE_VQ_MAX): Likewise.
5602         (SVE_VL_MIN): Likewise.
5603         (SVE_VL_MAX): Likewise.
5604         (SVE_NUM_ZREGS): Likewise.
5605         (SVE_NUM_PREGS): Likewise.
5606         (sve_vl_valid): Likewise.
5607         (struct user_sve_header): Likewise.
5608
5609 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5610             Richard Bunt <Richard.Bunt@arm.com>
5611
5612         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5613         was requested by GDB.
5614
5615 2018-06-15  Tom de Vries  <tdevries@suse.de>
5616
5617         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5618
5619 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5620
5621         * gnulib/update-gnulib.sh: Print expected versions of
5622         autoconf/aclocal.
5623
5624 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5625
5626         * arch-utils.c (default_type_align): Use type_length_units.
5627         * gdbtypes.c (type_align): Use type_length_units.
5628
5629 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5630
5631         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5632         of 'define' command.
5633
5634 2018-06-14  Tom de Vries  <tdevries@suse.de>
5635
5636         PR cli/22573
5637         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5638         get_no_prettyformat_print_options.
5639
5640 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5641
5642         * sparc-nat.h: Include target.h.
5643         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5644         <fetch_registers>: Remove this argument in function call.
5645         <store_registers>: Remove this argument in function call, remove
5646         extra semicolon.
5647         <low_forget_process>: Call sparc64_forget_process instead of
5648         sparc_forget_process.
5649
5650 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5651
5652         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5653         (procfs_target::make_corefile_notes): Adjust to new
5654         target_read_alloc return type.
5655
5656 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5657             Stephen Roberts  <stephen.roberts@arm.com>
5658
5659         PR gdb/22882
5660         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5661         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5662         Move should_notify_stop local into more inner scope.
5663
5664 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5665             Stephen Roberts  <stephen.roberts@arm.com>
5666
5667         PR gdb/22882
5668         * infrun.c (resume_1): Add call to mark_async_event_handler.
5669
5670 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5671
5672         * infrun.c (do_target_wait): Change old version of $pc printed.
5673
5674 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
5675
5676         * dwarf2read.c (read_index_from_section): Rename to...
5677         (read_gdb_index_from_section): ... this, update all callers.
5678         (dwarf2_read_index): Rename to...
5679         (dwarf2_read_gdb_index): ... this, update all callers.
5680
5681 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
5682
5683         * gdb/hppa-linux-nat.c
5684         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5685         hppa_linux_nat_target::fetch_registers.
5686
5687 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5688
5689         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
5690         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
5691         (AARCH64_DWARF_SVE_FFR): Likewise.
5692         (AARCH64_DWARF_SVE_P0): Likewise.
5693         (AARCH64_DWARF_SVE_Z0): Likewise.
5694
5695 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5696
5697         * common/common-regcache.h (raw_compare): New function.
5698         * regcache.c (regcache::raw_compare): Likewise.
5699         * regcache.h (regcache::raw_compare): New declaration.
5700
5701 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5702
5703         * common/common-regcache.h (reg_buffer_common): New structure.
5704         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
5705         (reg_buffer::raw_supply): Likewise.
5706         (reg_buffer::raw_supply_integer): Likewise.
5707         (reg_buffer::raw_supply_zeroed): Likewise.
5708         (reg_buffer::raw_collect): Likewise.
5709         (reg_buffer::raw_collect_integer): Likewise.
5710         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
5711         (reg_buffer::raw_supply): Likewise.
5712         (reg_buffer::raw_supply_integer): Likewise.
5713         (reg_buffer::raw_supply_zeroed): Likewise.
5714         (reg_buffer::raw_collect): Likewise.
5715         (reg_buffer::raw_collect_integer): Likewise.
5716
5717 2018-06-10  Tom Tromey  <tom@tromey.com>
5718
5719         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
5720         (class remote_state) <stop_reply_queue>: Now std::vector.
5721         (remote_state::~remote_state)
5722         (remote_target::stop_reply_queue_length): Update.
5723         (struct queue_iter_param, remove_child_of_pending_fork)
5724         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
5725         (check_pending_event_prevents_wildcard_vcont_callback)
5726         (remove_stop_reply_for_inferior)
5727         (remove_stop_reply_of_remote_state)
5728         (remote_notif_remove_once_on_match)
5729         (stop_reply_match_ptid_and_ws)
5730         (remote_kill_child_of_pending_fork): Remove.
5731         (remote_target::remove_new_fork_children)
5732         (remote_target::check_pending_events_prevent_wildcard_vcont)
5733         (remote_target::discard_pending_stop_replies)
5734         (remote_target::discard_pending_stop_replies_in_queue)
5735         (remote_target::remote_notif_remove_queued_reply)
5736         (remote_target::queued_stop_reply)
5737         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
5738         (remote_target::wait, remote_target::kill_new_fork_children)
5739         (remote_target::async): Update.
5740
5741 2018-06-10  Tom Tromey  <tom@tromey.com>
5742
5743         * record-full.c (record_full_arch_list_cleanups): Remove.
5744         (record_full_message): Use try/catch.
5745         (record_full_wait_cleanups): Remove.
5746         (record_full_wait_1): Use try/catch.
5747         (record_full_restore): Likewise.
5748
5749 2018-06-10  Tom Tromey  <tom@tromey.com>
5750
5751         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
5752         declare VEC.  Add constructor.
5753         <in_target_beneath>: Now bool.
5754         (record_full_breakpoints): Now a std::vector, static.
5755         (record_full_sync_record_breakpoints)
5756         (record_full_init_record_breakpoints)
5757         (record_full_target::insert_breakpoint)
5758         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
5759
5760 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
5761
5762         * dwarf2read.c (process_cu_includes): Remove struct keyword.
5763         * serial.c (serial_interface_lookup): Remove struct keyword.
5764
5765 2018-06-10  Tom Tromey  <tom@tromey.com>
5766
5767         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
5768         method.
5769         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
5770         a method.
5771         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
5772         method.
5773         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
5774         "beneath" as a method.
5775         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
5776         Use "beneath" as a method.
5777
5778 2018-06-10  Tom Tromey  <tom@tromey.com>
5779
5780         * tracefile.c (struct trace_file_writer_deleter): New.
5781         <operator()>: Rename from trace_file_writer_xfree.
5782         (trace_file_writer_up): New typedef.
5783         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
5784
5785 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5786
5787         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
5788         <m_registers, m_register_status>: Change type to
5789         std::unique_ptr.
5790         * regcache.c (reg_buffer::reg_buffer): Use new instead of
5791         XCNEWVEC.
5792
5793 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5794
5795         * common/common-regcache.h (enum register_status): Add
5796         underlying type "signed char".
5797         * regcache.h (reg_buffer) <m_register_status>: Change type to
5798         register_status *.
5799         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5800         register_status instead of signed char.
5801         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5802         (reg_buffer::get_register_status): Remove cast.
5803         (readable_regcache::raw_read): Remove cast.
5804         (readable_regcache::cooked_read): Remove cast.
5805
5806 2018-06-09  Tom Tromey  <tom@tromey.com>
5807
5808         * source.c (reverse_search_command, forward_search_command): Use
5809         scoped_fd.
5810
5811 2018-06-09  Tom Tromey  <tom@tromey.com>
5812
5813         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5814         (serial_ops_list): Now static, std::vector.
5815         (serial_interface_lookup, serial_add_interface): Update.
5816
5817 2018-06-09  Tom Tromey  <tom@tromey.com>
5818
5819         * dwarf2read.c (process_cu_includes): Update.
5820         (process_full_comp_unit): Update.
5821         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5822         std::vector.
5823
5824 2018-06-08  Paul Koning  <paul_koning@dell.com>
5825
5826         PR gdb/23252
5827
5828         * python/python.c (do_start_initialization):
5829         Avoid call to internal Python API.
5830         (init__gdb_module): New function.
5831
5832 2018-06-08  Gary Benson <gbenson@redhat.com>
5833
5834         * linux-thread-db.c (valprint.h): New include.
5835         (struct check_thread_db_info): New structure.
5836         (check_thread_db_on_load, tdb_testinfo): New static globals.
5837         (check_thread_db, check_thread_db_callback): New functions.
5838         (try_thread_db_load_1): Run integrity checks if requested.
5839         (maintenance_check_libthread_db): New function.
5840         (_initialize_thread_db): Register "maint check libthread-db"
5841         and "maint set/show check-libthread-db".
5842         * NEWS: Mention the above new commands.
5843
5844 2018-06-08  Tom Tromey  <tom@tromey.com>
5845
5846         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5847         now a method.
5848
5849 2018-06-08  Tom Tromey  <tom@tromey.com>
5850
5851         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5852
5853 2018-06-08  Tom Tromey  <tom@tromey.com>
5854
5855         * common/btrace-common.h (struct btrace_data): Add constructor,
5856         destructor, move assignment operator.
5857         <empty, clear, fini>: New methods.
5858         <format>: Initialize.
5859         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5860         (btrace_data_empty): Don't declare.
5861         * common/btrace-common.c (btrace_data_init): Remove.
5862         (btrace_data::fini): Rename from btrace_data_fini.
5863         (btrace_data::empty): Rename from btrace_data_empty.
5864         (btrace_data::clear): Rename from btrace_data_clear.  Return
5865         bool.
5866         * btrace.h (make_cleanup_btrace_data): Don't declare.
5867         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5868         (parse_xml_btrace): Update.
5869         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5870         (maint_btrace_clear_packet_history_cmd): Update.
5871
5872 2018-06-07  Pedro Alves  <palves@redhat.com>
5873
5874         * target.h (target_ops) <beneath>: Now a method.  All references
5875         updated.
5876         (class target_stack): New.
5877         * target.c (g_target_stack): New.
5878         (g_current_top_target): Delete.
5879         (current_top_target): Get the top target out of g_target_stack.
5880         (target_stack::push, target_stack::unpush): New.
5881         (push_target, unpush_target): Reimplement.
5882         (target_is_pushed): Reimplement in terms of g_target_stack.
5883         (target_ops::beneath, target_stack::find_beneath): New.
5884
5885 2018-06-07  Pedro Alves  <palves@redhat.com>
5886
5887         * target.h (find_target_beneath): Delete declaration.
5888         * target.c (find_target_beneath): Delete definition.
5889         * aix-thread.c: All callers of find_target_beneath adjusted to
5890         call target_ops::beneath instead.
5891         * bsd-uthread.c: Likewise.
5892         * linux-thread-db.c: Likewise.
5893         * ravenscar-thread.c: Likewise.
5894         * sol-thread.c: Likewise.
5895         * spu-multiarch.c: Likewise.
5896
5897 2018-06-07  Pedro Alves  <palves@redhat.com>
5898
5899         * target.h (target_ops) <beneath>: Now a method.  All references
5900         updated.
5901         (target_ops) <m_beneath>: New.
5902         * target.c (target_ops::beneath): New.
5903         * corelow.c: Adjust all references to target_ops::beneath.
5904         * linux-thread-db.c: Likewise.
5905         * make-target-delegates: Likewise.
5906         * record-btrace.c: Likewise.
5907         * record-full.c: Likewise.
5908         * remote.c: Likewise.
5909         * target.c: Likewise.
5910         * target-delegates.c: Regenerate.
5911
5912 2018-06-07  Pedro Alves  <palves@redhat.com>
5913
5914         * target.h (target_stack): Delete.
5915         (current_top_target): Declare function.
5916         * target.c (target_stack): Delete.
5917         (g_current_top_target): New.
5918         (current_top_target): New function.
5919         * auxv.c: Use current_top_target instead of target_stack
5920         throughout.
5921         * avr-tdep.c: Likewise.
5922         * breakpoint.c: Likewise.
5923         * corefile.c: Likewise.
5924         * elfread.c: Likewise.
5925         * eval.c: Likewise.
5926         * exceptions.c: Likewise.
5927         * frame.c: Likewise.
5928         * gdbarch-selftests.c: Likewise.
5929         * gnu-v3-abi.c: Likewise.
5930         * ia64-tdep.c: Likewise.
5931         * ia64-vms-tdep.c: Likewise.
5932         * infcall.c: Likewise.
5933         * infcmd.c: Likewise.
5934         * infrun.c: Likewise.
5935         * linespec.c: Likewise.
5936         * linux-tdep.c: Likewise.
5937         * minsyms.c: Likewise.
5938         * ppc-linux-nat.c: Likewise.
5939         * ppc-linux-tdep.c: Likewise.
5940         * procfs.c: Likewise.
5941         * regcache.c: Likewise.
5942         * remote.c: Likewise.
5943         * rs6000-tdep.c: Likewise.
5944         * s390-linux-nat.c: Likewise.
5945         * s390-tdep.c: Likewise.
5946         * solib-aix.c: Likewise.
5947         * solib-darwin.c: Likewise.
5948         * solib-dsbt.c: Likewise.
5949         * solib-spu.c: Likewise.
5950         * solib-svr4.c: Likewise.
5951         * solib-target.c: Likewise.
5952         * sparc-tdep.c: Likewise.
5953         * sparc64-tdep.c: Likewise.
5954         * spu-tdep.c: Likewise.
5955         * symfile.c: Likewise.
5956         * symtab.c: Likewise.
5957         * target-descriptions.c: Likewise.
5958         * target-memory.c: Likewise.
5959         * target.c: Likewise.
5960         * target.h: Likewise.
5961         * tracefile-tfile.c: Likewise.
5962         * tracepoint.c: Likewise.
5963         * valops.c: Likewise.
5964         * valprint.c: Likewise.
5965         * value.c: Likewise.
5966         * windows-tdep.c: Likewise.
5967         * mi/mi-main.c: Likewise.
5968
5969 2018-06-07  Tom Tromey  <tom@tromey.com>
5970
5971         * valprint.h (build_address_symbolic): Declare.
5972         * printcmd.c (print_address_symbolic): Update.
5973         (build_address_symbolic): Change "name" and "filename" to
5974         std::string.
5975         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5976         Update.
5977         * defs.h (build_address_symbolic): Remove declaration.
5978
5979 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5980
5981         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5982         (aarch64_vnv_type): Add function.
5983         (aarch64_pseudo_register_name): Add V regs for SVE.
5984         (aarch64_pseudo_register_type): Likewise.
5985         (aarch64_pseudo_register_reggroup_p): Likewise.
5986         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5987         (aarch64_pseudo_read_value): Add V regs for SVE.
5988         (aarch64_pseudo_write_2): Use V0 offset for SVE
5989         (aarch64_pseudo_write): Add V regs for SVE.
5990         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5991
5992 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5993
5994         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5995         (sve_vl_from_vq): Likewise.
5996
5997 2018-06-05  Tom Tromey  <tom@tromey.com>
5998
5999         * cli/cli-cmds.c (show_version): Update.
6000         * top.c (print_gdb_version): Add "interactive" parameter.
6001         Update.
6002         * main.c (captured_main_1): Update.
6003         * top.h (print_gdb_version): Add "interactive" parameter and a
6004         comment.
6005
6006 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
6007
6008         * common/enum-flags.h: Add trailing semicolon to example in
6009         comment.
6010
6011 2018-06-05  Tom Tromey  <tom@tromey.com>
6012
6013         PR cli/12326:
6014         * NEWS: Add entry about pager.
6015         * utils.c (pagination_disabled_for_command): New global.
6016         (prompt_for_continue): Allow "c" response to prompt.
6017         (reinitialize_more_filter): Clear
6018         pagination_disabled_for_command.
6019         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6020
6021 2018-06-04  Tom Tromey  <tom@tromey.com>
6022
6023         * ada-lang.h (ada_lookup_symbol_list): Update.
6024         * ada-lang.c (resolve_subexp): Update.
6025         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6026         parameter.
6027         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6028         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6029         results parameter to std::vector.
6030         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6031         Update.
6032         * ada-exp.y (block_lookup): Update.
6033         (select_possible_type_sym): Change type of syms.  Remove nsyms
6034         parameter.
6035         (write_var_or_type, write_name_assoc): Update.
6036
6037 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6038
6039         * windows-nat.c (windows_nat_target::xfer_partial): Return
6040         TARGET_XFER_E_IO if we need to delegate to the target beneath
6041         but BENEATH is NULL.
6042
6043 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6044
6045         * Makefile.in (config.status): Add configure.nat as a
6046         dependency.
6047
6048 2018-06-04  Tom Tromey  <tom@tromey.com>
6049
6050         * cp-name-parser.y (cpname_state): Add method declarations.
6051         (HANDLE_QUAL): Update.
6052         (cpname_state::d_grab, cpname_state::fill_comp)
6053         (cpname_state::make_operator, cpname_state::make_dtor)
6054         (cpname_state::make_builtin_type, cpname_state::make_name)
6055         (cpname_state::d_qualify, cpname_state::d_int_type)
6056         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6057         (%union): Move earlier.
6058
6059 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6060
6061         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6062
6063 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6064
6065         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6066         (aarch64_pseudo_write_1): Likewise.
6067         (aarch64_pseudo_read_value): Use helper.
6068         (aarch64_pseudo_write): Likewise.
6069
6070 2018-06-04  Pedro Alves  <palves@redhat.com>
6071
6072         * darwin-nat.c (darwin_ops): Delete.
6073         (darwin_attach_pid): Use get_native_target.
6074
6075 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6076
6077         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6078         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6079
6080 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6081
6082         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6083         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6084         (aarch64_gdbarch_init): Check for SVE.
6085         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6086
6087 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6088
6089         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6090         * aarch64-tdep.h (aarch64_read_description): Likewise.
6091         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6092         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6093         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6094         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6095         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6096
6097 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6098
6099         * value.c (value_fetch_lazy_bitfield): New.
6100         (value_fetch_lazy_memory): New.
6101         (value_fetch_lazy_register): New.
6102         (value_fetch_lazy): Factor out to smaller functions.
6103
6104 2018-06-01  Tom Tromey  <tom@tromey.com>
6105
6106         * cp-name-parser.y (backslashable, represented): Now const.
6107
6108 2018-06-01  Tom Tromey  <tom@tromey.com>
6109
6110         * cp-name-parser.y: Include parser-defs.h.
6111         (parser_fprintf): Remove declaration.
6112
6113 2018-06-01  Tom Tromey  <tom@tromey.com>
6114
6115         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6116         %parse-param.
6117         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6118         (global_result): Remove globals.
6119         (struct cpname_state): New.
6120         (yyparse): Don't declare.
6121         (yylex, yyerror): Move declarations after %union.
6122         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6123         (make_name): Add state parameter.
6124         Update all callers.
6125         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6126         parameter.
6127         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6128         Update.
6129         (yylex): Add lvalp, state parameters.
6130         (yyerror): Add state parameter.
6131         (cp_demangled_name_to_comp): Update.
6132
6133 2018-06-01  Tom Tromey  <tom@tromey.com>
6134
6135         * cp-name-parser.y (parser_fprintf): Declare.
6136         (GDB_YY_REMAP_PREFIX): Define.
6137         Include yy-remap.h.  Don't redefine yy* identifiers.
6138
6139 2018-06-01  Tom Tromey  <tom@tromey.com>
6140
6141         * python/py-type.c (typy_legacy_template_argument): Update.
6142         * cp-support.h (cp_demangled_name_to_comp): Update.
6143         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6144         parameter to be a "std::string *".
6145         (main): Update.
6146
6147 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6148
6149         * ada-lex.l: Include "diagnostics.h" instead of
6150         "common/diagnostics.h".
6151         * unittests/environ-selftests.c: Likewise.
6152         * common/diagnostics.h: Moved to ../include.
6153
6154 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6155
6156         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6157         to language_mode_manual while calling breakpoint_re_set_one.
6158
6159 2018-06-01  Tom Tromey  <tom@tromey.com>
6160
6161         * valops.c (value_cast_structs, destructor_name_p): Update.
6162         * symtab.c (gdb_mangle_name): Update.
6163         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6164         Update.
6165         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6166         (pascal_object_print_value_fields, pascal_object_print_value):
6167         Update.
6168         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6169         * linespec.c (find_methods): Update.
6170         * gdbtypes.h (type_name_no_tag): Remove.
6171         (type_name_or_error): Rename from type_name_no_tag_or_error.
6172         * gdbtypes.c (type_name_no_tag): Remove.
6173         (type_name_or_error): Rename from type_name_no_tag_or_error.
6174         (lookup_struct_elt_type, check_typedef): Update.
6175         * expprint.c (print_subexp_standard): Update.
6176         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6177         * d-namespace.c (d_lookup_nested_symbol): Update.
6178         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6179         (cp_print_class_member): Update.
6180         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6181         * completer.c (add_struct_fields): Update.
6182         * c-typeprint.c (cp_type_print_derivation_info)
6183         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6184         Update.
6185         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6186         (ada_prefer_type, ada_is_exception_sym): Update.
6187
6188 2018-06-01  Tom Tromey  <tom@tromey.com>
6189
6190         * valops.c (enum_constant_from_type, value_namespace_elt)
6191         (value_maybe_namespace_elt): Update.
6192         * valarith.c (find_size_for_pointer_math): Update.
6193         * target-descriptions.c (make_gdb_type): Update.
6194         * symmisc.c (print_symbol): Update.
6195         * stabsread.c (define_symbol, read_type)
6196         (complain_about_struct_wipeout, add_undefined_type)
6197         (cleanup_undefined_types_1): Update.
6198         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6199         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6200         (rust_internal_print_type, rust_composite_type)
6201         (rust_evaluate_funcall, rust_evaluate_subexp)
6202         (rust_inclusive_range_type_p): Update.
6203         * python/py-type.c (typy_get_tag): Update.
6204         * p-typeprint.c (pascal_type_print_base): Update.
6205         * mdebugread.c (parse_symbol, parse_type): Update.
6206         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6207         Update.
6208         * guile/scm-type.c (gdbscm_type_tag): Update.
6209         * go-lang.c (sixg_string_p): Update.
6210         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6211         Update.
6212         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6213         (TYPE_TAG_NAME): Remove.
6214         * gdbtypes.c (type_name_no_tag): Simplify.
6215         (check_typedef, check_types_equal, recursive_dump_type)
6216         (copy_type_recursive, arch_composite_type): Update.
6217         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6218         in summary mode when needed.
6219         * eval.c (evaluate_funcall): Update.
6220         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6221         (process_structure_scope, read_enumeration_type)
6222         (read_namespace_type, read_module_type, determine_prefix): Update.
6223         * cp-support.c (inspect_type): Update.
6224         * coffread.c (process_coff_symbol, decode_base_type): Update.
6225         * c-varobj.c (c_is_path_expr_parent): Update.
6226         * c-typeprint.c (c_type_print_base_struct_union): Update.
6227         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6228         summary when using C language.
6229         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6230         (gen_maybe_namespace_elt): Update.
6231         * ada-lang.c (ada_type_name): Simplify.
6232         (empty_record, ada_template_to_fixed_record_type_1)
6233         (template_to_static_fixed_type)
6234         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6235
6236 2018-06-01  Tom Tromey  <tom@tromey.com>
6237
6238         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6239         c_print_type.
6240         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6241         (c_print_type): Update.
6242         (c_print_type): New overload.
6243         (c_type_print_varspec_prefix, c_type_print_args)
6244         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6245         (c_type_print_base_struct_union, c_type_print_base_1)
6246         (cp_type_print_method_args): Add "language" parameter.
6247         (c_type_print_base): Update.
6248         * c-lang.h (c_print_type): Add new overload.
6249
6250 2018-06-01  Tom Tromey  <tom@tromey.com>
6251
6252         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6253         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6254
6255 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6256
6257         * aarch64-tdep.c (aarch64_sve_register_names): New const
6258         var.
6259         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6260         (AARCH64_SVE_Z_REGS_NUM): New define.
6261         (AARCH64_SVE_P_REGS_NUM): Likewise.
6262         (AARCH64_SVE_NUM_REGS): Likewise.
6263
6264 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6265
6266         * nat/linux-ptrace.h [__alpha__]
6267         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6268         definitions.
6269
6270 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6271
6272         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6273         the endianness selected.
6274         * NEWS: Document `set endian auto' mode operation update.
6275
6276 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6277
6278         * Makefile.in: Add new header.
6279         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6280         (sve_vl_from_vg): Likewise.
6281         (sve_vq_from_vl): Likewise.
6282         (sve_vl_from_vq): Likewise.
6283         (sve_vq_from_vg): Likewise.
6284         (sve_vg_from_vq): Likewise.
6285         * configure.nat: Add new c file.
6286         * nat/aarch64-sve-linux-ptrace.c: New file.
6287         * nat/aarch64-sve-linux-ptrace.h: New file.
6288
6289 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6290
6291         * aarch64-linux-nat.c (aarch64_linux_read_description):
6292         Add parmeter zero.
6293         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6294         Likewise.
6295         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6296         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6297         (aarch64_gdbarch_init): Add parmeter zero.
6298         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6299         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6300         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6301         parmeter.
6302         * doc/gdb.texinfo: Describe SVE feature
6303         * features/aarch64-sve.c: New file.
6304
6305 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6306
6307         PR gdb/23210
6308         * gdbarch.sh (significant_addr_bit): Default to zero when
6309         not set by target architecture.
6310         * gdbarch.c: Re-generated.
6311         * utils.c (address_significant): Update.
6312
6313 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6314
6315         * stack.c (func_command): Remove trailing newline in call to error.
6316
6317 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6318
6319         * regcache.h (regcache_raw_collect): Remove, update callers to
6320         use regcache::raw_collect.
6321         * regcache.c (regcache_raw_collect): Remove.
6322
6323 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6324
6325         * regcache.h (regcache_raw_supply): Remove, update callers to
6326         use detached_regcache::raw_supply.
6327         * regcache.c (regcache_raw_supply): Remove.
6328
6329 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6330
6331         * regcache.h (regcache_cooked_write_part): Remove, update
6332         callers to use regcache::cooked_write_part.
6333         * regcache.c (regcache_cooked_write_part): Remove.
6334
6335 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6336
6337         * regcache.h (regcache_cooked_read_part): Remove, update callers
6338         to use readable_regcache::cooked_read_part.
6339         * regcache.c (regcache_cooked_read_part): Remove.
6340
6341 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6342
6343         * regcache.h (regcache_cooked_read_value): Remove, update
6344         callers to use readable_regcache::cooked_read_value.
6345         * regcache.c (regcache_cooked_read_value): Remove.
6346
6347 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6348
6349         * regcache.h (regcache_cooked_write): Remove, update callers to
6350         use regcache::cooked_write.
6351         * regcache.c (regcache_cooked_write): Remove.
6352
6353 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6354
6355         * regcache.h (regcache_invalidate): Remove, update callers to
6356         use detached_regcache::invalidate instead.
6357         * regcache.c (regcache_invalidate): Remove.
6358
6359 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6360
6361         * regcache.h (regcache_raw_write_part): Remove, update callers
6362         to use regcache::raw_write_part instead.
6363         * regcache.c (regcache_raw_write_part): Remove.
6364
6365 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6366
6367         * regcache.h (regcache_raw_read_part): Remove, update callers to
6368         use readable_regcache::raw_read_part instead.
6369         * regcache.c (regcache_raw_read_part): Remove.
6370
6371 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6372
6373         * regcache.h (regcache_cooked_read): Remove, update callers to
6374         use readable_regcache::cooked_read instead.
6375         * regcache.c (regcache_cooked_read): Remove.
6376
6377 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6378
6379         * regcache.h (regcache_raw_write): Remove, update callers to use
6380         regcache::raw_write instead.
6381         * regcache.c (regcache_raw_write): Remove.
6382
6383 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6384
6385         * regcache.h (regcache_raw_read): Remove, update callers to use
6386         readable_regcache::raw_read instead.
6387         * regcache.c (regcache_raw_read): Remove.
6388
6389 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6390
6391         * regcache.h (regcache_raw_update): Remove, update callers to
6392         use readable_regcache::raw_update instead.
6393         * regcache.c (regcache_raw_update): Remove.
6394
6395 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6396
6397         * regcache.h (regcache_register_status): Remove, update callers
6398         to use reg_buffer::get_register_status directly instead.
6399         * regcache.c (regcache_register_status): Remove.
6400
6401 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6402
6403         * regcache.h (regcache_get_ptid): Remove, update all callers to
6404         call regcache::ptid instead.
6405         * regcache.c (regcache_get_ptid): Remove.
6406
6407 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6408
6409         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6410
6411 2018-05-30  Pedro Alves  <palves@redhat.com>
6412
6413         * common/common-exceptions.h (exception_rethrow): Use
6414         ATTRIBUTE_NORETURN.
6415
6416 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6417
6418         * breakpoint.c (print_solib_event, check_status_catch_solib):
6419         Remove struct keyword in range-based for loops.
6420         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6421         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6422         Likewise.
6423         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6424         Likewise.
6425         * symfile.c (addr_info_make_relative): Likewise.
6426         * thread.c (value_in_thread_stack_temporaries): Likewise.
6427
6428 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6429
6430         PR gdb/16841
6431         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6432         aggregate type to get its real type before accessing it.
6433
6434 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6435
6436         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6437         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6438         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6439         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6440         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6441         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6442         * printcmd.c (info_address_command): Likewise.
6443
6444 2018-05-29  Tom Tromey  <tom@tromey.com>
6445
6446         * windows-nat.c (handle_exception): Update fall-through comment.
6447
6448 2018-05-29  Tom Tromey  <tom@tromey.com>
6449
6450         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6451         (struct program_space) <added_solibs>: Now a std::vector.
6452         * breakpoint.c (print_solib_event): Update.
6453         (check_status_catch_solib): Update.
6454         * progspace.c (clear_program_space_solib_cache): Update.
6455         * solib.c (update_solib_list): Update.
6456
6457 2018-05-29  Tom Tromey  <tom@tromey.com>
6458
6459         * python/py-type.c (typy_richcompare): Update.
6460         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6461         * gdbtypes.h (types_deeply_equal): Return bool.
6462         (types_equal): Likewise.
6463         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6464         declare VEC.
6465         (check_types_equal): Change worklist to std::vector.  Return
6466         bool.
6467         (struct type_equality_entry): Add constructor.
6468         (compare_maybe_null_strings): Return bool.
6469         (check_types_worklist): Return bool.  Change worklist to
6470         std::vector.
6471         (types_deeply_equal): Use std::vector.
6472         (types_equal): Return bool.
6473         (compare_maybe_null_strings): Simplify.
6474
6475 2018-05-29  Tom Tromey  <tom@tromey.com>
6476
6477         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6478
6479 2018-05-29  Tom Tromey  <tom@tromey.com>
6480
6481         * objc-lang.h: Don't include cp-support.h.
6482         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6483         declare VEC.
6484
6485 2018-05-27  Tom Tromey  <tom@tromey.com>
6486
6487         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6488
6489 2018-05-25  Tom Tromey  <tom@tromey.com>
6490
6491         * value.c (value::location): Initialize.
6492
6493 2018-05-25  Tom Tromey  <tom@tromey.com>
6494
6495         * dbxread.c (init_bincl_list): Remove.
6496         (bincl_list): Now a std::vector.
6497         (bincls_allocated, next_bincl): Remove.
6498         (free_bincl_list, do_free_bincl_list_cleanup)
6499         (make_cleanup_free_bincl_list): Remove.
6500         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6501         unique_xmalloc_ptr.
6502         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6503         (struct header_file_location): Add constructor.
6504         (add_bincl_to_list): Remove.
6505
6506 2018-05-25  Tom Tromey  <tom@tromey.com>
6507
6508         * tui/tui.c (tui_enable): Update.
6509         * mi/mi-interp.c (mi_interp::init): Update.
6510         * interps.h (class interp) <name>: New method.
6511         <m_name>: Rename from name.
6512         (~scoped_restore_interp): Update.
6513         * interps.c (interp::interp): Update.
6514         (interp_add, interp_set, interp_lookup_existing)
6515         (current_interp_named_p): Update.
6516
6517 2018-05-25  Tom Tromey  <tom@tromey.com>
6518
6519         * interps.c (interp_name): Remove.
6520         * mi/mi-interp.c (mi_interp::init): Update.
6521         * interps.h (interp_name): Remove.
6522         (~scoped_restore_interp): Update.
6523         * tui/tui.c (tui_enable): Update.
6524
6525 2018-05-25  Tom Tromey  <tom@tromey.com>
6526
6527         * utils.c (fputs_maybe_filtered): Update.
6528         * linespec.c (decode_line_full): Update.
6529         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6530         (mi_print_breakpoint_for_event, mi_solib_loaded)
6531         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6532         (mi_user_selected_context_changed): Update.
6533         * mi/mi-main.c (mi_execute_command): Update.
6534         * cli/cli-script.c (execute_control_command): Update.
6535         * python/python.c (execute_gdb_command): Update.
6536         * solib.c (info_sharedlibrary_command): Update.
6537         * interps.c (interp_ui_out): Remove.
6538         * interps.h (interp_ui_out): Remove.
6539
6540 2018-05-25  Tom Tromey  <tom@tromey.com>
6541
6542         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6543         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6544         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6545
6546 2018-05-25  Tom Tromey  <tom@tromey.com>
6547
6548         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6549         * interps.c (interp_exec): Use scoped_restore.
6550
6551 2018-05-25  Tom Tromey  <tom@tromey.com>
6552
6553         * remote.c (remote_target::remote_file_get): Use
6554         gdb::byte_vector.
6555         (remote_target::remote_file_put): Likewise.
6556
6557 2018-05-25  Tom Tromey  <tom@tromey.com>
6558
6559         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6560         a std::string.
6561         (get_pe_section_index, add_pe_exported_sym): Update.
6562         (read_pe_exported_syms): Use gdb::def_vector.
6563
6564 2018-05-25  Tom Tromey  <tom@tromey.com>
6565
6566         * frame.c (remove_prev_frame): Remove.
6567         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6568
6569 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6570
6571         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6572         Remove prototypes.
6573         * mips-linux-nat.c (supply_fpregset): Always call
6574         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6575         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6576         `mips_fill_fpregset'.
6577         * mips-linux-tdep.c (mips_supply_fpregset)
6578         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6579         (mips_fill_fpregset_wrapper): Remove functions.
6580         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6581         (mips_linux_fpregset): Remove variable.
6582         (mips_linux_iterate_over_regset_sections): Use
6583         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6584         (mips_linux_o32_sigframe_init): Remove comment.
6585
6586 2018-05-25  Pedro Alves  <palves@redhat.com>
6587
6588         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6589         (struct readahead_cache, struct packet_reg, struct
6590         remote_arch_state, class remote_state): Move higher up in the
6591         file.
6592         (remote_target::m_remote_state): Now an object instead of a pointer.
6593         (remote_target::get_remote_state): Adjust.
6594
6595 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6596
6597         * stack.c (select_and_print_frame): Delete.
6598         (struct function_bounds): Move struct within function.
6599         (func_command): Most content moved into new function
6600         find_frame_for_function, use new function, print result, add
6601         function comment.
6602         (find_frame_for_function): New function, now returns a result.
6603
6604 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6605
6606         * stack.c (iterate_over_block_arg_vars): Fix comment.
6607         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6608
6609 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6610
6611         PR gdb/23203
6612         * frame.c
6613         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6614         Define.
6615         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6616         Define.
6617         * frame.h (class scoped_restore_selected_frame): New class.
6618         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6619         of any exception, use scoped_restore_selected_frame to restore the
6620         frame instead.
6621
6622 2018-05-24  Pedro Alves  <palves@redhat.com>
6623
6624         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6625         override.
6626
6627 2018-05-23  Tom Tromey  <tom@tromey.com>
6628
6629         * complaints.c (struct complaints): Remove.
6630         (symfile_complaint_book): Remove.
6631         (series): New global.
6632         (complaint_internal): Update.
6633         (clear_complaints): Update.
6634
6635 2018-05-23  Tom Tromey  <tom@tromey.com>
6636
6637         * complaints.c (counters): New global.
6638         (struct complain): Remove.
6639         (struct complaints) <root>: Remove.
6640         (complaint_sentinel): Remove.
6641         (symfile_complaint_book): Update.
6642         (find_complaint) Remove.
6643         (complaint_internal, clear_complaints): Update.
6644
6645 2018-05-23  Tom Tromey  <tom@tromey.com>
6646
6647         * complaints.c (struct complain) <file, line>: Remove.
6648         (find_complaint): Remove file, line parameters.
6649         (complaint_internal): Update.
6650
6651 2018-05-23  Tom Tromey  <tom@tromey.com>
6652
6653         * complaints.c (vcomplaint): Remove.
6654         (complaint_internal) Merge in contents of vcomplaint.
6655
6656 2018-05-23  Tom Tromey  <tom@tromey.com>
6657
6658         * complaints.c (struct complaints) <explanation>: Remove.
6659         (symfile_explanations): Remove.
6660         (symfile_complaint_book): Update.
6661         (vcomplaint): Update.
6662         (struct explanation): Remove.
6663
6664 2018-05-23  Tom Tromey  <tom@tromey.com>
6665
6666         * complaints.c (symfile_complaints): Remove.
6667         (complaint_internal): Remove "complaints" parameter.
6668         (clear_complaints, vcomplaint): Remove "c" parameter.
6669         (get_complaints): Remove.
6670         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6671         (dwarf2_debug_line_missing_file_complaint)
6672         (dwarf2_debug_line_missing_end_sequence_complaint)
6673         (dwarf2_complex_location_expr_complaint)
6674         (dwarf2_const_value_length_mismatch_complaint)
6675         (dwarf2_section_buffer_overflow_complaint)
6676         (dwarf2_macro_malformed_definition_complaint)
6677         (dwarf2_invalid_attrib_class_complaint)
6678         (create_addrmap_from_index, dw2_symtab_iter_next)
6679         (dw2_expand_marked_cus)
6680         (dw2_debug_names_iterator::find_vec_in_debug_names)
6681         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6682         (create_debug_type_hash_table, init_cutu_and_read_dies)
6683         (partial_die_parent_scope, add_partial_enumeration)
6684         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6685         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6686         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6687         (create_cus_hash_table, create_dwp_hash_table)
6688         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
6689         (dwarf2_rnglists_process, dwarf2_ranges_process)
6690         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
6691         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
6692         (handle_struct_member_die, process_structure_scope)
6693         (read_array_type, read_common_block, read_module_type)
6694         (read_tag_pointer_type, read_typedef, read_base_type)
6695         (read_subrange_type, load_partial_dies, partial_die_info::read)
6696         (partial_die_info::read, partial_die_info::read)
6697         (partial_die_info::read, read_checked_initial_length_and_offset)
6698         (dwarf2_string_attr, read_formatted_entries)
6699         (dwarf_decode_line_header)
6700         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6701         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
6702         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
6703         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
6704         (get_signatured_type, get_DW_AT_signature_type)
6705         (decode_locdesc, file_file_name, consume_improper_spaces)
6706         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
6707         (dwarf_decode_macro_bytes, dwarf_decode_macros)
6708         (dwarf2_symbol_mark_computed, set_die_type)
6709         (read_attribute_value): Update.
6710         * stap-probe.c (handle_stap_probe, get_stap_base_address):
6711         Update.
6712         * dbxread.c (unknown_symtype_complaint)
6713         (lbrac_mismatch_complaint, repeated_header_complaint)
6714         (set_namestring, function_outside_compilation_unit_complaint)
6715         (read_dbx_symtab, process_one_symbol): Update.
6716         * gdbtypes.c (stub_noname_complaint): Update.
6717         * windows-nat.c (handle_unload_dll): Update.
6718         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
6719         (decode_base_type): Update.
6720         * xcoffread.c (bf_notfound_complaint, ef_complaint)
6721         (eb_complaint, record_include_begin, record_include_end)
6722         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
6723         (process_xcoff_symbol, read_symbol)
6724         (function_outside_compilation_unit_complaint)
6725         (scan_xcoff_symtab): Update.
6726         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
6727         * buildsym.c (finish_block_internal, make_blockvector)
6728         (end_symtab_get_static_block, augment_type_symtab): Update.
6729         * dtrace-probe.c (dtrace_process_dof)
6730         (dtrace_static_probe_ops::get_probes): Update.
6731         * complaints.h (struct complaint): Don't declare.
6732         (symfile_complaints): Remove.
6733         (complaint_internal): Remove "complaints" parameter.
6734         (complaint): Likewise.
6735         (clear_complaints): Likewise.
6736         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6737         (reread_symbols): Update.
6738         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
6739         (dwarf2_frame_cache, decode_frame_entry): Update.
6740         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
6741         * objc-lang.c (lookup_objc_class, lookup_child_selector)
6742         (info_selectors_command): Update.
6743         * macrotab.c (macro_include, check_for_redefinition)
6744         (macro_undef): Update.
6745         * objfiles.c (filter_overlapping_sections): Update.
6746         * stabsread.c (invalid_cpp_abbrev_complaint)
6747         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
6748         (define_symbol, error_type, read_type, rs6000_builtin_type)
6749         (stabs_method_name_from_physname, read_member_functions)
6750         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
6751         (attach_fields_to_type, complain_about_struct_wipeout)
6752         (read_range_type, read_args, common_block_start)
6753         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
6754         Update.
6755         * mdebugread.c (index_complaint, unknown_ext_complaint)
6756         (basic_type_complaint, bad_tag_guess_complaint)
6757         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
6758         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
6759         (parse_procedure, parse_lines)
6760         (function_outside_compilation_unit_complaint)
6761         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
6762         (bad_tag_guess_complaint, reg_value_complaint): Update.
6763         * cp-support.c (demangled_name_complaint): Update.
6764         * macroscope.c (sal_macro_scope): Update.
6765         * dwarf-index-write.c (class debug_names): Update.
6766
6767 2018-05-23  Tom Tromey  <tom@tromey.com>
6768
6769         * complaints.c (clear_complaints): Remove "noisy" parameter.
6770         * complaints.h (clear_complaints): Update.
6771         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6772         (reread_symbols): Update.
6773
6774 2018-05-23  Tom Tromey  <tom@tromey.com>
6775
6776         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
6777         SUBSEQUENT_MESSAGE.
6778         (vcomplaint, clear_complaints): Update.
6779         (symfile_explanations): Remove some messages.
6780
6781 2018-05-23  Tom Tromey  <tom@tromey.com>
6782
6783         * complaints.c (internal_complaint): Remove.
6784         * complaints.h (internal_complaint): Remove.
6785
6786 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6787
6788         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
6789
6790 2018-05-22  Pedro Alves  <palves@redhat.com>
6791
6792         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6793         (remote_fileio_badfd, remote_fileio_return_errno)
6794         (remote_fileio_return_success, remote_fileio_func_open)
6795         (remote_fileio_func_open, remote_fileio_func_close)
6796         (remote_fileio_func_read, remote_fileio_func_write)
6797         (remote_fileio_func_lseek, remote_fileio_func_rename)
6798         (remote_fileio_func_unlink, remote_fileio_func_stat)
6799         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6800         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6801         remote_target parameter.
6802         (remote_fio_func_map) <func>: Add remote_target parameter.
6803         (do_remote_fileio_request, remote_fileio_request):
6804         * remote-fileio.h (remote_fileio_request):
6805         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6806         remote_target parameter.
6807         (remote_notif_process, handle_notification): Adjust to pass down
6808         the remote.
6809         (remote_notif_state_allocate): Add remote_target parameter.  Save
6810         it.
6811         * remote-notif.h (struct remote_target): Forward declare.
6812         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6813         remote_target parameter.
6814         (struct remote_notif_state) <remote>: New field.
6815         (remote_notif_ack, remote_notif_parse): Add remote_target
6816         parameter.
6817         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6818         remote_target parameter.
6819         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6820         (threads_listing_context, rmt_thread_action, protocol_feature)
6821         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6822         (packet_result, struct threads_listing_context, remote_state):
6823         Move definitions and declarations higher up.
6824         (remote_target) <~remote_target>: Declare.
6825         (remote_download_command_source, remote_file_put, remote_file_get)
6826         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6827         (remote_hostio_pread_vFile, remote_hostio_send_command)
6828         (remote_hostio_set_filesystem, remote_hostio_open)
6829         (remote_hostio_close, remote_hostio_unlink, remote_state)
6830         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6831         (get_memory_write_packet_size, get_memory_read_packet_size)
6832         (append_pending_thread_resumptions, remote_detach_1)
6833         (append_resumption, remote_resume_with_vcont)
6834         (add_current_inferior_and_thread, wait_ns, wait_as)
6835         (process_stop_reply, remote_notice_new_inferior)
6836         (process_initial_stop_replies, remote_add_thread)
6837         (btrace_sync_conf, remote_btrace_maybe_reopen)
6838         (remove_new_fork_children, kill_new_fork_children)
6839         (discard_pending_stop_replies, stop_reply_queue_length)
6840         (check_pending_events_prevent_wildcard_vcont)
6841         (discard_pending_stop_replies_in_queue, stop_reply)
6842         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6843         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6844         (remote_interrupt_as, remote_interrupt_ns)
6845         (remote_get_noisy_reply, remote_query_attached)
6846         (remote_add_inferior, remote_current_thread, get_current_thread)
6847         (set_thread, set_general_thread, set_continue_thread)
6848         (set_general_process, write_ptid)
6849         (remote_unpack_thread_info_response, remote_get_threadinfo)
6850         (parse_threadlist_response, remote_get_threadlist)
6851         (remote_threadlist_iterator, remote_get_threads_with_ql)
6852         (remote_get_threads_with_qxfer)
6853         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6854         (get_offsets, remote_check_symbols, remote_supported_packet)
6855         (remote_query_supported, remote_packet_size)
6856         (remote_serial_quit_handler, remote_detach_pid)
6857         (remote_vcont_probe, remote_resume_with_hc)
6858         (send_interrupt_sequence, interrupt_query)
6859         (remote_notif_get_pending_events, fetch_register_using_p)
6860         (send_g_packet, process_g_packet, fetch_registers_using_g)
6861         (store_register_using_P, store_registers_using_G)
6862         (set_remote_traceframe, check_binary_download)
6863         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6864         (remote_xfer_live_readonly_partial, remote_read_bytes)
6865         (remote_send_printf, remote_flash_write, readchar)
6866         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6867         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6868         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6869         (extended_remote_disable_randomization, extended_remote_run)
6870         (send_environment_packet, extended_remote_environment_support)
6871         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6872         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6873         (packet_command): Now methods of ...
6874         (remote_target): ... this class.
6875         (m_remote_state) <remote_target>: New field.
6876         (struct remote_state) <stop_reply_queue,
6877         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6878         fields.
6879         (remote_state::remote_state): Allocate stop_reply_queue.
6880         (remote_state): Delete global.
6881         (get_remote_state_raw): Delete.
6882         (remote_target::get_remote_state): Allocate m_remote_state on
6883         demand.
6884         (get_current_remote_target): New.
6885         (remote_ops, extended_remote_ops): Delete.
6886         (wait_forever_enabled_p, remote_async_inferior_event_token):
6887         Delete, moved to struct remote_state.
6888         (remote_target::close): Delete self.  Destruction bits split to
6889         ...
6890         (remote_target::~remote_target): ... this.
6891         (show_memory_packet_size): Adjust to use
6892         get_current_remote_target.
6893         (struct protocol_feature) <func>: Add remote_target parameter.
6894         All callers adjusted.
6895         (curr_quit_handler_target): New.
6896         (remote_serial_quit_handler): Reimplement.
6897         (remote_target::open_1): Adjust to use get_current_remote_target.
6898         Heap-allocate remote_target/extended_remote_target instances.
6899         (vcont_builder::vcont_builder): Add remote_target parameter, and
6900         save it in m_remote.  All callers adjusted.
6901         (vcont_builder::m_remote): New field.
6902         (vcont_builder::restart, vcont_builder::flush)
6903         (vcont_builder::push_action): Use it.
6904         (remote_target::commit_resume): Use it.
6905         (struct queue_iter_param) <remote>: New field.
6906         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6907         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6908         (check_pending_event_prevents_wildcard_vcont_callback)
6909         (remote_target::check_pending_events_prevent_wildcard_vcont)
6910         (remote_target::discard_pending_stop_replies)
6911         (remote_target::discard_pending_stop_replies_in_queue)
6912         (remote_target::remote_notif_remove_queued_reply): Fill in
6913         'remote' field.
6914         (remote_notif_get_pending_events): New.
6915         (remote_target::readchar, remote_target::remote_serial_write):
6916         Save/restore curr_quit_handler_target.
6917         (putpkt): New.
6918         (kill_new_fork_children): Fill in 'remote' field.
6919         (packet_command): Use get_current_remote_target, defer to
6920         remote_target method of same name.
6921         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6922         parameter, and save it in m_remote.  All callers adjusted.
6923         (scoped_remote_fd::release): Use m_remote.
6924         (scoped_remote_fd::m_remote): New field.
6925         (remote_file_put, remote_file_get, remote_file_delete): Use
6926         get_current_remote_target, defer to remote_target method of same
6927         name.
6928         (remote_btrace_reset): Add remote_state paremeter.  Update all
6929         callers.
6930         (remote_async_inferior_event_handler). Pass down 'data'.
6931         (remote_new_objfile): Use get_current_remote_target.
6932         (remote_target::vcont_r_supported): New.
6933         (set_range_stepping): Use get_current_remote_target and
6934         remote_target::vcont_r_supported.
6935         (_initialize_remote): Don't allocate 'remote_state' and
6936         'stop_reply_queue' globals.
6937         * remote.h (struct remote_target): Forward declare.
6938         (getpkt, putpkt, remote_notif_get_pending_events): Add
6939         'remote_target' parameter.
6940
6941 2018-05-22  Pedro Alves  <palves@redhat.com>
6942
6943         * remote.c (vcont_builder): Now a class.  Make all data members
6944         private.
6945         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6946         Declare methods.
6947         (vcont_builder_restart): Rename to ...
6948         (vcont_builder::restart): ... this.
6949         (vcont_builder_flush): Rename to ...
6950         (vcont_builder::flush): ... this.
6951         (vcont_builder_push_action): Rename to ...
6952         (vcont_builder::push_action): ... this.
6953         (remote_target::commit_resume): Adjust.
6954
6955 2018-05-22  Pedro Alves  <palves@redhat.com>
6956
6957         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6958         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6959         (get_fixed_memory_packet_size): New.
6960         (get_memory_packet_size): Use it.
6961         (set_memory_packet_size): Don't override the config size with
6962         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6963         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6964         Don't refer to get_memory_packet_size if not connected to a remote
6965         target.  Show "(default)" if configured size is 0.
6966
6967 2018-05-22  Pedro Alves  <palves@redhat.com>
6968
6969         * remote.c (remote_target::mourn_inferior): Move
6970         discard_pending_stop_replies call here from ...
6971         (_initialize_remote): ... here.
6972
6973 2018-05-22  Pedro Alves  <palves@redhat.com>
6974
6975         * remote.c (compare_section_command): Remove set_general_process
6976         call.
6977
6978 2018-05-22  Pedro Alves  <palves@redhat.com>
6979
6980         * remote.c (struct packet_reg, struct remote_arch_state):
6981         Move higher up in the file.
6982         (remote_state) <m_arch_states>: Store remote_arch_state values
6983         instead of remote_arch_state pointers.
6984         (remote_state::get_remote_arch_state): Adjust.
6985
6986 2018-05-22  Pedro Alves  <palves@redhat.com>
6987
6988         * remote.c: Include <unordered_map>.
6989         (remote_state): Now a class.
6990         (remote_state) <get_remote_arch_state>: Declare method.
6991         <get_remote_arch_state>: New field.
6992         (remote_arch_state) <remote_arch_state>: Declare ctor.
6993         <regs>: Now a unique_ptr.
6994         (remote_gdbarch_data_handle): Delete.
6995         (get_remote_arch_state): Delete.
6996         (remote_state::get_remote_arch_state): New.
6997         (get_remote_state): Adjust to call remote_state's
6998         get_remote_arch_state method.
6999         (init_remote_state): Delete, bits factored out to ...
7000         (remote_arch_state::remote_arch_state): ... this new method.
7001         (get_remote_packet_size, get_memory_packet_size)
7002         (process_g_packet, remote_target::fetch_registers)
7003         (remote_target::prepare_to_store, store_registers_using_G)
7004         (remote_target::store_registers, remote_target::get_trace_status):
7005         Adjust to call remote_state's method.
7006         (_initialize_remote): Remove reference to
7007         remote_gdbarch_data_handle.
7008
7009 2018-05-22  Pedro Alves  <palves@redhat.com>
7010
7011         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7012         pread>: New method declarations.
7013         (remote_target::open_1): Adjust.
7014         (readahead_cache_invalidate): Rename to ...
7015         (readahead_cache::invalidate): ... this, and adjust to be a class
7016         method.
7017         (readahead_cache_invalidate_fd): Rename to ...
7018         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7019         class method.
7020         (remote_hostio_pwrite): Adjust.
7021         (remote_hostio_pread_from_cache): Rename to ...
7022         (readahead_cache::pread): ... this, and adjust to be a class
7023         method.
7024         (remote_hostio_close): Adjust.
7025
7026 2018-05-22  Pedro Alves  <palves@redhat.com>
7027
7028         * remote.c (remote_hostio_close_cleanup): Delete.
7029         (class scoped_remote_fd): New.
7030         (remote_file_put, remote_file_get): Use it.
7031
7032 2018-05-22  Pedro Alves  <palves@redhat.com>
7033
7034         (struct vCont_action_support): Use bool and initialize all fields.
7035         (struct readahead_cache): Initialize all fields.
7036         (remote_state): Use bool and initialize all fields.
7037         (remote_state::remote_state, remote_state::~remote_state): New.
7038         (new_remote_state): Delete.
7039         (_initialize_remote): Use new to allocate remote_state.
7040
7041 2018-05-22  Pedro Alves  <palves@redhat.com>
7042             張俊芝  <zjz@zjz.name>
7043
7044         PR gdb/22973
7045         * c-exp.y: Include "c-support.h".
7046         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7047         of tolower.  Use c_ident_is_alpha to scan names.
7048         * c-lang.c: Include "c-support.h".
7049         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7050         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7051         * c-support.h: New file, with bits factored out from ...
7052         * cp-name-parser.y: ... this file.
7053         Include "c-support.h".
7054         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7055         c-support.h and renamed.
7056         (symbol_end, yylex): Adjust.
7057
7058 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7059
7060         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7061         parameter type to CORE_ADDR.
7062         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7063         parameter type in declaration to CORE_ADDR.
7064         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7065         target_auxv_search to get AT_HWCAP and use the result to get the
7066         target description.
7067         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7068         to CORE_ADDR. Remove the cast of the return value to unsigned
7069         long. Fix error predicate of target_auxv_search.
7070         (ppc_linux_nat_target::read_description): Change the type of the
7071         hwcap variable to CORE_ADDR.
7072
7073 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7074
7075         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7076         if the size of fpscr is larger than 32 bits.
7077
7078 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7079
7080         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7081         (ppc32_linux_vsxregmap): New global.
7082         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7083         regcache_supply_regset, and regcache_collect_regset.
7084         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7085         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7086         (fetch_vsx_register, store_vsx_register): Remove.
7087         (fetch_vsx_registers): Add regno parameter. Get regset using
7088         ppc_linux_vsxregset. Use regset to supply registers.
7089         (store_vsx_registers): Add regno parameter. Get regset using
7090         ppc_linux_vsxregset. Use regset to collect registers.
7091         (fetch_register): Call fetch_vsx_registers instead of
7092         fetch_vsx_register.
7093         (store_register): Call store_vsx_registers instead of
7094         store_vsx_register.
7095         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7096         new regno parameter.
7097         (store_ppc_registers): Call store_vsx_registers with -1 for the
7098         new regno parameter.
7099         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7100         (ppc_collect_vsxregset): Remove.
7101
7102 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7103
7104         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7105         offset fields.
7106         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7107         for vector register offset fields.
7108         (ppc64_fbsd_reg_offsets): Likewise.
7109         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7110         to vector register offset fields.
7111         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7112         to vector register offset fields.
7113         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7114         vector register offset fields.
7115         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7116         initializers for vector register offset fields.
7117         (rs6000_aix64_reg_offsets): Likewise.
7118         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7119         (ppc_supply_vrregset): Remove.
7120         (ppc_collect_vrregset): Remove.
7121         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7122         (ppc_linux_vrregset) : New function.
7123         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7124         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7125         (ppc32_linux_vrregset): Remove.
7126         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7127         and use result instead of ppc32_linux_vrregset.
7128         (ppc32_linux_reg_offsets): Remove initializers for vector register
7129         offset fields.
7130         (ppc64_linux_reg_offsets): Likewise.
7131         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7132         * ppc-linux-nat.c: Include regset.h.
7133         (gdb_vrregset_t): Adjust comment to account for little-endian
7134         mode.
7135         (supply_vrregset, fill_vrregset): Remove.
7136         (fetch_altivec_register, store_altivec_register): Remove.
7137         (fetch_altivec_registers): Add regno parameter. Get regset using
7138         ppc_linux_vrregset. Use regset to supply registers.
7139         (store_altivec_registers): Add regno parameter. Get regset using
7140         ppc_linux_vrregset. Use regset to collect registers.
7141         (fetch_register): Call fetch_altivec_registers instead of
7142         fetch_altivec_register.
7143         (store_register): Call store_altivec_registers instead of
7144         store_altivec_register.
7145         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7146         the new regno parameter.
7147         (store_ppc_registers): Call store_altivec_registers with -1 for
7148         the new regno parameter.
7149
7150 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7151
7152         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7153         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7154         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7155         (gdb_vrregset_t): Change array type size to
7156         PPC_LINUX_SIZEOF_VRREGSET.
7157         (gdb_vsxregset_t): Change array type size to
7158         PPC_LINUX_SIZEOF_VSXREGSET.
7159         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7160         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7161         PPC_LINUX_SIZEOF_VSXREGSET.
7162
7163 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7164
7165         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7166         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7167         nat/ppc-linux.c.
7168         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7169         ppc_linux_target_wordsize with tid.
7170         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7171         wordsize with tid.
7172         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7173         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7174         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7175         tid parameter. Remove static specifier.
7176         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7177         (ppc_linux_target_wordsize): New declaration.
7178
7179 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7180
7181         * arch/ppc-linux-common.c: New file.
7182         * arch/ppc-linux-common.h: New file.
7183         * arch/ppc-linux-tdesc.h: New file.
7184         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7185         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7186         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7187         arch/ppc-linux-tdesc.h.
7188         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7189         arch/ppc-linux-tdesc.h.
7190         (ppc_linux_nat_target::read_description): Remove target
7191         description matching code. Fill a ppc_linux_features struct and
7192         call ppc_linux_match_description with it. Move comment about ISA
7193         2.05 to ppc-linux-common.c.
7194         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7195         arch/ppc-linux-tdesc.h.
7196         (ppc_linux_core_read_description): Remove target description
7197         matching code. Fill a ppc_linux_features struct and call
7198         ppc_linux_match_description with it.
7199         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7200         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7201         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7202         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7203         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7204         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7205         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7206         (tdesc_powerpc_e500l): Remove.
7207
7208 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7209
7210         * ada-lang.c (catch_assert_command): Pass empty string instead
7211         of NULL for excep_string argument.
7212
7213 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7214
7215         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7216         the width of the requested register exceeds the width of the
7217         `ptrace' data type.
7218
7219 2018-05-21  Tom Tromey  <tom@tromey.com>
7220
7221         * printcmd.c (output_command): Remove.
7222         (output_command_const): Rename to output_command.
7223         * valprint.h (output_command): Rename from output_command_const.
7224         * tracepoint.c (trace_dump_actions): Call output_command.
7225
7226 2018-05-21  Tom Tromey  <tom@tromey.com>
7227
7228         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7229         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7230         * ada-lang.h (create_ada_exception_catchpoint): Update.
7231         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7232         std::string.
7233         (create_excep_cond_exprs, ~ada_catchpoint)
7234         (should_stop_exception, print_one_exception)
7235         (print_mention_exception, print_recreate_exception): Update.
7236         (ada_get_next_arg): Remove.
7237         (catch_ada_exception_command_split): Use std::string.  Change type
7238         of "excep_string", "cond_string".
7239         (catch_ada_exception_command): Update.
7240         (create_ada_exception_catchpoint): Change type of excep_string.
7241         (ada_exception_sal): Remove excep_string parameter.
7242         (~ada_catchpoint): Remove.
7243
7244 2018-05-21  Tom Tromey  <tom@tromey.com>
7245
7246         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7247         cleanup.
7248
7249 2018-05-21  Tom Tromey  <tom@tromey.com>
7250
7251         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7252         Return unique_xmalloc_ptr.
7253         (print_it_exception): Update.
7254
7255 2018-05-21  Tom Tromey  <tom@tromey.com>
7256
7257         * tracepoint.c (trace_dump_actions): Use std::string.
7258
7259 2018-05-21  Tom Tromey  <tom@tromey.com>
7260
7261         * symfile.c (reread_symbols): Use std::string for original_name.
7262
7263 2018-05-21  Tom Tromey  <tom@tromey.com>
7264
7265         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7266         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7267         constructor.
7268
7269 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7270
7271         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7272         instance to...
7273         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7274         * objfiles.c (get_objfile_bfd_data): Allocate
7275         objfile_per_bfd_storage with obstack_new when allocating on
7276         obstack.
7277
7278 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7279
7280         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7281         OBSTACK_ZALLOC.
7282         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7283         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7284         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7285         (add_pending): Likewise.
7286         (parse_symbol): Likewise.
7287         (parse_partial_symbols): Likewise.
7288         (psymtab_to_symtab_1): Likewise.
7289         (new_psymtab): Likewise.
7290         (elfmdebug_build_psymtabs): Likewise.
7291         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7292         * objfiles.c (get_objfile_bfd_data): Likewise.
7293         (objfile_register_static_link): Likewise.
7294         * psymtab.c (allocate_psymtab): Likewise.
7295         * stabsread.c (read_member_functions): Likewise.
7296         * xcoffread.c (xcoff_end_psymtab): Likewise.
7297
7298 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7299
7300         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7301         compiler supports std::is_trivially_constructible.
7302         * common/poison.h: Include obstack.h.
7303         (IsMallocable): Define to is_trivially_constructible if the
7304         compiler supports it, define to true_type otherwise.
7305         (xobnew): New.
7306         (XOBNEW): Redefine.
7307         (xobnewvec): New.
7308         (XOBNEWVEC): Redefine.
7309         * gdb_obstack.h (obstack_zalloc): New.
7310         (OBSTACK_ZALLOC): Redefine.
7311         (obstack_calloc): New.
7312         (OBSTACK_CALLOC): Redefine.
7313         (obstack_new): New.
7314         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7315         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7316         gdbarch.c.
7317         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7318         obstack_calloc/obstack_zalloc.
7319         (gdbarch_obstack_zalloc): Remove.
7320         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7321
7322 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7323
7324         * stack.c (backtrace_command_1): Remove useless variable int i.
7325
7326 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7327
7328         * stack.c (print_frame_info): Fix comment.
7329
7330 2018-05-18  Tom Tromey  <tom@tromey.com>
7331
7332         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7333         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7334         (~dwarf2_per_objfile): Update
7335         (dwarf2_get_dwz_file): Use new.
7336         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7337         unique_ptr.
7338
7339 2018-05-18  Tom Tromey  <tom@tromey.com>
7340
7341         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7342         unique_ptr.
7343         * dwarf2read.c (struct dwp_file): Add constructor and
7344         initializers.
7345         (open_and_init_dwp_file): Return a unique_ptr.
7346         (dwarf2_per_objfile, create_dwp_hash_table)
7347         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7348         (lookup_dwo_unit_in_dwp): Update.
7349         (open_and_init_dwp_file, get_dwp_file): Update.
7350
7351 2018-05-18  Tom Tromey  <tom@tromey.com>
7352
7353         * dwarf2read.c (dwarf2_per_objfile): Update.
7354         (struct mapped_index): Add initializers.
7355         (dwarf2_read_index): Use new.
7356         (dw2_symtab_iter_init): Update.
7357         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7358         unique_ptr.
7359
7360 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7361
7362         * dwarf2read.c (mapped_index) <total_size>: Remove.
7363
7364 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7365
7366         * unittests/format_pieces-selftests.c (test_format_specifier):
7367         Add ARI comments.
7368
7369 2018-05-18  Tom Tromey  <tom@tromey.com>
7370
7371         * c-typeprint.c (maybe_print_hole): New function.
7372         (c_print_type_struct_field_offset): Update.
7373         (c_type_print_base_struct_union): Call maybe_print_hole.
7374
7375 2018-05-17  Keith Seitz  <keiths@redhat.com>
7376
7377         * breakpoint.c (build_bpstat_chain): New function, moved from
7378         bpstat_stop_status.
7379         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7380         If no stop chain is passed, call build_bpstat_chain to build it.
7381         * breakpoint.h (build_bpstat_chain): Declare.
7382         (bpstat_stop_status): Move documentation here from breakpoint.c.
7383         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7384         build the stop chain and pass it to skip_inline_frames.
7385         Pass this stop chain to bpstat_stop_status.
7386         * inline-frame.c: Include breakpoint.h.
7387         (stopped_by_user_bp_inline_frame): New function.
7388         (skip_inline_frames): Add parameter `stop_chain'.
7389         Move documention to inline-frame.h.
7390         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7391         whether the frame should be elided.
7392         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7393         Add moved documentation and update for new parameter.
7394
7395 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7396
7397         PR cli/14975
7398         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7399         unittests/format_pieces-selftests.c.
7400         * common/format.h (format_piece) <operator==>: New.
7401         (format_pieces) <operator[]>: Remove.
7402         * common/format.c (format_pieces::format_pieces): Handle \e.
7403         * unittests/format_pieces-selftests.c: New.
7404
7405 2018-05-17  Tom Tromey  <tom@tromey.com>
7406
7407         PR symtab/23010:
7408         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7409         (dw2_instantiate_symtab): Add skip_partial parameter.
7410         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7411         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7412         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7413         (dw2_expand_symtabs_matching_one)
7414         (dw2_find_pc_sect_compunit_symtab)
7415         (dw2_debug_names_lookup_symbol)
7416         (dw2_debug_names_expand_symtabs_for_function): Update.
7417         (init_cutu_and_read_dies): Add skip_partial parameter.
7418         (process_psymtab_comp_unit, build_type_psymtabs_1)
7419         (process_skeletonless_type_unit, load_partial_comp_unit)
7420         (psymtab_to_symtab_1): Update.
7421         (load_full_comp_unit): Add skip_partial parameter.
7422         (process_imported_unit_die, dwarf2_read_addr_index)
7423         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7424         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7425         (read_signatured_type): Update.
7426
7427 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7428
7429         * value.c (release_value): Remove unused variable.
7430         (record_latest_value): Likewise.
7431         (access_value_history): Likewise.
7432         (preserve_values): Likewise.
7433
7434 2018-05-17  Tom Tromey  <tom@tromey.com>
7435
7436         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7437         Initialize.
7438
7439 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7440
7441         PR gdb/22286
7442         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7443         Also handle registers whose width is not a multiple of
7444         PTRACE_TYPE_RET.
7445         (linux_nat_trad_target::store_register): Likewise.
7446
7447 2018-05-16  Tom Tromey  <tom@tromey.com>
7448
7449         * gdbcore.h (core_bfd): Redefine.
7450         * corelow.c (core_target::close): Update.
7451         (core_target_open): Update.
7452         * progspace.h (struct program_space) <cbfd>: Now a
7453         gdb_bfd_ref_ptr.
7454
7455 2018-05-16  Tom Tromey  <tom@tromey.com>
7456
7457         PR cli/19551:
7458         * symfile-add-flags.h (enum symfile_add_flags)
7459         <SYMFILE_NOT_FILENAME>: New constant.
7460         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7461         objfile name from BFD.
7462         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7463         * minidebug.c (find_separate_debug_file_in_section): Put
7464         ".gnu_debugdata" into BFD's file name.
7465
7466 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7467
7468         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7469         Remove.
7470
7471 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7472
7473         PR binutils/21446
7474         * aarch64-tdep.c (aarch64_analyze_prologue,
7475         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7476         Indicate not interested in errors.
7477
7478 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7479
7480         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7481         Supply the MIPS_ZERO_REGNUM register.
7482
7483 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7484
7485         * mips-tdep.c (mask_address_var): Make variable static.
7486
7487 2018-05-14  Tom Tromey  <tom@tromey.com>
7488
7489         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7490
7491 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7492
7493         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7494         FXSAVE_ADDR for the mxcsr register.
7495
7496 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7497
7498         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7499
7500 2018-05-11  Pedro Alves  <palves@redhat.com>
7501
7502         * corelow.c (core_target) <core_target>: No longer inline.
7503         Initialize m_core_gdbarch, m_core_vec and build the section table
7504         here.
7505         <~core_target>: New.
7506         <core_gdbarch, get_core_register_section>: New methods.
7507         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7508         factored out from ...
7509         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7510         (core_ops): Delete.
7511         (sniff_core_bfd): Add gdbarch parameter.
7512         (core_close): Delete, merged into ...
7513         (core_target::close): ... here.  Delete self.
7514         (core_close_cleanup): Delete.
7515         (core_target_open): Allocate a core_target on the heap.  Use a
7516         unique_ptr instead of a cleanup.  Bits moved into the core_target
7517         ctor.  Adjust to use core_target methods instead of globals.
7518         (get_core_register_section): Rename to ...
7519         (core_target::get_core_register_section): ... this and adjust.
7520         (struct get_core_registers_cb_data): New.
7521         (get_core_registers_cb): Use it.  Use bool.
7522         (core_target::fetch_registers, core_target::files_info)
7523         (core_target::xfer_partial, core_target::read_description)
7524         (core_target::pid_to, core_target::thread_name): Adjust to
7525         reference class fields instead of globals.
7526         * target.h (struct target_ops_deleter, target_ops_up): New.
7527
7528 2018-05-11  Pedro Alves  <palves@redhat.com>
7529
7530         * corefile.c (core_file_command): Move to corelow.c.
7531         * corelow.c (the_core_target): Delete.
7532         (core_file_command): Moved from corefile.c.  Check exec_bfd
7533         instead of the_core_target.  Use target_detach instead of calling
7534         into the_core_target directly.
7535         (maybe_say_no_core_file_now): New.
7536         (core_target::detach): Use it.
7537         (_initialize_corelow): Remove references to the_core_target.
7538         * gdbcore.h (the_core_target): Delete.
7539
7540 2018-05-11  Tom Tromey  <tromey@redhat.com>
7541             Pedro Alves  <palves@redhat.com>
7542
7543         * corefile.c (core_bfd): Remove.
7544         * gdbcore.h (core_bfd): Now a macro.
7545         * progspace.h (struct program_space) <cbfd>: New field.
7546
7547 2018-05-11  Tom Tromey  <tom@tromey.com>
7548
7549         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7550         gdb::def_vector.
7551
7552 2018-05-10  Tom Tromey  <tom@tromey.com>
7553
7554         * configure: Rebuild.
7555         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7556
7557 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7558
7559         PR server/23158:
7560         * regformats/regdat.sh: Adjust script, following the addition
7561         of the new expedite_regs parameter to init_target_desc.
7562
7563 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7564     
7565         PR gdb/23127
7566         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7567         set_gdbarch_significant_addr_bit.
7568         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7569         set_gdbarch_significant_addr_bit.
7570         * utils.c (address_significant): Update to sign extend addr.
7571
7572 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7573
7574         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7575         (xtensa_linux_init_abi): Limit tdep->num_regs by
7576         tdep->num_nopriv_regs.
7577         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7578         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7579         not initialized.
7580
7581 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7582
7583         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7584
7585 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7586
7587         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7588         (I387_MXCSR_INIT_VAL): New constant.
7589         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7590         buffer if it was supplied by the inferior.
7591         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7592         (i387_xsave_get_clear_bv): New function.
7593         (i387_supply_xsave): Only read x87 control registers from the
7594         xsave buffer if the feature is enabled, and the state will have
7595         been written, otherwise, provide a suitable default.
7596         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7597         including x87 control registers.  Update control registers if they
7598         have changed from the default value, and mark features as enabled
7599         as required.
7600         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7601
7602 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7603
7604         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7605
7606 2018-05-07  Tom Tromey  <tom@tromey.com>
7607
7608         * configure: Rebuild.
7609         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7610
7611 2018-05-07  Tom Tromey  <tom@tromey.com>
7612
7613         PR tdep/20362:
7614         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7615         bit.  Use correct value for VDIV.
7616
7617 2018-05-04  Tom Tromey  <tom@tromey.com>
7618
7619         * configure: Rebuild.
7620         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7621
7622 2018-05-04  Tom Tromey  <tom@tromey.com>
7623
7624         * linux-record.c (record_linux_system_call) <case
7625         RECORD_SYS_RECVFROM>: Add "break".
7626
7627 2018-05-04  Tom Tromey  <tom@tromey.com>
7628
7629         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7630         Add missing "break".
7631         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7632         Add missing "break".
7633
7634 2018-05-04  Tom Tromey  <tom@tromey.com>
7635
7636         * rs6000-tdep.c (ppc_process_record_op4)
7637         (ppc_process_record_op63): Add fall-through comment.
7638
7639 2018-05-04  Tom Tromey  <tom@tromey.com>
7640
7641         * i386-tdep.c (i386_process_record): Add fall-through comment.
7642
7643 2018-05-04  Tom Tromey  <tom@tromey.com>
7644
7645         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7646         comment.
7647
7648 2018-05-04  Tom Tromey  <tom@tromey.com>
7649
7650         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7651         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7652         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7653         comment.
7654         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7655         comment.
7656         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7657         comment.
7658
7659 2018-05-04  Tom Tromey  <tom@tromey.com>
7660
7661         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7662
7663 2018-05-04  Tom Tromey  <tom@tromey.com>
7664
7665         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7666         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7667         * symfile.c (section_is_mapped): Fix fall-through comment.
7668         * stabsread.c (define_symbol, read_member_functions): Fix
7669         fall-through comment.
7670         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7671         comment.
7672         * remote.c (remote_wait_as): Fix fall-through comment.
7673         * p-exp.y (yylex): Fix fall-through comment.
7674         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7675         comment.
7676         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7677         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7678         * jv-exp.y (yylex): Fix fall-through comment.
7679         * go-exp.y (lex_one_token): Fix fall-through comment.
7680         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7681         fall-through comment.
7682         * f-exp.y (yylex): Fix fall-through comment.
7683         * dwarf2read.c (process_die): Fix fall-through comments.
7684         * dbxread.c (process_one_symbol): Fix fall-through comment.
7685         * d-exp.y (lex_one_token): Fix fall-through comment.
7686         * cp-name-parser.y (yylex): Fix fall-through comment.
7687         * coffread.c (coff_symtab_read): Fix fall-through comment.
7688         * c-exp.y (lex_one_token): Fix fall-through comment.
7689         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
7690         comment.
7691         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
7692         comment.
7693
7694 2018-05-04  Tom Tromey  <tom@tromey.com>
7695
7696         PR python/22730:
7697         * NEWS: Mention gdb.execute change.
7698         * gdbcmd.h (execute_control_command): Don't declare.
7699         * python/python.c (execute_gdb_command): Use read_command_lines_1,
7700         execute_control_commands, execute_control_commands_to_string.
7701         * cli/cli-script.h (execute_control_commands)
7702         (execute_control_commands_to_string): Declare.
7703         (execute_control_command): Add from_tty parameter.
7704         * cli/cli-script.c (execute_control_commands)
7705         (execute_control_commands_to_string): New functions.
7706         (execute_user_command): Use execute_control_commands.
7707         (execute_control_command_1): Add "from_tty" parameter.  Update.
7708         (execute_control_command): Likewise.
7709
7710 2018-05-04  Tom Tromey  <tom@tromey.com>
7711
7712         PR python/22731:
7713         * NEWS: Mention that breakpoint commands are writable.
7714         * python/py-breakpoint.c (bppy_set_commands): New function.
7715         (breakpoint_object_getset) <"commands">: Use it.
7716
7717 2018-05-04  Tom Tromey  <tom@tromey.com>
7718
7719         * tracepoint.c (actions_command): Update.
7720         * mi/mi-cmd-break.c (mi_command_line_array)
7721         (mi_command_line_array_cnt, mi_command_line_array_ptr)
7722         (mi_read_next_line): Remove.
7723         (mi_cmd_break_commands): Update.
7724         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
7725         function_view.
7726         * cli/cli-script.c (get_command_line): Update.
7727         (process_next_line): Use function_view.  Constify.
7728         (recurse_read_control_structure, read_command_lines)
7729         (read_command_lines_1): Change argument types to function_view.
7730         (do_define_command, document_command): Update.
7731         * breakpoint.h (check_tracepoint_command): Don't declare.
7732         * breakpoint.c (check_tracepoint_command): Remove.
7733         (commands_command_1, create_tracepoint_from_upload): Update.
7734
7735 2018-05-04  Tom Tromey  <tom@tromey.com>
7736
7737         PR gdb/11750:
7738         * cli/cli-script.h (enum command_control_type) <define_control>:
7739         New constant.
7740         * cli/cli-script.c (multi_line_command_p): Handle define_control.
7741         (build_command_line, execute_control_command_1)
7742         (process_next_line): Likewise.
7743         (do_define_command): New function, extracted from define_command.
7744         (define_command): Use it.
7745
7746 2018-05-04  Tom Tromey  <tom@tromey.com>
7747
7748         * tracepoint.c (actions_command): Update.
7749         * cli/cli-script.h (read_command_lines): Update.
7750         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
7751         (MAX_TMPBUF): Remove define.
7752         (define_command): Use string_printf.
7753         (document_command): Likewise.
7754         * breakpoint.c (commands_command_1): Update.
7755
7756 2018-05-04  Tom Tromey  <tom@tromey.com>
7757
7758         * top.c (execute_command): Update.
7759         * cli/cli-script.h (print_command_lines): Now varargs.
7760         * cli/cli-script.c (print_command_lines): Now varargs.
7761         (execute_control_command_1) <case while_control, case if_control>:
7762         Update.
7763
7764 2018-05-04  Tom Tromey  <tom@tromey.com>
7765
7766         * tracepoint.c (all_tracepoint_actions): Rename from
7767         all_tracepoint_actions_and_cleanup.  Change return type.
7768         (actions_command, encode_actions_1, encode_actions)
7769         (trace_dump_actions, tdump_command): Update.
7770         * remote.c (remote_download_command_source): Update.
7771         * python/python.c (gdbpy_eval_from_control_command)
7772         (python_command, python_interactive_command): Update.
7773         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
7774         * guile/guile.c (guile_command)
7775         (gdbscm_eval_from_control_command, guile_command): Update.
7776         * compile/compile.c (compile_code_command)
7777         (compile_print_command, compile_to_object): Update.
7778         * cli/cli-script.h (struct command_lines_deleter): New.
7779         (counted_command_line): New typedef.
7780         (struct command_line): Add constructor, destructor.
7781         <body_list>: Remove.
7782         <body_list_0, body_list_1>: New members.
7783         (command_line_up): Remove typedef.
7784         (read_command_lines, read_command_lines_1, get_command_line):
7785         Update.
7786         (copy_command_lines): Don't declare.
7787         * cli/cli-script.c (build_command_line): Use "new".
7788         (get_command_line): Return counted_command_line.
7789         (print_command_lines, execute_user_command)
7790         (execute_control_command_1, while_command, if_command): Update.
7791         (realloc_body_list): Remove.
7792         (process_next_line, recurse_read_control_structure): Update.
7793         (read_command_lines, read_command_lines_1): Return counted_command_line.
7794         (free_command_lines): Use "delete".
7795         (copy_command_lines): Remove.
7796         (define_command, document_command, show_user_1): Update.
7797         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7798         a counted_command_line.
7799         * breakpoint.h (counted_command_line): Remove typedef.
7800         (breakpoint_set_commands): Update.
7801         * breakpoint.c (check_no_tracepoint_commands)
7802         (validate_commands_for_breakpoint): Update.
7803         (breakpoint_set_commands): Change commands to be a
7804         counted_command_line.
7805         (commands_command_1, update_dprintf_command_list)
7806         (create_tracepoint_from_upload): Update.
7807
7808 2018-05-04  Tom Tromey  <tom@tromey.com>
7809
7810         * cli/cli-decode.h (cmd_list_element): New constructor.
7811         (~cmd_list_element): New destructor.
7812         (struct cmd_list_element): Add initializers.
7813         * cli/cli-decode.c (do_add_cmd): Use "new".
7814         (delete_cmd): Use "delete".
7815
7816 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7817             Pedro Alves <palves@redhat.com>
7818
7819         PR breakpoints/19806 and support for PR external/20207.
7820         * NEWS: Mention Aarch64 watchpoint improvements.
7821         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7822         watchpoints and PR external/20207 watchpoints.
7823         * nat/aarch64-linux-hw-point.c
7824         (kernel_supports_any_contiguous_range): New.
7825         (aarch64_watchpoint_offset): New.
7826         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7827         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7828         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7829         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7830         next_addr_orig_p.  Support PR external/20207 watchpoints.
7831         (aarch64_downgrade_regs): New.
7832         (aarch64_dr_state_insert_one_point): New parameters offset and
7833         addr_orig.
7834         (aarch64_dr_state_remove_one_point): Likewise.
7835         (aarch64_handle_breakpoint): Update caller.
7836         (aarch64_handle_aligned_watchpoint): Likewise.
7837         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7838         aligned_offset.
7839         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7840         aarch64_downgrade_regs.
7841         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7842         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7843         (DR_CONTROL_MASK): ... this.
7844         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7845         (unsigned int aarch64_watchpoint_offset): New prototype.
7846         (aarch64_linux_set_debug_regs): Remove const from state.
7847         * utils.c (align_up, align_down): Move to ...
7848         * common/common-utils.c (align_up, align_down): ... here.
7849         * utils.h (align_up, align_down): Move to ...
7850         * common/common-utils.h (align_up, align_down): ... here.
7851
7852 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7853
7854         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7855         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7856         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7857         Re-implement to match the ABI as summarized in GCC's
7858         gcc/config/sparc/sparc.c.  All callers updated.
7859         (sparc32_store_arguments): Remove assertion.
7860
7861 2018-05-04  Tom Tromey  <tom@tromey.com>
7862
7863         * printcmd.c: Don't include tui.h.
7864         (decode_format): Use skip_spaces.
7865
7866 2018-05-04  Tom Tromey  <tom@tromey.com>
7867
7868         PR gdb/22619:
7869         * printcmd.c (last_count): New global.
7870         (x_command): Use saved count when repeating.
7871
7872 2018-05-04  Tom Tromey  <tom@tromey.com>
7873
7874         * nto-procfs.c (do_closedir_cleanup): Remove.
7875         (procfs_pidlist): Use gdb_dir_up.
7876         * procfs.c (do_closedir_cleanup): Remove.
7877         (proc_update_threads): Use gdb_dir_up.
7878         * common/filestuff.h (struct gdb_dir_deleter): New.
7879         (gdb_dir_up): New typedef.
7880
7881 2018-05-04  Tom Tromey  <tom@tromey.com>
7882
7883         * ada-lang.c (print_mention_exception): Use std::string.
7884
7885 2018-05-04  Tom Tromey  <tom@tromey.com>
7886
7887         * ada-lang.c (create_excep_cond_exprs): Update.
7888         (ada_exception_catchpoint_cond_string): Use std::string.
7889
7890 2018-05-04  Tom Tromey  <tom@tromey.com>
7891
7892         * ada-lang.c (xget_renaming_scope): Return std::string.
7893         (old_renaming_is_invisible): Update.
7894
7895 2018-05-04  Tom Tromey  <tom@tromey.com>
7896
7897         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7898         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7899
7900 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7901
7902         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7903
7904 2018-05-04  Tom Tromey  <tom@tromey.com>
7905
7906         * remote.c (remote_query_supported_append): Change type.
7907         (remote_check_symbols): Update.
7908
7909 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7910
7911         PR gdb/11420
7912         * configure.ac: Prepend libpython.
7913         * python/python-config.py: Likewise.
7914         * configure: Regenerate.
7915
7916 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7917
7918         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7919
7920 2018-05-03  Pedro Alves  <palves@redhat.com>
7921
7922         * s390-linux-nat.c
7923         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7924         override.  Write 'true' instead of '1'.
7925         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7926         declaration.
7927
7928 2018-05-02  Pedro Alves  <palves@redhat.com>
7929
7930         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7931         add_inf_child_target.
7932         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7933         add_inf_child_target.
7934         * aix-thread.c (aix_thread_target_info): New.
7935         (aix_thread_target) <shortname, longname, doc>: Delete.
7936         <info>: New.
7937         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7938         add_inf_child_target.
7939         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7940         add_inf_child_target.
7941         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7942         add_inf_child_target.
7943         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7944         add_inf_child_target.
7945         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7946         add_inf_child_target.
7947         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7948         add_inf_child_target.
7949         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7950         add_inf_child_target.
7951         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7952         add_inf_child_target.
7953         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7954         add_inf_child_target.
7955         * bfd-target.c (target_bfd_target_info): New.
7956         (target_bfd) <shortname, longname, doc>: Delete.
7957         <info>: New.
7958         * bsd-kvm.c (bsd_kvm_target_info): New.
7959         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7960         <info>: New.
7961         (bsd_kvm_target::open): Rename to ...
7962         (bsd_kvm_target_open): ... this.  Adjust.
7963         * bsd-uthread.c (bsd_uthread_target_info): New.
7964         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7965         <info>: New.
7966         * corefile.c (core_file_command): Adjust.
7967         * corelow.c (core_target_info): New.
7968         (core_target) <shortname, longname, doc>: Delete.
7969         <info>: New.
7970         (core_target::open): Rename to ...
7971         (core_target_open): ... this.  Adjust.
7972         * ctf.c (ctf_target_info): New.
7973         (ctf_target) <shortname, longname, doc>: Delete.
7974         <info>: New.
7975         (ctf_target::open): Rename to ...
7976         (ctf_target_open): ... this.
7977         (_initialize_ctf): Adjust.
7978         * exec.c (exec_target_info): New.
7979         (exec_target) <shortname, longname, doc>: Delete.
7980         <info>: New.
7981         (exec_target::open): Rename to ...
7982         (exec_target_open): ... this.
7983         * gdbcore.h (core_target_open): Declare.
7984         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7985         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7986         add_inf_child_target.
7987         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7988         add_inf_child_target.
7989         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7990         add_inf_child_target.
7991         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7992         add_inf_child_target.
7993         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7994         add_inf_child_target.
7995         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7996         add_inf_child_target.
7997         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7998         add_inf_child_target.
7999         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
8000         add_inf_child_target.
8001         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
8002         add_inf_child_target.
8003         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
8004         add_inf_child_target.
8005         * inf-child.c (inf_child_target_info): New.
8006         (inf_child_target::info): New.
8007         (inf_child_open_target): Remove 'target' parameter.  Use
8008         get_native_target instead.
8009         (inf_child_target::open): Delete.
8010         (add_inf_child_target): New.
8011         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8012         Delete.
8013         <info>: New.
8014         (add_inf_child_target): Declare.
8015         (inf_child_open_target): Declare.
8016         * linux-thread-db.c (thread_db_target_info): New.
8017         (thread_db_target) <shortname, longname, doc>: Delete.
8018         <info>: New.
8019         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8020         add_inf_child_target.
8021         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8022         add_inf_child_target.
8023         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8024         add_inf_child_target.
8025         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8026         add_inf_child_target.
8027         * make-target-delegates (print_class): Adjust.
8028         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8029         add_inf_child_target.
8030         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8031         add_inf_child_target.
8032         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8033         add_inf_child_target.
8034         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8035         add_inf_child_target.
8036         * nto-procfs.c (nto_native_target_info): New.
8037         (nto_procfs_target_native) <shortname, longname, doc>:
8038         Delete.
8039         <info>: New.
8040         (nto_procfs_target_info): New.
8041         (nto_procfs_target_procfs) <shortname, longname, doc>:
8042         Delete.
8043         <info>: New.
8044         (init_procfs_targets): Adjust.
8045         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8046         add_inf_child_target.
8047         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8048         add_inf_child_target.
8049         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8050         add_inf_child_target.
8051         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8052         add_inf_child_target.
8053         * ravenscar-thread.c (ravenscar_target_info): New.
8054         (ravenscar_thread_target) <shortname, longname, doc>:
8055         Delete.
8056         <info>: New.
8057         * record-btrace.c (record_btrace_target_info):
8058         (record_btrace_target) <shortname, longname, doc>: Delete.
8059         <info>: New.
8060         (record_btrace_target::open): Rename to ...
8061         (record_btrace_target_open): ... this.  Adjust.
8062         * record-full.c (record_longname, record_doc): New.
8063         (record_full_base_target) <shortname, longname, doc>: Delete.
8064         <info>: New.
8065         (record_full_target_info): New.
8066         (record_full_target): <shortname>: Delete.
8067         <info>: New.
8068         (record_full_core_open_1, record_full_open_1): Update comments.
8069         (record_full_base_target::open): Rename to ...
8070         (record_full_open): ... this.
8071         (cmd_record_full_restore): Update.
8072         (_initialize_record_full): Update.
8073         * remote-sim.c (remote_sim_target_info): New.
8074         (gdbsim_target) <shortname, longname, doc>: Delete.
8075         <info>: New.
8076         (gdbsim_target::open): Rename to ...
8077         (gdbsim_target_open): ... this.
8078         (_initialize_remote_sim): Adjust.
8079         * remote.c (remote_doc): New.
8080         (remote_target_info): New.
8081         (remote_target) <shortname, longname, doc>: Delete.
8082         <info>: New.
8083         (extended_remote_target_info): New.
8084         (extended_remote_target) <shortname, longname, doc>: Delete.
8085         <info>: New.
8086         (remote_target::open_1): Make static.  Adjust.
8087         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8088         * s390-linux-nat.c (_initialize_s390_nat): Use
8089         add_inf_child_target.
8090         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8091         add_inf_child_target.
8092         * sol-thread.c (thread_db_target_info): New.
8093         (sol_thread_target) <shortname, longname, doc>: Delete.
8094         <info>: New.
8095         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8096         add_inf_child_target.
8097         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8098         add_inf_child_target.
8099         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8100         add_inf_child_target.
8101         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8102         add_inf_child_target.
8103         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8104         add_inf_child_target.
8105         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8106         add_inf_child_target.
8107         * spu-linux-nat.c (_initialize_spu_nat): Use
8108         add_inf_child_target.
8109         * spu-multiarch.c (spu_multiarch_target_info): New.
8110         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8111         <info>: New.
8112         * target-delegates.c: Regenerate.
8113         * target.c: Include <unordered_map>.
8114         (target_ops_p): Delete.
8115         (DEF_VEC_P(target_ops_p)): Delete.
8116         (target_factories): New.
8117         (test_target_info): New.
8118         (test_target_ops::info): New.
8119         (open_target): Adjust to use target_factories.
8120         (add_target_with_completer): Rename to ...
8121         (add_target): ... this.  Change prototype.  Register target_info
8122         and open callback in target_factories.  Register target_info in
8123         command context instead of target_ops.
8124         (add_target): Delete old implementation.
8125         (add_deprecated_target_alias): Change prototype.  Adjust.
8126         (the_native_target): New.
8127         (set_native_target, get_native_target): New.
8128         (find_default_run_target): Use the_native_target.
8129         (find_attach_target, find_run_target): Simplify.
8130         (target_ops::open): Delete.
8131         (dummy_target_info): New.
8132         (dummy_target::shortname, dummy_target::longname)
8133         (dummy_target::doc): Delete.
8134         (dummy_target::info): New.
8135         (debug_target::shortname, debug_target::longname)
8136         (debug_target::doc): Delete.
8137         (debug_target::info): New.
8138         * target.h (struct target_info): New.
8139         (target_ops::~target_ops): Add comment.
8140         (target_ops::info): New.
8141         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8142         longer virtual.  Implement in terms of target_info.
8143         (set_native_target, get_native_target): Declare.
8144         (target_open_ftype): New.
8145         (add_target, add_target_with_completer)
8146         (add_deprecated_target_alias): Change prototype.
8147         (test_target) <shortname, longname, doc>: Delete.
8148         <info>: New.
8149         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8150         add_inf_child_target.
8151         * tracefile-tfile.c (tfile_target_info): New.
8152         (tfile_target) <shortname, longname, doc>: Delete.
8153         <info>: New.
8154         (tfile_target::open): Rename to ...
8155         (tfile_target_open): ... this.
8156         (_initialize_tracefile_tfile): Adjust.
8157         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8158         add_inf_child_target.
8159         * windows-nat.c (_initialize_windows_nat): Use
8160         add_inf_child_target.
8161         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8162         add_inf_child_target.
8163
8164 2018-05-02  Pedro Alves  <palves@redhat.com>
8165
8166         * linux-nat.h (linux_nat_target) <low_new_thread,
8167         low_delete_thread, low_new_fork, low_forget_process,
8168         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8169         New virtual methods.
8170         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8171         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8172         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8173         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8174         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8175         Delete.
8176         * linux-fork.c (delete_fork): Adjust to call low method.
8177         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8178         (linux_nat_new_fork, linux_nat_forget_process_hook)
8179         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8180         (linux_nat_status_is_event):
8181         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8182         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8183         to call low method.
8184         (sigtrap_is_event): Rename to ...
8185         (linux_nat_target::low_status_is_event): ... this.
8186         (linux_nat_set_status_is_event): Delete.
8187         (save_stop_reason, linux_nat_wait_1)
8188         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8189         low methods.
8190         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8191         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8192         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8193         (linux_nat_set_prepare_to_resume): Delete.
8194         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8195         low virtual methods.
8196         * amd64-linux-nat.c: Likewise.
8197         * arm-linux-nat.c: Likewise.
8198         * i386-linux-nat.c: Likewise.
8199         * ia64-linux-nat.c: Likewise.
8200         * mips-linux-nat.c: Likewise.
8201         * ppc-linux-nat.c: Likewise.
8202         * s390-linux-nat.c: Likewise.
8203         * sparc64-linux-nat.c: Likewise.
8204         * x86-linux-nat.c: Likewise.
8205         * x86-linux-nat.h: Include "nat/x86-linux.h".
8206         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8207         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8208         Override methods.
8209
8210 2018-05-02  Pedro Alves  <palves@redhat.com>
8211
8212         * target.h (target_ops)
8213         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8214         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8215         stopped_by_watchpoint, have_continuable_watchpoint,
8216         stopped_data_address, watchpoint_addr_within_range,
8217         can_accel_watchpoint_condition, can_run, thread_alive,
8218         has_all_memory, has_memory, has_stack, has_registers,
8219         has_execution, can_async_p, is_async_p, supports_non_stop,
8220         always_non_stop_p, can_execute_reverse, supports_multi_process,
8221         supports_enable_disable_tracepoint,
8222         supports_disable_randomization, supports_string_tracing,
8223         supports_evaluation_of_breakpoint_conditions,
8224         can_run_breakpoint_commands, filesystem_is_local,
8225         can_download_tracepoint, get_trace_state_variable_value,
8226         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8227         record_is_replaying, record_will_replay,
8228         augmented_libraries_svr4_read>: Adjust to return bool.
8229         * aarch64-linux-nat.c: All implementations adjusted.
8230         * aix-thread.c: All implementations adjusted.
8231         * arm-linux-nat.c: All implementations adjusted.
8232         * breakpoint.c: All implementations adjusted.
8233         * bsd-kvm.c: All implementations adjusted.
8234         * bsd-uthread.c: All implementations adjusted.
8235         * corelow.c: All implementations adjusted.
8236         * ctf.c: All implementations adjusted.
8237         * darwin-nat.c: All implementations adjusted.
8238         * darwin-nat.h: All implementations adjusted.
8239         * exec.c: All implementations adjusted.
8240         * fbsd-nat.c: All implementations adjusted.
8241         * fbsd-nat.h: All implementations adjusted.
8242         * gnu-nat.c: All implementations adjusted.
8243         * gnu-nat.h: All implementations adjusted.
8244         * go32-nat.c: All implementations adjusted.
8245         * ia64-linux-nat.c: All implementations adjusted.
8246         * inf-child.c: All implementations adjusted.
8247         * inf-child.h: All implementations adjusted.
8248         * inf-ptrace.c: All implementations adjusted.
8249         * inf-ptrace.h: All implementations adjusted.
8250         * linux-nat.c: All implementations adjusted.
8251         * linux-nat.h: All implementations adjusted.
8252         * mips-linux-nat.c: All implementations adjusted.
8253         * nto-procfs.c: All implementations adjusted.
8254         * ppc-linux-nat.c: All implementations adjusted.
8255         * procfs.c: All implementations adjusted.
8256         * ravenscar-thread.c: All implementations adjusted.
8257         * record-btrace.c: All implementations adjusted.
8258         * record-full.c: All implementations adjusted.
8259         * remote-sim.c: All implementations adjusted.
8260         * remote.c: All implementations adjusted.
8261         * s390-linux-nat.c: All implementations adjusted.
8262         * sol-thread.c: All implementations adjusted.
8263         * spu-multiarch.c: All implementations adjusted.
8264         * target-delegates.c: All implementations adjusted.
8265         * target.c: All implementations adjusted.
8266         * target.h: All implementations adjusted.
8267         * tracefile-tfile.c: All implementations adjusted.
8268         * tracefile.c: All implementations adjusted.
8269         * tracefile.h: All implementations adjusted.
8270         * windows-nat.c: All implementations adjusted.
8271         * x86-linux-nat.h: All implementations adjusted.
8272         * x86-nat.h: All implementations adjusted.
8273
8274 2018-05-02  Pedro Alves  <palves@redhat.com>
8275
8276         * make-target-delegates (scan_target_h): Don't trim lines here.
8277         Replace sequences of tabs and/or whitespace with a single
8278         whitespace.
8279         (top level, parsing methods): Trim each line before processing it
8280         here.
8281
8282 2018-05-02  Pedro Alves  <palves@redhat.com>
8283             John Baldwin  <jhb@freebsd.org>
8284
8285         * target.h (enum strata) <debug_stratum>: New.
8286         (struct target_ops) <all delegation methods>: Replace by C++
8287         virtual methods, and drop "to_" prefix.  All references updated
8288         throughout.
8289         <to_shortname, to_longname, to_doc, to_data,
8290         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8291         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8292         virtual methods.  All references updated throughout.
8293         <can_attach, supports_terminal_ours, can_create_inferior,
8294         get_thread_control_capabilities, attach_no_wait>: New
8295         virtual methods.
8296         <insert_breakpoint, remove_breakpoint>: Now
8297         TARGET_DEFAULT_NORETURN methods.
8298         <info_proc>: Now returns bool.
8299         <to_magic>: Delete.
8300         (OPS_MAGIC): Delete.
8301         (current_target): Delete.  All references replaced by references
8302         to ...
8303         (target_stack): ... this.  New.
8304         (target_shortname, target_longname): Adjust.
8305         (target_can_run): Now a function declaration.
8306         (default_child_has_all_memory, default_child_has_memory)
8307         (default_child_has_stack, default_child_has_registers)
8308         (default_child_has_execution): Remove target_ops parameter.
8309         (complete_target_initialization): Delete.
8310         (memory_breakpoint_target): New template class.
8311         (test_target_ops): Refactor as a C++ class with virtual methods.
8312         * make-target-delegates (NAME_PART): Tighten.
8313         (POINTER_PART, CP_SYMBOL): New.
8314         (SIMPLE_RETURN_PART): Reimplement.
8315         (VEC_RETURN_PART): Expect less.
8316         (RETURN_PART, VIRTUAL_PART): New.
8317         (METHOD): Adjust to C++ virtual methods.
8318         (scan_target_h): Remove reference to C99.
8319         (dname): Output "target_ops::" prefix.
8320         (write_function_header): Adjust to output a C++ class method.
8321         (write_declaration): New.
8322         (write_delegator): Adjust to output a C++ class method.
8323         (tdname): Output "dummy_target::" prefix.
8324         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8325         method.
8326         (tdefault_names, debug_names): Delete.
8327         (return_types, tdefaults, styles, argtypes_array): New.
8328         (top level): All methods are delegators.
8329         (print_class): New.
8330         (top level): Print dummy_target and debug_target classes.
8331         * target-delegates.c: Regenerate.
8332         * target-debug.h (target_debug_print_enum_info_proc_what)
8333         (target_debug_print_thread_control_capabilities)
8334         (target_debug_print_thread_info_p): New.
8335         * target.c (dummy_target): Delete.
8336         (the_dummy_target, the_debug_target): New.
8337         (target_stack): Now extern.
8338         (set_targetdebug): Push/unpush debug target.
8339         (default_child_has_all_memory, default_child_has_memory)
8340         (default_child_has_stack, default_child_has_registers)
8341         (default_child_has_execution): Remove target_ops parameter.
8342         (complete_target_initialization): Delete.
8343         (add_target_with_completer): No longer call
8344         complete_target_initialization.
8345         (target_supports_terminal_ours): Use regular delegation.
8346         (update_current_target): Delete.
8347         (push_target): No longer check magic number.  Don't call
8348         update_current_target.
8349         (unpush_target): Don't call update_current_target.
8350         (target_is_pushed): No longer check magic number.
8351         (target_require_runnable): Skip for all stratums over
8352         process_stratum.
8353         (target_ops::info_proc): New.
8354         (target_info_proc): Use find_target_at and
8355         find_default_run_target.
8356         (target_supports_disable_randomization): Use regular delegation.
8357         (target_get_osdata): Use find_target_at.
8358         (target_ops::open, target_ops::close, target_ops::can_attach)
8359         (target_ops::attach, target_ops::can_create_inferior)
8360         (target_ops::create_inferior, target_ops::can_run)
8361         (target_can_run): New.
8362         (default_fileio_target): Use regular delegation.
8363         (target_ops::fileio_open, target_ops::fileio_pwrite)
8364         (target_ops::fileio_pread, target_ops::fileio_fstat)
8365         (target_ops::fileio_close, target_ops::fileio_unlink)
8366         (target_ops::fileio_readlink): New.
8367         (target_fileio_open_1, target_fileio_unlink)
8368         (target_fileio_readlink): Always call the target method.  Handle
8369         FILEIO_ENOSYS.
8370         (return_zero, return_zero_has_execution): Delete.
8371         (init_dummy_target): Delete.
8372         (dummy_target::dummy_target, dummy_target::shortname)
8373         (dummy_target::longname, dummy_target::doc)
8374         (debug_target::debug_target, debug_target::shortname)
8375         (debug_target::longname, debug_target::doc): New.
8376         (target_supports_delete_record): Use regular delegation.
8377         (setup_target_debug): Delete.
8378         (maintenance_print_target_stack): Skip debug_stratum.
8379         (initialize_targets): Instantiate the_dummy_target and
8380         the_debug_target.
8381         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8382         use target_stack.
8383         (target_auxv_search, fprint_target_auxv): Adjust.
8384         (info_auxv_command): Adjust to use target_stack.
8385         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8386         * exceptions.c (print_flush): Handle a NULL target_stack.
8387         * regcache.c (target_ops_no_register): Refactor as class with
8388         virtual methods.
8389
8390         * exec.c (exec_target): New class.
8391         (exec_ops): Now an exec_target.
8392         (exec_open, exec_close_1, exec_get_section_table)
8393         (exec_xfer_partial, exec_files_info, exec_has_memory)
8394         (exec_make_note_section): Refactor as exec_target methods.
8395         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8396         Delete.
8397         (exec_target::find_memory_regions): New.
8398         (_initialize_exec): Don't call init_exec_ops.
8399         * gdbcore.h (exec_file_clear): Delete.
8400
8401         * corefile.c (core_target): Delete.
8402         (core_file_command): Adjust.
8403         * corelow.c (core_target): New class.
8404         (the_core_target): New.
8405         (core_close): Remove target_ops parameter.
8406         (core_close_cleanup): Adjust.
8407         (core_target::close): New.
8408         (core_open, core_detach, get_core_registers, core_files_info)
8409         (core_xfer_partial, core_thread_alive, core_read_description)
8410         (core_pid_to_str, core_thread_name, core_has_memory)
8411         (core_has_stack, core_has_registers, core_info_proc): Rework as
8412         core_target methods.
8413         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8414         (_initialize_corelow): Initialize the_core_target.
8415         * gdbcore.h (core_target): Delete.
8416         (the_core_target): New.
8417
8418         * ctf.c: (ctf_target): New class.
8419         (ctf_ops): Now a ctf_target.
8420         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8421         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8422         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8423         methods.
8424         (init_ctf_ops): Delete.
8425         (_initialize_ctf): Don't call it.
8426         * tracefile-tfile.c (tfile_target): New class.
8427         (tfile_ops): Now a tfile_target.
8428         (tfile_open, tfile_close, tfile_files_info)
8429         (tfile_get_tracepoint_status, tfile_trace_find)
8430         (tfile_fetch_registers, tfile_xfer_partial)
8431         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8432         Refactor as tfile_target methods.
8433         (tfile_xfer_partial_features): Remove target_ops parameter.
8434         (init_tfile_ops): Delete.
8435         (_initialize_tracefile_tfile): Don't call it.
8436         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8437         (tracefile_has_stack, tracefile_has_registers)
8438         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8439         tracefile_target methods.
8440         (init_tracefile_ops): Delete.
8441         (tracefile_target::tracefile_target): New.
8442         * tracefile.h: Include "target.h".
8443         (tracefile_target): New class.
8444         (init_tracefile_ops): Delete.
8445
8446         * spu-multiarch.c (spu_multiarch_target): New class.
8447         (spu_ops): Now a spu_multiarch_target.
8448         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8449         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8450         (spu_search_memory, spu_mourn_inferior): Refactor as
8451         spu_multiarch_target methods.
8452         (init_spu_ops): Delete.
8453         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8454         complete_target_initialization.
8455
8456         * ravenscar-thread.c (ravenscar_thread_target): New class.
8457         (ravenscar_ops): Now a ravenscar_thread_target.
8458         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8459         (ravenscar_thread_alive, ravenscar_pid_to_str)
8460         (ravenscar_fetch_registers, ravenscar_store_registers)
8461         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8462         (ravenscar_stopped_by_hw_breakpoint)
8463         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8464         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8465         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8466         methods.
8467         (init_ravenscar_thread_ops): Delete.
8468         (_initialize_ravenscar): Remove references to
8469         init_ravenscar_thread_ops and complete_target_initialization.
8470
8471         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8472         (bsd_uthread_target): New class.
8473         (bsd_uthread_ops): Now a bsd_uthread_target.
8474         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8475         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8476         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8477         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8478         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8479         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8480         (bsd_uthread_target): Delete function.
8481         (_initialize_bsd_uthread): Remove reference to
8482         complete_target_initialization.
8483
8484         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8485         (target_bfd): ... this new class.
8486         (target_bfd_xfer_partial, target_bfd_get_section_table)
8487         (target_bfd_close): Refactor as target_bfd methods.
8488         (target_bfd::~target_bfd): New.
8489         (target_bfd_reopen): Adjust.
8490         (target_bfd::close): New.
8491
8492         * record-btrace.c (record_btrace_target): New class.
8493         (record_btrace_ops): Now a record_btrace_target.
8494         (record_btrace_open, record_btrace_stop_recording)
8495         (record_btrace_disconnect, record_btrace_close)
8496         (record_btrace_async, record_btrace_info)
8497         (record_btrace_insn_history, record_btrace_insn_history_range)
8498         (record_btrace_insn_history_from, record_btrace_call_history)
8499         (record_btrace_call_history_range)
8500         (record_btrace_call_history_from, record_btrace_record_method)
8501         (record_btrace_is_replaying, record_btrace_will_replay)
8502         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8503         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8504         (record_btrace_store_registers, record_btrace_prepare_to_store)
8505         (record_btrace_to_get_unwinder)
8506         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8507         (record_btrace_commit_resume, record_btrace_wait)
8508         (record_btrace_stop, record_btrace_can_execute_reverse)
8509         (record_btrace_stopped_by_sw_breakpoint)
8510         (record_btrace_supports_stopped_by_sw_breakpoint)
8511         (record_btrace_stopped_by_hw_breakpoint)
8512         (record_btrace_supports_stopped_by_hw_breakpoint)
8513         (record_btrace_update_thread_list, record_btrace_thread_alive)
8514         (record_btrace_goto_begin, record_btrace_goto_end)
8515         (record_btrace_goto, record_btrace_stop_replaying_all)
8516         (record_btrace_execution_direction)
8517         (record_btrace_prepare_to_generate_core)
8518         (record_btrace_done_generating_core): Refactor as
8519         record_btrace_target methods.
8520         (init_record_btrace_ops): Delete.
8521         (_initialize_record_btrace): Remove reference to
8522         init_record_btrace_ops.
8523         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8524         the execution_direction global.
8525         (record_full_base_target, record_full_target)
8526         (record_full_core_target): New classes.
8527         (record_full_ops): Now a record_full_target.
8528         (record_full_core_ops): Now a record_full_core_target.
8529         (record_full_target::detach, record_full_target::disconnect)
8530         (record_full_core_target::disconnect)
8531         (record_full_target::mourn_inferior, record_full_target::kill):
8532         New.
8533         (record_full_open, record_full_close, record_full_async): Refactor
8534         as methods of the record_full_base_target class.
8535         (record_full_resume, record_full_commit_resume): Refactor
8536         as methods of the record_full_target class.
8537         (record_full_wait, record_full_stopped_by_watchpoint)
8538         (record_full_stopped_data_address)
8539         (record_full_stopped_by_sw_breakpoint)
8540         (record_full_supports_stopped_by_sw_breakpoint)
8541         (record_full_stopped_by_hw_breakpoint)
8542         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8543         methods of the record_full_base_target class.
8544         (record_full_store_registers, record_full_xfer_partial)
8545         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8546         Refactor as methods of the record_full_target class.
8547         (record_full_can_execute_reverse, record_full_get_bookmark)
8548         (record_full_goto_bookmark, record_full_execution_direction)
8549         (record_full_record_method, record_full_info, record_full_delete)
8550         (record_full_is_replaying, record_full_will_replay)
8551         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8552         (record_full_stop_replaying): Refactor as methods of the
8553         record_full_base_target class.
8554         (record_full_core_resume, record_full_core_kill)
8555         (record_full_core_fetch_registers)
8556         (record_full_core_prepare_to_store)
8557         (record_full_core_store_registers, record_full_core_xfer_partial)
8558         (record_full_core_insert_breakpoint)
8559         (record_full_core_remove_breakpoint)
8560         (record_full_core_has_execution): Refactor
8561         as methods of the record_full_core_target class.
8562         (record_full_base_target::supports_delete_record): New.
8563         (init_record_full_ops): Delete.
8564         (init_record_full_core_ops): Delete.
8565         (record_full_save): Refactor as method of the
8566         record_full_base_target class.
8567         (_initialize_record_full): Remove references to
8568         init_record_full_ops and init_record_full_core_ops.
8569
8570         * remote.c (remote_target, extended_remote_target): New classes.
8571         (remote_ops): Now a remote_target.
8572         (extended_remote_ops): Now an extended_remote_target.
8573         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8574         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8575         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8576         (remote_pass_signals, remote_set_syscall_catchpoint)
8577         (remote_program_signals, )
8578         (remote_thread_always_alive): Remove target_ops parameter.
8579         (remote_thread_alive, remote_thread_name)
8580         (remote_update_thread_list, remote_threads_extra_info)
8581         (remote_static_tracepoint_marker_at)
8582         (remote_static_tracepoint_markers_by_strid)
8583         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8584         (remote_open): Refactor as methods of remote_target.
8585         (extended_remote_open, extended_remote_detach)
8586         (extended_remote_attach, extended_remote_post_attach):
8587         (extended_remote_supports_disable_randomization)
8588         (extended_remote_create_inferior): : Refactor as method of
8589         extended_remote_target.
8590         (remote_set_permissions, remote_open_1, remote_detach)
8591         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8592         (remote_resume, remote_commit_resume, remote_stop)
8593         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8594         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8595         (remote_prepare_to_store, remote_store_registers)
8596         (remote_flash_erase, remote_flash_done, remote_files_info)
8597         (remote_kill, remote_mourn, remote_insert_breakpoint)
8598         (remote_remove_breakpoint, remote_insert_watchpoint)
8599         (remote_watchpoint_addr_within_range)
8600         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8601         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8602         (remote_supports_stopped_by_sw_breakpoint)
8603         (remote_stopped_by_hw_breakpoint)
8604         (remote_supports_stopped_by_hw_breakpoint)
8605         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8606         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8607         (remote_verify_memory): Refactor as methods of remote_target.
8608         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8609         parameter.
8610         (remote_xfer_partial, remote_get_memory_xfer_limit)
8611         (remote_search_memory, remote_rcmd, remote_memory_map)
8612         (remote_pid_to_str, remote_get_thread_local_address)
8613         (remote_get_tib_address, remote_read_description): Refactor as
8614         methods of remote_target.
8615         (remote_target::fileio_open, remote_target::fileio_pwrite)
8616         (remote_target::fileio_pread, remote_target::fileio_close): New.
8617         (remote_hostio_readlink, remote_hostio_fstat)
8618         (remote_filesystem_is_local, remote_can_execute_reverse)
8619         (remote_supports_non_stop, remote_supports_disable_randomization)
8620         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8621         (remote_supports_enable_disable_tracepoint)
8622         (remote_supports_string_tracing)
8623         (remote_can_run_breakpoint_commands, remote_trace_init)
8624         (remote_download_tracepoint, remote_can_download_tracepoint)
8625         (remote_download_trace_state_variable, remote_enable_tracepoint)
8626         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8627         (remote_trace_start, remote_get_trace_status)
8628         (remote_get_tracepoint_status, remote_trace_stop)
8629         (remote_trace_find, remote_get_trace_state_variable_value)
8630         (remote_save_trace_data, remote_get_raw_trace_data)
8631         (remote_set_disconnected_tracing, remote_core_of_thread)
8632         (remote_set_circular_trace_buffer, remote_traceframe_info)
8633         (remote_get_min_fast_tracepoint_insn_len)
8634         (remote_set_trace_buffer_size, remote_set_trace_notes)
8635         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8636         (remote_disable_btrace, remote_teardown_btrace)
8637         (remote_read_btrace, remote_btrace_conf)
8638         (remote_augmented_libraries_svr4_read, remote_load)
8639         (remote_pid_to_exec_file, remote_can_do_single_step)
8640         (remote_execution_direction, remote_thread_handle_to_thread_info):
8641         Refactor as methods of remote_target.
8642         (init_remote_ops, init_extended_remote_ops): Delete.
8643         (remote_can_async_p, remote_is_async_p, remote_async)
8644         (remote_thread_events, remote_upload_tracepoints)
8645         (remote_upload_trace_state_variables): Refactor as methods of
8646         remote_target.
8647         (_initialize_remote): Remove references to init_remote_ops and
8648         init_extended_remote_ops.
8649
8650         * remote-sim.c (gdbsim_target): New class.
8651         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8652         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8653         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8654         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8655         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8656         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8657         Refactor as methods of gdbsim_target.
8658         (gdbsim_ops): Now a gdbsim_target.
8659         (init_gdbsim_ops): Delete.
8660         (gdbsim_cntrl_c): Adjust.
8661         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8662
8663         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8664         (the_amd64_linux_nat_target): New.
8665         (amd64_linux_fetch_inferior_registers)
8666         (amd64_linux_store_inferior_registers): Refactor as methods of
8667         amd64_linux_nat_target.
8668         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8669         * i386-linux-nat.c: Don't include "linux-nat.h".
8670         (i386_linux_nat_target): New class.
8671         (the_i386_linux_nat_target): New.
8672         (i386_linux_fetch_inferior_registers)
8673         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8674         as methods of i386_linux_nat_target.
8675         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8676         * inf-child.c (inf_child_ops): Delete.
8677         (inf_child_fetch_inferior_registers)
8678         (inf_child_store_inferior_registers): Delete.
8679         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8680         methods of inf_child_target.
8681         (inf_child_target::supports_terminal_ours)
8682         (inf_child_target::terminal_init)
8683         (inf_child_target::terminal_inferior)
8684         (inf_child_target::terminal_ours_for_output)
8685         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8686         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8687         New.
8688         (inf_child_open, inf_child_disconnect, inf_child_close)
8689         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
8690         (inf_child_post_startup_inferior, inf_child_can_run)
8691         (inf_child_pid_to_exec_file): Refactor as methods of
8692         inf_child_target.
8693         (inf_child_follow_fork): Delete.
8694         (inf_child_target::can_create_inferior)
8695         (inf_child_target::can_attach): New.
8696         (inf_child_target::has_all_memory, inf_child_target::has_memory)
8697         (inf_child_target::has_stack, inf_child_target::has_registers)
8698         (inf_child_target::has_execution): New.
8699         (inf_child_fileio_open, inf_child_fileio_pwrite)
8700         (inf_child_fileio_pread, inf_child_fileio_fstat)
8701         (inf_child_fileio_close, inf_child_fileio_unlink)
8702         (inf_child_fileio_readlink, inf_child_use_agent)
8703         (inf_child_can_use_agent): Refactor as methods of
8704         inf_child_target.
8705         (return_zero, inf_child_target): Delete.
8706         (inf_child_target::inf_child_target): New.
8707         * inf-child.h: Include "target.h".
8708         (inf_child_target): Delete function prototype.
8709         (inf_child_target): New class.
8710         (inf_child_open_target, inf_child_mourn_inferior)
8711         (inf_child_maybe_unpush_target): Delete.
8712         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
8713         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
8714         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
8715         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
8716         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
8717         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
8718         (inf_ptrace_wait, inf_ptrace_xfer_partial)
8719         (inf_ptrace_thread_alive, inf_ptrace_files_info)
8720         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
8721         methods of inf_ptrace_target.
8722         (inf_ptrace_target): Delete function.
8723         * inf-ptrace.h: Include "inf-child.h".
8724         (inf_ptrace_target): Delete function declaration.
8725         (inf_ptrace_target): New class.
8726         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
8727         * linux-nat.c (linux_target): New.
8728         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
8729         (linux_nat_target::~linux_nat_target): New.
8730         (linux_child_post_attach, linux_child_post_startup_inferior)
8731         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
8732         (linux_child_remove_fork_catchpoint)
8733         (linux_child_insert_vfork_catchpoint)
8734         (linux_child_remove_vfork_catchpoint)
8735         (linux_child_insert_exec_catchpoint)
8736         (linux_child_remove_exec_catchpoint)
8737         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
8738         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
8739         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
8740         (linux_nat_stopped_data_address)
8741         (linux_nat_stopped_by_sw_breakpoint)
8742         (linux_nat_supports_stopped_by_sw_breakpoint)
8743         (linux_nat_stopped_by_hw_breakpoint)
8744         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
8745         (linux_nat_kill, linux_nat_mourn_inferior)
8746         (linux_nat_xfer_partial, linux_nat_thread_alive)
8747         (linux_nat_update_thread_list, linux_nat_pid_to_str)
8748         (linux_nat_thread_name, linux_child_pid_to_exec_file)
8749         (linux_child_static_tracepoint_markers_by_strid)
8750         (linux_nat_is_async_p, linux_nat_can_async_p)
8751         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
8752         (linux_nat_supports_multi_process)
8753         (linux_nat_supports_disable_randomization, linux_nat_async)
8754         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
8755         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
8756         (linux_nat_fileio_open, linux_nat_fileio_readlink)
8757         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
8758         methods of linux_nat_target.
8759         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
8760         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
8761         parameter.
8762         (check_stopped_by_watchpoint): Adjust.
8763         (linux_xfer_partial): Delete.
8764         (linux_target_install_ops, linux_target, linux_nat_add_target):
8765         Delete.
8766         (linux_nat_target::linux_nat_target): New.
8767         * linux-nat.h: Include "inf-ptrace.h".
8768         (linux_nat_target): New.
8769         (linux_target, linux_target_install_ops, linux_nat_add_target):
8770         Delete function declarations.
8771         (linux_target): Declare global.
8772         * linux-thread-db.c (thread_db_target): New.
8773         (thread_db_target::thread_db_target): New.
8774         (thread_db_ops): Delete.
8775         (the_thread_db_target): New.
8776         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
8777         (thread_db_update_thread_list, thread_db_pid_to_str)
8778         (thread_db_extra_thread_info)
8779         (thread_db_thread_handle_to_thread_info)
8780         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
8781         (thread_db_resume): Refactor as methods of thread_db_target.
8782         (init_thread_db_ops): Delete.
8783         (_initialize_thread_db): Remove reference to init_thread_db_ops.
8784         * x86-linux-nat.c: Don't include "linux-nat.h".
8785         (super_post_startup_inferior): Delete.
8786         (x86_linux_nat_target::~x86_linux_nat_target): New.
8787         (x86_linux_child_post_startup_inferior)
8788         (x86_linux_read_description, x86_linux_enable_btrace)
8789         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
8790         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
8791         methods of x86_linux_nat_target.
8792         (x86_linux_create_target): Delete.  Bits folded ...
8793         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8794         pointer.
8795         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8796         (x86_linux_nat_target): New class.
8797         (x86_linux_create_target): Delete.
8798         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8799         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8800         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8801         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8802         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8803         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8804         make extern.
8805         (x86_use_watchpoints): Delete.
8806         * x86-nat.h: Include "breakpoint.h" and "target.h".
8807         (x86_use_watchpoints): Delete.
8808         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8809         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8810         (x86_insert_watchpoint, x86_remove_watchpoint)
8811         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8812         (x86_stopped_by_hw_breakpoint): New declarations.
8813         (x86_nat_target): New template class.
8814
8815         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8816         (the_ppc_linux_nat_target): New.
8817         (ppc_linux_fetch_inferior_registers)
8818         (ppc_linux_can_use_hw_breakpoint)
8819         (ppc_linux_region_ok_for_hw_watchpoint)
8820         (ppc_linux_ranged_break_num_registers)
8821         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8822         (ppc_linux_insert_mask_watchpoint)
8823         (ppc_linux_remove_mask_watchpoint)
8824         (ppc_linux_can_accel_watchpoint_condition)
8825         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8826         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8827         (ppc_linux_watchpoint_addr_within_range)
8828         (ppc_linux_masked_watch_num_registers)
8829         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8830         (ppc_linux_read_description): Refactor as methods of
8831         ppc_linux_nat_target.
8832         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8833
8834         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8835         (procfs_target): New class.
8836         (the_procfs_target): New.
8837         (procfs_target): Delete function.
8838         (procfs_auxv_parse, procfs_attach, procfs_detach)
8839         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8840         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8841         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8842         (procfs_create_inferior, procfs_update_thread_list)
8843         (procfs_thread_alive, procfs_pid_to_str)
8844         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8845         (procfs_stopped_data_address, procfs_insert_watchpoint)
8846         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8847         (proc_find_memory_regions, procfs_info_proc)
8848         (procfs_make_note_section): Refactor as methods of procfs_target.
8849         (_initialize_procfs): Adjust.
8850         * sol-thread.c (sol_thread_target): New class.
8851         (sol_thread_ops): Now a sol_thread_target.
8852         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8853         (sol_thread_fetch_registers, sol_thread_store_registers)
8854         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8855         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8856         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8857         (init_sol_thread_ops): Delete.
8858         (_initialize_sol_thread): Adjust.  Remove references to
8859         init_sol_thread_ops and complete_target_initialization.
8860
8861         * windows-nat.c (windows_nat_target): New class.
8862         (windows_fetch_inferior_registers)
8863         (windows_store_inferior_registers, windows_resume, windows_wait)
8864         (windows_attach, windows_detach, windows_pid_to_exec_file)
8865         (windows_files_info, windows_create_inferior)
8866         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8867         (windows_close, windows_pid_to_str, windows_xfer_partial)
8868         (windows_get_tib_address, windows_get_ada_task_ptid)
8869         (windows_thread_name, windows_thread_alive): Refactor as
8870         windows_nat_target methods.
8871         (do_initial_windows_stuff): Adjust.
8872         (windows_target): Delete function.
8873         (_initialize_windows_nat): Adjust.
8874
8875         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8876         (darwin_mourn_inferior, darwin_kill_inferior)
8877         (darwin_create_inferior, darwin_attach, darwin_detach)
8878         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8879         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8880         (darwin_supports_multi_process): Refactor as darwin_nat_target
8881         methods.
8882         (darwin_resume_to, darwin_files_info): Delete.
8883         (_initialize_darwin_inferior): Rename to ...
8884         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8885         * darwin-nat.h: Include "inf-child.h".
8886         (darwin_nat_target): New class.
8887         (darwin_complete_target): Delete.
8888         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8889         (darwin_target): New.
8890         (i386_darwin_fetch_inferior_registers)
8891         (i386_darwin_store_inferior_registers): Refactor as methods of
8892         darwin_nat_target.
8893         (darwin_complete_target): Delete, with ...
8894         (_initialize_i386_darwin_nat): ... bits factored out here.
8895
8896         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8897         (the_alpha_linux_nat_target): New.
8898         (alpha_linux_register_u_offset): Refactor as
8899         alpha_linux_nat_target method.
8900         (_initialize_alpha_linux_nat): Adjust.
8901         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8902         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8903         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8904         methods of linux_nat_trad_target.
8905         (linux_trad_target): Delete.
8906         * linux-nat-trad.h (linux_trad_target): Delete function.
8907         (linux_nat_trad_target): New class.
8908         * mips-linux-nat.c (mips_linux_nat_target): New class.
8909         (super_fetch_registers, super_store_registers, super_close):
8910         Delete.
8911         (the_mips_linux_nat_target): New.
8912         (mips64_linux_regsets_fetch_registers)
8913         (mips64_linux_regsets_store_registers)
8914         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8915         (mips_linux_register_u_offset, mips_linux_read_description)
8916         (mips_linux_can_use_hw_breakpoint)
8917         (mips_linux_stopped_by_watchpoint)
8918         (mips_linux_stopped_data_address)
8919         (mips_linux_region_ok_for_hw_watchpoint)
8920         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8921         (mips_linux_close): Refactor as methods of mips_linux_nat.
8922         (_initialize_mips_linux_nat): Adjust to C++ification.
8923
8924         * aix-thread.c (aix_thread_target): New class.
8925         (aix_thread_ops): Now an aix_thread_target.
8926         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8927         (aix_thread_fetch_registers, aix_thread_store_registers)
8928         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8929         (aix_thread_thread_alive, aix_thread_pid_to_str)
8930         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8931         Refactor as methods of aix_thread_target.
8932         (init_aix_thread_ops): Delete.
8933         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8934         and complete_target_initialization.
8935         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8936         (rs6000_nat_target): New class.
8937         (the_rs6000_nat_target): New.
8938         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8939         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8940         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8941         (super_create_inferior): Delete.
8942         (_initialize_rs6000_nat): Adjust to C++ification.
8943
8944         * arm-linux-nat.c (arm_linux_nat_target): New class.
8945         (the_arm_linux_nat_target): New.
8946         (arm_linux_fetch_inferior_registers)
8947         (arm_linux_store_inferior_registers, arm_linux_read_description)
8948         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8949         (arm_linux_remove_hw_breakpoint)
8950         (arm_linux_region_ok_for_hw_watchpoint)
8951         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8952         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8953         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8954         arm_linux_nat_target.
8955         (_initialize_arm_linux_nat): Adjust to C++ification.
8956
8957         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8958         (the_aarch64_linux_nat_target): New.
8959         (aarch64_linux_fetch_inferior_registers)
8960         (aarch64_linux_store_inferior_registers)
8961         (aarch64_linux_child_post_startup_inferior)
8962         (aarch64_linux_read_description)
8963         (aarch64_linux_can_use_hw_breakpoint)
8964         (aarch64_linux_insert_hw_breakpoint)
8965         (aarch64_linux_remove_hw_breakpoint)
8966         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8967         (aarch64_linux_region_ok_for_hw_watchpoint)
8968         (aarch64_linux_stopped_data_address)
8969         (aarch64_linux_stopped_by_watchpoint)
8970         (aarch64_linux_watchpoint_addr_within_range)
8971         (aarch64_linux_can_do_single_step): Refactor as methods of
8972         aarch64_linux_nat_target.
8973         (super_post_startup_inferior): Delete.
8974         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8975
8976         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8977         (the_hppa_linux_nat_target): New.
8978         (hppa_linux_fetch_inferior_registers)
8979         (hppa_linux_store_inferior_registers): Refactor as methods of
8980         hppa_linux_nat_target.
8981         (_initialize_hppa_linux_nat): Adjust to C++ification.
8982
8983         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8984         (the_ia64_linux_nat_target): New.
8985         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8986         (ia64_linux_stopped_data_address)
8987         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8988         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8989         ia64_linux_nat_target methods.
8990         (super_xfer_partial): Delete.
8991         (_initialize_ia64_linux_nat): Adjust to C++ification.
8992
8993         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8994         (the_m32r_linux_nat_target): New.
8995         (m32r_linux_fetch_inferior_registers)
8996         (m32r_linux_store_inferior_registers): Refactor as
8997         m32r_linux_nat_target methods.
8998         (_initialize_m32r_linux_nat): Adjust to C++ification.
8999
9000         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
9001         (the_m68k_linux_nat_target): New.
9002         (m68k_linux_fetch_inferior_registers)
9003         (m68k_linux_store_inferior_registers): Refactor as
9004         m68k_linux_nat_target methods.
9005         (_initialize_m68k_linux_nat): Adjust to C++ification.
9006
9007         * s390-linux-nat.c (s390_linux_nat_target): New class.
9008         (the_s390_linux_nat_target): New.
9009         (s390_linux_fetch_inferior_registers)
9010         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
9011         (s390_insert_watchpoint, s390_remove_watchpoint)
9012         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9013         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9014         (s390_auxv_parse, s390_read_description): Refactor as methods of
9015         s390_linux_nat_target.
9016         (_initialize_s390_nat): Adjust to C++ification.
9017
9018         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9019         (the_sparc_linux_nat_target): New.
9020         (_initialize_sparc_linux_nat): Adjust to C++ification.
9021         * sparc-nat.c (sparc_fetch_inferior_registers)
9022         (sparc_store_inferior_registers): Remove target_ops parameter.
9023         * sparc-nat.h (sparc_fetch_inferior_registers)
9024         (sparc_store_inferior_registers): Remove target_ops parameter.
9025         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9026         (the_sparc64_linux_nat_target): New.
9027         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9028
9029         * spu-linux-nat.c (spu_linux_nat_target): New class.
9030         (the_spu_linux_nat_target): New.
9031         (spu_child_post_startup_inferior, spu_child_post_attach)
9032         (spu_child_wait, spu_fetch_inferior_registers)
9033         (spu_store_inferior_registers, spu_xfer_partial)
9034         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9035         methods.
9036         (_initialize_spu_nat): Adjust to C++ification.
9037
9038         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9039         (the_tilegx_linux_nat_target): New.
9040         (fetch_inferior_registers, store_inferior_registers):
9041         Refactor as methods.
9042         (_initialize_tile_linux_nat): Adjust to C++ification.
9043
9044         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9045         (the_xtensa_linux_nat_target): New.
9046         (xtensa_linux_fetch_inferior_registers)
9047         (xtensa_linux_store_inferior_registers): Refactor as
9048         xtensa_linux_nat_target methods.
9049         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9050
9051         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9052         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9053         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9054         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9055         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9056         (fbsd_stopped_by_sw_breakpoint)
9057         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9058         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9059         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9060         (fbsd_post_startup_inferior, fbsd_post_attach)
9061         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9062         (fbsd_set_syscall_catchpoint)
9063         (super_xfer_partial, super_resume, super_wait)
9064         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9065         (fbsd_handle_debug_trap): Remove target_ops parameter.
9066         (fbsd_nat_add_target): Delete.
9067         * fbsd-nat.h: Include "inf-ptrace.h".
9068         (fbsd_nat_add_target): Delete.
9069         (USE_SIGTRAP_SIGINFO): Define.
9070         (fbsd_nat_target): New class.
9071
9072         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9073         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9074         (amd64bsd_target): Delete.
9075         * amd64-bsd-nat.h: New file.
9076         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9077         "x86-bsd-nat.h".
9078         (amd64_fbsd_nat_target): New class.
9079         (the_amd64_fbsd_nat_target): New.
9080         (amd64fbsd_read_description): Refactor as method of
9081         amd64_fbsd_nat_target.
9082         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9083         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9084         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9085         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9086         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9087         (i386bsd_target): Delete.
9088         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9089         (i386bsd_fetch_inferior_registers)
9090         (i386bsd_store_inferior_registers): Declare.
9091         (i386_bsd_nat_target): New class.
9092         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9093         (the_i386_fbsd_nat_target): New.
9094         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9095         i386_fbsd_nat_target methods.
9096         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9097         (_initialize_i386fbsd_nat): Adjust to C++ification.
9098         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9099         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9100         (_initialize_x86_bsd_nat): Adjust to C++ification.
9101         * x86-bsd-nat.h: Include "x86-nat.h".
9102         (x86bsd_target): Delete declaration.
9103         (x86bsd_nat_target): New class.
9104
9105         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9106         (the_aarch64_fbsd_nat_target): New.
9107         (aarch64_fbsd_fetch_inferior_registers)
9108         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9109         aarch64_fbsd_nat_target.
9110         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9111         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9112         (the_alpha_bsd_nat_target): New.
9113         (alphabsd_fetch_inferior_registers)
9114         (alphabsd_store_inferior_registers): Refactor as
9115         alpha_bsd_nat_target methods.
9116         (_initialize_alphabsd_nat): Refactor as methods of
9117         alpha_bsd_nat_target.
9118         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9119         (the_amd64_nbsd_nat_target): New.
9120         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9121         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9122         (the_amd64_obsd_nat_target): New.
9123         (_initialize_amd64obsd_nat): Adjust to C++ification.
9124         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9125         (the_arm_fbsd_nat_target): New.
9126         (arm_fbsd_fetch_inferior_registers)
9127         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9128         (_initialize_arm_fbsd_nat): Refactor as methods of
9129         arm_fbsd_nat_target.
9130         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9131         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9132         (the_arm_netbsd_nat_target): New.
9133         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9134         arm_netbsd_nat_target.
9135         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9136         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9137         (the_hppa_nbsd_nat_target): New.
9138         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9139         hppa_nbsd_nat_target methods.
9140         (_initialize_hppanbsd_nat): Adjust to C++ification.
9141         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9142         (the_hppa_obsd_nat_target): New.
9143         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9144         methods of hppa_obsd_nat_target.
9145         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9146         add_target.
9147         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9148         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9149         add_target.
9150         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9151         (_initialize_i386obsd_nat): Use add_target.
9152         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9153         (the_m68k_bsd_nat_target): New.
9154         (m68kbsd_fetch_inferior_registers)
9155         (m68kbsd_store_inferior_registers): Refactor as methods of
9156         m68k_bsd_nat_target.
9157         (_initialize_m68kbsd_nat): Adjust to C++ification.
9158         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9159         (the_mips_fbsd_nat_target): New.
9160         (mips_fbsd_fetch_inferior_registers)
9161         (mips_fbsd_store_inferior_registers): Refactor as methods of
9162         mips_fbsd_nat_target.
9163         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9164         add_target.
9165         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9166         (the_mips_nbsd_nat_target): New.
9167         (mipsnbsd_fetch_inferior_registers)
9168         (mipsnbsd_store_inferior_registers): Refactor as methods of
9169         mips_nbsd_nat_target.
9170         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9171         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9172         (the_mips64_obsd_nat_target): New.
9173         (mips64obsd_fetch_inferior_registers)
9174         (mips64obsd_store_inferior_registers): Refactor as methods of
9175         mips64_obsd_nat_target.
9176         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9177         add_target.
9178         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9179         nbsd_nat_target.
9180         * nbsd-nat.h: Include "inf-ptrace.h".
9181         (nbsd_nat_target): New class.
9182         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9183         (obsd_wait): Refactor as methods of obsd_nat_target.
9184         (obsd_add_target): Delete.
9185         * obsd-nat.h: Include "inf-ptrace.h".
9186         (obsd_nat_target): New class.
9187         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9188         (the_ppc_fbsd_nat_target): New.
9189         (ppcfbsd_fetch_inferior_registers)
9190         (ppcfbsd_store_inferior_registers): Refactor as methods of
9191         ppc_fbsd_nat_target.
9192         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9193         add_target.
9194         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9195         (the_ppc_nbsd_nat_target): New.
9196         (ppcnbsd_fetch_inferior_registers)
9197         (ppcnbsd_store_inferior_registers): Refactor as methods of
9198         ppc_nbsd_nat_target.
9199         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9200         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9201         (the_ppc_obsd_nat_target): New.
9202         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9203         methods of ppc_obsd_nat_target.
9204         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9205         add_target.
9206         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9207         (the_sh_nbsd_nat_target): New.
9208         (shnbsd_fetch_inferior_registers)
9209         (shnbsd_store_inferior_registers): Refactor as methods of
9210         sh_nbsd_nat_target.
9211         (_initialize_shnbsd_nat): Adjust to C++ification.
9212         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9213         (inf_ptrace_xfer_partial): Delete.
9214         (sparc_xfer_partial, sparc_target): Delete.
9215         * sparc-nat.h (sparc_fetch_inferior_registers)
9216         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9217         (sparc_target): Delete function declaration.
9218         (sparc_target): New template class.
9219         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9220         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9221         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9222         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9223         add_target.
9224         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9225         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9226         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9227         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9228         add_target.
9229         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9230         (the_vax_bsd_nat_target): New.
9231         (vaxbsd_fetch_inferior_registers)
9232         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9233         methods.
9234         (_initialize_vaxbsd_nat): Adjust to C++ification.
9235
9236         * bsd-kvm.c (bsd_kvm_target): New class.
9237         (bsd_kvm_ops): Now a bsd_kvm_target.
9238         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9239         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9240         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9241         bsd_kvm_target.
9242         (bsd_kvm_return_one): Delete.
9243         (bsd_kvm_add_target): Adjust to C++ification.
9244
9245         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9246         (nto_procfs_target_procfs): New classes.
9247         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9248         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9249         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9250         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9251         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9252         (procfs_remove_hw_breakpoint, procfs_resume)
9253         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9254         (procfs_kill_inferior, procfs_store_registers)
9255         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9256         as methods of nto_procfs_target.
9257         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9258         (nto_native_ops): Delete.
9259         (procfs_open, procfs_native_open): Delete.
9260         (nto_native_ops): Now an nto_procfs_target_native.
9261         (init_procfs_targets): Adjust to C++ification.
9262         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9263         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9264         Refactor as methods of nto_procfs_target.
9265
9266         * go32-nat.c (go32_nat_target): New class.
9267         (the_go32_nat_target): New.
9268         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9269         (go32_store_registers, go32_xfer_partial, go32_files_info)
9270         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9271         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9272         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9273         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9274         (go32_target): Delete.
9275         (_initialize_go32_nat): Adjust to C++ification.
9276
9277         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9278         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9279         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9280         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9281         gnu_nat_target.
9282         (gnu_target): Delete.
9283         * gnu-nat.h (gnu_target): Delete.
9284         (gnu_nat_target): New class.
9285         * i386-gnu-nat.c (gnu_base_target): New.
9286         (i386_gnu_nat_target): New class.
9287         (the_i386_gnu_nat_target): New.
9288         (_initialize_i386gnu_nat): Adjust to C++ification.
9289
9290 2018-05-02  Pedro Alves  <palves@redhat.com>
9291
9292         * bfd-target.c (target_bfd_xclose): Rename to ...
9293         (target_bfd_close): ... this.
9294         (target_bfd_reopen): Adjust.
9295         * target.c (target_close): Remove references to to_xclose.
9296         * target.h (target_ops::to_xclose): Delete.
9297         (target_ops::to_close): Update comments.
9298
9299 2018-05-02  Pedro Alves  <palves@redhat.com>
9300
9301         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9302         "linux-nat.h".
9303         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9304         * inf-ptrace.c (inf_ptrace_register_u_offset)
9305         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9306         (inf_ptrace_store_register, inf_ptrace_store_registers)
9307         (inf_ptrace_trad_target): Move to ...
9308         * linux-nat-trad.c: ... this new file.
9309         * linux-nat-trad.h: New file.
9310         * linux-nat.c (linux_target_install_ops): Make extern.
9311         (linux_trad_target): Delete.
9312         * linux-nat.h (linux_trad_target): Delete declaration.
9313         (linux_target_install_ops): Declare.
9314         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9315         "linux-nat.h".
9316
9317 2018-05-02  Pedro Alves  <palves@redhat.com>
9318
9319         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9320         procfs_target/add_target here.
9321         * procfs.c (procfs_target): Make static.
9322         (_initialize_procfs): Call add_target here.
9323         * procfs.h (struct target_ops): Remove forward declaration.
9324         (procfs_target): Remove declaration.
9325         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9326
9327 2018-05-02  Pedro Alves  <palves@redhat.com>
9328
9329         * procfs.c (procfs_stopped_by_watchpoint)
9330         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9331         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9332         Forward declare.
9333         (procfs_use_watchpoints): Delete, move contents...
9334         (procfs_target): ... here.
9335         * procfs.h (procfs_use_watchpoints): Delete declaration.
9336         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9337         procfs_use_watchpoints.
9338         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9339         procfs_use_watchpoints.
9340
9341 2018-05-02  Tom Tromey  <tom@tromey.com>
9342
9343         PR python/20084:
9344         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9345         and var_zuinteger_unlimited.
9346         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9347         and PARAM_ZUINTEGER_UNLIMITED.
9348         (set_parameter_value): Handle var_zuinteger and
9349         var_zuinteger_unlimited.
9350         (add_setshow_generic): Likewise.
9351         (parmpy_init): Likewise.
9352
9353 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9354
9355         PR rust/23124
9356         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9357         pointer is not null before dereferencing it.
9358
9359 2018-04-30  Tom Tromey  <tom@tromey.com>
9360
9361         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9362         is_mi_like_p.
9363
9364 2018-04-30  Tom Tromey  <tom@tromey.com>
9365
9366         * breakpoint.c (mention): Remove use of is_mi_like_p.
9367         (print_mention_ranged_breakpoint): Likewise.
9368         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9369         of is_mi_like_p.
9370
9371 2018-04-30  Tom Tromey  <tom@tromey.com>
9372
9373         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9374
9375 2018-04-30  Tom Tromey  <tom@tromey.com>
9376
9377         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9378         (info_spu_event_command): Remove some uses of is_mi_like_p.
9379
9380 2018-04-30  Tom Tromey  <tom@tromey.com>
9381
9382         * python/py-framefilter.c (py_print_single_arg)
9383         (enumerate_locals, py_print_args, py_print_frame): Remove some
9384         uses of is_mi_like_p.
9385
9386 2018-04-30  Tom Tromey  <tom@tromey.com>
9387
9388         * ui-out.c: Update.
9389         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9390         * ui-out.h (ui_out::is_mi_like_p): Now const.
9391         (ui_out::do_is_mi_like_p): Now const.
9392         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9393
9394 2018-04-30  Tom Tromey  <tom@tromey.com>
9395
9396         * varobj.c (varobj_set_visualizer): Use new_reference.
9397         * python/python.c (gdbpy_decode_line): Use new_reference.
9398         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9399         new_reference.
9400
9401 2018-04-30  Tom Tromey  <tom@tromey.com>
9402
9403         * varobj.c (install_new_value): Use new_reference.
9404         * value.h (value_incref): Return void.  Swap intro comment with
9405         value_decref.
9406         * value.c (set_value_parent): Use new_reference.
9407         (value_incref): Return void.  Update intro comment.
9408         (release_value): Use new_reference.
9409         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9410
9411 2018-04-30  Tom Tromey  <tom@tromey.com>
9412
9413         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9414         * gdb_bfd.h (new_bfd_ref): Remove.
9415         (gdb_bfd_open): Update comment.
9416         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9417         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9418         (gdb_bfd_fdopenr): Use new_reference.
9419         * exec.c (exec_file_attach): Use new_reference.
9420
9421 2018-04-30  Tom Tromey  <tom@tromey.com>
9422
9423         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9424         method.
9425
9426 2018-04-30  Tom Tromey  <tom@tromey.com>
9427
9428         * jit.c (jit_read_code_entry): Use type_align.
9429         * i386-tdep.c (i386_gdbarch_init): Don't call
9430         set_gdbarch_long_long_align_bit.
9431         * gdbarch.sh: Remove long_long_align_bit.
9432         * gdbarch.c, gdbarch.h: Rebuild.
9433         * arc-tdep.c (arc_type_align): New function.
9434         (arc_gdbarch_init): Use arc_type_align.  Don't call
9435         set_gdbarch_long_long_align_bit.
9436
9437 2018-04-30  Tom Tromey  <tom@tromey.com>
9438
9439         * rust-lang.c (rust_type_alignment): Remove.
9440         (rust_composite_type): Use type_align.
9441
9442 2018-04-30  Tom Tromey  <tom@tromey.com>
9443
9444         * NEWS: Mention Type.align.
9445         * python/py-type.c (typy_get_alignof): New function.
9446         (type_object_getset): Add "alignof".
9447
9448 2018-04-30  Tom Tromey  <tom@tromey.com>
9449
9450         PR exp/17095:
9451         * NEWS: Update.
9452         * std-operator.def (UNOP_ALIGNOF): New operator.
9453         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9454         New.
9455         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9456         * c-lang.c (c_op_print_tab): Add alignof.
9457         * c-exp.y (ALIGNOF): New token.
9458         (exp): Add "ALIGNOF" production.
9459         (ident_tokens): Add _Alignof and alignof.
9460
9461 2018-04-30  Tom Tromey  <tom@tromey.com>
9462
9463         * i386-tdep.c (i386_type_align): New function.
9464         (i386_gdbarch_init): Update.
9465         * gdbarch.sh (type_align): New method.
9466         * gdbarch.c, gdbarch.h: Rebuild.
9467         * arch-utils.h (default_type_align): Declare.
9468         * arch-utils.c (default_type_align): New function.
9469         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9470         (struct type) <align_log2>: New field.
9471         <instance_flags>: Now a bitfield.
9472         (TYPE_RAW_ALIGN): New macro.
9473         (type_align, type_raw_align, set_type_align): Declare.
9474         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9475         functions.
9476         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9477         (get_alignment, maybe_set_alignment): New functions.
9478         (read_structure_type, read_enumeration_type, read_array_type)
9479         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9480         (read_subrange_type, read_base_type): Set type alignment.
9481
9482 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9483
9484         * dwarf2read.c (read_index_from_section): Use bool.
9485
9486 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9487
9488         PR gdb/22950
9489         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9490         with #ifdef.
9491
9492 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9493
9494         PR build/22873
9495         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9496         last step, and do it atomically.
9497
9498 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9499
9500         * compile/compile-c-types.c (convert_int, convert_float):
9501         Update for C FE v1.
9502
9503 2018-04-27  Tom Tromey  <tom@tromey.com>
9504
9505         PR rust/22545:
9506         * rust-lang.c (rust_inclusive_range_type_p): New function.
9507         (rust_range): Handle inclusive ranges.
9508         (rust_compute_range): Likewise.
9509         * rust-exp.y (struct rust_op) <inclusive>: New field.
9510         (DOTDOTEQ): New constant.
9511         (range_expr): Add "..=" productions.
9512         (operator_tokens): Add "..=" token.
9513         (ast_range): Add "inclusive" parameter.
9514         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9515         ranges.
9516         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9517         bounds values.
9518         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9519         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9520         Update comments.
9521         * expprint.c (print_subexp_standard): Handle new bounds values.
9522         (dump_subexp_body_standard): Likewise.
9523
9524 2018-04-27  Tom Tromey  <tom@tromey.com>
9525
9526         * configure: Rebuild.
9527         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9528         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9529         "OVERRIDE".
9530         (class symbol_needs_eval_context): Likewise.
9531         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9532         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9533         "virtual".
9534         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9535         "override".
9536         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9537         * aarch64-tdep.c (instruction_reader::read): Use "override".
9538         (instruction_reader_test::read): Likewise.
9539         * arm-tdep.c (instruction_reader::read): Use "override".
9540         (instruction_reader_thumb::read): Likewise.
9541
9542 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9543
9544         PR remote/9665
9545         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9546         instead of remote_send.
9547         (remote_send): Remove.
9548
9549 2018-04-26  Pedro Alves  <palves@redhat.com>
9550
9551         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9552         find_function_start_sal instead of find_pc_line.
9553
9554 2018-04-26  Pedro Alves  <palves@redhat.com>
9555
9556         * breakpoint.c (set_breakpoint_location_function): Handle
9557         mst_data_gnu_ifunc.
9558         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9559         * elfread.c (elf_symtab_read): Give data symbols with
9560         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9561         (elf_rel_plt_read): Update comment.
9562         * linespec.c (convert_linespec_to_sals): Handle
9563         mst_data_gnu_ifunc.
9564         (minsym_found): Handle mst_data_gnu_ifunc.
9565         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9566         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9567         * parse.c (find_minsym_type_and_address): Handle
9568         mst_data_gnu_ifunc.
9569         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9570         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9571         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9572         comment.
9573         <mst_data_gnu_ifunc>: New enumerator.
9574
9575 2018-04-26  Pedro Alves  <palves@redhat.com>
9576
9577         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9578         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9579         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9580         Handle it.
9581         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9582         (lookup_minimal_symbol_by_pc): Adjust.
9583         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9584         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9585         * minsyms.h (lookup_msym_prefer): New enum.
9586         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9587         parameter by a lookup_msym_prefer parameter.
9588
9589 2018-04-26  Pedro Alves  <palves@redhat.com>
9590
9591         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9592         ends in "@plt" instead of looking at the symbol's section.
9593
9594 2018-04-26  Pedro Alves  <palves@redhat.com>
9595
9596         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9597         all references.
9598         (find_pc_partial_function_gnu_ifunc): Rename to ...
9599         (find_pc_partial_function): ... this, and remove references to
9600         'is_gnu_ifunc_p'.
9601         (find_pc_partial_function): Delete old implementation.
9602         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9603
9604 2018-04-26  Pedro Alves  <palves@redhat.com>
9605
9606         * linespec.c (struct bound_minimal_symbol_search_key): New.
9607         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9608         skip first line if we found a GNU ifunc minimal symbol by name.
9609         (compare_msymbols): Change parameters to work with a destructured
9610         lhs minsym.
9611         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9612         functions.
9613
9614 2018-04-26  Pedro Alves  <palves@redhat.com>
9615
9616         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9617         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9618         address/name.
9619         (add_location_to_breakpoint): Store the minsym and the objfile in
9620         the breakpoint location.
9621         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9622         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9623         Record the minsym in the sal.
9624         * symtab.h (symtab_and_line) <msymbol>: New field.
9625
9626 2018-04-26  Pedro Alves  <palves@redhat.com>
9627
9628         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9629         unless we actually resolved the ifunc.
9630
9631 2018-04-26  Pedro Alves  <palves@redhat.com>
9632
9633         * c-exp.y (variable production): Prefer ifunc minsyms over
9634         regular function symbols.
9635         * symtab.c (find_gnu_ifunc): New function.
9636         * minsyms.h (lookup_msym_prefer): New enum.
9637         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9638         parameter by a lookup_msym_prefer parameter.
9639         * symtab.h (find_gnu_ifunc): New declaration.
9640
9641 2018-04-26  Pedro Alves  <palves@redhat.com>
9642
9643         * blockframe.c (find_gnu_ifunc_target_type): New function.
9644         (find_function_type): New.
9645         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9646         return a value with a memory address.
9647         (eval_call): For calls to GNU ifunc functions, try to find the
9648         type of the target function from the type that the resolver
9649         returns.
9650         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9651         symbols.
9652         * infcall.c (find_function_return_type): Delete.
9653         (find_function_addr): Add 'function_type' parameter.  For calls to
9654         GNU ifunc functions, try to find the type of the target function
9655         from the type that the resolver returns, and return it via
9656         FUNCTION_TYPE.
9657         (call_function_by_hand_dummy): Adjust to use the function type
9658         returned by find_function_addr.
9659         (find_function_addr): Add 'function_type' parameter and move
9660         description here.
9661         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9662         declarations.
9663
9664 2018-04-26  Pedro Alves  <palves@redhat.com>
9665
9666         * c-exp.y (variable production): Skip finding an alias for ifunc
9667         symbols.
9668
9669 2018-04-26  Pedro Alves  <palves@redhat.com>
9670
9671         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9672
9673 2018-04-25  Pedro Alves  <palves@redhat.com>
9674
9675         * infcmd.c (kill_command): Print the pid as string, not the whole
9676         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9677         message.
9678         * remote.c (remote_detach_1): Print the pid as string, not the
9679         whole thread's ptid.
9680
9681 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9682             Sergio Durigan Junior  <sergiodj@redhat.com>
9683             Pedro Alves  <palves@redhat.com>
9684
9685         * infcmd.c (kill_command): Print message when inferior has
9686         been killed.
9687         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9688         '1'.
9689         (add_inferior): Improve message printed when
9690         'print_inferior_events' is on.
9691         (exit_inferior): Remove message printed when
9692         'print_inferior_events' is on.
9693         (detach_inferior): Improve message printed when
9694         'print_inferior_events' is on.
9695         (initialize_inferiors): Use 'add_inferior_silent' to set
9696         'current_inferior_'.
9697         * inferior.h (print_inferior_events): Declare here as
9698         'extern'.
9699         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
9700         '[Detaching...]' messages when 'print_inferior_events' is on.
9701         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
9702         as prefix/suffix for messages.  Remove periods.  Fix erroneous
9703         'Detaching after fork from child...', replace it by '... from
9704         parent...'.
9705         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
9706         prefix/suffix when printing 'Detaching...' messages.  Print
9707         them when 'print_inferior_events' is on.
9708         * remote.c (remote_detach_1): Print message when detaching
9709         from inferior and '!is_fork_parent'.
9710
9711 2018-04-24  Tom Tromey  <tom@tromey.com>
9712
9713         * cli-out.h: Reindent.
9714
9715 2018-04-24  Tom Tromey  <tom@tromey.com>
9716
9717         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
9718         (cli_ui_out::do_field_string): Use fputs_filtered.
9719         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
9720
9721 2018-04-23  Tom Tromey  <tom@tromey.com>
9722
9723         * guile/scm-frame.c (gdbscm_frame_read_var): Use
9724         gdb::unique_xmalloc_ptr.
9725
9726 2018-04-23  Tom Tromey  <tom@tromey.com>
9727
9728         * configure: Rebuild.
9729
9730 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
9731
9732         PR gdb/23095
9733         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
9734         prepare_for_testing.  Set normal_bp to r_debug_state if target
9735         is bsd.
9736
9737 2018-04-21  Pedro Alves  <palves@redhat.com>
9738             Rajendra SY  <rajendra.sy@gmail.com>
9739
9740         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
9741         * remote.c (extended_remote_attach): In all-stop mode, mark the
9742         thread as executing.
9743
9744 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9745
9746         * thread.c (thread_apply_all_command): Fix comment.
9747         (thread_command): Fix comment.
9748
9749 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
9750
9751         * common/tdesc.h (tdesc_create_feature): Remove xml filename
9752         parameter.
9753         * features/aarch64-core.c (create_feature_aarch64_core):
9754         Regenerate.
9755         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
9756         Likewise.
9757         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
9758         Likewise.
9759         * features/i386/32bit-avx512.c
9760         (create_feature_i386_32bit_avx512): Likewise.
9761         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
9762         Likewise.
9763         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
9764         Likewise.
9765         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
9766         Likewise.
9767         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
9768         Likewise.
9769         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
9770         Likewise.
9771         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
9772         Likewise.
9773         * features/i386/64bit-avx512.c
9774         (create_feature_i386_64bit_avx512): Likewise.
9775         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
9776         Likewise.
9777         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
9778         Likewise.
9779         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
9780         Likewise.
9781         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
9782         Likewise.
9783         * features/i386/64bit-segments.c
9784         (create_feature_i386_64bit_segments): Likewise.
9785         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
9786         Likewise.
9787         * features/i386/x32-core.c
9788         (create_feature_i386_x32_core): Likewise.
9789         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
9790         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
9791         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
9792         * target-descriptions.c: In generated code, don't pass xml
9793         filename.
9794
9795 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9796
9797         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9798         (print_xml_feature::visit_post): Likewise.
9799         (print_xml_feature::visit): Likewise.
9800         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9801         (print_xml_feature): Add new class.
9802         * regformats/regdat.sh: Null xmltarget on feature targets.
9803         * target-descriptions.c (struct target_desc): Add xmltarget.
9804         (maintenance_check_tdesc_xml_convert): Add unittest function.
9805         (tdesc_get_features_xml): Add function to get xml.
9806         (maintenance_check_xml_descriptions): Test xml generation.
9807         * xml-tdesc.c (string_read_description_xml): Add function.
9808         * xml-tdesc.h (string_read_description_xml): Add declaration.
9809
9810 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9811
9812         * features/Makefile: Add feature marker to targets with new style
9813         target descriptions.
9814         * regformats/aarch64.dat: Regenerate.
9815         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9816         * regformats/i386/amd64-avx-linux.dat: Likewise.
9817         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9818         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9819         * regformats/i386/amd64-linux.dat: Likewise.
9820         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9821         * regformats/i386/amd64.dat: Likewise.
9822         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9823         * regformats/i386/i386-avx-linux.dat: Likewise.
9824         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9825         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9826         * regformats/i386/i386-linux.dat: Likewise.
9827         * regformats/i386/i386-mmx-linux.dat: Likewise.
9828         * regformats/i386/i386-mpx-linux.dat: Likewise.
9829         * regformats/i386/i386.dat: Likewise.
9830         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9831         * regformats/i386/x32-avx-linux.dat: Likewise.
9832         * regformats/i386/x32-linux.dat: Likewise.
9833         * regformats/tic6x-c62x-linux.dat: Likewise.
9834         * regformats/tic6x-c64x-linux.dat: Likewise.
9835         * regformats/tic6x-c64xp-linux.dat: Likewise.
9836         * regformats/regdat.sh: Parse feature marker.
9837
9838 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9839
9840         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9841         (tdesc_osabi_name): Likewise.
9842         * target-descriptions.c (tdesc_architecture_name): Add new
9843         function.
9844         (tdesc_osabi_name): Likewise.
9845
9846 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9847
9848         * common/tdesc.c (tdesc_predefined_type): Move to here.
9849         (tdesc_named_type): Likewise.
9850         (tdesc_create_vector): Likewise.
9851         (tdesc_create_struct): Likewise.
9852         (tdesc_set_struct_size): Likewise.
9853         (tdesc_create_union): Likewise.
9854         (tdesc_create_flags): Likewise.
9855         (tdesc_create_enum): Likewise.
9856         (tdesc_add_field): Likewise.
9857         (tdesc_add_typed_bitfield): Likewise.
9858         (tdesc_add_bitfield): Likewise.
9859         (tdesc_add_flag): Likewise.
9860         (tdesc_add_enum_value): Likewise.
9861         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9862         (struct tdesc_type_vector): Likewise.
9863         (struct tdesc_type_field): Likewise.
9864         (struct tdesc_type_with_fields): Likewise.
9865         (tdesc_create_enum): Add declaration.
9866         (tdesc_add_typed_bitfield): Likewise.
9867         (tdesc_add_enum_value): Likewise.
9868         * target-descriptions.c (tdesc_type_field): Move from here.
9869         (tdesc_type_builtin): Likewise.
9870         (tdesc_type_vector): Likewise.
9871         (tdesc_type_with_fields): Likewise.
9872         (tdesc_predefined_types): Likewise.
9873         (tdesc_named_type): Likewise.
9874         (tdesc_create_vector): Likewise.
9875         (tdesc_create_struct): Likewise.
9876         (tdesc_set_struct_size): Likewise.
9877         (tdesc_create_union): Likewise.
9878         (tdesc_create_flags): Likewise.
9879         (tdesc_create_enum): Likewise.
9880         (tdesc_add_field): Likewise.
9881         (tdesc_add_typed_bitfield): Likewise.
9882         (tdesc_add_bitfield): Likewise.
9883         (tdesc_add_flag): Likewise.
9884         (tdesc_add_enum_value): Likewise.
9885         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9886         (tdesc_add_typed_bitfield): Likewise.
9887         (tdesc_add_enum_value): Likewise.
9888
9889 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9890
9891         * common/tdesc.c (tdesc_feature::accept): Move to here.
9892         (tdesc_feature::operator==): Likewise.
9893         (tdesc_create_reg): Likewise.
9894         * common/tdesc.h (tdesc_type_kind): Likewise.
9895         (struct tdesc_type): Likewise.
9896         (struct tdesc_feature): Likewise.
9897         * regformats/regdat.sh: Create a feature.
9898         * target-descriptions.c (tdesc_type_kind): Move from here.
9899         (tdesc_type): Likewise.
9900         (tdesc_type_up): Likewise.
9901         (tdesc_feature): Likewise.
9902         (tdesc_create_reg): Likewise.
9903
9904 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9905
9906         * Makefile.in: Add arch/tdesc.c
9907         * common/tdesc.c: New file.
9908         * common/tdesc.h (tdesc_element_visitor): Move to here.
9909         (tdesc_element): Likewise.
9910         (tdesc_reg): Likewise.
9911         (tdesc_reg_up): Likewise.
9912         * regformats/regdef.h (reg): Add offset to constructors.
9913         * target-descriptions.c (tdesc_element_visitor): Move from here.
9914         (tdesc_element): Likewise.
9915         (tdesc_reg): Likewise.
9916         (tdesc_reg_up): Likewise.
9917
9918 2018-04-17  Tom Tromey  <tom@tromey.com>
9919
9920         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9921         discriminant field.
9922
9923 2018-04-17  Tom Tromey  <tom@tromey.com>
9924
9925         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9926
9927 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9928
9929         * symtab.c (print_symbol_info): Skip printing filename and line
9930         number when `last' is NULL.
9931         (symtab_symbol_info): Use empty string instead of NULL for first
9932         invocation of print_symbol_info.
9933         (rbreak_command): Pass NULL to `last' parameter of
9934         print_symbol_info.
9935
9936 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9937
9938         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9939         instead of nullptr.
9940
9941 2018-04-16  Pedro Alves  <palves@redhat.com>
9942
9943         * MAINTAINERS (sh): Remove.
9944         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9945         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9946         (ALLDEPFILES): Remove sh64-tdep.c.
9947         * NEWS: Mentions that support for SH-5/SH64 is removed.
9948         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9949         (sh*-*-openbsd*): Ditto.
9950         (sh64-*-elf*): Remove.
9951         (sh*): Remove.
9952         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9953         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9954         * sh-tdep.c: No longer include "sh64-tdep.h".
9955         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9956         * sh64-tdep.c, sh64-tdep.h: Remove files.
9957
9958 2018-04-16  Pedro Alves  <palves@redhat.com>
9959
9960         * MAINTAINERS: Remove m88k.
9961         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9962         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9963         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9964         * NEWS: Mention that support for m88k was removed.
9965         * configure.host (m88*-*-*): Remove support.
9966         * configure.nat (m88k-*-*): Remove support.
9967         * configure.tgt (m88*-*-openbsd*): Remove.
9968         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9969
9970 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9971
9972         * configure.tgt (x86_tobjs): New variable.
9973         (amd64_tobjs, i386_tobjs): Use it.
9974
9975 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9976
9977         * symtab.c (print_symbol_info): Precede the symbol definition by
9978         the line number when available.
9979         * NEWS: Advertise this enhancement.
9980
9981 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9982
9983         * NEWS (New options): announce set/show record btrace cpu.
9984         * btrace.c: Include record-btrace.h.
9985         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9986         the vendor is unknown.
9987         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9988         Maybe overwrite the btrace configuration's cpu.
9989         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9990         (btrace_fetch): Add cpu parameter.  Update callers.
9991         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9992         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9993         errata workarounds if the vendor is unknown.
9994         * python/py-record-btrace.c: Include record-btrace.h.
9995         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9996         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9997         * record-btrace.c (record_btrace_cpu_state_kind): New.
9998         (record_btrace_cpu): New.
9999         (set_record_btrace_cpu_cmdlist): New.
10000         (record_btrace_get_cpu): New.
10001         (require_btrace_thread, record_btrace_info)
10002         (record_btrace_resume_thread): Call record_btrace_get_cpu.
10003         (cmd_set_record_btrace_cpu_none): New.
10004         (cmd_set_record_btrace_cpu_auto): New.
10005         (cmd_set_record_btrace_cpu): New.
10006         (cmd_show_record_btrace_cpu): New.
10007         (_initialize_record_btrace): Initialize set/show record btrace cpu
10008         commands.
10009         * record-btrace.h (record_btrace_get_cpu): New.
10010
10011 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10012
10013         * record.c (set_record_command): Fix typo in message.
10014
10015 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10016
10017         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10018
10019 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10020
10021         * infrun.c (process_event_stop_test): Call
10022         gdbarch_in_indirect_branch_thunk.
10023         * gdbarch.sh (in_indirect_branch_thunk): New.
10024         * gdbarch.c: Regenerated.
10025         * gdbarch.h: Regenerated.
10026         * x86-tdep.h: New.
10027         * x86-tdep.c: New.
10028         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10029         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10030         (ALLDEPFILES): Add x86-tdep.c.
10031         * arch-utils.h (default_in_indirect_branch_thunk): New.
10032         * arch-utils.c (default_in_indirect_branch_thunk): New.
10033         * i386-tdep: Include x86-tdep.h.
10034         (i386_in_indirect_branch_thunk): New.
10035         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10036         function.
10037         * amd64-tdep: Include x86-tdep.h.
10038         (amd64_in_indirect_branch_thunk): New.
10039         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10040
10041 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10042
10043         PR gdb/23053
10044         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10045         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10046         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10047         regression.
10048
10049 2018-04-12  Tom Tromey  <tom@tromey.com>
10050
10051         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10052         (rust_evaluate_subexp): Likewise.
10053
10054 2018-04-12  Pedro Alves  <palves@redhat.com>
10055
10056         * procfs.c (procfs_detach): Make forward declaration's prototype
10057         match definition's protototype.
10058         (proc_get_LDT_entry): Remove stale do_cleanups call.
10059
10060 2018-04-12  Pedro Alves  <palves@redhat.com>
10061
10062         * target.h (target_ops::to_has_exited): Delete.
10063         (target_has_exited): Delete.
10064         * target-delegates.c: Regenerate.
10065
10066 2018-04-11  Pedro Alves  <palves@redhat.com>
10067
10068         * target.c (fileio_fh_t::t): Add comment.
10069         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10070         (target_fileio_close): Handle a NULL target.
10071         (invalidate_fileio_fh): New.
10072         (target_close): Call it.
10073         * remote.c (remote_hostio_send_command): No longer check whether
10074         remote_desc is open.
10075
10076 2018-04-11  Pedro Alves  <palves@redhat.com>
10077
10078         * target.c (fileio_fh_t): Make it a named struct instead of a
10079         typedef.
10080         (fileio_fh_t::is_closed): New method.
10081         (DEF_VEC_O (fileio_fh_t)): Remove.
10082         (fileio_fhandles): Now a std::vector.
10083         (is_closed_fileio_fh): Delete.
10084         (acquire_fileio_fd): Adjust.  Rename parameters.
10085         (release_fileio_fd): Adjust.
10086         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10087         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10088         (target_fileio_close): Adjust.
10089
10090 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10091
10092         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10093         index.
10094
10095 2018-04-10  Pedro Alves  <palves@redhat.com>
10096
10097         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10098         (scoped_finish_thread_state): New class.
10099         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10100         cleanup.
10101         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10102         (fetch_inferior_event, normal_stop): Likewise.
10103         * thread.c (finish_thread_state_cleanup): Delete.
10104
10105 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10106             Pedro Alves  <palves@redhat.com>
10107
10108         * value.c: Include "selftest.h" and "common/array-view.h".
10109         (struct range) <operator ==>: New.
10110         (test_ranges_contain): New.
10111         (check_ranges_vector): New.
10112         (test_insert_into_bit_range_vector): New.
10113         (_initialize_values): Register selftests.
10114         * common/array-view.h (operator==, operator!=): New.
10115
10116 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10117
10118         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10119         an iterator.
10120         * inline-frame.c: Include <algorithm>.
10121         (struct inline_state): Add constructor.
10122         (inline_state_s): Remove.
10123         (DEF_VEC_O(inline_state_s)): Remove.
10124         (inline_states): Change type to std::vector.
10125         (find_inline_frame_state): Adjust to std::vector.
10126         (allocate_inline_frame_state): Remove.
10127         (clear_inline_frame_state): Adjust to std::vector.
10128         (skip_inline_frames): Adjust to std::vector.
10129
10130 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10131
10132         * tracepoint.h (struct trace_state_variable): Add constructor.
10133         <name>: Change type to std::string.
10134         * tracepoint.c (tsv_s): Remove.
10135         (DEF_VEC_O(tsv_s)): Remove.
10136         (tvariables): Change to std::vector.
10137         (create_trace_state_variable): Adjust to std::vector.
10138         (find_trace_state_variable): Likewise.
10139         (find_trace_state_variable_by_number): Likewise.
10140         (delete_trace_state_variable): Likewise.
10141         (trace_variable_command): Adjust to std::string.
10142         (delete_trace_variable_command): Likewise.
10143         (tvariables_info_1): Adjust to std::vector.
10144         (save_trace_state_variables): Likewise.
10145         (start_tracing): Likewise.
10146         (merge_uploaded_trace_state_variables): Adjust to std::vector
10147         and std::string.
10148         * target.h (struct target_ops)
10149         <to_download_trace_state_variable>: Pass reference to
10150         trace_state_variable.
10151         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10152         * target-delegates.c: Re-generate.
10153         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10154         (mi_tsv_deleted): Likewise.
10155         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10156         * remote.c (remote_download_trace_state_variable): Change
10157         pointer to reference and adjust.
10158         * make-target-delegates (parse_argtypes): Handle references.
10159         (write_function_header): Likewise.
10160         (munge_type): Likewise.
10161
10162 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10163
10164         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10165         string_view-selftests.c.
10166         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10167         testsuite.
10168         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10169         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10170         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10171         * unittests/basic_string_view/element_access/char/1.cc:
10172         Likewise.
10173         * unittests/basic_string_view/element_access/char/empty.cc:
10174         Likewise.
10175         * unittests/basic_string_view/element_access/char/front_back.cc:
10176         Likewise.
10177         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10178         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10179         Likewise.
10180         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10181         Likewise.
10182         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10183         Likewise.
10184         * unittests/basic_string_view/operations/compare/char/1.cc:
10185         Likewise.
10186         * unittests/basic_string_view/operations/compare/char/13650.cc:
10187         Likewise.
10188         * unittests/basic_string_view/operations/copy/char/1.cc:
10189         Likewise.
10190         * unittests/basic_string_view/operations/data/char/1.cc:
10191         Likewise.
10192         * unittests/basic_string_view/operations/find/char/1.cc:
10193         Likewise.
10194         * unittests/basic_string_view/operations/find/char/2.cc:
10195         Likewise.
10196         * unittests/basic_string_view/operations/find/char/3.cc:
10197         Likewise.
10198         * unittests/basic_string_view/operations/find/char/4.cc:
10199         Likewise.
10200         * unittests/basic_string_view/operations/rfind/char/1.cc:
10201         Likewise.
10202         * unittests/basic_string_view/operations/rfind/char/2.cc:
10203         Likewise.
10204         * unittests/basic_string_view/operations/rfind/char/3.cc:
10205         Likewise.
10206         * unittests/basic_string_view/operations/substr/char/1.cc:
10207         Likewise.
10208         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10209         * unittests/string_view-selftests.c: New file.
10210
10211 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10212
10213         * unittests/basic_string_view/capacity/1.cc: New file.
10214         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10215         * unittests/basic_string_view/cons/char/1.cc: New file.
10216         * unittests/basic_string_view/cons/char/2.cc: New file.
10217         * unittests/basic_string_view/cons/char/3.cc: New file.
10218         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10219         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10220         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10221         * unittests/basic_string_view/element_access/char/1.cc: New file.
10222         * unittests/basic_string_view/element_access/char/2.cc: New file.
10223         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10224         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10225         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10226         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10227         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10228         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10229         * unittests/basic_string_view/include.cc: New file.
10230         * unittests/basic_string_view/inserters/char/1.cc: New file.
10231         * unittests/basic_string_view/inserters/char/2.cc: New file.
10232         * unittests/basic_string_view/inserters/char/3.cc: New file.
10233         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10234         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10235         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10236         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10237         * unittests/basic_string_view/literals/types.cc: New file.
10238         * unittests/basic_string_view/literals/values.cc: New file.
10239         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10240         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10241         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10242         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10243         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10244         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10245         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10246         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10247         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10248         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10249         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10250         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10251         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10252         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10253         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10254         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10255         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10256         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10257         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10258         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10259         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10260         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10261         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10262         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10263         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10264         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10265         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10266         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10267         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10268         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10269         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10270         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10271         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10272         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10273         * unittests/basic_string_view/operators/char/2.cc: New file.
10274         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10275         * unittests/basic_string_view/range_access/char/1.cc: New file.
10276         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10277         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10278         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10279         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10280         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10281         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10282         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10283         * unittests/basic_string_view/typedefs.cc: New file.
10284         * unittests/basic_string_view/types/1.cc: New file.
10285
10286 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10287
10288         * common/gdb_string_view.h: Remove libstdc++ implementation
10289         details, adjust to gdb reality.
10290         * common/gdb_string_view.tcc: Likewise.
10291         * cli/cli-script.c (struct string_view): Remove.
10292         (user_args) <m_args>: Change element type to gdb::string_view.
10293         (user_args::insert_args): Adjust.
10294
10295 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10296
10297         * common/gdb_string_view.h: New file.
10298         * common/gdb_string_view.tcc: New file.
10299
10300 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10301
10302         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10303         * configure: Re-generate.
10304
10305 2018-04-09  Pedro Alves  <palves@redhat.com>
10306
10307         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10308         (set_target_gdbarch): Call
10309         gdb::observers::architecture_changed.notify instead of
10310         observer_notify_architecture_changed.
10311
10312 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10313
10314         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10315         (do_restore_current_traceframe_cleanup): Remove.
10316         (restore_current_traceframe_cleanup_dtor): Remove.
10317         (make_cleanup_restore_current_traceframe): Remove.
10318         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10319         New.
10320         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10321         * infrun.c (fetch_inferior_event): Use
10322         scoped_restore_current_traceframe.
10323
10324 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10325
10326         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10327         Remove.
10328         <n_allocated_type_units>: Remove.
10329         <all_type_units>: Change to std::vector.
10330         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10331         to std::vector change.
10332         (dwarf2_per_objfile::get_cutu): Likewise.
10333         (dwarf2_per_objfile::get_tu): Likewise.
10334         (create_signatured_type_table_from_index): Likewise.
10335         (create_signatured_type_table_from_debug_names): Likewise.
10336         (dw2_symtab_iter_next): Likewise.
10337         (dw2_print_stats): Likewise.
10338         (dw2_expand_all_symtabs): Likewise.
10339         (dw2_expand_marked_cus): Likewise.
10340         (dw2_debug_names_iterator::next): Likewise.
10341         (dwarf2_initialize_objfile): Likewise.
10342         (add_signatured_type_cu_to_table): Likewise.
10343         (create_all_type_units): Likewise.
10344         (add_type_unit): Likewise.
10345         (struct tu_abbrev_offset): Add constructor.
10346         (build_type_psymtabs_1): Adjust to std::vector change.
10347         (print_tu_stats): Likewise.
10348         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10349         (write_debug_names): Likewise.
10350
10351 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10352
10353         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10354         Make an std::vector.
10355         <n_comp_units>: Remove.
10356         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10357         to std::vector change.
10358         (dwarf2_per_objfile::get_cutu): Likewise.
10359         (dwarf2_per_objfile::get_cu): Likewise.
10360         (create_cus_from_index): Likewise.
10361         (create_addrmap_from_index): Likewise.
10362         (create_addrmap_from_aranges): Likewise.
10363         (dwarf2_read_index): Likewise.
10364         (dw2_find_last_source_symtab): Likewise.
10365         (dw2_map_symtabs_matching_filename): Likewise.
10366         (dw2_symtab_iter_next): Likewise.
10367         (dw2_print_stats): Likewise.
10368         (dw2_expand_all_symtabs): Likewise.
10369         (dw2_expand_symtabs_with_fullname): Likewise.
10370         (dw2_expand_marked_cus): Likewise.
10371         (dw2_map_symbol_filenames): Likewise.
10372         (create_cus_from_debug_names): Likewise.
10373         (dwarf2_read_debug_names): Likewise.
10374         (dw2_debug_names_iterator::next): Likewise.
10375         (dwarf2_initialize_objfile): Likewise.
10376         (set_partial_user): Likewise.
10377         (dwarf2_build_psymtabs_hard): Likewise.
10378         (read_comp_units_from_section): Remove arguments, adjust to
10379         std::vector change.
10380         (create_all_comp_units): Adjust to std::vector and
10381         read_comp_units_from_section changes.
10382         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10383         change.
10384         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10385         (psyms_seen_size): Likewise.
10386         (write_gdbindex): Likewise.
10387         (write_debug_names): Likewise.
10388
10389 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10390
10391         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10392         with dwarf2_per_objfile.
10393         (create_cus_from_index): Likewise.
10394         (create_signatured_type_table_from_index): Likewise.
10395         (dwarf2_read_index): Likewise.
10396         (dwarf2_initialize_objfile): Likewise.
10397         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10398         per_cu rather than get_dwarf2_per_objfile.
10399
10400 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10401
10402         * dwarf2read.h (struct signatured_type): Forward declare.
10403         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10404         New methods.
10405         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10406         (dw2_get_cutu): ...this.
10407         (dwarf2_per_objfile::get_cu): Rename from...
10408         (dw2_get_cu): ...this.
10409         (dwarf2_per_objfile::get_tu): New.
10410         (create_addrmap_from_index): Adjust.
10411         (create_addrmap_from_aranges): Adjust.
10412         (dw2_find_last_source_symtab): Adjust.
10413         (dw2_map_symtabs_matching_filename): Adjust.
10414         (dw2_symtab_iter_next): Adjust.
10415         (dw2_print_stats): Adjust.
10416         (dw2_expand_all_symtabs): Adjust.
10417         (dw2_expand_symtabs_with_fullname): Adjust.
10418         (dw2_expand_marked_cus): Adjust.
10419         (dw_expand_symtabs_matching_file_matcher): Adjust.
10420         (dw2_map_symbol_filenames): Adjust.
10421         (dw2_debug_names_iterator::next): Adjust.
10422         (dwarf2_initialize_objfile): Adjust.
10423         (set_partial_user): Adjust.
10424         (dwarf2_build_psymtabs_hard): Adjust.
10425
10426 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10427
10428         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10429         Remove unused variables.
10430         (dw2_map_symtabs_matching_filename): Likewise.
10431         (dwarf2_record_block_ranges): Likewise.
10432         (dwarf2_read_addr_index): Likewise.
10433         (follow_die_offset): Likewise.
10434
10435 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10436
10437         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10438         to symbol_file_add_main.
10439
10440 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10441
10442         PR mi/22299
10443         * mi/mi-console.c (do_fputc_async_safe): New.
10444         (mi_console_file::write_async_safe): New.
10445         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10446         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10447         New.
10448         * ui-file.c (ui_file::putstrn): Adjust call to
10449         fputstrn_unfiltered.
10450         * utils.c (printchar): Replace do_fputs and do_fprintf
10451         parameters by do_fputc.
10452         (fputstr_filtered): Adjust call to printchar.
10453         (fputstr_unfiltered): Likewise.
10454         (fputstrn_filtered): Likewise.
10455         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10456         printchar.
10457         * utils.h (do_fputc_ftype): New typedef.
10458         (fputstrn_unfiltered): Add do_fputc parameter.
10459
10460 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10461
10462         * regformats/i386/i386-avx.dat: Remove.
10463
10464 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10465
10466         PR gdb/22979
10467         * amd64-tdep.c (amd64_none_init_abi): New function.
10468         (amd64_x32_none_init_abi): New function.
10469         (_initialize_amd64_tdep): Register handlers for x86-64 and
10470         x64_32 with GDB_OSABI_NONE.
10471         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10472         GDB_OSABI_NONE osabi.
10473
10474 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10475
10476         PR gdb/22980
10477         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10478         GDB_OSABI_NONE.
10479         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10480         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10481
10482 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10483
10484         * common/byte-vector.h (char_vector): New type.
10485         * target.h (target_read_alloc): Return
10486         gdb::optional<byte_vector>.
10487         (target_read_stralloc): Return gdb::optional<char_vector>.
10488         (target_get_osdata): Return gdb::optional<char_vector>.
10489         * target.c (target_read_alloc_1): Templatize.  Replacement
10490         manual memory management with vector.
10491         (target_read_alloc): Change return type, adjust.
10492         (target_read_stralloc): Change return type, adjust.
10493         (target_get_osdata): Change return type, adjust.
10494         * auxv.c (struct auxv_info) <length>: Remove.
10495         <data>: Change type to gdb::optional<byte_vector>.
10496         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10497         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10498         (target_auxv_search): Adjust.
10499         (fprint_target_auxv): Adjust.
10500         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10501         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10502         (linux_make_corefile_notes): Adjust.
10503         * osdata.c (get_osdata): Adjust.
10504         * remote.c (remote_get_threads_with_qxfer): Adjust.
10505         (remote_memory_map): Adjust.
10506         (remote_traceframe_info): Adjust.
10507         (btrace_read_config): Adjust.
10508         (remote_read_btrace): Adjust.
10509         (remote_pid_to_exec_file): Adjust.
10510         * solib-aix.c (solib_aix_get_library_list): Adjust.
10511         * solib-dsbt.c (decode_loadmap): Don't free buf.
10512         (dsbt_get_initial_loadmaps): Adjust.
10513         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10514         * solib-target.c (solib_target_current_sos): Adjust.
10515         * tracepoint.c (sdata_make_value): Adjust.
10516         * xml-support.c (xinclude_start_include): Adjust.
10517         (xml_fetch_content_from_file): Adjust.
10518         * xml-support.h (xml_fetch_another): Change return type.
10519         (xml_fetch_content_from_file): Change return type.
10520         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10521         * xml-tdesc.c (file_read_description_xml): Adjust.
10522         (fetch_available_features_from_target): Change return type.
10523         (target_fetch_description_xml): Adjust.
10524         (target_read_description_xml): Adjust.
10525
10526 2018-04-06  Tom Tromey  <tom@tromey.com>
10527
10528         * value.c (~value): Update.
10529         (struct value) <contents>: Now unique_xmalloc_ptr.
10530         (value_contents_bits_eq, allocate_value_contents)
10531         (value_contents_raw, value_contents_all_raw)
10532         (value_contents_for_printing, value_contents_for_printing_const)
10533         (set_value_enclosing_type): Update.
10534
10535 2018-04-06  Tom Tromey  <tom@tromey.com>
10536
10537         * value.c (range_s): Remove typedef, VEC.
10538         (struct range): Add operator<.
10539         (range_lessthan): Remove.
10540         (ranges_contain): Change type.
10541         (~value): Update.
10542         (struct value) <unavailable, optimized_out>: Now std::vector.
10543         (value_entirely_available)
10544         (value_entirely_covered_by_range_vector)
10545         (value_entirely_unavailable, value_entirely_optimized_out):
10546         Update.
10547         (insert_into_bit_range_vector): Change argument type.
10548         (find_first_range_overlap): Likewise.
10549         (struct ranges_and_idx, value_contents_bits_eq)
10550         (require_not_optimized_out, require_available): Update.
10551         (ranges_copy_adjusted): Change argument types.
10552         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10553
10554 2018-04-06  Tom Tromey  <tom@tromey.com>
10555
10556         * value.c (~value): Update.
10557         (struct value) <parent>: Now a value_ref_ptr.
10558         (value_parent, set_value_parent, value_address, value_copy):
10559         Update.
10560
10561 2018-04-06  Tom Tromey  <tom@tromey.com>
10562
10563         * value.c (struct value): Add constructor, destructor, and member
10564         initializers.
10565         (allocate_value_lazy, value_decref): Update.
10566
10567 2018-04-06  Tom Tromey  <tom@tromey.com>
10568
10569         * value.c (struct value) <released, next>: Remove.
10570         (all_values): Now a std::vector.
10571         (allocate_value_lazy): Update.
10572         (value_next): Remove.
10573         (value_mark, value_free_to_mark, release_value)
10574         (value_release_to_mark): Update.
10575
10576 2018-04-06  Tom Tromey  <tom@tromey.com>
10577
10578         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10579         (free_value_chain): Remove.
10580         * value.c (free_value_chain): Remove.
10581         (value_release_to_mark): Return a std::vector.
10582         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10583         std::vector.
10584         (check_condition): Update.
10585         * eval.c (fetch_subexp_value): Change "val_chain" to a
10586         std::vector.
10587         * breakpoint.c (update_watchpoint): Update.
10588         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10589
10590 2018-04-06  Tom Tromey  <tom@tromey.com>
10591
10592         * value.h (free_all_values): Remove.
10593         * value.c (free_all_values): Remove.
10594
10595 2018-04-06  Tom Tromey  <tom@tromey.com>
10596
10597         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10598         (value_history_chain, value_history_count): Remove.
10599         (value_history): New global.
10600         (record_latest_value, access_value_history, show_values)
10601         (preserve_values): Update.
10602
10603 2018-04-06  Tom Tromey  <tom@tromey.com>
10604
10605         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10606         * varobj.c (varobj_set_display_format, varobj_set_value)
10607         (install_default_visualizer, construct_visualizer)
10608         (install_new_value, ~varobj, varobj_get_value_type)
10609         (my_value_of_variable, varobj_editable_p): Update.
10610         * c-varobj.c (c_describe_child, c_value_of_variable)
10611         (cplus_number_of_children, cplus_describe_child): Update.
10612         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10613         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10614         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10615
10616 2018-04-06  Tom Tromey  <tom@tromey.com>
10617
10618         * printcmd.c (last_examine_address): Change type to
10619         value_ref_ptr.
10620         (do_examine, x_command): Update.
10621
10622 2018-04-06  Tom Tromey  <tom@tromey.com>
10623
10624         * value.c (release_value): Update.
10625         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10626         (struct bpstats) <val>: Now a value_ref_ptr.
10627         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10628         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10629         (~watchpoint, print_it_watchpoint, watch_command_1)
10630         (invalidate_bp_value_on_memory_change): Update.
10631
10632 2018-04-06  Tom Tromey  <tom@tromey.com>
10633
10634         * varobj.c (varobj_clear_saved_item)
10635         (update_dynamic_varobj_children, install_new_value, ~varobj):
10636         Update.
10637         * value.h (value_incref): Move declaration earlier.
10638         (value_decref): Rename from value_free.
10639         (struct value_ref_policy): New.
10640         (value_ref_ptr): New typedef.
10641         (struct value_deleter): Remove.
10642         (gdb_value_up): Remove typedef.
10643         (release_value): Change return type.
10644         (release_value_or_incref): Remove.
10645         * value.c (set_value_parent): Update.
10646         (value_incref): Change return type.
10647         (value_decref): Rename from value_free.
10648         (value_free_to_mark, free_all_values, free_value_chain): Update.
10649         (release_value): Return value_ref_ptr.
10650         (release_value_or_incref): Remove.
10651         (record_latest_value, set_internalvar, clear_internalvar):
10652         Update.
10653         * stack.c (info_frame_command): Don't call value_free.
10654         * python/py-value.c (valpy_dealloc, valpy_new)
10655         (value_to_value_object): Update.
10656         * printcmd.c (do_examine): Update.
10657         * opencl-lang.c (lval_func_free_closure): Update.
10658         * mi/mi-main.c (register_changed_p): Don't call value_free.
10659         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10660         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10661         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10662         value_free.
10663         * guile/scm-value.c (vlscm_free_value_smob)
10664         (vlscm_scm_from_value): Update.
10665         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10666         (frame_unwind_register_unsigned, get_frame_register_bytes)
10667         (put_frame_register_bytes): Don't call value_free.
10668         * findvar.c (address_from_register): Don't call value_free.
10669         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10670         * dwarf2loc.c (entry_data_value_free_closure)
10671         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10672         (dwarf2_evaluate_loc_desc_full): Update.
10673         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10674         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10675         (~watchpoint, watch_command_1)
10676         (invalidate_bp_value_on_memory_change): Update.
10677         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10678
10679 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
10680
10681         PR gdb/23022
10682         * warning.m4: Add -Wno-error=deprecated-register.
10683         * configure: Re-generate.
10684
10685 2018-04-05  Tom Tromey  <tom@tromey.com>
10686
10687         * linespec.h: Remove include of "vec.h".
10688
10689 2018-04-05  Tom Tromey  <tom@tromey.com>
10690
10691         * linespec.c (typep): Remove typedef.
10692         (find_methods, find_superclass_methods): Take a std::vector.
10693         (find_method): Use std::vector.
10694
10695 2018-04-05  Tom Tromey  <tom@tromey.com>
10696
10697         * utils.c (compare_strings): Remove.
10698         * utils.h (compare_strings): Remove.
10699         * objc-lang.h (find_imps): Update.
10700         * objc-lang.c (find_methods): Take a std::vector.
10701         (uniquify_strings, find_imps): Likewise.
10702         * linespec.c (find_methods): Take a std::vector.
10703         (decode_objc): Use std::vector.
10704         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
10705         a std::vector.
10706         (find_method, find_function_symbols): Use std::vector.
10707
10708 2018-04-05  Tom Tromey  <tom@tromey.com>
10709
10710         * completer.c (completion_tracker::completion_tracker): Remove
10711         cast.
10712         (completion_tracker::discard_completions): Likewise.
10713         * breakpoint.c (ambiguous_names_p): Remove cast.
10714         * ada-lang.c (_initialize_ada_language): Remove cast.
10715         * utils.h (streq): Update.
10716         (streq_hash): Add new declaration.
10717         * utils.c (streq): Return bool.
10718         (streq_hash): New function.
10719
10720 2018-04-05  Tom Tromey  <tom@tromey.com>
10721
10722         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
10723         Remove a string copy.
10724
10725 2018-04-05  Tom Tromey  <tom@tromey.com>
10726
10727         * linespec.c (filter_results): Use std::vector.
10728         (decode_line_2, decode_line_full): Update.
10729
10730 2018-04-05  Tom Tromey  <tom@tromey.com>
10731
10732         * linespec.c (canonical_to_fullform): Return std::string.
10733         (filter_results): Update.
10734         (struct decode_line_2_item): Add constructor.
10735         <fullform, displayform>: Now std::string.
10736         (decode_line_2_compare_items): Now a std::sort comparator.
10737         (decode_line_2): Update.
10738
10739 2018-04-05  Tom Tromey  <tom@tromey.com>
10740
10741         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
10742         (unexpected_linespec_error): Update.
10743         (linespec_parse_basic, parse_linespec): Update.
10744
10745 2018-04-05  Tom Tromey  <tom@tromey.com>
10746
10747         * linespec.c (linespec_parse_basic): Reindent.
10748
10749 2018-04-05  Tom Tromey  <tom@tromey.com>
10750
10751         * minsyms.h (iterate_over_minimal_symbols): Update.
10752         * minsyms.c (iterate_over_minimal_symbols): Take a
10753         gdb::function_view.
10754         * linespec.c (struct collect_minsyms): Remove.
10755         (compare_msyms): Now a std::sort comparator.
10756         (add_minsym): Add parameters.
10757         (search_minsyms_for_name): Update.  Use std::vector.
10758
10759 2018-04-03  Tom Tromey  <tom@tromey.com>
10760
10761         * mipsread.c (read_alphacoff_dynamic_symtab): Use
10762         gdb::byte_vector.
10763
10764 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10765
10766         * MAINTAINERS (Write After Approval): Add Weimin Pan.
10767
10768 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10769
10770         PR gdb/16959
10771         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
10772         printing static type.
10773
10774 2018-04-01  Tom Tromey  <tom@tromey.com>
10775
10776         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
10777         (rs6000_xfer_shared_libraries): Update.
10778
10779 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
10780
10781         * common/gdb_vecs.h (char_ptr): Remove.
10782         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
10783
10784 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10785
10786         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
10787         with std::vector.
10788         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
10789
10790 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10791
10792         * tracepoint.h (struct uploaded_tp): Initialize fields.
10793         <actions, step_actions, cmd_strings>: Change type to
10794         std::vector<char *>.
10795         * tracepoint.c (get_uploaded_tp): Allocate with new.
10796         (free_uploaded_tps): Free with delete.
10797         (parse_tracepoint_definition): Adjust to std::vector change.
10798         * breakpoint.c (read_uploaded_action): Likewise.
10799         (create_tracepoint_from_upload): Likewise.
10800         * ctf.c (ctf_write_uploaded_tp): Likewise.
10801         (SET_ARRAY_FIELD): Likewise.
10802         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10803
10804 2018-03-30  Tom Tromey  <tom@tromey.com>
10805
10806         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10807         std::unique_ptr.
10808         (svr4_keep_data_in_core): Update.
10809         (svr4_read_so_list): Update.
10810
10811 2018-03-30  Tom Tromey  <tom@tromey.com>
10812
10813         * windows-nat.c (handle_output_debug_string, handle_exception):
10814         Update.
10815         * target.h (target_read_string): Update.
10816         * target.c (target_read_string): Change "string" to
10817         unique_xmalloc_ptr.
10818         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10819         Update.
10820         * solib-frv.c (frv_current_sos): Update.
10821         * solib-dsbt.c (dsbt_current_sos): Update.
10822         * solib-darwin.c (darwin_current_sos): Update.
10823         * linux-thread-db.c (inferior_has_bug): Update.
10824         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10825         Update.  Remove alloca.
10826         * ada-lang.c (ada_main_name): Update.
10827
10828 2018-03-30  Tom Tromey  <tom@tromey.com>
10829
10830         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10831         (struct dwo_file_deleter): New.
10832         (dwo_file_up): New typedef.
10833         (open_and_init_dwo_file): Use dwo_file_up.
10834         (free_dwo_file_cleanup): Remove.
10835
10836 2018-03-30  Tom Tromey  <tom@tromey.com>
10837
10838         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10839         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10840
10841 2018-03-30  Tom Tromey  <tom@tromey.com>
10842
10843         * dwarf2read.c (class free_cached_comp_units): New class.
10844         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10845         (free_cached_comp_units): Remove function.
10846
10847 2018-03-30  Tom Tromey  <tom@tromey.com>
10848
10849         * utils.h (make_cleanup_unpush_target): Remove.
10850         * inf-ptrace.c (struct target_unpusher): New.
10851         (target_unpush_up) New typedef.
10852         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10853         target_unpush_up.
10854         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10855
10856 2018-03-27  Tom Tromey  <tom@tromey.com>
10857
10858         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10859
10860 2018-03-27  Pedro Alves  <palves@redhat.com>
10861             Tom Tromey  <tom@tromey.com>
10862
10863         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10864         destructor.  Now a class.
10865         (gdb_readline_wrapper_cleanup): Remove function.
10866         (gdb_readline_wrapper): Remove cleanups.
10867
10868 2018-03-27  Tom Tromey  <tom@tromey.com>
10869
10870         * typeprint.h (struct type_print_options) <local_typedefs,
10871         global_typedefs>: Remove "struct" keyword.
10872         (class typedef_hash_table): New class.
10873         (recursively_update_typedef_hash, add_template_parameters)
10874         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10875         (find_typedef_in_hash): Don't declare.
10876         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10877         (typedef_hash_table::recursively_update): Rename from
10878         recursively_update_typedef_hash.  Now a member.
10879         (typedef_hash_table::add_template_parameters): Rename from
10880         add_template_parameters.  Now a member.
10881         (typedef_hash_table::typedef_hash_table): Now a constructor;
10882         rename from create_typedef_hash.
10883         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10884         rename from free_typedef_hash.
10885         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10886         (do_free_global_table): Remove.
10887         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10888         from copy_type_recursive.
10889         (create_global_typedef_table): Remove.
10890         (typedef_hash_table::find_global_typedef): Now a member of
10891         typedef_hash_table.
10892         (typedef_hash_table::find_typedef): Rename from
10893         find_typedef_in_hash; now a member.
10894         (whatis_exp): Update.
10895         * extension.h (struct ext_lang_type_printers): Add constructor and
10896         destructor.
10897         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10898         declare.
10899         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10900         Now a constructor; rename from start_ext_lang_type_printers.
10901         (ext_lang_type_printers): Now a destructor; rename from
10902         free_ext_lang_type_printers.
10903         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10904         Update.
10905         (c_type_print_base_struct_union): Update.  Remove cleanups.
10906
10907 2018-03-27  Tom Tromey  <tom@tromey.com>
10908
10909         * dwarf-index-write.c: Include <cmath>.
10910
10911 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10912
10913         * NEWS: Add entry describing new "set|show varsize-limit" command.
10914         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10915         command.
10916         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10917         "set variable".
10918
10919 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10920
10921         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10922         dwarf-index-write.c
10923         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10924         * dwarf-index-common.c: New file.
10925         * dwarf-index-common.h: New file.
10926         * dwarf-index-write.c: New file.
10927         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10928         (struct dwarf2_section_info): Move from here.
10929         (dwarf2_section_info_def): Likewise.
10930         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10931         (offset_type): Likewise.
10932         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10933         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10934         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10935         (byte_swap): Likewise.
10936         (MAYBE_SWAP): Likewise.
10937         (dwarf2_per_cu_ptr): Likewise.
10938         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10939         (struct tu_stats): Likewise.
10940         (struct dwarf2_per_objfile): Likewise.
10941         (struct dwarf2_per_cu_data): Likewise.
10942         (struct signatured_type): Likewise.
10943         (sig_type_ptr): Likewise.
10944         (DEF_VEC_P (sig_type_ptr)): Likewise.
10945         (INDEX4_SUFFIX): Likewise.
10946         (INDEX5_SUFFIX): Likewise.
10947         (DEBUG_STR_SUFFIX): Likewise.
10948         (dwarf2_read_section): Make non-static.
10949         (mapped_index_string_hash): Move from here.
10950         (dwarf5_djb_hash): Likewise.
10951         (file_write): Likewise.
10952         (class data_buf): Likewise.
10953         (struct symtab_index_entry): Likewise.
10954         (struct mapped_symtab): Likewise.
10955         (find_slot): Likewise.
10956         (hash_expand): Likewise.
10957         (add_index_entry): Likewise.
10958         (uniquify_cu_indices): Likewise.
10959         (class c_str_view): Likewise.
10960         (class c_str_view_hasher): Likewise.
10961         (class vector_hasher): Likewise.
10962         (write_hash_table): Likewise.
10963         (psym_index_map): Likewise.
10964         (struct addrmap_index_data): Likewise.
10965         (add_address_entry): Likewise.
10966         (add_address_entry_worker): Likewise.
10967         (write_address_map): Likewise.
10968         (symbol_kind): Likewise.
10969         (write_psymbols): Likewise.
10970         (struct signatured_type_index_data): Likewise.
10971         (write_one_signatured_type): Likewise.
10972         (recursively_count_psymbols): Likewise.
10973         (recursively_write_psymbols): Likewise.
10974         (class debug_names): Likewise.
10975         (check_dwarf64_offsets): Likewise.
10976         (psyms_seen_size): Likewise.
10977         (write_gdbindex): Likewise.
10978         (write_debug_names): Likewise.
10979         (assert_file_size): Likewise.
10980         (write_psymtabs_to_index): Likewise.
10981         (save_gdb_index_command): Likewise.
10982         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10983         command.
10984         * dwarf2read.h: New file.
10985
10986 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10987
10988         PR gdb/22670
10989         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10990         symbol name if the CU's language stores symbol names in linkage
10991         format.
10992         * language.h (struct language_defn)
10993         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10994         all instances of this struct.
10995
10996 2018-03-26  Tom Tromey  <tom@tromey.com>
10997
10998         * stack.c (backtrace_command_1): Remove verbose code.
10999
11000 2018-03-26  Tom Tromey  <tom@tromey.com>
11001
11002         * python/py-framefilter.c (py_print_type): Don't catch
11003         exceptions.  Return void.
11004         (py_print_value): Likewise.
11005         (py_print_single_arg): Likewise.
11006         (enumerate_args): Don't catch exceptions.
11007         (py_print_args): Likewise.
11008         (py_print_frame): Likewise.
11009         (gdbpy_apply_frame_filter): Catch exceptions here.
11010
11011 2018-03-26  Tom Tromey  <tom@tromey.com>
11012
11013         * stack.c (_initialize_stack): Remove trailing newlines from help
11014         text.  Add "Usage" line to "backtrace" help.
11015
11016 2018-03-26  Tom Tromey  <tom@tromey.com>
11017
11018         PR python/16486:
11019         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11020
11021 2018-03-26  Tom Tromey  <tom@tromey.com>
11022
11023         * python/py-framefilter.c (py_print_single_arg): Return
11024         EXT_LANG_BT_ERROR from catch.
11025
11026 2018-03-26  Tom Tromey  <tom@tromey.com>
11027
11028         PR backtrace/15584:
11029         * stack.c (backtrace_command_1): Move some code into no-filters
11030         "if".
11031
11032 2018-03-26  Tom Tromey  <tom@tromey.com>
11033
11034         * python/py-framefilter.c (throw_quit_or_print_exception): New
11035         function.
11036         (gdbpy_apply_frame_filter): Use it.
11037
11038 2018-03-26  Tom Tromey  <tom@tromey.com>
11039
11040         PR cli/17716:
11041         * python/py-framefilter.c (py_print_type, py_print_value)
11042         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11043         RETURN_MASK_ERROR.
11044
11045 2018-03-26  Tom Tromey  <tom@tromey.com>
11046
11047         * python/py-framefilter.c (enumerate_args): Use
11048         gdb::unique_xmalloc_ptr.
11049
11050 2018-03-26  Tom Tromey  <tom@tromey.com>
11051
11052         * python/py-framefilter.c (py_print_frame): Return
11053         EXT_LANG_BT_OK.
11054         (gdbpy_apply_frame_filter): Update comment.
11055         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11056         Remove.
11057         <EXT_LANG_BT_NO_FILTERS>: Change value.
11058
11059 2018-03-26  Tom Tromey  <tom@tromey.com>
11060
11061         PR backtrace/15582:
11062         * stack.c (backtrace_command): Parse "hide" argument.
11063         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11064         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11065         constant.
11066
11067 2018-03-26  Tom Tromey  <tom@tromey.com>
11068
11069         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11070         add "flags".
11071         (backtrace_command): Remove "fulltrace", add "flags".
11072
11073 2018-03-26  Tom Tromey  <tom@tromey.com>
11074
11075         * stack.c (backtrace_command): Rewrite command line parsing.
11076
11077 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11078
11079         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11080
11081 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11082
11083         * filename-seen-cache.h: Add include guard.
11084
11085 2018-03-26  Keith Seitz  <keiths@redhat.com>
11086
11087         * symfile.c (place_section): Remove "struct" from section_addr_info
11088         in comment.
11089         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11090         "struct" keyword from section_addr_info.
11091
11092 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11093
11094         * regformats/regdef.h (reg): Add constructors.
11095
11096 2018-03-25  Pedro Alves  <palves@redhat.com>
11097
11098         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11099         if then/else bodies in var_func_name extraction.
11100
11101 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11102
11103         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11104         lookup_minimal_symbol() to find symbol entry.
11105         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11106
11107 2018-03-23  Keith Seitz  <keiths@redhat.com>
11108
11109         PR c++/22968
11110         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11111         nested type definitions for C++, too.
11112
11113 2018-03-23  Tom Tromey  <tom@tromey.com>
11114
11115         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11116         a typedef.
11117         (macho_register_oso): Remove.
11118         (macho_symtab_read): Take a std::vector.
11119         (oso_el_compare_name): Now a std::sort comparator.
11120         (macho_symfile_read_all_oso): Take a std::vector.
11121         (macho_symfile_read): Use std::vector.  Remove cleanups.
11122
11123 2018-03-22  Tom Tromey  <tom@tromey.com>
11124
11125         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11126         (record_full_goto_bookmark): Use std::string.
11127
11128 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11129
11130         PR tdep/18295
11131         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11132         a single mask.
11133
11134 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11135
11136         * rs6000-tdep.c (store_insn_p): New function.
11137         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11138         and cr_reg to their unshifted values. Use store_insn_p to
11139         match LR saves using either R1 or fdata->alloca_reg. Use
11140         store_insn_p to match CR saves. Set alloca_reg_offset
11141         when alloca_reg and framep are set. Remove lr_reg shift
11142         when assigning to fdata->lr_register.
11143
11144 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11145
11146         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11147         command line args instead of emitting a warning.
11148
11149 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11150
11151         * tracepoint.h (struct static_tracepoint_marker): Initialize
11152         fields, define default constructor, move constructor and move
11153         assignment, disable the rest.
11154         <str_id, extra>: Make std::string.
11155         (release_static_tracepoint_marker): Remove.
11156         (free_current_marker): Remove.
11157         * tracepoint.c (free_current_marker): Remove.
11158         (parse_static_tracepoint_marker_definition): Adjust to
11159         std::string, use new hex2str overload.
11160         (release_static_tracepoint_marker): Remove.
11161         (print_one_static_tracepoint_marker): Get marker by reference
11162         and adjust to std::string.
11163         (info_static_tracepoint_markers_command): Adjust to std::vector
11164         changes
11165         * target.h (static_tracepoint_marker_p): Remove typedef.
11166         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11167         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11168         bool.
11169         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11170         * target-debug.h
11171         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11172         (target_debug_print_std_vector_static_tracepoint_marker): New.
11173         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11174         to...
11175         (target_debug_print_static_tracepoint_marker_p): ... this.
11176         * target-delegates.c: Re-generate.
11177         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11178         Make std::string.
11179         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11180         (decode_static_tracepoint_spec): Adjust to std::vector.
11181         (tracepoint_print_one_detail): Adjust to std::string.
11182         (strace_marker_decode_location): Adjust to std::string.
11183         (update_static_tracepoint): Adjust to std::string, remove call
11184         to release_static_tracepoint_marker.
11185         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11186         Adjust to std::vector.
11187         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11188         (remote_static_tracepoint_markers_by_strid): Adjust to
11189         std::vector.
11190         * common/rsp-low.h (hex2str): New overload with explicit count
11191         of bytes.
11192         * common/rsp-low.c (hex2str): New overload with explicit count
11193         of bytes.
11194         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11195         (_initialize_rsp_low_selftests): Add test_hex2str test.
11196         * unittests/tracepoint-selftests.c
11197         (test_parse_static_tracepoint_marker_definition): Adjust to
11198         std::string.
11199
11200 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11201
11202         * tracepoint.c (parse_static_tracepoint_marker_definition):
11203         Consider case where the definition is followed by more
11204         definitions.
11205         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11206         tracepoint-selftests.c.
11207         * unittests/tracepoint-selftests.c: New.
11208
11209 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11210
11211         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11212         Carvalho.
11213
11214 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11215
11216         * symtab.c (find_pc_sect_line): fixed indentation.
11217
11218 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11219
11220         * symtab.c (find_pc_sect_line): now uses binary search.
11221
11222 2018-03-19  Tom Tromey  <tom@tromey.com>
11223
11224         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11225         "IDENT" production.
11226
11227 2018-03-19  Pedro Alves  <palves@redhat.com>
11228             Tom Tromey  <tom@tromey.com>
11229
11230         * unittests/observable-selftests.c: New file.
11231         * common/observable.h: New file.
11232         * observable.h: New file.
11233         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11234         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11235         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11236         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11237         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11238         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11239         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11240         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11241         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11242         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11243         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11244         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11245         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11246         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11247         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11248         tui/tui-interp.c, valops.c: Update all users.
11249         * tui/tui-hooks.c (tui_bp_created_observer)
11250         (tui_bp_deleted_observer, tui_bp_modified_observer)
11251         (tui_inferior_exit_observer, tui_before_prompt_observer)
11252         (tui_normal_stop_observer, tui_register_changed_observer):
11253         Remove.
11254         (tui_observers_token): New global.
11255         (attach_or_detach, tui_attach_detach_observers): New functions.
11256         (tui_install_hooks, tui_remove_hooks): Use
11257         tui_attach_detach_observers.
11258         * record-btrace.c (record_btrace_thread_observer): Remove.
11259         (record_btrace_thread_observer_token): New global.
11260         * observer.sh: Remove.
11261         * observer.c: Rename to observable.c.
11262         * observable.c (namespace gdb_observers): Define new objects.
11263         (observer_debug): Move into gdb_observers namespace.
11264         (struct observer, struct observer_list, xalloc_observer_list_node)
11265         (xfree_observer_list_node, generic_observer_attach)
11266         (generic_observer_detach, generic_observer_notify): Remove.
11267         (_initialize_observer): Update.
11268         Don't include observer.inc.
11269         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11270         (clean mostlyclean): Likewise.
11271         (observer.h, observer.inc): Remove targets.
11272         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11273         (COMMON_SFILES): Use observable.c, not observer.c.
11274         * .gitignore: Remove observer.h.
11275
11276 2018-03-18  Tom Tromey  <tom@tromey.com>
11277
11278         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11279         gdb::def_vector.
11280         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11281
11282 2018-03-17  Tom Tromey  <tom@tromey.com>
11283
11284         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11285
11286 2018-03-17  Tom Tromey  <tom@tromey.com>
11287
11288         * target.c (class scoped_target_fd): New.
11289         (target_fileio_close_cleanup): Remove.
11290         (target_fileio_read_alloc_1): Use scoped_target_fd.
11291
11292 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11293
11294         * silent-rules.mk: New.
11295         * Makefile.in: Include silent-rules.mk
11296         (srcdir, VPATH, top_srcdir): Move up.
11297         (COMPILE): Add ECHO_CXX.
11298         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11299         (init.c): Add ECHO_INIT_C.
11300         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11301         (version.c): Add ECHO_GEN.
11302         (printcmd.o): Add ECHO_CXX.
11303         (target-float.o): Add ECHO_CXX.
11304         (ada-exp.o): Add ECHO_CXX.
11305         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11306         (insight$(EXEEXT)): Add ECHO_CXXLD.
11307         * gnulib/configure.ac: Add AM_SILENT_RULES.
11308         * gnulib/aclocal.m4: Re-generate.
11309         * gnulib/configure: Re-generate.
11310         * gnulib/import/Makefile.in: Re-generate.
11311
11312 2018-03-16  Tom Tromey  <tom@tromey.com>
11313
11314         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11315         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11316         * utils.c (do_free_section_addr_info)
11317         (make_cleanup_free_section_addr_info): Remove.
11318         * symfile.h (struct other_sections): Add constructor.
11319         (struct section_addr_info): Remove.
11320         (section_addr_info): New typedef.
11321         (struct sym_fns) <sym_offsets>: Change type of parameter.
11322         (build_section_addr_info_from_objfile)
11323         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11324         (default_symfile_offsets, symbol_file_add)
11325         (symbol_file_add_from_bfd)
11326         (build_section_addr_info_from_section_table): Update.
11327         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11328         * symfile.c (alloc_section_addr_info): Remove.
11329         (build_section_addr_info_from_section_table): Change return type.
11330         Update.
11331         (build_section_addr_info_from_bfd)
11332         (build_section_addr_info_from_objfile): Likewise.
11333         (free_section_addr_info): Remove.
11334         (relative_addr_info_to_section_offsets): Change type of "addrs".
11335         (addrs_section_compar): Now a std::sort comparator.
11336         (addrs_section_sort): Change return type.
11337         (addr_info_make_relative): Change type of "addrs".  Update.
11338         (default_symfile_offsets, syms_from_objfile_1)
11339         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11340         (symbol_file_add_separate): Update.
11341         (symbol_file_add): Change type of "addrs".  Update.
11342         (add_symbol_file_command): Update.  Remove cleanups.
11343         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11344         cleanups.
11345         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11346         * solib.c (solib_read_symbols): Update.
11347         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11348         * machoread.c (macho_symfile_offsets): Update.
11349         * jit.c (jit_bfd_try_read_symtab): Update.
11350
11351 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11352
11353         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11354         unittests/utils-selftests.c.
11355         * unittests/utils-selftests.c: New file.
11356
11357 2018-03-14  Tom Tromey  <tom@tromey.com>
11358
11359         PR cli/14977:
11360         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11361         for NULL.
11362
11363 2018-03-14  Tom Tromey  <tom@tromey.com>
11364
11365         PR cli/19918:
11366         * printcmd.c (printf_pointer): Allow "-" in format.
11367
11368 2018-03-14  Tom Tromey  <tom@tromey.com>
11369
11370         * printcmd.c (_initialize_printcmd): Add usage to printf.
11371
11372 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11373
11374         * MAINTAINERS: Update my email address.
11375
11376 2018-03-13  Tom Tromey  <tom@tromey.com>
11377
11378         * machoread.c (macho_check_dsym): Change filenamep to a
11379         std::string*.
11380         (macho_symfile_read): Update.
11381         * symfile.c (load_command): Use std::string.
11382
11383 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11384
11385         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11386         to error message string.
11387         (riscv_register_name): Use xsnprintf instead of sprintf.
11388         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11389         internal_error.
11390         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11391         error.
11392         (riscv_push_dummy_call): Likewise.
11393
11394 2018-03-12  Tom Tromey  <tom@tromey.com>
11395
11396         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11397         Use gdb::byte_vector.
11398         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11399
11400 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11401
11402         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11403         parameter type to readable_regcache.
11404         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11405         the declaration.
11406
11407 2018-03-11  Tom Tromey  <tom@tromey.com>
11408
11409         * dwarf2read.c (struct nextfield): Add initializers.
11410         (struct nextfnfield): Remove.
11411         (struct fnfieldlist): Add initializers.  Remove "length" and
11412         "head", use std::vector.
11413         (struct decl_field_list): Remove.
11414         (struct field_info): Add initializers.
11415         <fields, baseclasses>: Now std::vector.
11416         <nbaseclasses, nfnfields, typedef_field_list_count,
11417         nested_types_list_count>: Remove.
11418         (dwarf2_add_field, dwarf2_add_type_defn)
11419         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11420         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11421         (process_structure_scope): Update.
11422
11423 2018-03-11  Tom Tromey  <tom@tromey.com>
11424
11425         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11426         for use by std::sort.
11427         (build_type_psymtabs_1): Use std::vector.
11428
11429 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11430
11431         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11432         and LIBMPFR in the printed configuration.
11433
11434 2018-03-08  Tom Tromey  <tom@tromey.com>
11435
11436         * source.c (get_filename_and_charpos): Use scoped_fd.
11437         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11438         (procfs_pidlist): Likewise.
11439         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11440         (iterate_over_mappings): Likewise.
11441
11442 2018-03-08  Tom Tromey  <tom@tromey.com>
11443
11444         * infcall.c (struct call_return_meta_info)
11445         <stack_temporaries_enabled>: Remove.
11446         (get_call_return_value, call_function_by_hand_dummy): Update.
11447         * thread.c (disable_thread_stack_temporaries): Remove.
11448         (enable_thread_stack_temporaries): Remove.
11449         (thread_stack_temporaries_enabled_p): Return bool.
11450         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11451         (get_last_thread_stack_temporary): Update.
11452         * eval.c (evaluate_subexp): Update.
11453         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11454         class, not a function.
11455         (value_ptr, value_vec): Remove typedefs.
11456         (class thread_info) <stack_temporaries_enabled>: Now bool.
11457         <stack_temporaries>: Now a std::vector.
11458         (thread_stack_temporaries_enabled_p)
11459         (value_in_thread_stack_temporaries): Return bool.
11460
11461 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11462
11463         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11464         (getpkt_or_notif_sane_1): Likewise.
11465
11466 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11467
11468         * build-id.c (build_id_to_debug_bfd): Use std::string.
11469
11470 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11471
11472         * build-id.c (find_separate_debug_file_by_buildid): Return
11473         std::string.
11474         * build-id.h (find_separate_debug_file_by_buildid): Return
11475         std::string.
11476         * coffread.c (coff_symfile_read): Adjust to std::string.
11477         * elfread.c (elf_symfile_read): Adjust to std::string.
11478         * symfile.c (separate_debug_file_exists): Change parameter to
11479         std::string.
11480         (find_separate_debug_file): Return std::string.
11481         (find_separate_debug_file_by_debuglink): Return std::string.
11482         * symfile.h (find_separate_debug_file_by_debuglink): Return
11483         std::string.
11484
11485 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11486
11487         * common/xml-utils.c (xml_escape_text): Move code to...
11488         (xml_escape_text_append): ... this new function.
11489         * common/xml-utils.h (xml_escape_text_append): New declaration.
11490         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11491         New function.
11492         (_initialize_xml_utils): register test_xml_escape_text_append as
11493         a selftest.
11494
11495 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11496
11497         * defs.h: Remove MAX_REGISTER_SIZE.
11498         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11499         asserts.
11500         * python/py-unwind.c (pyuw_sniffer): Likewise.
11501
11502 2018-03-07  Tom Tromey  <tom@tromey.com>
11503
11504         * linux-tdep.c (linux_info_proc): Update.
11505         * target.h (struct target_ops) <to_fileio_readlink>: Return
11506         optional<string>.
11507         (target_fileio_readlink): Return optional<string>.
11508         * remote.c (remote_hostio_readlink): Return optional<string>.
11509         * inf-child.c (inf_child_fileio_readlink): Return
11510         optional<string>.
11511         * target.c (target_fileio_readlink): Return optional<string>.
11512
11513 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11514
11515         * regcache.c (cooked_read_test): Add riscv to the list of
11516         architectures that have a save_reggroup.
11517
11518 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11519
11520         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11521         value is not a dynamic class object.
11522
11523 2018-03-06  Tom Tromey  <tom@tromey.com>
11524
11525         * rust-exp.y: Formatting fixes.
11526
11527 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11528
11529         * riscv-tdep.c (riscv_register_name): Remove target description
11530         support.
11531         (riscv_gdbarch_init): Remove target description check.
11532
11533 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11534
11535         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11536         comment.
11537         * riscv-tdep.h: Likewise.
11538
11539 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11540
11541         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11542         (riscv_pseudo_register_write): Delete.
11543         (riscv_gdbarch_init): Remove all use of pseudo registers.
11544
11545 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11546
11547         * record-btrace.c (btrace_print_lines): Replace cleanup
11548         parameter with RAII equivalents.
11549         (btrace_insn_history): Replace cleanup with RAII equivalents.
11550         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11551         make_cleanup_ui_out_tuple_begin_end): Remove.
11552         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11553         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11554         make_cleanup_ui_out_list_begin_end): Remove.
11555
11556 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11557
11558         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11559         parameter types to std::vector.  Use bool.
11560         (record_btrace_wait): Replace VEC(tp_t) with
11561         std::vector<thread_info *>.
11562         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11563
11564 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11565
11566         * record-btrace.c (record_btrace_disable_callback): Remove.
11567         (struct scoped_btrace_disable): New.
11568         (record_btrace_open): Use scoped_btrace_disable.
11569
11570 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11571
11572         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11573         reading values from registers.
11574
11575 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11576
11577         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11578         where appropriate.
11579
11580 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11581
11582         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11583         change parameter type.  Use GDB's print functions, and use
11584         core_addr_to_string where appropriate.
11585         (riscv_push_dummy_call): Use core_addr_to_string where
11586         appropriate, update call to riscv_print_arg_location, and reindent
11587         a few lines.
11588         (riscv_return_value): Update call to riscv_print_arg_location.
11589
11590 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11591             Tim Newsome <tim@sifive.com>
11592             Albert Ou <a0u@eecs.berkeley.edu>
11593             Darius Rad <darius@bluespec.com>
11594
11595         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11596         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11597         (ALLDEPFILES): Add riscv-tdep.c
11598         * configure.tgt: Add riscv support.
11599         * riscv-tdep.c: New file.
11600         * riscv-tdep.h: New file.
11601         * NEWS: Mention new target.
11602         * MAINTAINERS: Add entry for riscv.
11603
11604 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11605
11606         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11607         fields within aggregates.
11608
11609 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11610
11611         * record-btrace.c (btrace_print_lines): Change type of flags to
11612         gdb_disassembly_flags.
11613
11614 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11615
11616         * fbsd-nat.c: Include "inf-ptrace.h".
11617         (USE_SIGTRAP_SIGINFO): Conditionally define.
11618         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11619         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11620         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11621         function.
11622         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11623         Likewise.
11624         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11625         Likewise.
11626         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11627         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11628         "supports_stopped_by_hw_breakpoint" target methods.
11629
11630 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11631
11632         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11633         * fbsd-nat.c (debug_fbsd_nat): New variable.
11634         (show_fbsd_nat_debug): New function.
11635         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11636         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11637
11638 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11639
11640         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11641         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11642         prototype.
11643         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11644         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11645         method.
11646
11647 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11648
11649         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11650         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11651
11652 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11653
11654         * charset.c (struct charset_vector): New.
11655         (charsets): Change type to charset_vector.
11656         (find_charset_names): Adjust.
11657         (add_one): Adjust.
11658         (_initialize_charset): Adjust.
11659
11660 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11661
11662         * progspace.h (struct program_space) <deleted_solibs>: Change
11663         type to std::vector<std::string>.
11664         * progspace.c (clear_program_space_solib_cache): Adjust.
11665         * breakpoint.c (print_solib_event): Adjust.
11666         (check_status_catch_solib): Adjust.
11667         * solib.c (update_solib_list): Adjust.
11668         * ui-out.h (class ui_out) <field_string>: New overload.
11669         * ui-out.c (ui_out::field_string): New overload.
11670
11671 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11672
11673         * progspace.h (struct program_space): Add constructor and
11674         destructor, initialize fields.
11675         (add_program_space): Remove.
11676         * progspace.c (add_program_space): Rename to...
11677         (program_space::program_space): ... this.
11678         (release_program_space): Rename to...
11679         (program_space::~program_space): ... this.
11680         (delete_program_space): Use delete to delete program_space.
11681         (initialize_progspace): Use new to allocate program_space.
11682         * inferior.c (add_inferior_with_spaces): Likewise.
11683         (clone_inferior_command): Likewise.
11684         * infrun.c (follow_fork_inferior): Likewise.
11685         (handle_vfork_child_exec_or_exit): Likewise.
11686
11687 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11688
11689         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
11690         (delim_string_to_char_ptr_vec): Return std::vector of
11691         gdb::unique_xmalloc_ptr.
11692         (dirnames_to_char_ptr_vec_append): Take std::vector of
11693         gdb::unique_xmalloc_ptr.
11694         (dirnames_to_char_ptr_vec): Return std::vector of
11695         gdb::unique_xmalloc_ptr.
11696         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
11697         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
11698         (delim_string_to_char_ptr_vec): Return an std::vector of
11699         gdb::unique_xmalloc_ptr, adjust the code.
11700         (dirnames_to_char_ptr_vec_append): Take an std::vector of
11701         gdb::unique_xmalloc_ptr, adjust the code.
11702         (dirnames_to_char_ptr_vec): Return an std::vector of
11703         gdb::unique_xmalloc_ptr, adjust the code.
11704         * auto-load.c (auto_load_safe_path_vec): Change type to
11705         std::vector of gdb::unique_xmalloc_ptr.
11706         (auto_load_expand_dir_vars): Return an std::vector of
11707         gdb::unique_xmalloc_ptr, adjust the code.
11708         (auto_load_safe_path_vec_update): Adjust.
11709         (filename_is_in_auto_load_safe_path_vec): Adjust.
11710         (auto_load_objfile_script_1): Adjust.
11711         * build-id.c (build_id_to_debug_bfd): Adjust.
11712         * linux-thread-db.c (thread_db_load_search): Adjust.
11713         * source.c (add_path): Adjust.
11714         (openp): Adjust.
11715         * symfile.c (find_separate_debug_file): Adjust.
11716         * utils.c (do_free_char_ptr_vec): Remove.
11717         (make_cleanup_free_char_ptr_vec): Remove.
11718
11719 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
11720
11721         PR gdb/22907
11722         * common/pathstuff.c: Conditionally include "<windows.h>".
11723
11724 2018-03-01  Georg Sauthoff  <mail@georg.so>
11725
11726         PR gdb/22888
11727         * gcore.in: Quote variables and switch interpreter to bash.
11728
11729 2018-03-01  Tom Tromey  <tom@tromey.com>
11730
11731         * dwarf2read.c (alloc_discriminant_info): Fix default_index
11732         assertion.  Add assertion for discriminant_index.
11733         (quirk_rust_enum): Use correct base type name in univariant case.
11734
11735 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
11736
11737         * record.c (get_call_history_modifiers): Return a
11738         record_print_flags.
11739         (cmd_record_call_history): Adjust.
11740         * record-btrace.c (record_btrace_call_history): Adjust.
11741         (record_btrace_call_history_range): Adjust.
11742         (record_btrace_call_history_from): Adjust.
11743         * target-debug.h (target_debug_print_record_print_flags): New.
11744         * target-delegates.c: Re-generate.
11745         * target.c (target_call_history): Change flags type.
11746         (target_call_history_from): Likewise.
11747         (target_call_history_range): Likewise.
11748         * target.h (struct target_ops) <target_call_history>: Likewise.
11749         (target_call_history_from): Likewise.
11750         (target_call_history_range): Likewise.
11751
11752 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11753             Simon Marchi  <simon.marchi@polymtl.ca>
11754
11755         * common/common-utils.c: Include "sys/stat.h".
11756         (is_regular_file): Move here from "source.c"; change return
11757         type to "bool".
11758         * common/common-utils.h (is_regular_file): New prototype.
11759         * common/pathstuff.c (contains_dir_separator): New function.
11760         * common/pathstuff.h (contains_dir_separator): New prototype.
11761         * source.c: Don't include "sys/stat.h".
11762         (is_regular_file): Move to "common/common-utils.c".
11763
11764 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11765
11766         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
11767         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
11768         * auto-load.c: Include "common/pathstuff.h".
11769         * common/common-def.h (current_directory): Move here.
11770         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
11771         function.
11772         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
11773         prototype.
11774         * common/pathstuff.c: New file.
11775         * common/pathstuff.h: New file.
11776         * compile/compile.c: Include "common/pathstuff.h".
11777         * defs.h (current_directory): Move to "common/common-defs.h".
11778         * dwarf2read.c: Include "common/pathstuff.h".
11779         * exec.c: Likewise.
11780         * guile/scm-safe-call.c: Likewise.
11781         * linux-thread-db.c: Likewise.
11782         * main.c: Likewise.
11783         * nto-tdep.c: Likewise.
11784         * objfiles.c: Likewise.
11785         * source.c: Likewise.
11786         * symtab.c: Likewise.
11787         * utils.c: Include "common/pathstuff.h".
11788         (gdb_realpath): Move to "common/pathstuff.c".
11789         (gdb_realpath_keepfile): Likewise.
11790         (gdb_abspath): Likewise.
11791         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
11792         (gdb_realpath_keepfile): Likewise.
11793         (gdb_abspath): Likewise.
11794
11795 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
11796
11797         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11798         wildcard process pid for super_resume for kernels with a
11799         specific bug.
11800
11801 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11802
11803         * compile/compile.c (get_args): Add additional comments
11804         explaining function.
11805
11806 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11807             Tom Tromey  <tom@tromey.com>
11808
11809         * target.h (memory_write_request_s): Remove typedef.  Don't define
11810         VEC.
11811         (target_write_memory_blocks): Change argument to std::vector.
11812         (struct memory_write_request): Add constructor.
11813         * target-memory.c (compare_block_starting_address): Return bool.
11814         Change argument types.
11815         (claim_memory): Change arguments to use std::vector.
11816         (split_regular_and_flash_blocks, blocks_to_erase)
11817         (compute_garbled_blocks): Likewise.
11818         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11819         (target_write_memory_blocks): Change argument to std::vector.
11820         * symfile.c (struct load_section_data): Add constructor and
11821         destructor.  Use std::vector for "requests".
11822         (struct load_progress_data): Add initializers.
11823         (load_section_callback): Update.  Use "new".
11824         (clear_memory_write_data): Remove.
11825         (generic_load): Update.
11826
11827 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11828
11829         * arch/aarch64.h: Use common/tdesc.h.
11830
11831 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11832
11833         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11834         architecture with a 64-bit ABI.
11835
11836 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11837
11838         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11839         ahead of target description loading.
11840
11841 2018-02-26  Tom Tromey  <tom@tromey.com>
11842
11843         * stack.c (backtrace_command_1): Update.
11844         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11845         of "flags".
11846         * python/py-framefilter.c (py_print_frame)
11847         (gdbpy_apply_frame_filter): Change type of "flags".
11848         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11849         of "flags".
11850         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11851         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11852         * extension.h (enum frame_filter_flag): Rename from
11853         frame_filter_flags.
11854         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11855         (apply_ext_lang_frame_filter): Change type of "flags".
11856         * extension.c (apply_ext_lang_frame_filter): Change type of
11857         "flags".
11858         * extension-priv.h (struct extension_language_ops)
11859         <apply_frame_filter>: Change type of "flags".
11860
11861 2018-02-26  Tom Tromey  <tom@tromey.com>
11862
11863         PR python/16497:
11864         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11865         off-by-one in py_end computation.
11866         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11867         PRINT_MORE_FRAMES.
11868         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11869         constant.
11870
11871 2018-02-26  Tom Tromey  <tom@tromey.com>
11872
11873         * dwarf2read.c (struct variant_field): New.
11874         (struct nextfield) <variant>: New field.
11875         (dwarf2_add_field): Handle DW_TAG_variant_part.
11876         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11877         discriminated union.
11878         (read_structure_type): Handle DW_TAG_variant_part.
11879         (handle_struct_member_die): New function, extracted from
11880         process_structure_scope.  Handle DW_TAG_variant.
11881         (process_structure_scope): Handle discriminated unions.  Call
11882         handle_struct_member_die.
11883
11884 2018-02-26  Tom Tromey  <tom@tromey.com>
11885
11886         * rust-lang.h (rust_last_path_segment): Declare.
11887         * rust-lang.c (rust_last_path_segment): Now public.  Change
11888         contract.
11889         (struct disr_info): Remove.
11890         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11891         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11892         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11893         (rust_enum_p, rust_enum_variant): New function.
11894         (rust_underscore_fields): Remove "offset" parameter.
11895         (rust_print_enum): New function.
11896         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11897         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11898         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11899         enums.
11900         (rust_internal_print_type): New function, from rust_print_type.
11901         Remove enum code.
11902         (rust_print_type): Call rust_internal_print_type.
11903         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11904         Update enum handling.
11905         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11906         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11907         (rust_union_quirks): New functions.
11908         (process_full_comp_unit, process_full_type_unit): Call
11909         rust_union_quirks.
11910         (process_structure_scope): Update rust_unions if necessary.
11911
11912 2018-02-26  Tom Tromey  <tom@tromey.com>
11913
11914         * value.h (value_union_variant): Declare.
11915         * valops.c (value_union_variant): New function.
11916         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11917         (struct discriminant_info): New.
11918         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11919         enumerator.
11920         (struct main_type) <flag_discriminated_union>: New field.
11921
11922 2018-02-26  Tom Tromey  <tom@tromey.com>
11923
11924         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11925         unittests/unpack-selftests.c.
11926         * unittests/unpack-selftests.c: New file.
11927         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11928
11929 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11930
11931         * dwarf2read.c (struct partial_die_info) <read>: New method.
11932         (read_partial_die): Remove the declaration.
11933         (load_partial_dies): Update.
11934         (partial_die_info::partial_die_info):
11935         (read_partial_die): Change it to partial_die_info::read.
11936
11937 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11938
11939         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11940         (fixup_partial_die): Remove declaration.
11941         (scan_partial_symbols): Update.
11942         (partial_die_parent_scope): Likewise.
11943         (partial_die_full_name): Likewise.
11944         (fixup_partial_die): Change it to partial_die_info::fixup.
11945
11946 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11947
11948         * dwarf2read.c (read_partial_die): Update the declaration.
11949         (load_partial_dies): Caller update.
11950         (read_partial_die): Remove one argument abbrev_len.
11951
11952 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11953
11954         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11955         assignment operator.
11956         (load_partial_dies): Use ctor and copy ctor.
11957         (read_partial_die): Update.
11958         (dwarf2_cu::find_partial_die): Use ctor.
11959
11960 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11961
11962         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11963         (find_partial_die_in_comp_unit): Change it to
11964         dwarf2_cu::find_partial_die.
11965         (find_partial_die): Update.
11966
11967 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11968
11969         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11970         is NULL.
11971
11972 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11973
11974         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11975
11976 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11977
11978         * arch/amd64.h: Use common/tdesc.h.
11979         * arch/i386.c: Likewise.
11980         * arch/i386.h: Likewise.
11981         * arch/tic6x.c: Likewise.
11982         * arch/tdesc.h: Move file from here...
11983         * common/tdesc.h: ...to here.
11984         * features/aarch64-core.c: Regenerate.
11985         * features/aarch64-fpu.c: Regenerate.
11986         * features/i386/32bit-avx.c: Regenerate.
11987         * features/i386/32bit-avx512.c: Regenerate.
11988         * features/i386/32bit-core.c: Regenerate.
11989         * features/i386/32bit-linux.c: Regenerate.
11990         * features/i386/32bit-mpx.c: Regenerate.
11991         * features/i386/32bit-pkeys.c: Regenerate.
11992         * features/i386/32bit-sse.c: Regenerate.
11993         * features/i386/64bit-avx.c: Regenerate.
11994         * features/i386/64bit-avx512.c: Regenerate.
11995         * features/i386/64bit-core.c: Regenerate.
11996         * features/i386/64bit-linux.c: Regenerate.
11997         * features/i386/64bit-mpx.c: Regenerate.
11998         * features/i386/64bit-pkeys.c: Regenerate.
11999         * features/i386/64bit-segments.c: Regenerate.
12000         * features/i386/64bit-sse.c: Regenerate.
12001         * features/i386/x32-core.c: Regenerate.
12002         * features/tic6x-c6xp.c: Regenerate.
12003         * features/tic6x-core.c: Regenerate.
12004         * features/tic6x-gp.c: Regenerate.
12005         * target-descriptions.c: Use common/tdesc.h.
12006         * target-descriptions.h: Likewise.
12007
12008 2018-02-24  Tom Tromey  <tom@tromey.com>
12009
12010         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
12011         (try_thread_db_load_from_dir, thread_db_load_search): Use
12012         std::string.
12013         (info_auto_load_libthread_db_compare): Return bool.  Change
12014         argument types.
12015         (info_auto_load_libthread_db): Use std::vector, std::string.
12016         Remove cleanups.
12017
12018 2018-02-24  Tom Tromey  <tom@tromey.com>
12019
12020         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12021         std::string.
12022         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12023         std::string*.
12024         * gdbarch.c: Rebuild.
12025         * gdbarch.h: Rebuild.
12026         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12027         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12028         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12029         std::string*.
12030
12031 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12032
12033         * gdbtypes.h (sect_offset): Change type to uint64_t.
12034         (sect_offset_str): New function.
12035         * dwarf2read.c (create_addrmap_from_aranges): Use
12036         sect_offset_str.
12037         (error_check_comp_unit_head): Likewise.
12038         (create_debug_type_hash_table): Likewise.
12039         (read_cutu_die_from_dwo): Likewise.
12040         (init_cutu_and_read_dies): Likewise.
12041         (init_cutu_and_read_dies_no_follow): Likewise.
12042         (process_psymtab_comp_unit_reader): Likewise.
12043         (partial_die_parent_scope): Likewise.
12044         (peek_die_abbrev): Likewise.
12045         (process_queue): Likewise.
12046         (dwarf2_physname): Likewise.
12047         (read_namespace_alias): Likewise.
12048         (read_import_statement): Likewise.
12049         (create_dwo_cu_reader): Likewise.
12050         (create_cus_hash_table): Likewise.
12051         (lookup_dwo_cutu): Likewise.
12052         (inherit_abstract_dies): Likewise.
12053         (read_func_scope): Likewise.
12054         (read_call_site_scope): Likewise.
12055         (dwarf2_add_member_fn): Likewise.
12056         (read_common_block): Likewise.
12057         (read_module_type): Likewise.
12058         (read_typedef): Likewise.
12059         (read_subrange_type): Likewise.
12060         (load_partial_dies): Likewise.
12061         (read_partial_die): Likewise.
12062         (find_partial_die): Likewise.
12063         (read_str_index): Likewise.
12064         (dwarf2_string_attr): Likewise.
12065         (build_error_marker_type): Likewise.
12066         (lookup_die_type): Likewise.
12067         (dump_die_shallow): Likewise.
12068         (follow_die_ref): Likewise.
12069         (dwarf2_fetch_die_loc_sect_off): Likewise.
12070         (dwarf2_fetch_constant_bytes): Likewise.
12071         (follow_die_sig): Likewise.
12072         (get_signatured_type): Likewise.
12073         (get_DW_AT_signature_type): Likewise.
12074         (dwarf2_find_containing_comp_unit): Likewise.
12075         (set_die_type): Likewise.
12076
12077 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12078
12079         * arch/aarch64.c: Include "common-defs.h".
12080         * arch/amd64.c: Likewise.
12081         * arch/i386.c: Likewise.
12082
12083 2018-02-21  Tom Tromey  <tom@tromey.com>
12084
12085         * value.h: (extract_field_op): Update.
12086         * eval.c (extract_field_op): Return a const char *.
12087         * expression.h (parse_expression_for_completion): Update.
12088         * completer.c (complete_expression): Update.
12089         (add_struct_fields): Make fieldname const.
12090         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12091         (mark_completion_tag, parse_exp_in_context_1): Update.
12092         (parse_expression_for_completion): Change "name" to
12093         unique_xmalloc_ptr*.
12094
12095 2018-02-21  Tom Tromey  <tom@tromey.com>
12096
12097         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12098
12099 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12100
12101         * avr-tdep.c (avr_read_pc): Change parameter type to
12102         readable_regcache.
12103         * gdbarch.sh (read_pc): Likewise.
12104         * gdbarch.c: Re-generated.
12105         * gdbarch.h: Re-generated.
12106         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12107         readable_regcache.
12108         * ia64-tdep.c (ia64_read_pc): Likewise.
12109         * mips-tdep.c (mips_read_pc): Likewise.
12110         * spu-tdep.c (spu_read_pc): Likewise.
12111
12112 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12113
12114         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12115         * regcache-dump.c: New file.
12116         * regcache.c: Move register_dump to regcache-dump.c.
12117         (maintenance_print_registers): Likewise.
12118         (maintenance_print_raw_registers): Likewise.
12119         (maintenance_print_cooked_registers): Likewise.
12120         (maintenance_print_register_groups): Likewise.
12121         (maintenance_print_remote_registers): Likewise.
12122         (_initialize_regcache): Likewise.
12123         * regcache.h (register_dump): Moved from regcache.c.
12124
12125 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12126
12127         * regcache.c (regcache::regcache): Update.
12128         (regcache::invalidate): Move it to detached_regcache::invalidate.
12129         (get_thread_arch_aspace_regcache): Update.
12130         (regcache::raw_update): Update.
12131         (regcache::cooked_read): Remove some code.
12132         (regcache::cooked_read_value): Likewise.
12133         (regcache::raw_write): Remove assert on m_readonly_p.
12134         (regcache::raw_supply_integer): Move it to
12135         detached_regcache::raw_supply_integer.
12136         (regcache::raw_supply_zeroed): Likewise.
12137         * regcache.h (detached_regcache) <raw_supply_integer>: New
12138         declaration.
12139         <raw_supply_zeroed, invalidate>: Likewise.
12140         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12141         <invalidate>: Likewise.
12142         <m_readonly_p>: Removed.
12143
12144 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12145
12146         * infcmd.c (get_return_value): Let stop_regs point to
12147         get_current_regcache.
12148         * regcache.c (regcache::regcache): Remove.
12149         (register_dump_reg_buffer): New class.
12150         (regcache_print): Adjust.
12151         * regcache.h (regcache): Remove constructors.
12152
12153 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12154
12155         * regcache.c (class register_dump): New class.
12156         (register_dump_regcache, register_dump_none): New class.
12157         (register_dump_remote, register_dump_groups): New class.
12158         (regcache_print): Update.
12159         * regcache.h (regcache_dump_what): Move it to regcache.c.
12160         (regcache) <dump>: Remove.
12161
12162 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12163
12164         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12165          reg_buffer_rw *.
12166         (jit_unwind_reg_set_impl): Call raw_supply.
12167         (jit_frame_sniffer): Use reg_buffer_rw.
12168         * record-full.c (record_full_core_regbuf): Change its type.
12169         (record_full_core_open_1): Use reg_buffer_rw.
12170         (record_full_close): Likewise.
12171         (record_full_core_fetch_registers): Use regcache->raw_supply.
12172         (record_full_core_store_registers): Likewise.
12173         * regcache.c (regcache::get_register_status): Move it to
12174         reg_buffer.
12175         (regcache_raw_set_cached_value): Remove.
12176         (regcache::raw_set_cached_value): Remove.
12177         (regcache::raw_write): Call raw_supply.
12178         (regcache::raw_supply): Move it to reg_buffer_rw.
12179         * regcache.h (regcache_raw_set_cached_value): Remove.
12180         (reg_buffer_rw): New class.
12181
12182 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12183
12184         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12185         readonly_detached_regcache.
12186         (dummy_frame_prev_register): Use regcache->cooked_read.
12187         * frame.c (frame_save_as_regcache): Change return type.
12188         (frame_pop): Update.
12189         * frame.h (frame_save_as_regcache): Update declaration.
12190         * inferior.h (get_infcall_suspend_state_regcache): Update
12191         declaration.
12192         * infrun.c (infcall_suspend_state) <registers>: use
12193         readonly_detached_regcache.
12194         (save_infcall_suspend_state): Don't use regcache_dup.
12195         (get_infcall_suspend_state_regcache): Change return type.
12196         * linux-fork.c (struct fork_info) <savedregs>: Change to
12197         readonly_detached_regcache.
12198         <pc>: New field.
12199         (fork_save_infrun_state): Don't use regcache_dup.
12200         (info_checkpoints_command): Adjust.
12201         * mi/mi-main.c (register_changed_p): Update declaration.
12202         (mi_cmd_data_list_changed_registers): Use
12203         readonly_detached_regcache.
12204         (register_changed_p): Change parameter type to
12205         readonly_detached_regcache.
12206         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12207         readonly_detached_regcache.
12208         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12209         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12210         New.
12211         (regcache::save): Move it to reg_buffer.
12212         (regcache::restore): Change parameter type.
12213         (regcache_dup): Remove.
12214         * regcache.h (reg_buffer) <save>: New method.
12215         (readonly_detached_regcache): New class.
12216         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12217         readonly_detached_regcache.
12218         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12219
12220 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12221
12222         * frame.c (frame_save_as_regcache): Use regcache method save.
12223         (frame_pop): Use regcache method restore.
12224         * infrun.c (restore_infcall_suspend_state): Likewise.
12225         * linux-fork.c (fork_load_infrun_state): Likewise.
12226         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12227         save.
12228         * regcache.c (regcache_save): Remove.
12229         (regcache::restore): More asserts.
12230         (regcache_cpy): Remove.
12231         * regcache.h (regcache_save): Remove the declaration.
12232         (regcache::restore): Move from private to public.
12233         Remove the friend declaration of regcache_cpy.
12234         (regcache_cpy): Remove declaration.
12235
12236 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12237
12238         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12239         parameter type to 'readable_regcache *'.
12240         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12241         * arm-tdep.c (arm_neon_quad_read): Likewise.
12242         (arm_pseudo_read): Likewise.
12243         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12244         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12245         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12246         * gdbarch.c: Re-generated.
12247         * gdbarch.h: Re-generated.
12248         * gdbarch.sh (pseudo_register_read): Change parameter type to
12249         'readable_regcache *'.
12250         (pseudo_register_read_value): Likewise.
12251         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12252         (h8300_pseudo_register_read): Likewise.
12253         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12254         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12255         (i386_pseudo_register_read_into_value): Likewise.
12256         (i386_pseudo_register_read_value): Likewise.
12257         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12258         declaration.
12259         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12260         * m32c-tdep.c (m32c_raw_read): Likewise.
12261         (m32c_read_flg): Likewise.
12262         (m32c_banked_register): Likewise.
12263         (m32c_banked_read): Likewise.
12264         (m32c_sb_read): Likewise.
12265         (m32c_part_read): Likewise.
12266         (m32c_cat_read): Likewise.
12267         (m32c_r3r2r1r0_read): Likewise.
12268         (m32c_pseudo_register_read): Likewise.
12269         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12270         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12271         (mep_pseudo_cr64_read): Likewise.
12272         (mep_pseudo_register_read): Likewise.
12273         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12274         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12275         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12276         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12277         (regcache::cooked_read): Likewise.
12278         (regcache::cooked_read_value): Likewise.
12279         (regcache_cooked_read_signed):
12280         (regcache::cooked_read): Likewise.
12281         * regcache.h (readable_regcache): New class.
12282         (regcache): Inherit readable_regcache.  Move some methods to
12283         readable_regcache.
12284         * rl78-tdep.c (rl78_pseudo_register_read): Change
12285         parameter type to 'readable_regcache *'.
12286         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12287         (e500_pseudo_register_read): Change parameter type to
12288         'readable_regcache *'.
12289         (dfp_pseudo_register_read): Likewise.
12290         (vsx_pseudo_register_read): Likewise.
12291         (efpr_pseudo_register_read): Likewise.
12292         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12293         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12294         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12295         (sh64_pseudo_register_read): Likewise.
12296         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12297         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12298         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12299         (spu_pseudo_register_read): Likewise.
12300         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12301         (xtensa_pseudo_register_read): Likewise.
12302
12303 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12304
12305         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12306         (regcache::arch): Move it to reg_buffer::arch.
12307         (regcache::register_buffer): Likewise.
12308         (regcache::assert_regnum): Likewise.
12309         (regcache::num_raw_registers): Likewise.
12310         * regcache.h (reg_buffer): New class.
12311         (regcache): Inherit reg_buffer.
12312
12313 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12314
12315         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12316         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12317
12318 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12319
12320         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12321
12322 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12323
12324         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12325         (SFILES): Remove common/*.c files.
12326         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12327         * common/common.host: Add common reference.
12328         * configure.ac: Likewise.
12329         * configure: Regenerate.
12330
12331 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12332
12333         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12334         (block_initialize_namespace): Use new.
12335         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12336         (dwarf2_free_objfile): Use delete.
12337         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12338         (copy_type_recursive): Use new.
12339         * gdb_obstack.h (allocate_on_obstack): New.
12340
12341 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12342
12343         PR gdb/22849
12344         * inferior.c (exit_inferior_1): Reset inf->control.
12345
12346 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12347
12348         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12349         declaration.
12350
12351 2018-02-14  Pedro Alves  <palves@redhat.com>
12352
12353         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12354         frame_cleanup_after_sniffer on exception.
12355
12356 2018-02-14  Tom Tromey  <tom@tromey.com>
12357
12358         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12359         const.
12360         (solib_bfd_open): Make pathname const.
12361         * solib.c (solib_bfd_open): Make pathname const.
12362         * solib-spu.c (spu_bfd_fopen): Make name const.
12363         (spu_bfd_open): Make pathname const.
12364         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12365         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12366
12367 2018-02-14  Tom Tromey  <tom@tromey.com>
12368
12369         * symfile.c (symfile_bfd_open): Update.
12370         * source.h (openp, source_full_path_of, find_and_open_source):
12371         Change argument type to unique_xmalloc_ptr.
12372         * source.c (openp): Take a unique_xmalloc_ptr.
12373         (source_full_path_of, find_and_open_source): Likewise.
12374         (open_source_file, symtab_to_fullname): Update.
12375         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12376         unique_xmalloc_ptr.
12377         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12378         (exec_file_find): Update.
12379         * psymtab.c (psymtab_to_fullname): Update.
12380         * nto-tdep.h (nto_find_and_open_solib): Update.
12381         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12382         unique_xmalloc_ptr.
12383         * exec.c (exec_file_attach): Update.
12384         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12385         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12386
12387 2018-02-14  Tom Tromey  <tom@tromey.com>
12388
12389         * solib.c: Include source.h.
12390         * nto-tdep.c: Include source.h.
12391         * mi/mi-cmd-env.c: Include source.h.
12392         * infcmd.c: Include source.h.
12393         * exec.c: Include source.h.
12394         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12395         (add_path, directory_switch, source_path, init_source_path): Move
12396         declarations...
12397         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12398         (add_path, directory_switch, source_path, init_source_path):
12399         ...here.
12400
12401 2018-02-14  Tom Tromey  <tom@tromey.com>
12402
12403         * solist.h (exec_file_find, solib_find): Return
12404         unique_xmalloc_ptr.
12405         (solib_bfd_fopen): Take a const char *.
12406         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12407         (exec_file_find, solib_find): Likewise.
12408         (solib_bfd_fopen): Do not take ownership of "pathname".
12409         (solib_bfd_open): Use unique_xmalloc_ptr.
12410         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12411         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12412         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12413         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12414
12415 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12416
12417         * ada-lang.c (name_match_type_from_name): Remove reference to
12418         ada_name_for_lookup in function's documentation.
12419         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12420
12421 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12422
12423         * defs.h (enum openp_flags): New enum.
12424         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12425         Move to enum openp_flags.
12426         (openp_flags): New enum flags.
12427         (openp): Change parameter type to openp_flags.
12428         * source.c (openp): Change parameter type to openp_flags.
12429         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12430         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12431
12432 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12433
12434         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12435         per-command.
12436
12437 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12438
12439         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12440         into...
12441         (class dwarf2_queue_guard): ...the destructor of this new class.
12442         (dw2_do_instantiate_symtab): Create instance of the new class
12443         dwarf2_queue_guard, remove cleanup.
12444
12445 2018-02-09  Tom Tromey  <tom@tromey.com>
12446
12447         * source.c (find_source_lines): Don't reference past the end of
12448         the vector.
12449
12450 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12451
12452         * remote.c (remote_btrace_maybe_reopen): Change error message.
12453         * btrace.c (btrace_enable): Likewise.
12454         (parse_xml_btrace): Likewise.
12455         (parse_xml_btrace_conf): Likewise.
12456
12457 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12458
12459         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12460         (linux_enable_pt, linux_enable_bts): Call
12461         diagnose_perf_event_open_fail.
12462
12463 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12464
12465         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12466         Remove parameter and change return type.  Update callers.  Move it.
12467         (linux_enable_bts, linux_enable_pt): Improve error message.
12468         (linux_enable_pt): Remove zero buffer size check.
12469         (linux_enable_btrace): Improve error messages.  Remove NULL return
12470         check.
12471
12472 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12473
12474         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12475         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12476         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12477         (linux_supports_pt, linux_supports_btrace): Remove.
12478         (linux_enable_bts): Call cpu_supports_bts.
12479         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12480         * remote.c (remote_supports_btrace): Remove.
12481         (init_remote_ops): Remove remote_supports_btrace.
12482         * target-delegates.c: Regenerated.
12483         * target.c (target_supports_btrace): Remove.
12484         * target.h (target_ops) <to_supports_btrace>: Remove
12485         (target_supports_btrace): Remove.
12486         * x86-linux-nat.c (x86_linux_create_target): Remove
12487         linux_supports_btrace.
12488
12489 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12490
12491         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12492         btrace failed.
12493         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12494         exception and use message in own exception.
12495
12496 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12497
12498         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12499         (perf_event_pt_event_type): Use gdb_file_up.
12500         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12501         scoped_fd, and scoped_mmap.
12502
12503 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12504
12505         * common/scoped_mmap.h: New.
12506         * unittests/scoped_mmap-selftest.c: New.
12507         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12508         unittests/scoped_mmap-selftest.c.
12509
12510 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12511
12512         * common/scoped_fd.h: New.
12513         * unittests/scoped_fd-selftest.c: New.
12514         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12515         unittests/scoped_fd-selftest.c.
12516
12517 2018-02-09  Tom Tromey  <tom@tromey.com>
12518
12519         * auto-load.c (auto_load_section_scripts): Use
12520         gdb::unique_xmalloc_ptr.
12521
12522 2018-02-09  Tom Tromey  <tom@tromey.com>
12523
12524         * auto-load.c (execute_script_contents): Use std::string.
12525
12526 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12527
12528         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12529         Python function, rather than a new command.
12530
12531 2018-02-08  Tom Tromey  <tom@tromey.com>
12532
12533         * solib.c (solib_find_1): Use std::string.
12534         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12535
12536 2018-02-08  Tom Tromey  <tom@tromey.com>
12537
12538         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12539
12540 2018-02-08  Tom Tromey  <tom@tromey.com>
12541
12542         * source.c (find_source_lines): Use gdb::def_vector.
12543
12544 2018-02-08  Tom Tromey  <tom@tromey.com>
12545
12546         * macrocmd.c (struct temporary_macro_definition): New.
12547         (macro_define_command): Use temporary_macro_definition.  Remove
12548         cleanups.
12549         (free_macro_definition_ptr): Remove.
12550
12551 2018-02-08  Tom Tromey  <tom@tromey.com>
12552
12553         * macroexp.c (maybe_expand): Use std::string.
12554
12555 2018-02-08  Tom Tromey  <tom@tromey.com>
12556
12557         * macroexp.c (struct macro_buffer): Add initializers for some
12558         members.
12559         (init_buffer, init_shared_buffer, free_buffer)
12560         (free_buffer_return_text): Remove.
12561         (macro_buffer): New constructors.
12562         (~macro_buffer): New destructor.
12563         (macro_buffer::set_shared): New method.
12564         (macro_buffer::resize_buffer, macro_buffer::appendc)
12565         (macro_buffer::appendmem): Now methods, not free functions.
12566         (set_token, append_tokens_without_splicing, stringify)
12567         (macro_stringify): Update.
12568         (gather_arguments): Change return type.  Remove argc_p argument,
12569         add args_ptr argument.  Use std::vector.
12570         (substitute_args): Remove argc argument.  Accept std::vector.
12571         (expand): Update.  Use std::vector.
12572         (scan, macro_expand, macro_expand_next): Update.
12573
12574 2018-02-08  Tom Tromey  <tom@tromey.com>
12575
12576         * symtab.c (default_collect_symbol_completion_matches_break_on):
12577         Use unique_xmalloc_ptr.
12578         * macroscope.h: (sal_macro_scope, user_macro_scope)
12579         (default_macro_scope): Return unique_xmalloc_ptr.
12580         * macroscope.c (sal_macro_scope, user_macro_scope)
12581         (default_macro_scope): Return unique_xmalloc_ptr.
12582         * macroexp.h (macro_expand, macro_expand_once): Return
12583         unique_xmalloc_ptr.
12584         * macroexp.c (macro_expand, macro_expand_once): Return
12585         unique_xmalloc_ptr.
12586         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12587         (info_macro_command, info_macros_command): Use
12588         unique_xmalloc_ptr.
12589         * compile/compile-c-support.c (write_macro_definitions): Use
12590         unique_xmalloc_ptr.
12591         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12592
12593 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12594
12595         * value.c (value_static_field): Assign field type instead of
12596         containing type when returning an optimized out value.
12597
12598 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12599
12600         * ft32-tdep.c (ft32_read_pc): Remove.
12601         (ft32_write_pc): Remove.
12602         (ft32_gdbarch_init): Update.
12603         * m32r-tdep.c (m32r_read_pc): Remove.
12604         (m32r_gdbarch_init): Update.
12605         * mep-tdep.c (mep_read_pc): Remove.
12606         (mep_gdbarch_init): Update.
12607         * microblaze-tdep.c (microblaze_write_pc): Remove.
12608         (microblaze_gdbarch_init): Update.
12609         * mn10300-tdep.c (mn10300_read_pc): Remove.
12610         (mn10300_write_pc): Remove.
12611         (mn10300_gdbarch_init): Update.
12612         * moxie-tdep.c (moxie_read_pc): Remove.
12613         (moxie_write_pc): Remove.
12614         (moxie_gdbarch_init): Update.
12615
12616 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12617
12618         * expprint.c (print_subexp_standard): Handle
12619         OP_F77_UNDETERMINED_ARGLIST.
12620         (dump_subexp_body_standard): Likewise.
12621
12622 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12623
12624         * target-descriptions.c (tdesc_element_visitor) Add empty
12625         implementations.
12626         (tdesc_type): Move make_gdb_type from here.
12627         (tdesc_type_builtin): Likewise.
12628         (tdesc_type_vector): Likewise.
12629         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12630         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12631         (make_gdb_type_union): Likewise.
12632         (make_gdb_type_flags): Likewise.
12633         (make_gdb_type_enum): Likewise.
12634         (make_gdb_type): New function.
12635         (tdesc_register_type): Use static make_gdb_type.
12636
12637 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12638
12639         * infcmd.c (default_print_one_register_info): Align natural-format
12640         column values consistently one under another.
12641         (pad_to_column): New function.
12642
12643 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12644
12645         * dwarf2read.c (dwarf2_physname): Move commment.
12646
12647 2018-02-01  Leszek Swirski  <leszeks@google.com>
12648
12649         * varobj.c (varobj_formatted_print_options): Allow recursive
12650         pretty printing if pretty printing is enabled.
12651
12652 2018-02-01  Leszek Swirski  <leszeks@google.com>
12653
12654         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12655         names after a structop as a filename.
12656
12657 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12658
12659         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12660         (arm_record_coproc_data_proc): Likewise.
12661
12662 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12663
12664         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12665
12666 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
12667
12668         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12669         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12670
12671 2018-01-31  Pedro Alves  <palves@redhat.com>
12672
12673         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12674         * inflow.c (child_terminal_save_inferior): Wrap reference to
12675         tcgetpgrp in HAVE_TERMIOS_H.
12676         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12677         _WIN32.
12678         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12679         always iterate over all inferiors.
12680         (gdbsim_cntrl_c): Adjust.
12681         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12682
12683 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12684
12685         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12686         index type is objfile-owned if the element type is as well.
12687
12688 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12689
12690         GDB 8.1 released.
12691
12692 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12693
12694         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
12695         "features/s390x-linux64.c".
12696         (_initialize_s390_linux_tdep): Remove initialization of tdescs
12697         s390_linux32 and s390x_linux64.
12698         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
12699         default tdesc.
12700         * s390-tdep.c: Include "features/s390-linux32.c" and
12701         "features/s390x-linux64.c".
12702         (s390_tdesc_valid): Add check for tdesc_has_registers.
12703         (s390_gdbarch_init): Make sure there is always a valid tdesc.
12704         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
12705         tdesc_s390x_linux64.
12706         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
12707         tdesc_s390x_linux64 to...
12708         * s390-tdep.h: ...here.
12709
12710 2018-01-30  Pedro Alves  <palves@redhat.com>
12711
12712         PR gdb/13211
12713         * config.in, configure: Regenerate.
12714         * configure.ac: Check for getpgid.
12715         * go32-nat.c (go32_pass_ctrlc): New.
12716         (go32_target): Install it.
12717         * inf-child.c (inf_child_target): Install
12718         child_terminal_save_inferior, child_pass_ctrlc and
12719         child_interrupt.
12720         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
12721         (inf_ptrace_target): No longer install it.
12722         * infcmd.c (interrupt_target_1): Adjust.
12723         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
12724         (child_interrupt): Declare.
12725         (inferior::terminal_state): New.
12726         * inflow.c (struct terminal_info): Update comments.
12727         (inferior_process_group): Delete.
12728         (terminal_is_ours): Delete.
12729         (gdb_tty_state): New.
12730         (child_terminal_init): Adjust.
12731         (is_gdb_terminal, sharing_input_terminal_1)
12732         (sharing_input_terminal): New functions.
12733         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
12734         Set the process's actual process group in the foreground if
12735         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
12736         mark terminal as the inferior's if not sharing GDB's terminal.
12737         Don't check attach_flag.
12738         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
12739         pass down a target_terminal_state.
12740         (child_terminal_save_inferior): New, factored out from ...
12741         (child_terminal_ours_1): ... this.  Handle
12742         target_terminal_state::is_ours_for_output.
12743         (child_interrupt, child_pass_ctrlc): New.
12744         (inflow_inferior_exit): Clear the inferior's terminal_state.
12745         (copy_terminal_info): Copy the inferior's terminal state.
12746         (_initialize_inflow): Remove reference to terminal_is_ours.
12747         * inflow.h (inferior_process_group): Delete.
12748         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
12749         * procfs.c (procfs_target): Don't install procfs_interrupt.
12750         (procfs_interrupt): Delete.
12751         * remote.c (remote_serial_quit_handler): Adjust.
12752         (remote_interrupt): Remove ptid parameter.  Adjust.
12753         * target-delegates.c: Regenerate.
12754         * target.c: Include "terminal.h".
12755         (target_terminal::terminal_state): Rename to ...
12756         (target_terminal::m_terminal_state): ... this.
12757         (target_terminal::init): Adjust.
12758         (target_terminal::inferior): Adjust to per-inferior
12759         terminal_state.
12760         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
12761         (target_terminal::ours, target_terminal::ours_for_output): Use
12762         target_terminal_is_ours_kind.
12763         (target_interrupt): Remove ptid parameter.  Adjust.
12764         (default_target_pass_ctrlc): Adjust.
12765         * target.h (target_ops::to_terminal_save_inferior): New field.
12766         (target_ops::to_interrupt): Remove ptid_t parameter.
12767         (target_interrupt): Remove ptid_t parameter.  Update comment.
12768         (target_pass_ctrlc): Update comment.
12769         * target/target.h (target_terminal_state): New scoped enum,
12770         factored out of ...
12771         (target_terminal::terminal_state): ... here.
12772         (target_terminal::inferior): Update comments.
12773         (target_terminal::restore_inferior): New.
12774         (target_terminal::is_inferior, target_terminal::is_ours)
12775         (target_terminal::is_ours_for_output): Adjust.
12776         (target_terminal::scoped_restore_terminal_state): Adjust to
12777         rename, and call restore_inferior() instead of inferior().
12778         (target_terminal::scoped_restore_terminal_state::m_state): Change
12779         type.
12780         (target_terminal::terminal_state): Rename to ...
12781         (target_terminal::m_terminal_state): ... this and change type.
12782
12783 2018-01-30  Pedro Alves  <palves@redhat.com>
12784
12785         * linux-nat.c (wait_for_signal): New function.
12786         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
12787         directly.
12788         (async_terminal_is_ours)
12789         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
12790         (linux_nat_add_target): Don't override
12791         to_terminal_inferior/to_terminal_ours.
12792
12793 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12794
12795         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12796
12797 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12798
12799         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12800         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12801         dwarf2_per_objfile_free here.
12802         (dwarf2_per_objfile_free): Remove.
12803         (_initialize_dwarf2_read): Don't register
12804         dwarf2_per_objfile_free as a registry cleanup.
12805
12806 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12807
12808         Avoid compilation errors in MinGW native builds
12809
12810         The error is triggered by including python-internal.h, and the
12811         error message is:
12812
12813              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12814                       from build-gnulib/import/math.h:27,
12815                       from d:/usr/Python26/include/pyport.h:235,
12816                       from d:/usr/Python26/include/Python.h:58,
12817                       from python/python-internal.h:94,
12818                       from python/py-arch.c:24:
12819              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12820         using ::hypot;
12821                 ^~~~~
12822
12823         This happens because Python headers define 'hypot' to expand t
12824         '_hypot' in the Windows builds.
12825         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12826         'hypoth'.  This avoids a compilation error.
12827
12828 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12829
12830         * MAINTAINERS (Write After Approval): Fix ordering.
12831
12832 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12833
12834         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12835
12836 2018-01-26  Alan Modra  <amodra@gmail.com>
12837
12838         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12839         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12840         Remove nop.  Make const.  Comment.
12841         (powerpc32_plt_stub_so_2): New.
12842         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12843         Correct count.  Update uses.
12844         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12845         Move common code reading PLT entry word.  Correct
12846         powerpc32_plt_stub PLT address calculation.
12847         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12848         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12849         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12850         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12851         (ppc64_standard_linkage8): Likewise.
12852         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12853         Correct insns description.
12854         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12855
12856 2018-01-24  Pedro Alves  <palves@redhat.com>
12857
12858         GCC PR libstdc++/83906
12859         * gdbtypes.c (operator==(const dynamic_prop &,
12860         const dynamic_prop &)): New.
12861         (operator==(const range_bounds &, const range_bounds &)): New.
12862         (check_types_equal): Use them instead of memcmp.
12863         * gdbtypes.h (operator==(const dynamic_prop &,
12864         const dynamic_prop &)): Declare.
12865         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12866         (operator==(const range_bounds &, const range_bounds &)): Declare.
12867         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12868
12869 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12870
12871         * s390-linux-tdep.c (s390_record_address_mask)
12872         (s390_record_calc_disp_common, s390_record_calc_disp)
12873         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12874         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12875         (s390_process_record): Move to s390-tdep.c.
12876         (s390_linux_init_abi_any): Adjust.
12877         * s390-tdep.c (s390_record_address_mask)
12878         (s390_record_calc_disp_common, s390_record_calc_disp)
12879         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12880         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12881         (s390_process_record): Moved from s390-linux-tdep.c
12882         (s390_gdbarch_init): Adjust.
12883
12884 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12885
12886         * s390-linux-nat.c (s390-tdep.h): New include.
12887         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12888         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12889         (ALLDEPFILES): Add s390-tdep.c.
12890         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12891         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12892         * s390-tdep.h: ...this.  New file.
12893         * s390-linux-tdep.c (s390-tdep.h): New include.
12894         (_initialize_s390_tdep): Rename to...
12895         (_initialize_s390_linux_tdep): ...this and adjust.
12896         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12897         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12898         s390-tdep.h.
12899         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12900         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12901         (s390_is_partial_instruction, s390_software_single_step)
12902         (is_non_branch_ril, s390_displaced_step_copy_insn)
12903         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12904         (s390_prologue_data, s390_addr, s390_store, s390_load)
12905         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12906         (s390_register_call_saved, s390_guess_tracepoint_registers)
12907         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12908         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12909         (s390_pseudo_register_name, s390_pseudo_register_type)
12910         (s390_pseudo_register_read, s390_pseudo_register_write)
12911         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12912         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12913         (s390_addr_bits_remove, s390_address_class_type_flags)
12914         (s390_address_class_type_flags_to_name)
12915         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12916         (s390_function_arg_float, s390_function_arg_vector)
12917         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12918         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12919         (s390_frame_align, s390_register_return_value, s390_return_value)
12920         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12921         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12922         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12923         (s390_trad_frame_prev_register, s390_unwind_cache)
12924         (s390_prologue_frame_unwind_cache)
12925         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12926         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12927         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12928         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12929         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12930         (s390_frame_base_address, s390_local_base_address)
12931         (s390_frame_base, s390_gcc_target_options)
12932         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12933         (s390_validate_reg_range, s390_tdesc_valid)
12934         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12935         * s390-tdep.c: ...this.  New file.
12936
12937 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12938
12939         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12940         (s390_process_record, s390_gdbarch_tdep_alloc)
12941         (s390_linux_init_abi_any): Use/set new hook.
12942
12943 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12944
12945         * s390-linux-tdep.c (osabi.h): New include.
12946         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12947         (s390_linux_init_abi_any): New functions.
12948         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12949
12950 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12951
12952         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12953         tdesc_has_registers check
12954
12955 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12956
12957         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12958         (s390_validate_reg_range): New macro.
12959         (s390_gdbarch_init): Adjust.
12960
12961 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12962
12963         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12964         (s390_gdbarch_tdep_alloc): Adjust.
12965         (s390_gdbarch_init): Adjust.
12966
12967 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12968
12969         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12970         <have_tdb>: Change type to bool.
12971         (s390_gdbarch_tdep_alloc): Adjust.
12972         (s390_gdbarch_init): Adjust.
12973
12974 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12975
12976         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12977         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12978         (s390_gdbarch_tdep_alloc): New function.
12979         (s390_gdbarch_init): Allocate tdep at start and use its fields
12980         instead of separate variables.
12981
12982 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12983
12984         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12985         when looking for cached gdbarch and add comment for remaining.
12986
12987 2018-01-22  Pedro Alves  <palves@redhat.com>
12988             Sergio Durigan Junior  <sergiodj@redhat.com>
12989
12990         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12991         case.
12992
12993 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12994
12995         * MAINTAINERS: Update my company e-mail address.
12996
12997 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12998
12999         * regcache.c (cooked_write_test): New function.
13000         (_initialize_regcache): Register the test.
13001
13002 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13003
13004         * ia64-tdep.c (ia64_pseudo_register_read): Call
13005         regcache->cooked_read instead of regcache_cooked_read_unsigned.
13006         * m32c-tdep.c (m32c_cat_read): Likewise.
13007         (m32c_r3r2r1r0_read): Likewise.
13008         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13009         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13010
13011 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13012
13013         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13014         method raw_read instead of regcache_raw_read.
13015         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13016         * arm-tdep.c (arm_neon_quad_read): Likewise.
13017         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13018         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13019         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13020         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13021         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13022         (i386_pseudo_register_read_into_value): Likewise.
13023         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13024         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13025         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13026         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13027         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13028         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13029         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13030         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13031         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13032
13033 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13034
13035         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13036         * configure.tgt: Remove target mt.
13037         * mt-tdep.c: Remove.
13038         * regcache.c (cooked_read_test): Remove the check for mt.
13039
13040 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13041
13042         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13043         instead of gdbarch_pseudo_register_read_value.
13044
13045 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13046
13047         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13048         language is Ada.
13049
13050 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13051
13052         * linespec.c (create_sals_line_offset): Remove code that preserved
13053         the symtab_and_line's line number.
13054
13055 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13056
13057         * varobj.c (varobj_create): Don't set valid_block when creating a
13058         floating varobj.
13059
13060 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13061
13062         * varobj.c (varobj_create): Remove out of date comment.
13063
13064 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13065
13066         PR mi/20395
13067         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13068         updating innermost block.
13069         * parse.c (innermost_block_tracker::update): Take extra type
13070         parameter, and check types match before updating innermost block.
13071         (write_dollar_variable): Update innermost block for registers.
13072         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13073         (innermost_block_tracker::innermost_block_tracker): Initialise
13074         m_types member.
13075         (innermost_block_tracker::reset): Take type parameter.
13076         (innermost_block_tracker::update): Take type parameter, and pass
13077         type through as needed.
13078         (innermost_block_tracker::m_types): New member.
13079         * varobj.c (varobj_create): Pass type when reseting innermost
13080         block.
13081
13082 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13083
13084         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13085         * ada-lang.c (resolve_subexp): Likewise.
13086         * breakpoint.c (set_breakpoint_condition) Likewise.
13087         (watch_command_1) Likewise.
13088         * c-exp.y (variable): Likewise.
13089         * d-exp.y (PrimaryExpression): Likewise.
13090         * f-exp.y (variable): Likewise.
13091         * go-exp.y (variable): Likewise.
13092         * m2-exp.y (variable): Likewise.
13093         * objfiles.c (objfile::~objfile): Likewise.
13094         * p-exp.y (variable): Likewise.
13095         * parse.c (innermost_block): Change type.
13096         * parser-defs.h (class innermost_block_tracker): New.
13097         (innermost_block): Change to innermost_block_tracker.
13098         * printcmd.c (display_command): Switch to innermost_block API.
13099         (do_one_display): Likewise.
13100         * rust-exp.y (do_one_display): Likewise.
13101         * symfile.c (clear_symtab_users): Likewise.
13102         * varobj.c (varobj_create): Switch to innermost_block API, replace
13103         use of innermost_block with block stored on varobj object.
13104
13105 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13106
13107         * expression.h (innermost_block): Remove declaration.
13108         * varobj.c: Add 'parser-defs.h' include.
13109
13110 2018-01-19  Tom Tromey  <tom@tromey.com>
13111
13112         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13113         symbols in the static and global blocks.
13114
13115 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13116
13117         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13118         gdb_ptrace.h, and move including gdb_wait.h ...
13119         * nat/linux-ptrace.h: ... to here.
13120
13121 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13122
13123         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13124         inf_ptrace_detach_success.
13125         (inf_ptrace_detach_success): Add inferior parameter, use it
13126         instead of inferior_ptid, pass it to detach_inferior.
13127         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13128         parameter.
13129         * inferior.c (detach_inferior): Add overload that takes an
13130         inferior object.
13131         * inferior.h (detach_inferior): Likewise.
13132         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13133         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13134         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13135
13136 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13137
13138         * target.h (struct target_ops) <to_detach>: Add inferior
13139         parameter.
13140         (target_detach): Likewise.
13141         * target.c (dispose_inferior): Pass inferior down.
13142         (target_detach): Pass inferior down.  Assert that it is equal to
13143         the current inferior.
13144         * aix-thread.c (aix_thread_detach): Pass inferior down.
13145         * corefile.c (core_file_command): Pass current_inferior() down.
13146         * corelow.c (core_detach): Add inferior parameter.
13147         * darwin-nat.c (darwin_detach): Likewise.
13148         * gnu-nat.c (gnu_detach): Likewise.
13149         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13150         * infcmd.c (detach_command): Pass current_inferior() down to
13151         target_detach.
13152         * infrun.c (follow_fork_inferior): Pass parent_inf to
13153         target_detach.
13154         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13155         target_detach.
13156         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13157         * linux-thread-db.c (thread_db_detach): Likewise.
13158         * nto-procfs.c (procfs_detach): Likewise.
13159         * procfs.c (procfs_detach): Likewise.
13160         * record.c (record_detach): Likewise.
13161         * record.h (struct inferior): Forward-declare.
13162         (record_detach): Add inferior parameter.
13163         * remote-sim.c (gdbsim_detach): Likewise.
13164         * remote.c (remote_detach_1): Likewise.
13165         (remote_detach): Likewise.
13166         (extended_remote_detach): Likewise.
13167         * sol-thread.c (sol_thread_detach): Likewise.
13168         * target-debug.h (target_debug_print_inferior_p): New macro.
13169         * target-delegates.c: Re-generate.
13170         * top.c (kill_or_detach): Pass inferior down to target_detach.
13171         * windows-nat.c (windows_detach): Add inferior parameter.
13172
13173 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13174
13175         * target.h (struct target_ops) <to_detach>: Remove args
13176         parameter.
13177         (target_detach): Likewise.
13178         * target.c (dispose_inferior): Adjust.
13179         (target_detach): Remove args parameter, adjust.
13180         * aix-thread.c (aix_thread_detach): Adjust.
13181         * corefile.c (core_file_command): Adjust.
13182         * corelow.c (core_detach): Adjust.
13183         * darwin-nat.c (darwin_detach): Adjust.
13184         * gnu-nat.c (gnu_detach): Adjust.
13185         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13186         * infcmd.c (detach_command): Adjust
13187         * infrun.c (follow_fork_inferior): Adjust.
13188         (handle_vfork_child_exec_or_exit): Adjust.
13189         * linux-fork.c (linux_fork_detach): Remove args parameter.
13190         * linux-fork.h (linux_fork_detach): Likewise.
13191         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13192         * linux-thread-db.c (thread_db_detach): Likewise.
13193         * nto-procfs.c (procfs_detach): Likewise.
13194         * procfs.c (procfs_detach): Likewise.
13195         (do_detach): Remove signo parameter.
13196         * record.c (record_detach): Remove args parameter.
13197         * record.h (record_detach): Likewise.
13198         * remote-sim.c (gdbsim_detach): Likewise.
13199         * remote.c (remote_detach_1): Likewise.
13200         (remote_detach): Likewise.
13201         (extended_remote_detach): Likewise.
13202         * sol-thread.c (sol_thread_detach): Likewise.
13203         * target-delegates.c: Re-generate.
13204         * top.c (struct qt_args) <args>: Remove field.
13205         (kill_or_detach): Don't pass args.
13206         (quit_force): Don't set args.
13207         * windows-nat.c (windows_detach): Remove args parameter.
13208
13209 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13210
13211         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13212         (arm_linux_init_abi): Install it.
13213
13214 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13215
13216         * osabi.c (gdb_osabi_names): Extend the regexp for
13217         arm-linux-gnueabihf.
13218
13219 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13220
13221         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13222         m_abbrevs.
13223         (abbrev_table::add_abbrev): Update.
13224         (abbrev_table::lookup_abbrev): Update.
13225
13226 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13227
13228         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13229
13230 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13231
13232         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13233         to "std::string".
13234
13235 2018-01-17  Tom Tromey  <tom@tromey.com>
13236
13237         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13238
13239 2018-01-17  Tom Tromey  <tom@tromey.com>
13240
13241         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13242         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13243         (create_array_type_with_stride): Update.
13244         * dwarf2read.c (set_die_type): Update.
13245
13246 2018-01-17  Tom Tromey  <tom@tromey.com>
13247
13248         * dwarf2read.c (delayed_method_info): Remove typedef.
13249         (dwarf2_cu::method_info): Now a std::vector.
13250         (add_to_method_list): Update.
13251         (free_delayed_list): Remove.
13252         (compute_delayed_physnames): Update.
13253         (process_full_comp_unit, process_full_type_unit): Clear the method
13254         list.  Remove cleanups.
13255         (psymtab_include_file_name): Add name_holder parameter.  Use
13256         unique_xmalloc_ptr.
13257         (dwarf_decode_lines): Update.
13258
13259 2018-01-17  Tom Tromey  <tom@tromey.com>
13260             Simon Marchi  <simon.marchi@ericsson.com>
13261
13262         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13263         (dwarf2_per_objfile::free_cached_comp_units)
13264         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13265         (init_cutu_and_read_dies_no_follow): Update.
13266         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13267         (dwarf2_cu::~dwarf2_cu): New.
13268         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13269         (age_cached_comp_units, free_one_cached_comp_unit): Update.
13270
13271 2018-01-17  Tom Tromey  <tom@tromey.com>
13272             Simon Marchi  <simon.marchi@ericsson.com>
13273
13274         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
13275         (struct die_reader_specs) <abbrev_table>: New member.
13276         (struct abbrev_table): Add constructor.
13277         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13278         <abbrev_obstack>: Now an auto_obstack.
13279         (abbrev_table_up): New typedef.
13280         (init_cu_die_reader): Add abbrev_table parameter.
13281         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13282         Add result_dwo_abbrev_table.
13283         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13284         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13285         Update.
13286         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13287         parameter.
13288         (skip_children): Update.
13289         (abbrev_table::alloc_abbrev): Rename from
13290         abbrev_table_alloc_abbrev.
13291         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13292         (abbrev_table::lookup_abbrev): Rename from
13293         abbrev_table_lookup_abbrev.
13294         (abbrev_table_read_table): Return abbrev_table_up.
13295         (abbrev_table_free, abbrev_table_free_cleanup)
13296         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13297         (load_partial_dies): Update.
13298
13299 2018-01-17  Tom Tromey  <tom@tromey.com>
13300
13301         * dwarf2read.c (dwarf2_compute_name): Update comment.
13302         (read_func_scope, read_variable): Update.
13303         (new_symbol): Remove.
13304         (new_symbol_full): Rename to new_symbol.
13305
13306 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13307
13308         PR gdb/16577
13309         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13310         a warning instead of throwing an error, set section size to 0 and return
13311         NULL.
13312         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13313
13314 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13315
13316         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13317         std::string.
13318         (linux_ptrace_attach_fail_reason_string): Likewise.
13319         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13320         Likewise.
13321         (linux_ptrace_attach_fail_reason_string): Likewise.
13322         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13323
13324 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13325
13326         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13327
13328 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13329
13330         PR gdb/21559
13331         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13332         checking for fs_base/gs_base fields in struct user_regs_struct.
13333         * configure: Regenerate.
13334
13335 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13336
13337         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13338         function.
13339         (aarch64_linux_init_abi): Install it to gdbarch hook
13340         gcc_target_options.
13341
13342 2018-01-15  Pedro Alves  <palves@redhat.com>
13343
13344         * common/signals-state-save-restore.c
13345         (save_original_signals_state): Fix typos.
13346
13347 2017-01-12  Tom Tromey  <tom@tromey.com>
13348             Sergio Durigan Junior  <sergiodj@redhat.com>
13349
13350         * Makefile.in (install-only): Install gdb-add-index.
13351
13352 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13353
13354         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13355
13356 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13357
13358         * infrun.c (keep_going_pass_signal): Clear step-over info when
13359         insert_breakpoints fails.
13360
13361 2018-01-11  Pedro Alves  <palves@redhat.com>
13362
13363         PR gdb/22583
13364         * infrun.c (resume): Rename to ...
13365         (resume_1): ... this.
13366         (resume): Reimplement as wrapper around resume_1.
13367
13368 2018-01-11  Pedro Alves  <palves@redhat.com>
13369
13370         PR remote/22597
13371         * remote.c (remote_parse_stop_reply): Default to the last-set
13372         general thread instead of to 'magic_null_ptid'.
13373
13374 2018-01-10  Pedro Alves  <palves@redhat.com>
13375
13376         * language.h (language_get_symbol_name_matcher): Rename ...
13377         (get_symbol_name_matcher): ... this.
13378         * language.c (language_get_symbol_name_matcher): Ditto.
13379         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13380         callers adjusted.
13381
13382 2018-01-10  Pedro Alves  <palves@redhat.com>
13383
13384         PR gdb/22670
13385         * dwarf2read.c
13386         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13387         Adjust to use language_get_symbol_name_matcher instead of
13388         language_defn::la_get_symbol_name_matcher.
13389         * language.c (language_get_symbol_name_matcher): If in Ada mode
13390         and the lookup name is a verbatim match, return Ada's matcher.
13391         * language.h (language_get_symbol_name_matcher): Adjust comment.
13392         (ada_lookup_name_info::verbatim_p):: New method.
13393
13394 2018-01-10  Pedro Alves  <palves@redhat.com>
13395
13396         PR gdb/22670
13397         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13398         minsym's language is language_auto or language_cplus, pass down
13399         language_ada instead.
13400         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13401
13402 2018-01-10  Pedro Alves  <palves@redhat.com>
13403
13404         PR gdb/22670
13405         * minsyms.c (linkage_name_str): New function.
13406         (iterate_over_minimal_symbols): Use it.
13407
13408 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13409
13410         * NEWS: Document that 'info proc' now works on FreeBSD.
13411
13412 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13413
13414         * configure.ac: Check for kinfo_getfile in libutil.
13415         * configure: Regenerate.
13416         * config.in: Regenerate.
13417         * fbsd-nat.c: Include "fbsd-tdep.h".
13418         (fbsd_fetch_cmdline): New.
13419         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13420         rather than calling error.
13421         (fbsd_info_proc): New.
13422         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13423         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13424         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13425
13426 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13427
13428         * fbsd-nat.c (struct free_deleter): Remove.
13429         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13430
13431 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13432
13433         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13434         NULL for an empty pathname.
13435
13436 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13437
13438         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13439         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13440         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13441         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13442         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13443         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13444         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13445         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13446         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13447         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13448         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13449         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13450         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13451         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13452         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13453
13454 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13455
13456         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13457         (gnu_xfer_auxv): New function.
13458         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13459         TARGET_OBJECT_AUXV.
13460
13461 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13462             Simon Marchi  <simon.marchi@ericsson.com>
13463
13464         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13465         common/selftest.c.
13466         (COMMON_OBS): Remove selftest.o.
13467         * configure.ac: Append selftest-arch.c and common/selftest.c to
13468         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13469         * configure: Re-generated.
13470         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13471         GDB_SELF_TEST.
13472         (maintenance_info_selftests): Likewise.
13473
13474 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13475
13476         * ada-valprint.c (val_print_packed_array_elements): Use
13477         proper number of elements when printing an array indexed
13478         by an enumeration type.
13479
13480 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13481
13482         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13483         (dw2_get_file_names_reader): Adjust.
13484         (lookup_dwo_signatured_type): Adjust.
13485         (lookup_dwp_signatured_type): Adjust.
13486         (lookup_signatured_type): Adjust.
13487         (create_type_unit_group): Adjust.
13488         (get_type_unit_group): Adjust.
13489         (process_psymtab_comp_unit_reader): Adjust.
13490         (build_type_psymtabs_reader): Adjust.
13491         (scan_partial_symbols): Adjust.
13492         (add_partial_symbol): Adjust.
13493         (add_partial_subprogram): Adjust.
13494         (peek_die_abbrev): Adjust.
13495         (fixup_go_packaging): Adjust.
13496         (process_imported_unit_die): Adjust.
13497         (dwarf2_compute_name): Adjust.
13498         (dwarf2_physname): Adjust.
13499         (read_import_statement): Adjust.
13500         (handle_DW_AT_stmt_list): Adjust.
13501         (read_file_scope): Adjust.
13502         (read_func_scope): Adjust.
13503         (read_lexical_block_scope): Adjust.
13504         (read_call_site_scope): Adjust.
13505         (read_variable): Adjust.
13506         (dwarf2_rnglists_process): Adjust.
13507         (dwarf2_ranges_process): Adjust.
13508         (dwarf2_ranges_read): Adjust.
13509         (dwarf2_get_pc_bounds): Adjust.
13510         (dwarf2_record_block_ranges): Adjust.
13511         (dwarf2_add_field): Adjust.
13512         (dwarf2_add_member_fn): Adjust.
13513         (read_structure_type): Adjust.
13514         (process_structure_scope): Adjust.
13515         (read_enumeration_type): Adjust.
13516         (read_array_type): Adjust.
13517         (mark_common_block_symbol_computed): Adjust.
13518         (read_common_block): Adjust.
13519         (read_namespace_type): Adjust.
13520         (read_namespace): Adjust.
13521         (read_module_type): Adjust.
13522         (read_tag_pointer_type): Adjust.
13523         (read_tag_ptr_to_member_type): Adjust.
13524         (read_tag_string_type): Adjust.
13525         (read_subroutine_type): Adjust.
13526         (read_typedef): Adjust.
13527         (read_base_type): Adjust.
13528         (attr_to_dynamic_prop): Adjust.
13529         (read_subrange_type): Adjust.
13530         (read_unspecified_type): Adjust.
13531         (dwarf2_read_abbrevs): Adjust.
13532         (load_partial_dies): Adjust.
13533         (read_partial_die): Adjust.
13534         (find_partial_die): Adjust.
13535         (guess_partial_die_structure_name): Adjust.
13536         (fixup_partial_die): Adjust.
13537         (read_attribute_value): Adjust.
13538         (read_addr_index): Adjust.
13539         (read_addr_index_from_leb128): Adjust.
13540         (read_str_index): Adjust.
13541         (dwarf2_string_attr): Adjust.
13542         (get_debug_line_section): Adjust.
13543         (dwarf_decode_line_header): Adjust.
13544         (lnp_state_machine::check_line_address): Adjust.
13545         (dwarf_decode_lines_1): Adjust.
13546         (dwarf_decode_lines): Adjust.
13547         (dwarf2_start_symtab): Adjust.
13548         (var_decode_location): Adjust.
13549         (new_symbol_full): Adjust.
13550         (dwarf2_const_value_data): Adjust.
13551         (dwarf2_const_value_attr): Adjust.
13552         (dwarf2_const_value): Adjust.
13553         (die_type): Adjust.
13554         (die_containing_type): Adjust.
13555         (build_error_marker_type): Adjust.
13556         (lookup_die_type): Adjust.
13557         (guess_full_die_structure_name): Adjust.
13558         (anonymous_struct_prefix): Adjust.
13559         (determine_prefix): Adjust.
13560         (dwarf2_name): Adjust.
13561         (follow_die_ref_or_sig): Adjust.
13562         (follow_die_offset): Adjust.
13563         (follow_die_ref): Adjust.
13564         (follow_die_sig_1): Adjust.
13565         (follow_die_sig): Adjust.
13566         (get_signatured_type): Adjust.
13567         (get_DW_AT_signature_type): Adjust.
13568         (decode_locdesc): Adjust.
13569         (dwarf_decode_macros): Adjust.
13570         (cu_debug_loc_section): Adjust.
13571         (fill_in_loclist_baton): Adjust.
13572         (dwarf2_symbol_mark_computed): Adjust.
13573         (init_one_comp_unit): Don't assign
13574         dwarf2_cu::dwarf2_per_objfile.
13575         (set_die_type): Adjust.
13576
13577 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13578
13579         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13580         <dwarf2_per_objfile>: New field.
13581         (dwarf2_per_objfile): Remove global.
13582         (get_dwarf2_per_objfile): New function.
13583         (set_dwarf2_per_objfile): New function.
13584         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13585         dwarf2_per_objfile.
13586         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13587         (read_abbrev_offset): Likewise.
13588         (read_indirect_string): Likewise.
13589         (read_indirect_line_string): Likewise.
13590         (read_indirect_string_at_offset): Likewise.
13591         (read_indirect_string_from_dwz): Likewise.
13592         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13593         dwarf2_per_objfile.
13594         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13595         (create_all_comp_units): Change objfile parameter to
13596         dwarf2_per_objfile.
13597         (create_all_type_units): Likewise.
13598         (process_queue): Add dwarf2_per_objfile parameter.
13599         (read_and_check_comp_unit_head): Likewise.
13600         (lookup_dwo_unit_in_dwp): Likewise.
13601         (get_dwp_file): Likewise.
13602         (process_cu_includes): Likewise.
13603         (struct free_dwo_file_cleanup_data): New struct.
13604         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13605         set_dwarf2_per_objfile.
13606         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13607         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13608         context, adjust calls.
13609         (dw2_instantiate_symtab): Likewise.
13610         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13611         (dw2_get_cu): Likewise.
13612         (create_cu_from_index_list): Change objfile parameter to
13613         dwarf2_per_objfile.
13614         (create_cus_from_index_list): Get dwarf2_per_objfile from
13615         context, adjust calls.
13616         (create_cus_from_index): Likewise.
13617         (create_signatured_type_table_from_index): Change objfile
13618         parameter to dwarf2_per_objfile.
13619         (create_signatured_type_table_from_debug_names): Change objfile
13620         parameter to dwarf2_per_objfile.
13621         (create_addrmap_from_index): Likewise.
13622         (create_addrmap_from_aranges): Likewise.
13623         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13624         (dw2_setup): Remove.
13625         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13626         context.
13627         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13628         get_dwarf2_per_objfile.
13629         (dw2_forget_cached_source_info): Likewise.
13630         (dw2_map_symtabs_matching_filename): Likewise.
13631         (struct dw2_symtab_iterator) <index>: Remove.
13632         <dwarf2_per_objfile>: New field.
13633         (dw2_symtab_iter_init): Replace index parameter with
13634         dwarf2_per_objfile.
13635         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13636         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13637         (dw2_print_stats): Likewise.
13638         (dw2_dump): Likewise.
13639         (dw2_expand_symtabs_for_function): Likewise.
13640         (dw2_expand_all_symtabs): Likewise.
13641         (dw2_expand_symtabs_with_fullname): Likewise.
13642         (dw2_expand_marked_cus): Replace index and objfile parameters
13643         with dwarf2_per_objfile.
13644         (dw_expand_symtabs_matching_file_matcher): Add
13645         dwarf2_per_objfile parameter and adjust calls.
13646         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13647         adjust calls.
13648         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13649         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13650         adjust calls.
13651         (create_cus_from_debug_names_list): Replace objfile parameter
13652         with dwarf2_per_objfile and adjust calls.
13653         (create_cus_from_debug_names): Likewise.
13654         (dwarf2_read_debug_names): Likewise.
13655         (mapped_debug_names::namei_to_name): Adjust call.
13656         (dw2_debug_names_iterator::next): Likewise.
13657         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13658         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13659         (dw2_debug_names_dump): Likewise.
13660         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13661         (dw2_debug_names_expand_symtabs_matching): Likewise.
13662         (dwarf2_initialize_objfile): Likewise.
13663         (dwarf2_build_psymtabs): Likewise.
13664         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13665         this_cu.
13666         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13667         (read_and_check_comp_unit_head): Likewise.
13668         (read_abbrev_offset): Likewise.
13669         (create_debug_type_hash_table): Likewise.
13670         (create_debug_types_hash_table): Likewise.
13671         (create_all_type_units): Replace objfile parameter with
13672         dwarf2_per_objfile.
13673         (add_type_unit): Add dwarf2_per_objfile parameter.
13674         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13675         with dwarf2_per_objfile.
13676         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13677         (lookup_dwp_signatured_type): Likewise.
13678         (lookup_signatured_type): Likewise.
13679         (read_cutu_die_from_dwo): Likewise.
13680         (init_tu_and_read_dwo_dies): Likewise.
13681         (init_cutu_and_read_dies): Likewise.
13682         (init_cutu_and_read_dies_no_follow): Likewise.
13683         (allocate_type_unit_groups_table): Add objfile parameter.
13684         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13685         (get_type_unit_group): Likewise.
13686         (process_psymtab_comp_unit): Update call.
13687         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13688         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
13689         (print_tu_stats): Likewise.
13690         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
13691         in void* parameter.
13692         (build_type_psymtabs): Change objfile parameter to
13693         dwarf2_per_objfile.
13694         (process_skeletonless_type_unit): Use dwarf2_per_objfile
13695         passed in void* parameter.
13696         (process_skeletonless_type_units): Change objfile parameter to
13697         dwarf2_per_objfile.
13698         (set_partial_user): Likewise.
13699         (dwarf2_build_psymtabs_hard): Likewise.
13700         (read_comp_units_from_section): Likewise.
13701         (create_all_comp_units): Likewise.
13702         (scan_partial_symbols): Update calls.
13703         (add_partial_symbol): Likewise.
13704         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
13705         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
13706         (process_queue): Add dwarf2_per_objfile parameter.
13707         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
13708         (compute_compunit_symtab_includes): Likewise.
13709         (process_cu_includes): Add dwarf2_per_objfile parameter.
13710         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
13711         (process_full_type_unit): Likewise.
13712         (process_imported_unit_die): Update call.
13713         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
13714         (read_file_scope): Likewise.
13715         (allocate_dwo_file_hash_table): Add objfile parameter.
13716         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
13717         (create_cus_hash_table): Likewise.
13718         (create_dwp_hash_table): Likewise.
13719         (create_dwo_unit_in_dwp_v1): Likewise.
13720         (create_dwp_v2_section): Likewise.
13721         (create_dwo_unit_in_dwp_v2): Likewise.
13722         (lookup_dwo_unit_in_dwp): Likewise.
13723         (try_open_dwop_file): Likewise.
13724         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
13725         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
13726         cleanup to include a reference to dwarf2_per_objfile.
13727         (open_dwp_file): Add dwarf2_per_objfile parameter.
13728         (open_and_init_dwp_file): Likewise.
13729         (get_dwp_file): Likewise.
13730         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
13731         (queue_and_load_all_dwo_tus): Update call.
13732         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
13733         data.
13734         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
13735         (dwarf2_ranges_process): Likewise.
13736         (dwarf2_get_pc_bounds): Likewise.
13737         (mark_common_block_symbol_computed): Likewise.
13738         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13739         (dwarf2_read_abbrevs): Update call.
13740         (read_partial_die): Use dwarf2_per_objfile from cu.
13741         (find_partial_die): Likewise.
13742         (fixup_partial_die): Likewise.
13743         (read_attribute_value): Likewise.
13744         (read_indirect_string_at_offset_from): Add objfile parameter.
13745         (read_indirect_string_at_offset): Add dwarf2_per_objfile
13746         parameter.
13747         (read_indirect_string_from_dwz): Add objfile parameter.
13748         (read_indirect_string): Add objfile parameter.
13749         (read_addr_index_1): Add dwarf2_per_objfile parameter.
13750         (read_addr_index): Use dwarf2_per_objfile from cu.
13751         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
13752         call dw2_setup.
13753         (read_str_index): Use dwarf2_per_objfile from cu.
13754         (get_debug_line_section): Likewise.
13755         (read_formatted_entries): Add dwarf2_per_objfile parameter.
13756         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
13757         (new_symbol_full): Use dwarf2_per_objfile from cu.
13758         (build_error_marker_type): Likewise.
13759         (lookup_die_type): Likewise.
13760         (determine_prefix): Likewise.
13761         (follow_die_offset): Likewise.
13762         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
13763         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
13764         (dwarf2_fetch_die_type_sect_off): Likewise.
13765         (dwarf2_get_die_type): Likewise.
13766         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
13767         (get_signatured_type): Likewise.
13768         (get_DW_AT_signature_type): Likewise.
13769         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
13770         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
13771         (cu_debug_loc_section): Likewise.
13772         (fill_in_loclist_baton): Likewise.
13773         (dwarf2_symbol_mark_computed): Likewise.
13774         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13775         dwarf2_per_objfile.
13776         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
13777         parameter.
13778         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13779         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
13780         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
13781         (set_die_type): Use dwarf2_free_objfile from cu.
13782         (get_die_type_at_offset): Likewise.
13783         (dwarf2_per_objfile_free): Don't assign global variable.
13784         (debug_names) <constructor>: Add dwarf2_per_objfile
13785         parameter, update m_debugstrlookup construction.
13786         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
13787         parameter.
13788         <m_dwarf2_per_objfile>: New field.
13789         <lookup>: Use m_dwarf2_per_objfile.
13790         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
13791         (psyms_seen_size): Likewise.
13792         (write_gdbindex): Replace objfile parameter with
13793         dwarf2_per_objfile.
13794         (write_debug_names): Likewise.
13795         (write_psymtabs_to_index): Likewise.
13796         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13797         calls.
13798
13799 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13800
13801         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13802         <dwarf2_per_objfile>: New field.
13803         (struct dwarf2_per_cu_data) <objfile>: Remove.
13804         <dwarf2_per_objfile>: New field.
13805         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13806         of objfile.
13807         (create_signatured_type_table_from_index): Likewise.
13808         (create_debug_type_hash_table): Likewise.
13809         (fill_in_sig_entry_from_dwo_entry): Likewise.
13810         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13811         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13812         objfile.
13813         (create_partial_symtab): Access objfile through
13814         dwarf2_per_objfile.
13815         (process_psymtab_comp_unit_reader): Likewise.
13816         (read_comp_units_from_section): Likewise.
13817         (scan_partial_symbols): Likewise.
13818         (add_partial_symbol): Likewise.
13819         (add_partial_subprogram): Likewise.
13820         (peek_die_abbrev): Likewise.
13821         (fixup_go_packaging): Likewise.
13822         (process_full_comp_unit): Likewise.
13823         (process_full_type_unit): Likewise.
13824         (process_imported_unit_die): Likewise.
13825         (dwarf2_compute_name): Likewise.
13826         (dwarf2_physname): Likewise.
13827         (read_import_statement): Likewise.
13828         (create_cus_hash_table): Assign dwarf2_physname instead of
13829         objfile.
13830         (read_func_scope): Access objfile through dwarf2_per_objfile.
13831         (read_lexical_block_scope): Likewise.
13832         (read_call_site_scope): Likewise.
13833         (read_variable): Likewise.
13834         (dwarf2_rnglists_process): Likewise.
13835         (dwarf2_ranges_process): Likewise.
13836         (dwarf2_ranges_read): Likewise.
13837         (dwarf2_record_block_ranges): Likewise.
13838         (dwarf2_add_field): Likewise.
13839         (dwarf2_add_member_fn): Likewise.
13840         (read_structure_type): Likewise.
13841         (process_structure_scope): Likewise.
13842         (read_enumeration_type): Likewise.
13843         (read_array_type): Likewise.
13844         (read_common_block): Likewise.
13845         (read_namespace_type): Likewise.
13846         (read_namespace): Likewise.
13847         (read_module_type): Likewise.
13848         (read_tag_pointer_type): Likewise.
13849         (read_tag_ptr_to_member_type): Likewise.
13850         (read_tag_string_type): Likewise.
13851         (read_subroutine_type): Likewise.
13852         (read_typedef): Likewise.
13853         (read_base_type): Likewise.
13854         (attr_to_dynamic_prop): Likewise.
13855         (read_subrange_type): Likewise.
13856         (read_unspecified_type): Likewise.
13857         (load_partial_dies): Likewise.
13858         (read_partial_die): Likewise.
13859         (find_partial_die): Likewise.
13860         (guess_partial_die_structure_name): Likewise.
13861         (fixup_partial_die): Likewise.
13862         (read_attribute_value): Likewise.
13863         (read_addr_index_from_leb128): Likewise.
13864         (dwarf2_read_addr_index): Likewise.
13865         (dwarf2_string_attr): Likewise.
13866         (lnp_state_machine::check_line_address): Likewise.
13867         (dwarf_decode_lines_1): Likewise.
13868         (dwarf_decode_lines): Likewise.
13869         (dwarf2_start_symtab): Likewise.
13870         (var_decode_location): Likewise.
13871         (new_symbol_full): Likewise.
13872         (dwarf2_const_value_data): Likewise.
13873         (dwarf2_const_value_attr): Likewise.
13874         (dwarf2_const_value): Likewise.
13875         (die_type): Likewise.
13876         (die_containing_type): Likewise.
13877         (lookup_die_type): Likewise.
13878         (guess_full_die_structure_name): Likewise.
13879         (anonymous_struct_prefix): Likewise.
13880         (dwarf2_name): Likewise.
13881         (follow_die_ref_or_sig): Likewise.
13882         (follow_die_offset): Likewise.
13883         (follow_die_ref): Likewise.
13884         (dwarf2_fetch_die_loc_sect_off): Likewise.
13885         (dwarf2_fetch_constant_bytes): Likewise.
13886         (dwarf2_fetch_die_type_sect_off): Likewise.
13887         (dwarf2_get_die_type): Likewise.
13888         (follow_die_sig): Likewise.
13889         (decode_locdesc): Likewise.
13890         (dwarf2_per_cu_objfile): Likewise.
13891         (dwarf2_per_cu_text_offset): Likewise.
13892         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13893         objfile.
13894         (set_die_type): Access objfile through
13895         dwarf2_per_objfile.
13896
13897 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13898
13899         * valprint.c (converted_character_d): Remove typedef.
13900         (DEF_VEC_O (converted_character_d)): Remove.
13901         (count_next_character): Use std::vector.
13902         (print_converted_chars_to_obstack): Likewise.
13903         (generic_printstr): Likewise.
13904
13905 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13906
13907         * xml-support.h (struct gdb_xml_value): Add constructor.
13908         <value>: Change type to unique_xmalloc_ptr.
13909         (gdb_xml_value_s): Remove typedef.
13910         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13911         (gdb_xml_element_start_handler): Change parameter type to
13912         std::vector.
13913         (xml_find_attribute): Likewise.
13914         * xml-support.c (xml_find_attribute): Change parameter type to
13915         std::vector and adjust.
13916         (gdb_xml_values_cleanup): Remove.
13917         (gdb_xml_parser::start_element): Adjust to std::vector.
13918         (xinclude_start_include): Change paraeter type to std::vector
13919         and adjust.
13920         * btrace.c (check_xml_btrace_version): Likewise.
13921         (parse_xml_btrace_block): Likewise.
13922         (parse_xml_btrace_pt_config_cpu): Likewise.
13923         (parse_xml_btrace_pt): Likewise.
13924         (parse_xml_btrace_conf_bts): Likewise.
13925         (parse_xml_btrace_conf_pt): Likewise.
13926         * memory-map.c (memory_map_start_memory): Likewise.
13927         (memory_map_start_property): Likewise.
13928         * osdata.c (osdata_start_osdata): Likewise.
13929         (osdata_start_item): Likewise.
13930         (osdata_start_column): Likewise.
13931         * remote.c (start_thread): Likewise.
13932         * solib-aix.c (library_list_start_library): Likewise.
13933         (library_list_start_list): Likewise.
13934         * solib-svr4.c (library_list_start_library): Likewise.
13935         (svr4_library_list_start_list): Likewise.
13936         * solib-target.c (library_list_start_segment): Likewise.
13937         (library_list_start_section): Likewise.
13938         (library_list_start_library): Likewise.
13939         (library_list_start_list): Likewise.
13940         * tracepoint.c (traceframe_info_start_memory): Likewise.
13941         (traceframe_info_start_tvar): Likewise.
13942         * xml-syscall.c (syscall_start_syscall): Likewise.
13943         * xml-tdesc.c (tdesc_start_target): Likewise.
13944         (tdesc_start_feature): Likewise.
13945         (tdesc_start_reg): Likewise.
13946         (tdesc_start_union): Likewise.
13947         (tdesc_start_struct): Likewise.
13948         (tdesc_start_flags): Likewise.
13949         (tdesc_start_enum): Likewise.
13950         (tdesc_start_field): Likewise.
13951         (tdesc_start_enum_value): Likewise.
13952         (tdesc_start_vector): Likewise.
13953
13954 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13955
13956         * extension.h (struct xmethod_worker) <clone>: Remove.
13957         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13958         Remove.
13959         (python_xmethod_worker::clone): Remove.
13960         * valops.c (find_overload_match): Use std::move instead of
13961         clone.
13962
13963 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13964
13965         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13966         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13967         <free_xmethod_worker_data>: Remove.
13968         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13969         <get_xmethod_arg_types>: Remove.
13970         <get_xmethod_result_type>: Remove.
13971         <invoke_xmethod>: Remove.
13972         * extension.c (new_xmethod_worker): Remove.
13973         (clone_xmethod_worker): Remove.
13974         (get_matching_xmethod_workers): Return void, pass std::vector by
13975         pointer.
13976         (get_xmethod_arg_types): Rename to...
13977         (xmethod_worker::get_arg_types): ... this, and adjust.
13978         (get_xmethod_result_type): Rename to...
13979         (xmethod_worker::get_result_type): ... this, and adjust.
13980         (invoke_xmethod): Remove.
13981         (free_xmethod_worker): Remove.
13982         (free_xmethod_worker_vec): Remove.
13983         * extension.h (enum ext_lang_rc): Move here from
13984         extension-priv.h.
13985         (struct xmethod_worker): Add constructor and destructor.
13986         <data>: Remove.
13987         <value>: Remove.
13988         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13989         virtual pure methods.
13990         <get_arg_types, get_result_type>: New methods.
13991         (xmethod_worker_ptr): Remove typedef.
13992         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13993         (xmethod_worker_vec): Remove typedef.
13994         (xmethod_worker_up): New typedef.
13995         (invoke_xmethod): Remove.
13996         (clone_xmethod_worker): Remove.
13997         (free_xmethod_worker): Remove.
13998         (free_xmethod_worker_vec): Remove.
13999         (get_xmethod_arg_types): Remove.
14000         (get_xmethod_result_type): Remove.
14001         * valops.c (find_method_list): Use std::vector, don't use
14002         intermediate vector.
14003         (value_find_oload_method_list): Use std::vector.
14004         (find_overload_match): Use std::vector.
14005         (find_oload_champ): Use std::vector.
14006         * value.c (value_free): Use operator delete.
14007         (value_of_xmethod): Rename to...
14008         (value_from_xmethod): ... this.  Don't assign
14009         xmethod_worker::value, take rvalue-reference.
14010         (result_type_of_xmethod): Adjust.
14011         (call_xmethod): Adjust.
14012         * value.h: Include extension.h.
14013         (struct xmethod_worker): Don't forward-declare.
14014         (value_of_xmethod): Rename to...
14015         (value_from_xmethod): ... this, take rvalue-reference.
14016         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14017         (struct python_xmethod_worker): ... this, add constructor and
14018         destructor.
14019         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14020         (gdbpy_free_xmethod_worker_data): Rename to...
14021         (python_xmethod_worker::~python_xmethod_worker): ... this and
14022         adjust.
14023         (gdbpy_clone_xmethod_worker_data): Rename to...
14024         (python_xmethod_worker::clone): ... this and adjust.
14025         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14026         temporary vector.
14027         (gdbpy_get_xmethod_arg_types): Rename to...
14028         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14029         (gdbpy_get_xmethod_result_type): Rename to...
14030         (python_xmethod_worker::do_get_result_type): ... this and
14031         adjust.
14032         (gdbpy_invoke_xmethod): Rename to...
14033         (python_xmethod_worker::invoke): ... this and adjust.
14034         (new_python_xmethod_worker): Rename to...
14035         (python_xmethod_worker::python_xmethod_worker): ... this and
14036         adjust.
14037         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14038         Remove.
14039         (gdbpy_free_xmethod_worker_data): Remove.
14040         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14041         (gdbpy_get_xmethod_arg_types): Remove.
14042         (gdbpy_get_xmethod_result_type): Remove.
14043         (gdbpy_invoke_xmethod): Remove.
14044         * python/python.c (python_extension_ops): Remove obsolete
14045         callbacks.
14046
14047 2018-01-05  Pedro Alves  <palves@redhat.com>
14048
14049         PR gdb/18653
14050         * common/signals-state-save-restore.c
14051         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14052         find a custom handler preinstalled, instead of internal erroring.
14053         But only warn if !quiet.
14054         * common/signals-state-save-restore.h
14055         (save_original_signals_state): New parameter 'quiet'.
14056         * main.c (captured_main_1): Move save_original_signals_state call
14057         after option handling, and pass QUIET.
14058
14059 2018-01-05  Pedro Alves  <palves@redhat.com>
14060
14061         * spu-tdep.c (spu_catch_start): Pass
14062         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14063
14064 2018-01-05  Pedro Alves  <palves@redhat.com>
14065
14066         PR gdb/22670
14067         * ada-lang.c (literal_symbol_name_matcher): New function.
14068         (ada_get_symbol_name_matcher): Use it for
14069         symbol_name_match_type::SEARCH_NAME.
14070         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14071         it down instead of assuming symbol_name_match_type::FULL.
14072         * block.h (block_lookup_symbol): New parameter 'match_type'.
14073         * c-valprint.c (print_unpacked_pointer): Use
14074         lookup_symbol_search_name instead of lookup_symbol.
14075         * compile/compile-object-load.c (get_out_value_type): Pass down
14076         symbol_name_match_type::SEARCH_NAME.
14077         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14078         symbol_name_match_type::FULL.
14079         * cp-support.c (cp_get_symbol_name_matcher): Handle
14080         symbol_name_match_type::SEARCH_NAME.
14081         * infrun.c (insert_exception_resume_breakpoint): Use
14082         lookup_symbol_search_name.
14083         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14084         * psymtab.c (maintenance_check_psymtabs): Use
14085         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14086         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14087         SYMBOL_SEARCH_NAME.
14088         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14089         if symbol_name_match_type::SEARCH_NAME.
14090         (lookup_symbol_in_language): Pass down
14091         symbol_name_match_type::FULL.
14092         (lookup_symbol_search_name): New.
14093         (lookup_language_this): Pass down
14094         symbol_name_match_type::SEARCH_NAME.
14095         (lookup_symbol_aux, lookup_local_symbol): New parameter
14096         'match_type'.  Pass it down.
14097         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14098         (lookup_symbol_search_name): New declaration.
14099         (lookup_symbol_in_block): New 'match_type' parameter.
14100
14101 2018-01-05  Pedro Alves  <palves@redhat.com>
14102
14103         PR gdb/22670
14104         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14105         ada_lookup_symbol.
14106         (ada_lookup_symbol): Reimplement in terms of
14107         ada_lookup_symbol_list, bits factored out from
14108         ada_lookup_encoded_symbol.
14109
14110 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14111
14112         * ada-exp.y (write_object_renaming): When subscripting an array
14113         using a symbol as the index, pass the block in call to
14114         ada_lookup_encoded_symbol when looking that symbol up.
14115
14116 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14117
14118         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14119         TYPE_INDEX_TYPE.
14120
14121 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14122
14123         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14124         the case where VALUE_LVAL (val0) is not lval_memory.
14125
14126 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14127
14128         * ada-valprint.c (print_optional_low_bound): Handle
14129         character-indexed array printing like boolean-indexed array
14130         printing.
14131
14132 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14133
14134         * NEWS: Create a new section for the next release branch.
14135         Rename the section of the current branch, now that it has
14136         been cut.
14137
14138 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14139
14140         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14141         * version.in: Bump version to 8.1.50.DATE-git.
14142
14143 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14144
14145         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14146         Add field.
14147         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14148         Add field.
14149         (default_exception_support_info) <catch_handlers_sym>: Add field.
14150         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14151         (ada_exception_name_addr_1): Add "catch handlers" handling.
14152         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14153         Update all callers.
14154         (create_excep_cond_exprs) <ex>: Add parameter.
14155         (re_set_exception): Update create_excep_cond_exprs call.
14156         (print_it_exception, print_one_exception, print_mention_exception)
14157         (print_recreate_exception): Add "catch handler" handling.
14158         (allocate_location_catch_handlers, re_set_catch_handlers)
14159         (check_status_catch_handlers, print_it_catch_handlers)
14160         (print_one_catch_handlers, print_mention_catch_handlers)
14161         (print_recreate_catch_handlers): New function.
14162         (catch_handlers_breakpoint_ops): New variable.
14163         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14164         Add parameter.  Add "catch handler" handling.
14165         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14166         Add "catch handler" handling.
14167         (ada_exception_catchpoint_cond_string): Add "catch handler"
14168         handling.
14169         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14170         call.
14171         (catch_ada_handlers_command): New function.
14172         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14173         operations structure.
14174         (_initialize_ada_language): Add "catch handlers" command entry.
14175         * NEWS: Document "catch handlers" feature.
14176
14177 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14178
14179         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14180         account when creating the array type of the slice.
14181         (ada_value_slice): Likewise.
14182
14183 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14184
14185         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14186         New enum value.
14187         (create_array_type_with_stride): Add byte_stride_prop parameter.
14188         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14189         New parameter.  Update all callers in this file.
14190         (array_type_has_dynamic_stride): New function.
14191         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14192         of arrays with dynamic byte strides.
14193         * dwarf2read.c (read_array_type): Add support for dynamic
14194         DW_AT_byte_stride attributes.
14195
14196 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14197
14198         * dwarf2read.c (read_unspecified_type): Treat
14199         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14200
14201 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14202
14203         Update copyright year range in all GDB files.
14204
14205 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14206
14207         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14208         and gdb/testsuite/gdb.base/step-line.c.
14209
14210 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14211
14212         * copyright.py (main): Dump the contents of
14213         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14214         even if BY_HAND is empty.
14215
14216 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14217
14218         * top.c (print_gdb_version): Update Copyright year in version
14219         message.
14220
14221 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14222
14223         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14224
14225 For older changes see ChangeLog-2017.
14226 \f
14227 Local Variables:
14228 mode: change-log
14229 left-margin: 8
14230 fill-column: 74
14231 version-control: never
14232 coding: utf-8
14233 End: