Change dwarf2_frame_state_reg_info::reg to be std::vector
[external/binutils.git] / gdb / ChangeLog
1 2018-10-03  Tom Tromey  <tom@tromey.com>
2
3         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
4         <~dwarf2_frame_state_reg_info>: Update.
5         <dwarf2_frame_state_reg_info>: Update.
6         <alloc_regs>: Add assertion.  Update.
7         <reg>: Now a std::vector.
8         <num_regs>: Remove.
9         <swap>: Update.
10         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
11         (execute_cfa_program_test, dwarf2_frame_cache): Update.
12
13 2018-10-03  Tom Tromey  <tom@tromey.com>
14
15         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
16
17 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
18
19         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
20
21 2018-10-02  Tom Tromey  <tom@tromey.com>
22
23         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
24
25 2018-10-02  John Darrington <john@darrington.wattle.id.au>
26
27         * NEWS: Mention changed commands.
28         * ser-uds.c: New file.
29         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
30         * configure: Regenerate.
31         * Makefile.in: Add new file.
32         * serial.c (serial_open): Check if filename is a socket
33           and lookup the appropriate interface accordingly.
34
35 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
36
37         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
38         define.
39         (AARCH64_EXTRA_MAGIC): Likewise.
40         (AARCH64_FPSIMD_MAGIC): Likewise.
41         (AARCH64_SVE_MAGIC): Likewise.
42         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
43         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
44         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
45         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
46         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
47         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
48         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
49         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
50         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
51         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
52         (read_aarch64_ctx): Add function.
53         (aarch64_linux_sigframe_init): Detect FP registers.
54
55 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
56
57         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
58         (AARCH64_D0_REGNUM): Likewise.
59         (AARCH64_S0_REGNUM): Likewise.
60         (AARCH64_H0_REGNUM): Likewise.
61         (AARCH64_B0_REGNUM): Likewise.
62         (AARCH64_SVE_V0_REGNUM): Likewise.
63         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
64         (AARCH64_D0_REGNUM): Likewise.
65         (AARCH64_S0_REGNUM): Likewise.
66         (AARCH64_H0_REGNUM): Likewise.
67         (AARCH64_B0_REGNUM): Likewise.
68         (AARCH64_SVE_V0_REGNUM): Likewise.
69
70 2018-10-01  Gary Benson <gbenson@redhat.com>
71
72         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
73         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
74         prfpregset_t instead of gdb_prfpregset_t.
75         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
76         * configure, config.in: Rebuild.
77
78 2018-10-01  Gary Benson <gbenson@redhat.com>
79
80         * common/gdb_proc_service.h: New file, factored out from...
81         * gdb_proc_service.h: Moved common code to the above file.
82         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
83
84 2018-10-01  Gary Benson <gbenson@redhat.com>
85
86         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
87         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
88
89 2018-10-01  Gary Benson <gbenson@redhat.com>
90
91         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
92         (AC_CHECK_HEADERS): Check for linux/elf.h.
93         * configure, config.in: Rebuild.
94         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
95         doesn't define elf_fpregset_t.
96
97 2018-10-01  Gary Benson <gbenson@redhat.com>
98
99         * gdb_proc_service.h: Whitespace change.
100
101 2018-10-01  Tom Tromey  <tom@tromey.com>
102
103         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
104         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
105         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
106
107 2018-10-01  Tom Tromey  <tom@tromey.com>
108
109         * README: Minor change.
110
111 2018-09-30  Pedro Alves  <palves@redhat.com>
112
113         * darwin-nat-info.c (darwin_debug_regions_recurse)
114         (info_mach_exceptions_command): Remove unused local variables.
115         * darwin-nat.c (darwin_decode_notify_message)
116         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
117         (darwin_stop_inferior, darwin_setup_exceptions)
118         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
119         (darwin_nat_target::attach, darwin_nat_target::detach)
120         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
121         local variables.
122         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
123         variables.
124
125 2018-09-29  Tom Tromey  <tom@tromey.com>
126
127         * README: Remove some leftover text.
128
129 2018-09-29  Tom Tromey  <tom@tromey.com>
130
131         * PROBLEMS: Rewrite.
132         * README: Update.
133
134 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
135
136         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
137         case with explicit breakpoint kind.
138         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
139         'additional_info' and related logic.
140         (riscv_debug_breakpoints): New variable.
141         (riscv_breakpoint_kind_from_pc): Use the length of the existing
142         instruction to determine the breakpoint kind.
143         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
144         flag.  Update description of 'set/show riscv
145         use-compressed-breakpoints' flag.
146
147 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
148
149         (NEWS): Mention changes to frame related commands.
150         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
151         (add_prefix_cmd_suppress_notification): New function.
152         (add_com_suppress_notification): Call
153         add_cmd_suppress_notification.
154         * command.h (add_cmd_suppress_notification): Declare.
155         (add_prefix_cmd_suppress_notification): Declare.
156         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
157         (parse_frame_specification): Moved from stack.c, with
158         simplification to handle a single argument.
159         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
160         switch to the selected frame.  Add a header comment.
161         * stack.c: Remove 'safe-ctype.h' include.
162         (find_frame_for_function): Add declaration.
163         (find_frame_for_address): New function.
164         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
165         (frame_selection_by_function_completer): New function.
166         (info_frame_command): Rename to...
167         (info_frame_command_core): ...this, and update parameter types.
168         (select_frame_command): Rename to...
169         (select_frame_command_core): ...this, and update parameter types.
170         (frame_command): Rename to...
171         (frame_command_core): ...this, and update parameter types.
172         (class frame_command_helper): New class to wrap implementations of
173         frame related sub-commands.
174         (frame_apply_cmd_list): New static global.
175         (frame_cmd_list): Make static.
176         (select_frame_cmd_list): New global for sub-commands.
177         (info_frame_cmd_list): New global for sub-commands.
178         (_initialize_stack): Register sub-commands for 'frame',
179         'select-frame', and 'info frame'.  Update 'frame apply' commands
180         to use frame_apply_cmd_list.  Move function local static
181         frame_apply_list to file static frame_apply_cmd_list for
182         consistency.
183         * stack.h (select_frame_command): Delete declarationn.
184         (select_frame_for_mi): Declare new function.
185
186 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
187
188         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
189         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
190         and NOP.
191
192 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
193
194         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
195
196 2018-09-26  Tom Tromey  <tom@tromey.com>
197
198         * valops.c (auto_abandon): Remove dead code.
199
200 2018-09-26  Tom Tromey  <tom@tromey.com>
201
202         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
203
204 2018-09-24  Tom Tromey  <tom@tromey.com>
205
206         * common/pathstuff.c (get_standard_cache_dir): Make
207         "xdg_cache_home" and "home" const.
208         * top.c (init_history): Make "tmpenv" const.
209         * main.c (get_init_files): Make "homedir" const.
210
211 2018-09-23  Tom Tromey  <tom@tromey.com>
212
213         PR python/18852:
214         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
215
216 2018-09-23  Tom Tromey  <tom@tromey.com>
217
218         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
219         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
220         * python/python-internal.h (gdbpy_handle_exception): Declare.
221         * python/py-utils.c (gdbpy_handle_exception): New function.
222
223 2018-09-23  Tom Tromey  <tom@tromey.com>
224
225         PR python/17284:
226         * python/py-type.c (typy_template_argument): Check for negative
227         argument number.
228
229 2018-09-23  Tom Tromey  <tom@tromey.com>
230
231         PR python/14062:
232         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
233
234 2018-09-23  Tom Tromey  <tom@tromey.com>
235
236         PR python/18170:
237         * python/py-value.c (valpy_int): Allow conversion from pointer
238         type.
239
240 2018-09-23  Tom Tromey  <tom@tromey.com>
241
242         PR python/20126:
243         * python/py-value.c (valpy_int): Respect type sign.
244
245 2018-09-23  Tom Tromey  <tom@tromey.com>
246
247         PR python/18352;
248         * python/py-value.c (valpy_float): Allow conversions from int or
249         char.
250         (valpy_int, valpy_long): Allow conversions from float.
251
252 2018-09-23  Tom Tromey  <tom@tromey.com>
253
254         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
255         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
256
257 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
258
259         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
260         __sighndlr.
261         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
262
263 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
264
265         * windows-nat.c (windows_nat_target::wait): Remove a spurious
266         target_terminal::ours().
267
268 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
269
270         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
271         of vl to ULONGEST.
272
273 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
274
275         * breakpoint.c (update_inserted_breakpoint_locations): Remove
276         redundant condition.
277
278 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
279
280         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
281
282         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
283         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
284         * sol-thread.c (ps_pdmodel): Don't guard definition.
285
286         * procfs.c: Fix formatting.
287
288         * procfs.c (sysset_t_alloc): Remove.
289         (create_procinfo): Use XNEW instead of sysset_t_alloc.
290         (procfs_debug_inferior): Likewise.
291         (procfs_set_exec_trap): Likewise.
292         (proc_set_traced_sysentry): Don't allocate argp dynamically.
293         (proc_set_traced_sysexit): Likewise.
294
295         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
296         (dead_procinfo): Likewise.
297         (proc_warn): Likewise.
298         (proc_error): Likewise.
299         (proc_get_LDT_entry): Likewise.
300         (do_attach): Likewise.
301         (procfs_target::pid_to_str): Likewise.
302         (iterate_over_mappings): Likewise.
303
304         * procfs.c (create_procinfo): Fix ARI warning.
305         (proc_get_status): Likewise.
306         (proc_stop_process): Likewise.
307         (proc_run_process): Likewise.
308         (proc_kill): Likewise.
309         (proc_get_LDT_entry): Likewise.
310         (procfs_find_LDT_entry): Likewise.
311         (proc_update_threads): Likewise.
312         (proc_iterate_over_threads): Likewise.
313         (do_attach): Likewise.
314         (procfs_xfer_memory): Likewise.
315         (invalidate_cache): Likewise.
316         (procfs_target::resume): Likewise.
317         (procfs_init_inferior): Likewise.
318         (procfs_set_exec_trap): Likewise.
319         (procfs_target::thread_alive): Likewise.
320         (procfs_target::pid_to_exec_file): Likewise.
321         (iterate_over_mappings): Likewise.
322         (procfs_target::make_corefile_notes): Likewise.
323         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
324
325         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
326         (procfs_find_LDT_entry): Likewise.
327         * sol-thread.c (ps_lgetLDT): Likewise.
328
329 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
330
331         PR tdep/17903
332         * procfs.c (procfs_target): Declare pid_to_exec_file.
333         (procfs_target::pid_to_exec_file): New.
334
335 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
336
337         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
338         renaming.
339         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
340         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
341
342 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
343
344         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
345         (supply_fpregset, fill_fpregset): Move ...
346         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
347         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
348         Remove references to ioctl-based procfs.
349         Include <sys/reg.h>.
350         Remove PR_MODEL_NATIVE guards.
351         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
352         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
353
354 2018-09-19  Xavier Roirand  <roirand@adacore.com>
355
356         PR gdb/20981:
357         * solib-darwin.c (darwin_get_dyld_bfd): New function.
358         (darwin_solib_get_all_image_info_addr_at_init): Update call.
359         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
360
361 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
362
363         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
364         (fbsd_print_sockaddr_in6): Likewise.
365
366 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
367             Chris January  <chris.january@arm.com>
368
369         * eval.c (skip_undetermined_arglist): Skip argument list helper.
370         (evaluate_subexp_standard): Return a dummy type when
371         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
372         OP_F77_UNDETERMINED_ARGLIST case.
373         * expression.h (enum noside): Update comment.
374
375 2018-09-19  George Vasick <george.vasick@oracle.com>
376
377         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
378
379 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
380             April Chin <april.chin@oracle.com>
381             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
382
383         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
384         uint_t lwpid_t.
385         (create_procinfo): Print pids in /proc without leading zeros.
386
387 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
388
389         * nios2-tdep.c (nios2_gcc_target_options): New.
390         (nios2_gdb_arch_init): Install new hook.
391
392 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
393
394         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
395         New file.
396         * update-gnulib.sh: Apply patch.
397         * configure: Re-generate.
398
399 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
400
401         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
402         description.  Make "info proc" command descriptions more
403         consistent.
404
405 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
406
407         * NEWS: Mention 'info proc files' command.
408
409 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
410
411         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
412         descriptors for IP_FILES and IP_ALL.
413
414 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
415
416         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
417         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
418         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
419         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
420         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
421         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
422         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
423         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
424         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
425         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
426         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
427         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
428         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
429         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
430         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
431         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
432         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
433         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
434         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
435         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
436         (struct fbsd_sockaddr_un): New types.
437         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
438         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
439         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
440         (fbsd_core_info_proc_files): New functions.
441         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
442         IP_ALL.
443         * fbsd-tdep.h (fbsd_info_proc_files_header)
444         (fbsd_info_proc_files_entry): New.
445
446 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
447
448         * defs.h (enum info_proc_what) [IP_FILES]: New value.
449         * infcmd.c (info_proc_cmd_files): New function.
450         (_initialize_infcmd): Register 'info proc files' command.
451
452 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
453
454         * gnulib/aclocal-m4-deps.mk: Re-generate.
455         * gnulib/aclocal.m4: Re-generate.
456         * gnulib/config.in: Re-generate.
457         * gnulib/configure: Re-generate.
458         * gnulib/import/Makefile.am: Re-generate.
459         * gnulib/import/Makefile.in: Re-generate.
460         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
461         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
462         * gnulib/import/arpa_inet.in.h: New file.
463         * gnulib/import/inet_ntop.c: New file.
464         * gnulib/import/m4/arpa_inet_h.m4: New file.
465         * gnulib/import/m4/inet_ntop.m4: New file.
466         * gnulib/import/m4/netinet_in_h.m4: New file.
467         * gnulib/import/m4/socklen.m4: New file.
468         * gnulib/import/m4/sockpfaf.m4: New file.
469         * gnulib/import/m4/stdalign.m4: New file.
470         * gnulib/import/m4/sys_uio_h.m4: New file.
471         * gnulib/import/netinet_in.in.h: New file.
472         * gnulib/import/stdalign.in.h: New file.
473         * gnulib/import/sys_socket.c: New file.
474         * gnulib/import/sys_socket.in.h: New file.
475         * gnulib/import/sys_uio.in.h: New file.
476         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
477         module.
478
479 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
480
481         * gnulib/aclocal-m4-deps.mk: New file.
482         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
483         deterministically.
484
485 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
486
487         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
488         KVE_PATH.
489
490 2018-09-18  Tom Tromey  <tom@tromey.com>
491
492         * compile/compile-object-load.c (struct
493         link_hash_table_cleanup_data): Add constructor and destructor.
494         Use DISABLE_COPY_AND_ASSIGN.
495         (~link_hash_table_cleanup_data): Rename from
496         link_hash_table_free.  Now a destructor.
497         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
498
499 2018-09-18  Tom Tromey  <tom@tromey.com>
500
501         * compile/compile-object-run.c (do_module_cleanup): Use delete.
502         * compile/compile-object-load.c (struct munmap_list): Move to
503         header file.
504         (munmap_list::add): Rename from munmap_list_add; rewrite.
505         (munmap_list::~munmap_list): Rename from munmap_list_free.
506         (munmap_listp_free_cleanup): Remove.
507         (compile_object_load): Update.
508         * compile/compile-object-load.h (struct munmap_list): Move from
509         compile-object-load.c.  Rewrite.
510
511 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
512
513         * aarch64-tdep.c (pass_in_v): Use register size.
514         (aarch64_extract_return_value): Likewise.
515         (aarch64_store_return_value): Likewise.
516
517 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
518
519         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
520         rlim_t.
521
522 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
523
524         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
525         Fix short help line.
526
527 2018-09-17  Tom Tromey  <tom@tromey.com>
528
529         PR python/20445:
530         * configure: Rebuild.
531         * configure.ac: Conditionally use -DNDEBUG for Python.
532
533 2018-09-17  Tom Tromey  <tom@tromey.com>
534
535         * configure: Rebuild.
536         * configure.ac: Use gmp as a library dependency when checking for
537         mpfr.
538
539 2018-09-17  Pedro Alves  <palves@redhat.com>
540
541         * python/py-inferior.c (find_inferior_object): Delete.
542
543 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
544
545         * compile/compile-cplus-types.c
546         (compile_cplus_instance::enter_scope): Don't use new_scope after
547         std::move.
548
549 2018-09-17  Tom Tromey  <tom@tromey.com>
550
551         * common/pathstuff.c (get_standard_cache_dir): Use
552         ~/Library/Caches on macOS.
553         * common/pathstuff.h (get_standard_cache_dir): Update comment.
554
555 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
556
557         PR python/23669
558         * breakpoint.c (commands_cmd_element): New.
559         (_initialize_breakpoint): Assign commands_cmd_element.
560         * breakpoint.h (commands_cmd_element): New.
561         * cli/cli-script.c (while_cmd_element, if_command,
562         define_cmd_element): New.
563         (command_name_equals): Remove.
564         (process_next_line): Compare commands by pointer, not by name.
565         (_initialize_cli_script): Assign the various cmd_list_element
566         variables.
567         * compile/compile.c (compile_cmd_element): New.
568         (_initialize_compile): Assign compile_cmd_element.
569         * compile/compile.h (compile_cmd_element): New.
570         * guile/guile.c (guile_cmd_element): New.
571         (install_gdb_commands): Assign guile_cmd_element.
572         * guile/guile.h (guile_cmd_element): New.
573         * python/python.c (python_cmd_element): New.
574         (_initialize_python): Assign python_cmd_element.
575         * python/python.h (python_cmd_element): New.
576         * tracepoint.c (while_stepping_cmd_element): New.
577         (_initialize_tracepoint): Assign while_stepping_cmd_element.
578         * tracepoint.h (while_stepping_cmd_element): New.
579
580 2018-09-17  Tom Tromey  <tom@tromey.com>
581
582         * infrun.c (save_infcall_suspend_state): Return
583         infcall_suspend_state_up.
584         (save_infcall_control_state): Return infcall_control_state_up.
585         * inferior.h (save_infcall_suspend_state)
586         (save_infcall_control_state): Declare later.  Return unique
587         pointers.
588
589 2018-09-17  Tom Tromey  <tom@tromey.com>
590
591         * infrun.c (struct stop_context): Declare constructor,
592         destructor, "changed" method.
593         (stop_context::stop_context): Rename from save_stop_context.
594         (stop_context::~stop_context): Rename from
595         release_stop_context_cleanup.
596         (normal_stop): Update.
597         (stop_context::changed): Rename from stop_context_changed.  Return
598         bool.
599
600 2018-09-17  Tom Tromey  <tom@tromey.com>
601
602         * inferior.h (struct infcall_suspend_state_deleter): New.
603         (infcall_suspend_state_up): New typedef.
604         (struct infcall_control_state_deleter): New.
605         (infcall_control_state_up): New typedef.
606         (make_cleanup_restore_infcall_suspend_state)
607         (make_cleanup_restore_infcall_control_state): Don't declare.
608         * infcall.c (call_function_by_hand_dummy): Update.
609         * infrun.c (do_restore_infcall_suspend_state_cleanup)
610         (make_cleanup_restore_infcall_suspend_state): Remove.
611         (do_restore_infcall_control_state_cleanup)
612         (make_cleanup_restore_infcall_control_state): Remove.
613
614 2018-09-17  Tom Tromey  <tom@tromey.com>
615
616         * gdbthread.h (struct thread_control_state): Add initializer.
617         (class thread_info) <control>: Remove initializer.
618         * inferior.h (struct inferior_control_state): Add initializer.
619         (class inferior) <control>: Remove initializer.
620         (exit_inferior_1): Update.
621         * infrun.c (struct infcall_control_state): Add constructors.
622         (save_infcall_control_state): Use new.
623         (restore_infcall_control_state, discard_infcall_control_state):
624         Use delete.
625
626 2018-09-17  Tom Tromey  <tom@tromey.com>
627
628         * infrun.c (struct infcall_suspend_state) <registers>: Now a
629         unique_ptr.
630         <siginfo_data>: Now a unique_xmalloc_ptr.
631         (save_infcall_suspend_state, restore_infcall_suspend_state)
632         (discard_infcall_suspend_state)
633         (get_infcall_suspend_state_regcache): Update.
634
635 2018-09-17  Tom Tromey  <tom@tromey.com>
636
637         * gdbthread.h (struct thread_suspend_state): Add initializers.
638         (class thread_info) <suspend>: Remove initializer.
639         * infrun.c (struct infcall_suspend_state): Add initializers.
640         (save_infcall_suspend_state): Use new.
641         (discard_infcall_suspend_state): Use delete.
642
643 2018-09-16  Tom Tromey  <tom@tromey.com>
644
645         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
646         Remove.
647         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
648         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
649         (py_varobj_iter_new): Likewise.
650         (py_varobj_get_iterator): Use gdbpy_ref.
651
652 2018-09-16  Tom Tromey  <tom@tromey.com>
653
654         * python/py-threadevent.c (py_get_event_thread): Simplify.
655         * python/py-inferior.c (infpy_thread_from_thread_handle):
656         Return immediately after calling thread_to_thread_object.  Use
657         Py_RETURN_NONE.
658         (thread_to_thread_object): Set the exception on a NULL return.
659
660 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
661
662         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
663
664 2018-09-16  Tom Tromey  <tom@tromey.com>
665
666         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
667         Remove.
668
669 2018-09-16  Tom Tromey  <tom@tromey.com>
670
671         * python/python-internal.h (thread_to_thread_object): Change
672         return type.
673         * python/py-inferior.c (thread_to_thread_object): Return a new
674         reference.
675         (infpy_thread_from_thread_handle): Update.
676         * python/py-infthread.c (gdbpy_selected_thread): Update.
677         * python/py-stopevent.c (create_stop_event_object): Update.
678         * python/py-threadevent.c (py_get_event_thread): Return a new
679         reference.
680         (py_get_event_thread): Update.
681         * python/py-event.h (py_get_event_thread): Change return type.
682         * python/py-continueevent.c (create_continue_event_object):
683         Update.
684
685 2018-09-16  Tom Tromey  <tom@tromey.com>
686
687         * python/py-progspace.c (pspy_get_objfiles): Update.
688         * python/python-internal.h (objfile_to_objfile_object): Change
689         return type.
690         * python/py-newobjfileevent.c (create_new_objfile_event_object):
691         Update.
692         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
693         Update.
694         * python/python.c (gdbpy_get_current_objfile): Update.
695         (gdbpy_objfiles): Update.
696         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
697         Update.
698         (objfile_to_objfile_object): Return a new reference.
699         * python/py-symtab.c (stpy_get_objfile): Update.
700         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
701         Update.
702
703 2018-09-16  Tom Tromey  <tom@tromey.com>
704
705         * python/py-inferior.c (infpy_get_progspace): Update.
706         * python/python-internal.h (pspace_to_pspace_object): Change
707         return type.
708         * python/py-newobjfileevent.c
709         (create_clear_objfiles_event_object): Update.
710         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
711         Update.
712         * python/python.c (gdbpy_get_current_progspace): Update.
713         (gdbpy_progspaces): Update.
714         * python/py-progspace.c (pspace_to_pspace_object): Return a new
715         reference.
716         * python/py-objfile.c (objfpy_get_progspace): Update.
717         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
718         Update.
719
720 2018-09-16  Tom Tromey  <tom@tromey.com>
721
722         * python/lib/gdb/__init__.py (current_progspace, objfiles)
723         (solib_name, block_for_pc, find_pc_line): New functions.
724         (execute_unwinders): Update.
725         * python/py-block.c (gdbpy_block_for_pc): Remove.
726         * python/py-inferior.c (infpy_get_progspace): New function.
727         (inferior_object_getset) <progspace>: Add.
728         * python/py-progspace.c (pspy_objfiles): Rewrite.
729         (pspy_solib_name, pspy_block_for_pc)
730         (pspy_find_pc_line, pspy_is_valid): New functions.
731         (progspace_object_methods): Add entries for solib_name,
732         block_for_pc, find_pc_line, is_valid.
733         * python/python-internal.h (gdbpy_block_for_pc)
734         (build_objfiles_list): Don't declare.
735         * python/python.c: Don't include solib.h.
736         (gdbpy_solib_name, gdbpy_find_pc_line)
737         (gdbpy_get_current_progspace, build_objfiles_list)
738         (gdbpy_objfiles): Remove.
739         (GdbMethods) <current_progspace, objfiles, block_for_pc,
740         solib_name, find_pc_line>: Remove entries.
741
742 2018-09-16  Tom Tromey  <tom@tromey.com>
743
744         * top.c (new_ui_command): Use GNU style for metasyntactic
745         variables.
746         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
747         variables.
748         * maint.c (maintenance_translate_address): Remove "<>" around
749         text.
750         * interps.c (interpreter_exec_cmd): Use GNU style for
751         metasyntactic variables.
752         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
753         metasyntactic variables.
754         * tracepoint.c (tfind_range_command): Use GNU style for
755         metasyntactic variables.
756         (tfind_outside_command): Likewise.
757         (_initialize_tracepoint): Likewise.
758         * remote.c (extended_remote_target::create_inferior): Use GNU
759         style for metasyntactic variables.
760         * sparc64-tdep.c (adi_examine_command): Use GNU style for
761         metasyntactic variables.
762         (adi_assign_command): Likewise.
763
764 2018-09-16  Tom Tromey  <tom@tromey.com>
765
766         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
767         metasyntactic variables.  Print message if no disassembler options
768         are available.
769
770 2018-09-15  Tom Tromey  <tom@tromey.com>
771
772         * infcmd.c (get_inferior_args): Return const char *.
773         * inferior.h (get_inferior_args): Return type now const.
774         * linux-tdep.c (linux_fill_prpsinfo): Update.
775         * procfs.c (procfs_target::make_corefile_notes): Update.
776
777 2018-09-07  Tom Tromey  <tom@tromey.com>
778
779         * python/python.c (execute_gdb_command): Call bpstat_do_actions
780         inside the TRY.
781
782 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
783
784         * nios2-tdep.c (nios2_type_align): New.
785         (nios2_gdb_arch_init): Install type_align hook.
786
787 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
788
789         * eval.c (fake_method::fake_method): Call xzalloc directly for a
790         type that is neither object file owned, nor gdbarch owned.
791         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
792         gdbarch is non-NULL.
793         (alloc_type_instance): Allocate non-objfile owned types on the
794         gdbarch obstack.
795         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
796         using TYPE_ALLOC to ensure memory is allocated on the correct
797         obstack.
798         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
799         obstack, or the gdbarch obstack.
800         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
801
802 2018-09-14  Tom Tromey  <tom@tromey.com>
803
804         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
805         block.
806
807 2018-09-14  Tom Tromey  <tom@tromey.com>
808
809         * nat/fork-inferior.c (get_startup_shell): Remove "static".
810
811 2018-09-13  Tom Tromey  <tom@tromey.com>
812
813         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
814         static.
815
816 2018-09-13  Tom Tromey  <tom@tromey.com>
817
818         * exec.c (try_open_exec_file): Use std::string.
819
820 2018-09-13  Tom Tromey  <tom@tromey.com>
821
822         * utils.h (gdb_bfd_errmsg): Return std::string.
823         * exec.c (exec_file_attach): Update.
824         * compile/compile-object-load.c (compile_object_load): Update.
825         * utils.c (gdb_bfd_errmsg): Return std::string.
826
827 2018-09-13  Tom Tromey  <tom@tromey.com>
828
829         * procfs.c (struct procinfo_deleter): New.
830         (procinfo_up): New typedef.
831         (do_destroy_procinfo_cleanup): Remove.
832         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
833
834 2018-09-13  Tom Tromey  <tom@tromey.com>
835
836         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
837
838 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
839 2018-09-13  Tom Tromey  <tom@tromey.com>
840
841         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
842         (pspy_get_objfiles): New function.
843         (progspace_object_methods): New.
844         (pspace_object_type): Add tp_methods callback.
845         * python/python-internal.h (build_objfiles_list): New
846         declaration.
847         * python/python.c (build_objfiles_list): New function.
848         (gdbpy_objfiles): Implement using build_objfiles_list.
849         * NEWS: Mention the Progspace.objfiles method.
850
851 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
852
853         * python/py-inferior.c (infpy_get_progspace): New function.
854         (inferior_object_getset): Add progspace property.
855         * NEWS: Mention the new property.
856
857 2018-09-13  Tom Tromey  <tom@tromey.com>
858
859         PR rust/23650:
860         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
861
862 2018-09-13  Tom Tromey  <tom@tromey.com>
863
864         PR rust/23626:
865         * rust-lang.c (rust_enum_variant): Now static.
866         (rust_empty_enum_p): New function.
867         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
868         Handle empty enum.
869
870 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
871
872         * python/py-inferior.c (infpy_repr): New.
873         (inferior_object_type): Register infpy_repr.
874         * python/py-objfile.c (objfpy_repr): New.
875         (objfile_object_type): Register objfpy_repr.
876
877 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
878
879         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
880
881 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
882
883         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
884         typo.
885
886 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
887
888         * common/common-utils.c: Don't include '<sys/stat.h>'.
889         (is_regular_file): Move to...
890         * common/filestuff.c (is_regular_file): ... here.
891         * common/common-utils.h (is_regular_file): Move to...
892         * common/filestuff.h (is_regular_file): ... here.
893
894 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
895
896         * skip.c (debug_skip): New variable.
897         (skiplist_entry::do_skip_file_p): Add debug output.
898         (skiplist_entry::do_skip_gfile_p): Likewise.
899         (skiplist_entry::skip_function_p): Likewise.
900         (_initialize_step_skip): Create debug command.
901         * NEWS: Mention set/show debug skip.
902
903 2018-09-11  Xavier Roirand  <roirand@adacore.com>
904
905         * darwin-nat.c (should_disable_startup_with_shell):
906         New function.
907         (darwin_nat_target::create_inferior): Add call.
908
909 2018-09-11  Xavier Roirand  <roirand@adacore.com>
910
911         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
912         inf_port, msg_state>: Initialize.
913         (struct darwin_thread_info) <signaled, single_step>: Change
914         type and initialize.
915         (struct darwin_thread_info) <event>: Initialize.
916
917 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
918
919         PR gdb/23555
920         PR gdb/23558
921         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
922         guesses.
923
924 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
925
926         Revert:
927         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
928
929         PR gdb/23555
930         PR gdb/23558
931         * gnulib/aclocal.m4: Regenerate.
932         * gnulib/config.in: Regenerate.
933         * gnulib/configure: Regenerate.
934         * gnulib/import/Makefile.am: Update.
935         * gnulib/import/Makefile.in: Update.
936         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
937         * gnulib/import/_Noreturn.h: ... this.
938         * gnulib/import/alloca.in.h: Update.
939         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
940         * gnulib/import/arg-nonnull.h: ... this.
941         * gnulib/import/assure.h: Update.
942         * gnulib/import/at-func.c: Update.
943         * gnulib/import/basename-lgpl.c: Update.
944         * gnulib/import/extra/snippet/c++defs.h: Rename to...
945         * gnulib/import/c++defs.h: ... this.
946         * gnulib/import/canonicalize-lgpl.c: Update.
947         * gnulib/import/cdefs.h: Update.
948         * gnulib/import/chdir-long.c: Update.
949         * gnulib/import/chdir-long.h: Update.
950         * gnulib/import/cloexec.c: Update.
951         * gnulib/import/cloexec.h: Update.
952         * gnulib/import/close.c: Update.
953         * gnulib/import/closedir.c: Update.
954         * gnulib/import/config.charset: Update.
955         * gnulib/import/dirent-private.h: Update.
956         * gnulib/import/dirent.in.h: Update.
957         * gnulib/import/dirfd.c: Update.
958         * gnulib/import/dirname-lgpl.c: Update.
959         * gnulib/import/dirname.h: Update.
960         * gnulib/import/dosname.h: Update.
961         * gnulib/import/dup-safer-flag.c: Update.
962         * gnulib/import/dup-safer.c: Update.
963         * gnulib/import/dup.c: Update.
964         * gnulib/import/dup2.c: Update.
965         * gnulib/import/errno.in.h: Update.
966         * gnulib/import/error.c: Update.
967         * gnulib/import/error.h: Update.
968         * gnulib/import/exitfail.c: Update.
969         * gnulib/import/exitfail.h: Update.
970         * gnulib/import/extra/update-copyright: Update.
971         * gnulib/import/fchdir.c: Update.
972         * gnulib/import/fcntl.c: Update.
973         * gnulib/import/fcntl.in.h: Update.
974         * gnulib/import/fd-hook.c: Update.
975         * gnulib/import/fd-hook.h: Update.
976         * gnulib/import/fd-safer-flag.c: Update.
977         * gnulib/import/fd-safer.c: Update.
978         * gnulib/import/fdopendir.c: Update.
979         * gnulib/import/filename.h: Update.
980         * gnulib/import/filenamecat-lgpl.c: Update.
981         * gnulib/import/filenamecat.h: Update.
982         * gnulib/import/flexmember.h: Update.
983         * gnulib/import/float+.h: Update.
984         * gnulib/import/float.c: Update.
985         * gnulib/import/float.in.h: Update.
986         * gnulib/import/fnmatch.c: Update.
987         * gnulib/import/fnmatch.in.h: Update.
988         * gnulib/import/fnmatch_loop.c: Update.
989         * gnulib/import/fpucw.h: Update.
990         * gnulib/import/frexp.c: Update.
991         * gnulib/import/frexpl.c: Update.
992         * gnulib/import/fstat.c: Update.
993         * gnulib/import/fstatat.c: Update.
994         * gnulib/import/getcwd-lgpl.c: Update.
995         * gnulib/import/getcwd.c: Update.
996         * gnulib/import/getdtablesize.c: Update.
997         * gnulib/import/getlogin_r.c: Update.
998         * gnulib/import/getprogname.c: Update.
999         * gnulib/import/getprogname.h: Update.
1000         * gnulib/import/gettext.h: Update.
1001         * gnulib/import/gettimeofday.c: Update.
1002         * gnulib/import/glob-libc.h: Update.
1003         * gnulib/import/glob.c: Update.
1004         * gnulib/import/glob.in.h: Update.
1005         * gnulib/import/glob_internal.h: Update.
1006         * gnulib/import/glob_pattern_p.c: Update.
1007         * gnulib/import/globfree.c: Update.
1008         * gnulib/import/hard-locale.c: Update.
1009         * gnulib/import/hard-locale.h: Update.
1010         * gnulib/import/intprops.h: Update.
1011         * gnulib/import/inttypes.in.h: Update.
1012         * gnulib/import/isnan.c: Update.
1013         * gnulib/import/isnand-nolibm.h: Update.
1014         * gnulib/import/isnand.c: Update.
1015         * gnulib/import/isnanl-nolibm.h: Update.
1016         * gnulib/import/isnanl.c: Update.
1017         * gnulib/import/itold.c: Update.
1018         * gnulib/import/libc-config.h: Update.
1019         * gnulib/import/limits.in.h: Update.
1020         * gnulib/import/localcharset.c: Update.
1021         * gnulib/import/localcharset.h: Update.
1022         * gnulib/import/localtime-buffer.c: Update.
1023         * gnulib/import/localtime-buffer.h: Update.
1024         * gnulib/import/lstat.c: Update.
1025         * gnulib/import/m4/00gnulib.m4: Update.
1026         * gnulib/import/m4/__inline.m4: Update.
1027         * gnulib/import/m4/absolute-header.m4: Update.
1028         * gnulib/import/m4/alloca.m4: Update.
1029         * gnulib/import/m4/builtin-expect.m4: Update.
1030         * gnulib/import/m4/canonicalize.m4: Update.
1031         * gnulib/import/m4/chdir-long.m4: Update.
1032         * gnulib/import/m4/close.m4: Update.
1033         * gnulib/import/m4/closedir.m4: Update.
1034         * gnulib/import/m4/configmake.m4: Update.
1035         * gnulib/import/m4/d-ino.m4: Update.
1036         * gnulib/import/m4/d-type.m4: Update.
1037         * gnulib/import/m4/dirent_h.m4: Update.
1038         * gnulib/import/m4/dirfd.m4: Update.
1039         * gnulib/import/m4/dirname.m4: Update.
1040         * gnulib/import/m4/double-slash-root.m4: Update.
1041         * gnulib/import/m4/dup.m4: Update.
1042         * gnulib/import/m4/dup2.m4: Update.
1043         * gnulib/import/m4/eealloc.m4: Update.
1044         * gnulib/import/m4/environ.m4: Update.
1045         * gnulib/import/m4/errno_h.m4: Update.
1046         * gnulib/import/m4/error.m4: Update.
1047         * gnulib/import/m4/exponentd.m4: Update.
1048         * gnulib/import/m4/exponentl.m4: Update.
1049         * gnulib/import/m4/extensions.m4: Update.
1050         * gnulib/import/m4/extern-inline.m4: Update.
1051         * gnulib/import/m4/fchdir.m4: Update.
1052         * gnulib/import/m4/fcntl-o.m4: Update.
1053         * gnulib/import/m4/fcntl.m4: Update.
1054         * gnulib/import/m4/fcntl_h.m4: Update.
1055         * gnulib/import/m4/fdopendir.m4: Update.
1056         * gnulib/import/m4/filenamecat.m4: Update.
1057         * gnulib/import/m4/flexmember.m4: Update.
1058         * gnulib/import/m4/float_h.m4: Update.
1059         * gnulib/import/m4/fnmatch.m4: Update.
1060         * gnulib/import/m4/fnmatch_h.m4: Update.
1061         * gnulib/import/m4/fpieee.m4: Update.
1062         * gnulib/import/m4/frexp.m4: Update.
1063         * gnulib/import/m4/frexpl.m4: Update.
1064         * gnulib/import/m4/fstat.m4: Update.
1065         * gnulib/import/m4/fstatat.m4: Update.
1066         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1067         * gnulib/import/m4/getcwd-path-max.m4: Update.
1068         * gnulib/import/m4/getcwd.m4: Update.
1069         * gnulib/import/m4/getdtablesize.m4: Update.
1070         * gnulib/import/m4/getlogin.m4: Update.
1071         * gnulib/import/m4/getlogin_r.m4: Update.
1072         * gnulib/import/m4/getpagesize.m4: Update.
1073         * gnulib/import/m4/getprogname.m4: Update.
1074         * gnulib/import/m4/gettimeofday.m4: Update.
1075         * gnulib/import/m4/glibc21.m4: Update.
1076         * gnulib/import/m4/glob.m4: Update.
1077         * gnulib/import/m4/glob_h.m4: Update.
1078         * gnulib/import/m4/gnulib-cache.m4: Update.
1079         * gnulib/import/m4/gnulib-common.m4: Update.
1080         * gnulib/import/m4/gnulib-comp.m4: Update.
1081         * gnulib/import/m4/gnulib-tool.m4: Update.
1082         * gnulib/import/m4/hard-locale.m4: Update.
1083         * gnulib/import/m4/include_next.m4: Update.
1084         * gnulib/import/m4/inttypes-pri.m4: Update.
1085         * gnulib/import/m4/inttypes.m4: Update.
1086         * gnulib/import/m4/isnand.m4: Update.
1087         * gnulib/import/m4/isnanl.m4: Update.
1088         * gnulib/import/m4/largefile.m4: Update.
1089         * gnulib/import/m4/limits-h.m4: Update.
1090         * gnulib/import/m4/localcharset.m4: Update.
1091         * gnulib/import/m4/locale-fr.m4: Update.
1092         * gnulib/import/m4/locale-ja.m4: Update.
1093         * gnulib/import/m4/locale-zh.m4: Update.
1094         * gnulib/import/m4/localtime-buffer.m4: Update.
1095         * gnulib/import/m4/longlong.m4: Update.
1096         * gnulib/import/m4/lstat.m4: Update.
1097         * gnulib/import/m4/malloc.m4: Update.
1098         * gnulib/import/m4/malloca.m4: Update.
1099         * gnulib/import/m4/math_h.m4: Update.
1100         * gnulib/import/m4/mbrtowc.m4: Update.
1101         * gnulib/import/m4/mbsinit.m4: Update.
1102         * gnulib/import/m4/mbsrtowcs.m4: Update.
1103         * gnulib/import/m4/mbstate_t.m4: Update.
1104         * gnulib/import/m4/memchr.m4: Update.
1105         * gnulib/import/m4/memmem.m4: Update.
1106         * gnulib/import/m4/mempcpy.m4: Update.
1107         * gnulib/import/m4/memrchr.m4: Update.
1108         * gnulib/import/m4/mkdir.m4: Update.
1109         * gnulib/import/m4/mkstemp.m4: Update.
1110         * gnulib/import/m4/mmap-anon.m4: Update.
1111         * gnulib/import/m4/mode_t.m4: Update.
1112         * gnulib/import/m4/msvc-inval.m4: Update.
1113         * gnulib/import/m4/msvc-nothrow.m4: Update.
1114         * gnulib/import/m4/multiarch.m4: Update.
1115         * gnulib/import/m4/nocrash.m4: Update.
1116         * gnulib/import/m4/off_t.m4: Update.
1117         * gnulib/import/m4/onceonly.m4: Update.
1118         * gnulib/import/m4/open-cloexec.m4: Update.
1119         * gnulib/import/m4/open.m4: Update.
1120         * gnulib/import/m4/openat.m4: Update.
1121         * gnulib/import/m4/opendir.m4: Update.
1122         * gnulib/import/m4/pathmax.m4: Update.
1123         * gnulib/import/m4/rawmemchr.m4: Update.
1124         * gnulib/import/m4/readdir.m4: Update.
1125         * gnulib/import/m4/readlink.m4: Update.
1126         * gnulib/import/m4/realloc.m4: Update.
1127         * gnulib/import/m4/rename.m4: Update.
1128         * gnulib/import/m4/rewinddir.m4: Update.
1129         * gnulib/import/m4/rmdir.m4: Update.
1130         * gnulib/import/m4/save-cwd.m4: Update.
1131         * gnulib/import/m4/secure_getenv.m4: Update.
1132         * gnulib/import/m4/setenv.m4: Update.
1133         * gnulib/import/m4/signal_h.m4: Update.
1134         * gnulib/import/m4/ssize_t.m4: Update.
1135         * gnulib/import/m4/stat-time.m4: Update.
1136         * gnulib/import/m4/stat.m4: Update.
1137         * gnulib/import/m4/std-gnu11.m4: Update.
1138         * gnulib/import/m4/stdbool.m4: Update.
1139         * gnulib/import/m4/stddef_h.m4: Update.
1140         * gnulib/import/m4/stdint.m4: Update.
1141         * gnulib/import/m4/stdio_h.m4: Update.
1142         * gnulib/import/m4/stdlib_h.m4: Update.
1143         * gnulib/import/m4/strchrnul.m4: Update.
1144         * gnulib/import/m4/strdup.m4: Update.
1145         * gnulib/import/m4/strerror.m4: Update.
1146         * gnulib/import/m4/string_h.m4: Update.
1147         * gnulib/import/m4/strstr.m4: Update.
1148         * gnulib/import/m4/strtok_r.m4: Update.
1149         * gnulib/import/m4/sys_socket_h.m4: Update.
1150         * gnulib/import/m4/sys_stat_h.m4: Update.
1151         * gnulib/import/m4/sys_time_h.m4: Update.
1152         * gnulib/import/m4/sys_types_h.m4: Update.
1153         * gnulib/import/m4/tempname.m4: Update.
1154         * gnulib/import/m4/time_h.m4: Update.
1155         * gnulib/import/m4/unistd-safer.m4: Update.
1156         * gnulib/import/m4/unistd_h.m4: Update.
1157         * gnulib/import/m4/warn-on-use.m4: Update.
1158         * gnulib/import/m4/wchar_h.m4: Update.
1159         * gnulib/import/m4/wchar_t.m4: Update.
1160         * gnulib/import/m4/wctype_h.m4: Update.
1161         * gnulib/import/m4/wint_t.m4: Update.
1162         * gnulib/import/malloc.c: Update.
1163         * gnulib/import/malloc/scratch_buffer.h: Update.
1164         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1165         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1166         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1167         * gnulib/import/malloca.c: Update.
1168         * gnulib/import/malloca.h: Update.
1169         * gnulib/import/malloca.valgrind: Update.
1170         * gnulib/import/math.in.h: Update.
1171         * gnulib/import/mbrtowc.c: Update.
1172         * gnulib/import/mbsinit.c: Update.
1173         * gnulib/import/mbsrtowcs-impl.h: Update.
1174         * gnulib/import/mbsrtowcs-state.c: Update.
1175         * gnulib/import/mbsrtowcs.c: Update.
1176         * gnulib/import/memchr.c: Update.
1177         * gnulib/import/memmem.c: Update.
1178         * gnulib/import/mempcpy.c: Update.
1179         * gnulib/import/memrchr.c: Update.
1180         * gnulib/import/mkdir.c: Update.
1181         * gnulib/import/mkstemp.c: Update.
1182         * gnulib/import/msvc-inval.c: Update.
1183         * gnulib/import/msvc-inval.h: Update.
1184         * gnulib/import/msvc-nothrow.c: Update.
1185         * gnulib/import/msvc-nothrow.h: Update.
1186         * gnulib/import/open.c: Update.
1187         * gnulib/import/openat-die.c: Update.
1188         * gnulib/import/openat-priv.h: Update.
1189         * gnulib/import/openat-proc.c: Update.
1190         * gnulib/import/openat.c: Update.
1191         * gnulib/import/openat.h: Update.
1192         * gnulib/import/opendir.c: Update.
1193         * gnulib/import/pathmax.h: Update.
1194         * gnulib/import/pipe-safer.c: Update.
1195         * gnulib/import/rawmemchr.c: Update.
1196         * gnulib/import/readdir.c: Update.
1197         * gnulib/import/readlink.c: Update.
1198         * gnulib/import/realloc.c: Update.
1199         * gnulib/import/ref-add.sin: Update.
1200         * gnulib/import/ref-del.sin: Update.
1201         * gnulib/import/rename.c: Update.
1202         * gnulib/import/rewinddir.c: Update.
1203         * gnulib/import/rmdir.c: Update.
1204         * gnulib/import/same-inode.h: Update.
1205         * gnulib/import/save-cwd.c: Update.
1206         * gnulib/import/save-cwd.h: Update.
1207         * gnulib/import/scratch_buffer.h: Update.
1208         * gnulib/import/secure_getenv.c: Update.
1209         * gnulib/import/setenv.c: Update.
1210         * gnulib/import/signal.in.h: Update.
1211         * gnulib/import/stat-time.c: Update.
1212         * gnulib/import/stat-time.h: Update.
1213         * gnulib/import/stat-w32.c: Update.
1214         * gnulib/import/stat-w32.h: Update.
1215         * gnulib/import/stat.c: Update.
1216         * gnulib/import/stdbool.in.h: Update.
1217         * gnulib/import/stddef.in.h: Update.
1218         * gnulib/import/stdint.in.h: Update.
1219         * gnulib/import/stdio.in.h: Update.
1220         * gnulib/import/stdlib.in.h: Update.
1221         * gnulib/import/str-two-way.h: Update.
1222         * gnulib/import/strchrnul.c: Update.
1223         * gnulib/import/strdup.c: Update.
1224         * gnulib/import/streq.h: Update.
1225         * gnulib/import/strerror-override.c: Update.
1226         * gnulib/import/strerror-override.h: Update.
1227         * gnulib/import/strerror.c: Update.
1228         * gnulib/import/string.in.h: Update.
1229         * gnulib/import/stripslash.c: Update.
1230         * gnulib/import/strnlen1.c: Update.
1231         * gnulib/import/strnlen1.h: Update.
1232         * gnulib/import/strstr.c: Update.
1233         * gnulib/import/strtok_r.c: Update.
1234         * gnulib/import/sys_stat.in.h: Update.
1235         * gnulib/import/sys_time.in.h: Update.
1236         * gnulib/import/sys_types.in.h: Update.
1237         * gnulib/import/tempname.c: Update.
1238         * gnulib/import/tempname.h: Update.
1239         * gnulib/import/time.in.h: Update.
1240         * gnulib/import/unistd--.h: Update.
1241         * gnulib/import/unistd-safer.h: Update.
1242         * gnulib/import/unistd.in.h: Update.
1243         * gnulib/import/unsetenv.c: Update.
1244         * gnulib/import/verify.h: Update.
1245         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1246         * gnulib/import/wchar.in.h: Update.
1247         * gnulib/import/wctype.in.h: Update.
1248         * gnulib/import/xalloc-oversized.h: Update.
1249         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1250         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1251
1252 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
1253
1254         * record-btrace.c (get_thread_current_frame): Remove
1255         old_inferior_ptid.
1256
1257 2018-09-10  Jerome Guitton  <guitton@adacore.com>
1258
1259         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
1260         with check_tag to 1 if and only if the type is tagged and the
1261         component being searched cannot been found in the current
1262         view. Otherwise, always call ada_to_fixed_type with
1263         check_tag to 0.
1264
1265 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1266
1267         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
1268         declaration.
1269         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
1270         * ada-varobj.c (ada_varobj_get_number_of_children,
1271         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
1272
1273 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1274
1275         * ada-valprint.c (ada_value_print): Use type instead of
1276         enclosing type.
1277
1278 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1279
1280         * ada-lang.c (ada_value_subscript): Handle case when parameter is
1281         an array of access to unconstrained array.
1282
1283 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1284
1285         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
1286         (ada_check_typedef): Use it.
1287
1288 2018-09-10  Xavier Roirand  <roirand@adacore.com>
1289
1290         * ada-varobj.c (ada_varobj_describe_struct_child)
1291         (ada_varobj_describe_child): Handle union case like struct one.
1292
1293 2018-09-10  Tom Tromey  <tom@tromey.com>
1294
1295         PR python/18380:
1296         * python/python.c (_initialize_python): Make example in "python"
1297         help work in Python 3.
1298
1299 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
1300
1301         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
1302         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
1303         $(EXEEXT) to the script, as it is not a program.
1304
1305 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
1306
1307         * python/py-prettyprint.c (pretty_print_one_value): Return
1308         gdbpy_ref<>.
1309         (print_string_repr): Adjust.
1310         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
1311         * python/python-internal.h (apply_varobj_pretty_printer): Return
1312         gdbpy_ref<>.
1313         * varobj.c (varobj_value_get_print_value): Adjust.
1314
1315 2018-09-08  Tom Tromey  <tom@tromey.com>
1316
1317         PR python/16047:
1318         * python/py-prettyprint.c (pretty_print_one_value): Check for
1319         to_string method.
1320
1321 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1322
1323         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
1324         replace_operator_with_call.
1325
1326 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1327
1328         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
1329
1330 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1331
1332         * ada-typeprint.c (print_range): Print the bounds using TYPE
1333         rather than its TYPE_TARGET_TYPE.
1334
1335 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1336
1337         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
1338         call to ada_to_fixed_value_create.
1339
1340 2018-09-08  Jerome Guitton  <guitton@adacore.com>
1341
1342         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
1343
1344 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1345
1346         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
1347         by calls to error.
1348
1349 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1350
1351         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
1352         Move update of loop variable "fi".
1353
1354 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
1355
1356         * ada-lang.c (value_assign_to_component): In the case of
1357         big-endian targets, extract the bits of the given VAL
1358         using an src_offset of zero if container is not a scalar.
1359
1360 2018-09-06  Simon Ser  <contact@emersion.fr>
1361
1362         PR gdb/23105
1363         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
1364         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1365         * fbsd-tdep.c (fbsd_make_note_desc): New.
1366         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
1367         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
1368         * target.h (enum target_object) Add FreeBSD-specific
1369         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
1370
1371 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1372
1373         * compile/compile-c.h (generate_c_for_variable_locations):
1374         Change reference to pointer.
1375         * compile/compile-c-support.c (compile_program) <compute>:
1376         Likewise.
1377         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
1378         (generate_c_for_for_one_variable): Likewise
1379         (generate_c_for_variable_locations): Likewise
1380         * compile/compile-c-types.c (compile_c_instance::convert_type):
1381         Likewise
1382         * compile/compile-cplus-symbols.c (convert_one_symbol):
1383         std::move the scope passed to enter_scope.
1384         * compile/compile-cplus-types.c
1385         (compile_cplus_instance::enter_scope): Make parameter
1386         rvalue-reference.
1387         (compile_cplus_instance::new_scope): Change reference to
1388         pointer.
1389         (compile_cplus_instance::convert_type): Likewise
1390         (compile_cplus_convert_typedef): std::move the scope passed to
1391         enter_scope.
1392         (compile_cplus_convert_struct_or_union): Likewise.
1393         (compile_cplus_convert_enum): Likewise.
1394         (compile_cplus_convert_namespace): Likewise.
1395         * compile/compile-cplus.h (compile_cplus_instance)
1396         <enter_scope>: Make parameter rvalue-reference.
1397         * compile/compile-internal.h (compile_instance)
1398         <get_cached_type>: Likewise
1399         * compile/compile-loc2c.c (push): Likewise
1400         (pushf): Likewise
1401         (unary): Likewise
1402         (binary): Likewise
1403         (print_label): Likewise
1404         (pushf_register_address): Likewise
1405         (pushf_register): Likewise
1406         (do_compile_dwarf_expr_to_c): Likewise
1407         (compile_dwarf_expr_to_c): Likewise
1408         (compile_dwarf_bounds_to_c): Likewise
1409         * compile/compile.c (compile_instance::get_cached_type):
1410         Likewise
1411         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
1412         (compile_dwarf_bounds_to_c): Likewise
1413         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
1414         (dwarf2_compile_property_to_c): Likewise
1415         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
1416         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
1417         Likewise
1418
1419 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1420
1421         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
1422         * tui/tui-data.c (init_content_element): Don't initialize it.
1423
1424 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
1425
1426         * tui/tui-data.h (struct tui_win_info)
1427         <detail::opaque>: Remove.
1428         * tui/tui-data.c (init_win_info): Remove assignment.
1429
1430 2018-09-05  Tom Tromey  <tom@tromey.com>
1431
1432         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
1433         -Wformat-nonliteral.
1434         * target-float.c (host_float_ops<T>::to_string)
1435         (host_float_ops<T>::from_string): Use
1436         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1437         * configure: Rebuild.
1438
1439 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
1440
1441         * printcmd.c (printf_c_string): Use
1442         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
1443         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
1444
1445 2018-09-05  Tom Tromey  <tom@tromey.com>
1446
1447         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
1448
1449 2018-09-05  Tom de Vries  <tdevries@suse.de>
1450
1451         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
1452         with resolve_abstract_p == true.
1453         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
1454         defaulting to false. Propagate resolve_abstract_p to
1455         dwarf2_fetch_die_loc_sect_off.
1456         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
1457         parameter, defaulting to false.
1458         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
1459         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
1460         parameter.
1461         * dwarf2read.h (struct die_info): Forward-declare.
1462         (die_info_ptr): New typedef.
1463         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
1464
1465 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
1466
1467         GDB 8.2 released.
1468
1469 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
1470             Pedro Alves  <palves@redhat.com>
1471
1472         * gnulib/Makefile.in (aclocal_m4_deps): Move to
1473         "aclocal-m4-deps.mk".  Include file here.
1474         $(srcdir)/aclocal.m4: Add "configure.ac".
1475         * gnulib/aclocal-m4-deps.mk: New file.
1476         * gnulib/update-gnulib.sh: Automatically update
1477         "aclocal-m4-deps.mk".
1478
1479 2018-09-04  Tom Tromey  <tom@tromey.com>
1480
1481         * configure: Rebuild.
1482         * configure.ac: Remove multi-ice code.
1483
1484 2018-09-04  Tom Tromey  <tom@tromey.com>
1485
1486         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
1487         (ada-exp.o): Update.
1488
1489 2018-09-04  Tom Tromey  <tom@tromey.com>
1490
1491         * Makefile.in (printcmd.o, target-float.o): Remove.
1492         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
1493
1494 2018-09-04  Tom Tromey  <tom@tromey.com>
1495
1496         * gnulib/Makefile.in: Remove obsolete comment.
1497         * Makefile.in: Remove obsolete comment.
1498
1499 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
1500
1501         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
1502         line with '+'.
1503
1504 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1505
1506         * riscv-tdep.c: Add 'prologue-value.h' include.
1507         (struct riscv_unwind_cache): New struct.
1508         (riscv_debug_unwinder): New global.
1509         (riscv_scan_prologue): Update arguments, capture register details
1510         from prologue scan.
1511         (riscv_skip_prologue): Reformat arguments line, move end of
1512         prologue calculation into riscv_scan_prologue.
1513         (riscv_frame_cache): Update return type, create
1514         riscv_unwind_cache, scan the prologue, and fill in remaining cache
1515         details.
1516         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
1517         (riscv_frame_prev_register): Use the trad_frame within the
1518         riscv_unwind_cache.
1519         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
1520         flag.
1521
1522 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
1523
1524         * trad-frame.h (trad_frame_set_realreg): Declare.
1525         (trad_frame_set_addr): Declare.
1526         * trad-frame.c (trad_frame_set_realreg): Define new function.
1527         (trad_frame_set_addr): Define new function.
1528         (trad_frame_set_reg_realreg): Use new function.
1529         (trad_frame_set_reg_addr): Use new function.
1530
1531 2018-09-01  Keith Seitz  <keiths@redhat.com>
1532
1533         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
1534         pulongest instead of "%lld".
1535         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
1536         ATTRIBUTE_UNUSED.
1537
1538 2018-08-31  Tom Tromey  <tom@tromey.com>
1539
1540         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
1541         variant part type.
1542
1543 2018-08-31  Pedro Alves  <palves@redhat.com>
1544
1545         * gdbarch.h: Regenerate.
1546
1547 2018-08-31  Pedro Alves  <palves@redhat.com>
1548
1549         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
1550         * target.h (Hardware watchpoint interfaces): Describe
1551         continuable/steppable/non-steppable watchpoints.
1552         * gdbarch.h, gdbarch.c: Regenerate.
1553
1554 2018-08-31  Pedro Alves  <palves@redhat.com>
1555
1556         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
1557         Delete.
1558         * s390-linux-nat.c
1559         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
1560         * target.h (target_ops::have_continuable_watchpoint): Delete.
1561         (target_have_continuable_watchpoint): Delete.
1562         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
1563         * target-delegates.c: Regenerate.
1564
1565 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1566
1567         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
1568         the files present in "gnulib/import/m4/".
1569
1570 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1571
1572         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
1573         c.sw, c.swsp, and c.sdsp.
1574
1575 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
1576
1577         * riscv-tdep.c (struct riscv_inferior_data): Delete.
1578         (riscv_read_misa_reg): Don't cache value read into inferior data.
1579         (riscv_new_inferior_data): Delete.
1580         (riscv_inferior_data_cleanup): Delete.
1581         (riscv_inferior_data): Delete.
1582         (riscv_invalidate_inferior_data): Delete.
1583         (_initialize_riscv_tdep): Remove initialisation of inferior data.
1584
1585 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
1586
1587         * compile/compile-cplus-types.c
1588         (compile_cplus_instance::leave_scope): Take the address of scope
1589         object.
1590         (compile_cplus_instance::convert_qualified_base): Compare quals
1591         to 0.
1592
1593 2018-08-30  Keith Seitz  <keiths@redhat.com>
1594
1595         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
1596         Use "%s" and host_address_to_string instead of "%p" in printf.
1597
1598 2018-08-29  Keith Seitz  <keiths@redhat.com>
1599
1600         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
1601         and compile-cplus-types.c.
1602         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
1603         * c-lang.c (cplus_language_defn): Set C++ compile functions.
1604         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
1605         Declare.
1606         * compile/compile-c-support.c: Include compile-cplus.h.
1607         (load_libcompile): Templatize.
1608         (get_compile_context): "New" function.
1609         (c_get_compile_context): Use get_compile_context.
1610         (cplus_get_compile_context): New function.
1611         (cplus_push_user_expression, cplus_pop_user_expression)
1612         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
1613         (cplus_compute_program): Define new structs/functions.
1614         * compile/compile-cplus-symmbols.c: New file.
1615         * compile/compile-cplus-types.c: New file.
1616         * compile/compile-cplus.h: New file.
1617         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
1618         Declare.
1619         * compile/compile-object-load.c (get_out_value_type): Use
1620         strncmp_iw when comparing symbol names.
1621         (compile_object_load): Add mst_bss and mst_data.
1622         * compile/compile.c (_initialize_compile): Remove
1623         -Wno-implicit-function-declaration from `compile_args'.
1624         * compile/gcc-cp-plugin.h: New file.
1625         * NEWS: Mention C++ compile support and new debug options.
1626
1627 2018-08-29  Keith Seitz  <keiths@redhat.com>
1628
1629         * linespec.c (collect_info::add_symbol): Make virtual.
1630         (struct symbol_searcher_collect_info): New struct.
1631         (symbol_searcher::find_all_symbols): New method.
1632         * symtab.h (class symbol_searcher): New class.
1633
1634 2018-08-29  Keith Seitz  <keiths@redhat.com>
1635
1636         * linespec.c (struct linespec) <function_symbols, label_symbols>:
1637         Change to vector of block_symbol.  Update all users.
1638         (struct collect_info) <symbols>: Likewise.
1639         (collect_info::add_symbol): Take block_symbol as argument.
1640         Update all callers.
1641         (decode_compound_collector) <m_symbols>: Change type to vector
1642         of block_symbol.  Update all users.
1643         (decode_compound_collector::operator ()): Change parameter type
1644         to block_symbol.
1645         (find_method, find_function_symbols, find_linespec_symbols)
1646         (find_label_symbols_in_block, find_label_symbols): Change symbol
1647         vectors to block_symbol vectors.
1648         * symtab.h (symbol_found_callback_ftype): Change parameter type to
1649         block_symbol.
1650
1651 2018-08-29  Keith Seitz  <keiths@redhat.com>
1652
1653         * linespec.c (symbolp): Remove typedef and VEC definitions.
1654         (bound_minimal_symbol_d): Likewise.
1655
1656 2018-08-29  Keith Seitz  <keiths@redhat.com>
1657
1658         * linespec.c (decode_compound_collector::decode_compound_collector):
1659         Remove initialization for `m_symtabs'.
1660         (decode_compound_collector::release_symbols): Change return type
1661         to std::vector.  Update all callers.
1662         (class decode_compound_collector) <m_symbols>: Change type to
1663         std::vector.
1664         (lookup_prefix_sym): Change return type to std::vector.  Update all
1665         callers.
1666         (compare_symbols): Remove.
1667         (std_compare_symbols): Rename to `compare_symbols'.
1668         (find_method): Change `sym_classes' parameter to std::vector.
1669         Update all callers.  Use std::sort to sort sym_classes.
1670         (find_linespec_symbols): Remove cleanup.
1671
1672 2018-08-29  Keith Seitz  <keiths@redhat.com>
1673
1674         * linespec.c (struct linespec) <minimal_symbols>: Change type to
1675         std::vector.  Update all users.
1676         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
1677         (struct collect_info) <minimal_symbols>: Likewise.
1678         (compare_msymbols): Return bool.  Change parameters to const
1679         bound_minimal_symbol references.
1680         (find_method, find_function_symbols, find_linespec_symbols): Change
1681         `minsyms' parameter to std::vector.  Update all callers.
1682
1683 2018-08-29  Keith Seitz  <keiths@redhat.com>
1684
1685         * linespec.c (struct linespec) <label_symbols>: Change type to
1686         std::vector.  Update all users.
1687         (find_label_symbols_in_block): Change `result' parameter to
1688         std::vector.  Update all callers.
1689         (find_label_symbols): Return std::vector.  Update all callers.
1690
1691 2018-08-29  Keith Seitz  <keiths@redhat.com>
1692
1693         * linespec.c (struct linespec) <function_symbols>: Change type to
1694         std::vector.  Update all users.
1695         (struct collect_info) <function_symbols>: Likewise.
1696         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
1697         (std_compare_symbols): New function.
1698         (find_method, find_function_symbols, find_linespec_symbols)
1699         (find_label_symbols_in_block): Change `symbols' parameter to
1700         std::vector.  Update all callers.
1701         (find_label_symbols): Likewise for `function_symbols' and
1702         `label_funcs_ret'.
1703
1704 2018-08-29  Keith Seitz  <keiths@redhat.com>
1705
1706         * linespec.c (symtab_vector_up): Define.
1707         (struct linespec) <file_symtabs>: Change type to std::vector *.
1708         Update all uses.
1709         (struct collect_info) <file_symtabs>: Likewise.
1710         (collect_symtabs_from_filename): Return symtab_vector_up.
1711         Update all callers.
1712         (decode_objc): Remove cleanup.
1713         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
1714         (symtab_collector::release_symtabs): Return symtab_vector_up.
1715         Update all callers.
1716         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
1717         Update all users.
1718         (collect_symtabs_from_filename, symtabs_from_filename): Return
1719         symtab_vector_up.  Update all callers.
1720
1721 2018-08-29  Tom Tromey  <tom@tromey.com>
1722
1723         * csky-tdep.c (csky_analyze_prologue): Use
1724         core_addr_to_string_nz.
1725
1726 2018-08-29  Tom Tromey  <tom@tromey.com>
1727
1728         * windows-nat.c (struct xlate_exception) <them>: Change type to
1729         DWORD.
1730         (xlate): Fix formatting.  Remove last entry.
1731         (struct xlate_exception, xlate): Comment out.
1732         (windows_nat_target::resume): Use ranged for.
1733
1734 2018-08-29  Jim Wilson  <jimw@sifive.com>
1735
1736         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
1737         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
1738         of NT_PRFPREG.
1739         (riscv_linux_nat_target::store_registers): Likewise.
1740
1741 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1742
1743         PR gdb/23555
1744         PR gdb/23558
1745         * gnulib/aclocal.m4: Regenerate.
1746         * gnulib/config.in: Regenerate.
1747         * gnulib/configure: Regenerate.
1748         * gnulib/import/Makefile.am: Update.
1749         * gnulib/import/Makefile.in: Update.
1750         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
1751         * gnulib/import/_Noreturn.h: ... this.
1752         * gnulib/import/alloca.in.h: Update.
1753         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
1754         * gnulib/import/arg-nonnull.h: ... this.
1755         * gnulib/import/assure.h: Update.
1756         * gnulib/import/at-func.c: Update.
1757         * gnulib/import/basename-lgpl.c: Update.
1758         * gnulib/import/extra/snippet/c++defs.h: Rename to...
1759         * gnulib/import/c++defs.h: ... this.
1760         * gnulib/import/canonicalize-lgpl.c: Update.
1761         * gnulib/import/cdefs.h: Update.
1762         * gnulib/import/chdir-long.c: Update.
1763         * gnulib/import/chdir-long.h: Update.
1764         * gnulib/import/cloexec.c: Update.
1765         * gnulib/import/cloexec.h: Update.
1766         * gnulib/import/close.c: Update.
1767         * gnulib/import/closedir.c: Update.
1768         * gnulib/import/config.charset: Update.
1769         * gnulib/import/dirent-private.h: Update.
1770         * gnulib/import/dirent.in.h: Update.
1771         * gnulib/import/dirfd.c: Update.
1772         * gnulib/import/dirname-lgpl.c: Update.
1773         * gnulib/import/dirname.h: Update.
1774         * gnulib/import/dosname.h: Update.
1775         * gnulib/import/dup-safer-flag.c: Update.
1776         * gnulib/import/dup-safer.c: Update.
1777         * gnulib/import/dup.c: Update.
1778         * gnulib/import/dup2.c: Update.
1779         * gnulib/import/errno.in.h: Update.
1780         * gnulib/import/error.c: Update.
1781         * gnulib/import/error.h: Update.
1782         * gnulib/import/exitfail.c: Update.
1783         * gnulib/import/exitfail.h: Update.
1784         * gnulib/import/extra/update-copyright: Update.
1785         * gnulib/import/fchdir.c: Update.
1786         * gnulib/import/fcntl.c: Update.
1787         * gnulib/import/fcntl.in.h: Update.
1788         * gnulib/import/fd-hook.c: Update.
1789         * gnulib/import/fd-hook.h: Update.
1790         * gnulib/import/fd-safer-flag.c: Update.
1791         * gnulib/import/fd-safer.c: Update.
1792         * gnulib/import/fdopendir.c: Update.
1793         * gnulib/import/filename.h: Update.
1794         * gnulib/import/filenamecat-lgpl.c: Update.
1795         * gnulib/import/filenamecat.h: Update.
1796         * gnulib/import/flexmember.h: Update.
1797         * gnulib/import/float+.h: Update.
1798         * gnulib/import/float.c: Update.
1799         * gnulib/import/float.in.h: Update.
1800         * gnulib/import/fnmatch.c: Update.
1801         * gnulib/import/fnmatch.in.h: Update.
1802         * gnulib/import/fnmatch_loop.c: Update.
1803         * gnulib/import/fpucw.h: Update.
1804         * gnulib/import/frexp.c: Update.
1805         * gnulib/import/frexpl.c: Update.
1806         * gnulib/import/fstat.c: Update.
1807         * gnulib/import/fstatat.c: Update.
1808         * gnulib/import/getcwd-lgpl.c: Update.
1809         * gnulib/import/getcwd.c: Update.
1810         * gnulib/import/getdtablesize.c: Update.
1811         * gnulib/import/getlogin_r.c: Update.
1812         * gnulib/import/getprogname.c: Update.
1813         * gnulib/import/getprogname.h: Update.
1814         * gnulib/import/gettext.h: Update.
1815         * gnulib/import/gettimeofday.c: Update.
1816         * gnulib/import/glob-libc.h: Update.
1817         * gnulib/import/glob.c: Update.
1818         * gnulib/import/glob.in.h: Update.
1819         * gnulib/import/glob_internal.h: Update.
1820         * gnulib/import/glob_pattern_p.c: Update.
1821         * gnulib/import/globfree.c: Update.
1822         * gnulib/import/hard-locale.c: Update.
1823         * gnulib/import/hard-locale.h: Update.
1824         * gnulib/import/intprops.h: Update.
1825         * gnulib/import/inttypes.in.h: Update.
1826         * gnulib/import/isnan.c: Update.
1827         * gnulib/import/isnand-nolibm.h: Update.
1828         * gnulib/import/isnand.c: Update.
1829         * gnulib/import/isnanl-nolibm.h: Update.
1830         * gnulib/import/isnanl.c: Update.
1831         * gnulib/import/itold.c: Update.
1832         * gnulib/import/libc-config.h: Update.
1833         * gnulib/import/limits.in.h: Update.
1834         * gnulib/import/localcharset.c: Update.
1835         * gnulib/import/localcharset.h: Update.
1836         * gnulib/import/localtime-buffer.c: Update.
1837         * gnulib/import/localtime-buffer.h: Update.
1838         * gnulib/import/lstat.c: Update.
1839         * gnulib/import/m4/00gnulib.m4: Update.
1840         * gnulib/import/m4/__inline.m4: Update.
1841         * gnulib/import/m4/absolute-header.m4: Update.
1842         * gnulib/import/m4/alloca.m4: Update.
1843         * gnulib/import/m4/builtin-expect.m4: Update.
1844         * gnulib/import/m4/canonicalize.m4: Update.
1845         * gnulib/import/m4/chdir-long.m4: Update.
1846         * gnulib/import/m4/close.m4: Update.
1847         * gnulib/import/m4/closedir.m4: Update.
1848         * gnulib/import/m4/configmake.m4: Update.
1849         * gnulib/import/m4/d-ino.m4: Update.
1850         * gnulib/import/m4/d-type.m4: Update.
1851         * gnulib/import/m4/dirent_h.m4: Update.
1852         * gnulib/import/m4/dirfd.m4: Update.
1853         * gnulib/import/m4/dirname.m4: Update.
1854         * gnulib/import/m4/double-slash-root.m4: Update.
1855         * gnulib/import/m4/dup.m4: Update.
1856         * gnulib/import/m4/dup2.m4: Update.
1857         * gnulib/import/m4/eealloc.m4: Update.
1858         * gnulib/import/m4/environ.m4: Update.
1859         * gnulib/import/m4/errno_h.m4: Update.
1860         * gnulib/import/m4/error.m4: Update.
1861         * gnulib/import/m4/exponentd.m4: Update.
1862         * gnulib/import/m4/exponentl.m4: Update.
1863         * gnulib/import/m4/extensions.m4: Update.
1864         * gnulib/import/m4/extern-inline.m4: Update.
1865         * gnulib/import/m4/fchdir.m4: Update.
1866         * gnulib/import/m4/fcntl-o.m4: Update.
1867         * gnulib/import/m4/fcntl.m4: Update.
1868         * gnulib/import/m4/fcntl_h.m4: Update.
1869         * gnulib/import/m4/fdopendir.m4: Update.
1870         * gnulib/import/m4/filenamecat.m4: Update.
1871         * gnulib/import/m4/flexmember.m4: Update.
1872         * gnulib/import/m4/float_h.m4: Update.
1873         * gnulib/import/m4/fnmatch.m4: Update.
1874         * gnulib/import/m4/fnmatch_h.m4: Update.
1875         * gnulib/import/m4/fpieee.m4: Update.
1876         * gnulib/import/m4/frexp.m4: Update.
1877         * gnulib/import/m4/frexpl.m4: Update.
1878         * gnulib/import/m4/fstat.m4: Update.
1879         * gnulib/import/m4/fstatat.m4: Update.
1880         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1881         * gnulib/import/m4/getcwd-path-max.m4: Update.
1882         * gnulib/import/m4/getcwd.m4: Update.
1883         * gnulib/import/m4/getdtablesize.m4: Update.
1884         * gnulib/import/m4/getlogin.m4: Update.
1885         * gnulib/import/m4/getlogin_r.m4: Update.
1886         * gnulib/import/m4/getpagesize.m4: Update.
1887         * gnulib/import/m4/getprogname.m4: Update.
1888         * gnulib/import/m4/gettimeofday.m4: Update.
1889         * gnulib/import/m4/glibc21.m4: Update.
1890         * gnulib/import/m4/glob.m4: Update.
1891         * gnulib/import/m4/glob_h.m4: Update.
1892         * gnulib/import/m4/gnulib-cache.m4: Update.
1893         * gnulib/import/m4/gnulib-common.m4: Update.
1894         * gnulib/import/m4/gnulib-comp.m4: Update.
1895         * gnulib/import/m4/gnulib-tool.m4: Update.
1896         * gnulib/import/m4/hard-locale.m4: Update.
1897         * gnulib/import/m4/include_next.m4: Update.
1898         * gnulib/import/m4/inttypes-pri.m4: Update.
1899         * gnulib/import/m4/inttypes.m4: Update.
1900         * gnulib/import/m4/isnand.m4: Update.
1901         * gnulib/import/m4/isnanl.m4: Update.
1902         * gnulib/import/m4/largefile.m4: Update.
1903         * gnulib/import/m4/limits-h.m4: Update.
1904         * gnulib/import/m4/localcharset.m4: Update.
1905         * gnulib/import/m4/locale-fr.m4: Update.
1906         * gnulib/import/m4/locale-ja.m4: Update.
1907         * gnulib/import/m4/locale-zh.m4: Update.
1908         * gnulib/import/m4/localtime-buffer.m4: Update.
1909         * gnulib/import/m4/longlong.m4: Update.
1910         * gnulib/import/m4/lstat.m4: Update.
1911         * gnulib/import/m4/malloc.m4: Update.
1912         * gnulib/import/m4/malloca.m4: Update.
1913         * gnulib/import/m4/math_h.m4: Update.
1914         * gnulib/import/m4/mbrtowc.m4: Update.
1915         * gnulib/import/m4/mbsinit.m4: Update.
1916         * gnulib/import/m4/mbsrtowcs.m4: Update.
1917         * gnulib/import/m4/mbstate_t.m4: Update.
1918         * gnulib/import/m4/memchr.m4: Update.
1919         * gnulib/import/m4/memmem.m4: Update.
1920         * gnulib/import/m4/mempcpy.m4: Update.
1921         * gnulib/import/m4/memrchr.m4: Update.
1922         * gnulib/import/m4/mkdir.m4: Update.
1923         * gnulib/import/m4/mkstemp.m4: Update.
1924         * gnulib/import/m4/mmap-anon.m4: Update.
1925         * gnulib/import/m4/mode_t.m4: Update.
1926         * gnulib/import/m4/msvc-inval.m4: Update.
1927         * gnulib/import/m4/msvc-nothrow.m4: Update.
1928         * gnulib/import/m4/multiarch.m4: Update.
1929         * gnulib/import/m4/nocrash.m4: Update.
1930         * gnulib/import/m4/off_t.m4: Update.
1931         * gnulib/import/m4/onceonly.m4: Update.
1932         * gnulib/import/m4/open-cloexec.m4: Update.
1933         * gnulib/import/m4/open.m4: Update.
1934         * gnulib/import/m4/openat.m4: Update.
1935         * gnulib/import/m4/opendir.m4: Update.
1936         * gnulib/import/m4/pathmax.m4: Update.
1937         * gnulib/import/m4/rawmemchr.m4: Update.
1938         * gnulib/import/m4/readdir.m4: Update.
1939         * gnulib/import/m4/readlink.m4: Update.
1940         * gnulib/import/m4/realloc.m4: Update.
1941         * gnulib/import/m4/rename.m4: Update.
1942         * gnulib/import/m4/rewinddir.m4: Update.
1943         * gnulib/import/m4/rmdir.m4: Update.
1944         * gnulib/import/m4/save-cwd.m4: Update.
1945         * gnulib/import/m4/secure_getenv.m4: Update.
1946         * gnulib/import/m4/setenv.m4: Update.
1947         * gnulib/import/m4/signal_h.m4: Update.
1948         * gnulib/import/m4/ssize_t.m4: Update.
1949         * gnulib/import/m4/stat-time.m4: Update.
1950         * gnulib/import/m4/stat.m4: Update.
1951         * gnulib/import/m4/std-gnu11.m4: Update.
1952         * gnulib/import/m4/stdbool.m4: Update.
1953         * gnulib/import/m4/stddef_h.m4: Update.
1954         * gnulib/import/m4/stdint.m4: Update.
1955         * gnulib/import/m4/stdio_h.m4: Update.
1956         * gnulib/import/m4/stdlib_h.m4: Update.
1957         * gnulib/import/m4/strchrnul.m4: Update.
1958         * gnulib/import/m4/strdup.m4: Update.
1959         * gnulib/import/m4/strerror.m4: Update.
1960         * gnulib/import/m4/string_h.m4: Update.
1961         * gnulib/import/m4/strstr.m4: Update.
1962         * gnulib/import/m4/strtok_r.m4: Update.
1963         * gnulib/import/m4/sys_socket_h.m4: Update.
1964         * gnulib/import/m4/sys_stat_h.m4: Update.
1965         * gnulib/import/m4/sys_time_h.m4: Update.
1966         * gnulib/import/m4/sys_types_h.m4: Update.
1967         * gnulib/import/m4/tempname.m4: Update.
1968         * gnulib/import/m4/time_h.m4: Update.
1969         * gnulib/import/m4/unistd-safer.m4: Update.
1970         * gnulib/import/m4/unistd_h.m4: Update.
1971         * gnulib/import/m4/warn-on-use.m4: Update.
1972         * gnulib/import/m4/wchar_h.m4: Update.
1973         * gnulib/import/m4/wchar_t.m4: Update.
1974         * gnulib/import/m4/wctype_h.m4: Update.
1975         * gnulib/import/m4/wint_t.m4: Update.
1976         * gnulib/import/malloc.c: Update.
1977         * gnulib/import/malloc/scratch_buffer.h: Update.
1978         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1979         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1980         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1981         * gnulib/import/malloca.c: Update.
1982         * gnulib/import/malloca.h: Update.
1983         * gnulib/import/malloca.valgrind: Update.
1984         * gnulib/import/math.in.h: Update.
1985         * gnulib/import/mbrtowc.c: Update.
1986         * gnulib/import/mbsinit.c: Update.
1987         * gnulib/import/mbsrtowcs-impl.h: Update.
1988         * gnulib/import/mbsrtowcs-state.c: Update.
1989         * gnulib/import/mbsrtowcs.c: Update.
1990         * gnulib/import/memchr.c: Update.
1991         * gnulib/import/memmem.c: Update.
1992         * gnulib/import/mempcpy.c: Update.
1993         * gnulib/import/memrchr.c: Update.
1994         * gnulib/import/mkdir.c: Update.
1995         * gnulib/import/mkstemp.c: Update.
1996         * gnulib/import/msvc-inval.c: Update.
1997         * gnulib/import/msvc-inval.h: Update.
1998         * gnulib/import/msvc-nothrow.c: Update.
1999         * gnulib/import/msvc-nothrow.h: Update.
2000         * gnulib/import/open.c: Update.
2001         * gnulib/import/openat-die.c: Update.
2002         * gnulib/import/openat-priv.h: Update.
2003         * gnulib/import/openat-proc.c: Update.
2004         * gnulib/import/openat.c: Update.
2005         * gnulib/import/openat.h: Update.
2006         * gnulib/import/opendir.c: Update.
2007         * gnulib/import/pathmax.h: Update.
2008         * gnulib/import/pipe-safer.c: Update.
2009         * gnulib/import/rawmemchr.c: Update.
2010         * gnulib/import/readdir.c: Update.
2011         * gnulib/import/readlink.c: Update.
2012         * gnulib/import/realloc.c: Update.
2013         * gnulib/import/ref-add.sin: Update.
2014         * gnulib/import/ref-del.sin: Update.
2015         * gnulib/import/rename.c: Update.
2016         * gnulib/import/rewinddir.c: Update.
2017         * gnulib/import/rmdir.c: Update.
2018         * gnulib/import/same-inode.h: Update.
2019         * gnulib/import/save-cwd.c: Update.
2020         * gnulib/import/save-cwd.h: Update.
2021         * gnulib/import/scratch_buffer.h: Update.
2022         * gnulib/import/secure_getenv.c: Update.
2023         * gnulib/import/setenv.c: Update.
2024         * gnulib/import/signal.in.h: Update.
2025         * gnulib/import/stat-time.c: Update.
2026         * gnulib/import/stat-time.h: Update.
2027         * gnulib/import/stat-w32.c: Update.
2028         * gnulib/import/stat-w32.h: Update.
2029         * gnulib/import/stat.c: Update.
2030         * gnulib/import/stdbool.in.h: Update.
2031         * gnulib/import/stddef.in.h: Update.
2032         * gnulib/import/stdint.in.h: Update.
2033         * gnulib/import/stdio.in.h: Update.
2034         * gnulib/import/stdlib.in.h: Update.
2035         * gnulib/import/str-two-way.h: Update.
2036         * gnulib/import/strchrnul.c: Update.
2037         * gnulib/import/strdup.c: Update.
2038         * gnulib/import/streq.h: Update.
2039         * gnulib/import/strerror-override.c: Update.
2040         * gnulib/import/strerror-override.h: Update.
2041         * gnulib/import/strerror.c: Update.
2042         * gnulib/import/string.in.h: Update.
2043         * gnulib/import/stripslash.c: Update.
2044         * gnulib/import/strnlen1.c: Update.
2045         * gnulib/import/strnlen1.h: Update.
2046         * gnulib/import/strstr.c: Update.
2047         * gnulib/import/strtok_r.c: Update.
2048         * gnulib/import/sys_stat.in.h: Update.
2049         * gnulib/import/sys_time.in.h: Update.
2050         * gnulib/import/sys_types.in.h: Update.
2051         * gnulib/import/tempname.c: Update.
2052         * gnulib/import/tempname.h: Update.
2053         * gnulib/import/time.in.h: Update.
2054         * gnulib/import/unistd--.h: Update.
2055         * gnulib/import/unistd-safer.h: Update.
2056         * gnulib/import/unistd.in.h: Update.
2057         * gnulib/import/unsetenv.c: Update.
2058         * gnulib/import/verify.h: Update.
2059         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2060         * gnulib/import/wchar.in.h: Update.
2061         * gnulib/import/wctype.in.h: Update.
2062         * gnulib/import/xalloc-oversized.h: Update.
2063         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2064         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2065
2066 2018-08-16  Gary Benson <gbenson@redhat.com>
2067
2068         PR gdb/13000:
2069         * gdb/main.c (captured_main_1): Exit with nonzero status
2070         in batch mode if the last command to be executed failed.
2071         * NEWS: Mention the above.
2072
2073 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
2074
2075         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
2076         end of warning message.
2077
2078 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2079
2080         PR gdb/22943:
2081         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
2082         (aarch64_extract_return_value): Use
2083         aapcs_is_vfp_call_or_return_candidate.
2084         (aarch64_return_in_memory): Likewise.
2085         (aarch64_store_return_value): Likewise.
2086
2087 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2088
2089         * aarch64-tdep.c
2090         (aapcs_is_vfp_call_or_return_candidate): Make static
2091         (pass_in_v_or_stack): Remove function.
2092         (pass_in_v_vfp_candidate): New function.
2093         (aarch64_push_dummy_call): Check for float register candidates.
2094
2095 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
2096
2097         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
2098         (aapcs_is_vfp_call_or_return_candidate_1): New function.
2099         (aapcs_is_vfp_call_or_return_candidate): Likewise.
2100
2101 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
2102
2103         PR build/23399
2104         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
2105         (struct ipa_sym_addresses): Rename to...
2106         (struct ipa_sym_addresses_common): ... this.
2107         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
2108
2109 2018-08-28  Tom Tromey  <tom@tromey.com>
2110
2111         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2112         (token_fifo): Now a std::vector.
2113         (yylex, c_parse): Update.
2114         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2115         (token_fifo): Now a std::vector.
2116         (yylex, d_parse): Update.
2117         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
2118         (token_fifo): Now a std::vector.
2119         (yylex, go_parse): Update.
2120
2121 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
2122
2123         * parser-defs.h (struct type_stack) <elements>: Change type to
2124         std::vector<union type_stack_elt>.
2125         <depth, size>: Remove.
2126         * parse.c (parse_exp_in_context_1): Adjust.
2127         (type_stack_reserve): Remove.
2128         (check_type_stack_depth): Remove.
2129         (insert_into_type_stack): Adjust to std::vector.
2130         (insert_type): Likewise.
2131         (push_type): Likewise.
2132         (push_type_int): Likewise.
2133         (insert_type_address_space): Likewise.
2134         (pop_type): Likewise.
2135         (pop_type_int): Likewise.
2136         (pop_typelist): Likewise.
2137         (pop_type_stack): Likewise.
2138         (append_type_stack): Likewise.
2139         (push_type_stack): Likewise.
2140         (get_type_stack): Likewise.
2141         (type_stack_cleanup): Likewise.
2142         (push_typelist): Likewise.
2143         (follow_types): Likewise.
2144         (_initialize_parse): Likewise.
2145
2146 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2147
2148         * NEWS: Mention csky target.
2149
2150 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
2151             Hafiz Abid Qadeer  <abidh@codesourcery.com>
2152             Don Breazeal  <donb@codesourcery.com>
2153
2154         * csky-linux-tdep.c: New file.
2155         * csky-tdep.c: Likewise.
2156         * csky-tdep.h: Likewise.
2157         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
2158         csky-tdep.o.
2159         (HFILES_NO_SRCDIR): Add csky-tdep.h.
2160         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
2161         * configure.tgt: Add csky support.
2162
2163 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
2164
2165         * python/py-framefilter.c (py_print_frame): Print frame architecture
2166         when printing on an MI output.
2167
2168 2018-08-27  Tom Tromey  <tom@tromey.com>
2169
2170         PR build/23087:
2171         * configure: Rebuild.
2172         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
2173
2174 2018-08-27  Tom Tromey  <tom@tromey.com>
2175
2176         * aarch64-linux-tdep.c
2177         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
2178         casts to int.
2179
2180 2018-08-27  Tom Tromey  <tom@tromey.com>
2181
2182         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
2183         unsigned.
2184         (ppc64_standard_linkage1, ppc64_standard_linkage2)
2185         (ppc64_standard_linkage3, ppc64_standard_linkage4)
2186         (ppc64_standard_linkage5, ppc64_standard_linkage6)
2187         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
2188         unsigned.
2189
2190 2018-08-27  Tom Tromey  <tom@tromey.com>
2191
2192         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
2193         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
2194
2195 2018-08-27  Tom Tromey  <tom@tromey.com>
2196
2197         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
2198         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
2199         ULONGEST_MAX.
2200         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
2201         ULONGEST_MAX.
2202         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
2203         ULONGEST_MAX.
2204         * sparc-linux-tdep.c (sparc32_linux_sigframe)
2205         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
2206         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
2207         ULONGEST_MAX.
2208         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
2209         (ppc64_linux_sigaction_tramp_frame)
2210         (ppc32_linux_sighandler_tramp_frame)
2211         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2212         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
2213         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
2214         * mn10300-linux-tdep.c (am33_linux_sigframe)
2215         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
2216         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
2217         * mips-linux-tdep.c (mips_linux_o32_sigframe)
2218         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
2219         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
2220         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
2221         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
2222         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
2223         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
2224         * microblaze-linux-tdep.c
2225         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
2226         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
2227         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
2228         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
2229         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
2230         * common/common-types.h (ULONGEST_MAX): New define.
2231         (CORE_ADDR_MAX): Fix formatting.
2232         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
2233         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
2234         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
2235         (arm_linux_rt_sigreturn_tramp_frame)
2236         (arm_eabi_linux_sigreturn_tramp_frame)
2237         (arm_eabi_linux_rt_sigreturn_tramp_frame)
2238         (thumb2_eabi_linux_sigreturn_tramp_frame)
2239         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
2240         (arm_linux_restart_syscall_tramp_frame)
2241         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
2242         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
2243         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
2244         ULONGEST_MAX.
2245         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
2246
2247 2018-08-27  Tom Tromey  <tom@tromey.com>
2248
2249         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
2250         CORE_ADDR_MAX.
2251         * mips-tdep.c (mips_deal_with_atomic_sequence)
2252         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
2253         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
2254         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
2255         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
2256         CORE_ADDR_MAX.
2257         * aarch64-tdep.c (aarch64_software_single_step): Use
2258         CORE_ADDR_MAX.
2259
2260 2018-08-27  Tom Tromey  <tom@tromey.com>
2261
2262         * linespec.c (complete_linespec_component): Add cast to "char".
2263         * completer.c (completion_tracker::build_completion_result): Add
2264         cast to "char".
2265
2266 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2267
2268         * solist.h (struct solist, struct target_so_ops): Fix
2269         indentation.
2270
2271 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2272
2273         * ada-tasks.c (ada_task_info_s): Remove typedef.
2274         (DEF_VEC_O(ada_task_info_s)): Remove.
2275         (struct ada_tasks_inferior_data): Initialize fields.
2276         <task_list>: Make an std::vector.
2277         (get_ada_tasks_inferior_data): Allocate with new.
2278         (ada_get_task_number): Adjust.
2279         (get_task_number_from_id): Likewise.
2280         (valid_task_id): Likewise.
2281         (ada_get_task_info_from_ptid): Likewise.
2282         (iterate_over_live_ada_tasks): Likewise.
2283         (add_ada_task): Likewise.
2284         (read_known_tasks): Likewise.
2285         (ada_build_task_list): Likewise.
2286         (print_ada_task_info): Likewise.
2287         (info_task): Likewise.
2288         (task_command_1): Likewise.
2289
2290 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
2291
2292         * ada-lang.c (add_angle_brackets): Return std::string.
2293
2294 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
2295
2296         * python/py-threadevent.c (py_get_event_thread): Initialize
2297         pythread.
2298
2299 2018-08-24  Pedro Alves  <palves@redhat.com>
2300
2301         * python/py-bpevent.c (create_breakpoint_event_object): Use
2302         copy-initialization.
2303         * python/py-continueevent.c (emit_continue_event): Use
2304         copy-initialization.
2305         * python/py-exitedevent.c (create_exited_event_object): Return a
2306         gdbpy_ref<>.
2307         (emit_exited_event): Use copy-initialization.
2308         * python/py-inferior.c (python_new_inferior)
2309         (python_inferior_deleted, add_thread_object): Use
2310         copy-initialization.
2311         * python/py-infevents.c (create_inferior_call_event_object)
2312         (create_register_changed_event_object)
2313         (create_memory_changed_event_object): Return a gdbpy_ref<>.
2314         (emit_inferior_call_event, emit_memory_changed_event)
2315         (emit_register_changed_event): Use copy-initialization.
2316         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2317         Return a gdbpy_ref<>.
2318         (emit_new_objfile_event): Use copy-initialization.
2319         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
2320         (emit_clear_objfiles_event): Use copy-initialization.
2321         * python/py-signalevent.c (create_signal_event_object): Use
2322         copy-initialization.
2323         * python/py-threadevent.c (create_thread_event_object): Use
2324         copy-initialization.
2325
2326 2018-08-24  Pedro Alves  <palves@redhat.com>
2327             Simon Marchi  <simon.marchi@ericsson.com>
2328
2329         PR gdb/23379
2330         * python/py-continueevent.c: Include "gdbthread.h".
2331         (create_continue_event_object): Add intro comment.  Add 'ptid'
2332         parameter.  Use it to find thread to pass to
2333         create_thread_event_object.
2334         (emit_continue_event): Pass PTID down to
2335         create_continue_event_object.
2336         * python/py-event.h (py_get_event_thread): Declare.
2337         (create_thread_event_object): Remove default from 'thread'
2338         parameter.
2339         * python/py-stopevent.c (create_stop_event_object): Use
2340         py_get_event_thread.
2341         * python/py-threadevent.c (get_event_thread): Rename to ...
2342         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
2343         and use it to find the thread.
2344         (create_thread_event_object): Assert that THREAD isn't null.
2345         Don't find the event thread here.
2346
2347 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
2348
2349         * block.h (blockrange, blockranges): New struct declarations.
2350         (struct block): Add new field named `ranges'.
2351         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
2352         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
2353         macros for accessing ranges in struct block.
2354         (make_blockranges): New declaration.
2355         block.c (make_blockranges): New function.
2356         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
2357         for block.
2358         * symtab.h (find_pc_partial_function): Add new parameter `block'.
2359         * blockframe.c (cache_pc_function_block): New static global.
2360         (clear_pc_function_cache): Clear cache_pc_function_block.
2361         (find_pc_partial_function): Move comment to symtab.h.  Add
2362         support for non-contiguous blocks.
2363         * cli/cli-cmds.c (block.h): Include.
2364         (print_disassembly): Handle printing of non-contiguous blocks.
2365         (disassemble_current_function): Likewise.
2366         (disassemble_command): Likewise.
2367
2368         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
2369         BLOCK_START.
2370         * blockframe.c (get_pc_function_start): Likewise.
2371         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
2372         (gcc_symbol_address): Likewise.
2373         * compile/compile-object-run.c (compile_object_run): Likewise.
2374         * compile/compile.c (get_expr_block_and_pc): Likewise.
2375         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
2376         (func_addr_to_tail_call_list): Likewise.
2377         * findvar.c (default_read_var_value): Likewise.
2378         * inline-frame.c (inline_frame_this_id): Likewise.
2379         (skip-inline_frames): Likewise.
2380         * infcmd.c (until_next_command): Likewise.
2381         * linespec.c (convert_linespec_to_sals): Likewise.
2382         * parse.c (parse_exp_in_context_1): Likewise.
2383         * printcmd.c (build_address_symbolic): likewise.
2384         (info_address_command): Likewise.
2385         symtab.c (find_function_start_sal): Likewise.
2386         (skip_prologue_sal): Likewise.
2387         (find_function_alias_target): Likewise.
2388         (find_gnu_ifunc): Likewise.
2389         * stack.c (find_frame_funname): Likewise.
2390         * symtab.c (fixup_symbol_section): Likewise.
2391         (find_function_start_sal): Likewise.
2392         (skip_prologue_sal): Likewsie.
2393         (find_function_alias_target): Likewise.
2394         (find_gnu_ifunc): Likewise.
2395         * tracepoint.c (info_scope_command): Likewise.
2396         * value.c (value_fn_field): Likewise.
2397
2398         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
2399         in place of find_pc_partial_function.
2400         * blockframe.c (find_function_entry_range_from_pc): New function.
2401         * symtab.h (find_function_entry_range_from_pc): Declare and document.
2402         * objfiles.c (objfile_relocate1): Relocate start and end addresses
2403         for each range in a block.
2404
2405
2406 2018-08-23  Xavier Roirand  <roirand@adacore.com>
2407
2408         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
2409         incrementation.
2410
2411 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2412
2413         * solib-svr4.c (read_program_headers_from_bfd): Return
2414         gdb::optional<gdb::byte_vector>.
2415         (svr4_exec_displacement): Adjust.
2416
2417 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2418
2419         * solib-svr4.c (read_program_header): Return
2420         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
2421         (find_program_interpreter): Return
2422         gdb::optional<gdb::byte_vector>.
2423         (scan_dyntag_auxv): Adjust.
2424         (enable_break): Adjust.
2425         (svr4_exec_displacement): Adjust.
2426
2427 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2428
2429         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
2430         * inf-child.c (inf_child_target::terminal_save_inferior): New.
2431
2432 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
2433
2434         * guile/scm-string.c (gdbscm_scm_from_printf): Use
2435         string_vprintf.
2436         * guile/scm-utils.c (gdbscm_printf): Likewise.
2437         * serial.c (serial_printf): Likewise.
2438         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
2439
2440 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
2441
2442         * stack.c (print_frame): Print frame architecture when printing on
2443         an MI output.
2444         * NEWS: Mention new "arch" attribute in frame output.
2445
2446 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2447
2448         * arch/aarch64.h (aarch64_regnum): Update comment.
2449
2450 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
2451
2452         * NEWS: Add SVE to 8.2 section.
2453
2454 2018-08-21  Pedro Alves  <palves@redhat.com>
2455
2456         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
2457         out from gdbscm_parse_function_args.
2458         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
2459         gdbscm_parse_function_args_1.
2460
2461 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
2462
2463         PR gdb/17816
2464         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
2465         operator.
2466
2467 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
2468
2469         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
2470
2471 2018-08-19  Michael Spang  <spang@google.com>
2472
2473         PR gdb/11786
2474         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
2475         for PT_TLS segments.
2476
2477 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
2478
2479         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
2480         dwarf_variable_value.
2481         * dwarf2-frame.c (class dwarf_expr_executor):
2482         Add override for dwarf_variable_value.
2483         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
2484         (class symbol_needs_eval_context): Likewise.
2485         (indirect_synthetic_pointer): Add forward declaration.
2486         (sect_variable_value): New function.
2487         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
2488         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
2489         for DW_OP_GNU_variable_value.
2490
2491 2018-08-16  Tom Tromey  <tom@tromey.com>
2492
2493         * top.c (read_command_file): Update.
2494         (command_line_input): Remove "repeat" argument.
2495         * ada-lang.c (get_selections): Update.
2496         * linespec.c (decode_line_2): Update.
2497         * defs.h (command_line_input): Remove argument.
2498         * cli/cli-script.c (read_next_line): Update.
2499         * python/py-gdb-readline.c: Update.
2500
2501 2018-08-17  Tom Tromey  <tom@tromey.com>
2502
2503         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
2504         command_line_input.
2505
2506 2018-08-15  Tom Tromey  <tom@tromey.com>
2507
2508         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
2509
2510 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
2511
2512         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
2513         If used, use find_pc_partial_function to find address range
2514         to disassemble.
2515         * mi/mi-main.c (mi_cmd_list_features): Report
2516         "data-disassemble-a-option" feature.
2517         * NEWS: Mention new -data-disassemble option -a.
2518
2519 2018-08-13  Tom Tromey  <tom@tromey.com>
2520
2521         * common/common-defs.h (_FORTIFY_SOURCE): Define.
2522
2523 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2524
2525         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
2526         (aarch64_linux_collect_sve_regset): Likewise.
2527         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
2528         * regcache.h (regcache_map_entry_size): New function.
2529
2530 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2531
2532         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
2533         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
2534         (SVE_HEADER_VL_LENGTH): Likewise.
2535         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
2536         (SVE_HEADER_FLAGS_LENGTH): Likewise.
2537         (SVE_HEADER_RESERVED_LENGTH): Likewise.
2538         (SVE_HEADER_SIZE_OFFSET): Likewise.
2539         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
2540         (SVE_HEADER_VL_OFFSET): Likewise.
2541         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
2542         (SVE_HEADER_FLAGS_OFFSET): Likewise.
2543         (SVE_HEADER_RESERVED_OFFSET): Likewise.
2544         (SVE_HEADER_SIZE): Likewise.
2545         (aarch64_linux_core_read_vq): Add function.
2546         (aarch64_linux_core_read_description): Check for SVE section.
2547
2548 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
2549
2550         * aarch64-fbsd-tdep.c
2551         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
2552         collect_size.
2553         * aarch64-linux-tdep.c
2554         (aarch64_linux_iterate_over_regset_sections): Likewise.
2555         * alpha-linux-tdep.c
2556         (alpha_linux_iterate_over_regset_sections):
2557         * alpha-nbsd-tdep.c
2558         (alphanbsd_iterate_over_regset_sections): Likewise.
2559         * amd64-fbsd-tdep.c
2560         (amd64fbsd_iterate_over_regset_sections): Likewise.
2561         * amd64-linux-tdep.c
2562         (amd64_linux_iterate_over_regset_sections): Likewise.
2563         * arm-bsd-tdep.c
2564         (armbsd_iterate_over_regset_sections): Likewise.
2565         * arm-fbsd-tdep.c
2566         (arm_fbsd_iterate_over_regset_sections): Likewise.
2567         * arm-linux-tdep.c
2568         (arm_linux_iterate_over_regset_sections): Likewise.
2569         * corelow.c (get_core_registers_cb): Likewise.
2570         (core_target::fetch_registers): Likewise.
2571         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
2572         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
2573         * gdbarch.h (void): Regenerate.
2574         * gdbarch.sh: Add supply_size and collect_size.
2575         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
2576         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
2577         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
2578         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
2579         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
2580         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
2581         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
2582         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
2583         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
2584         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
2585         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
2586         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
2587         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
2588         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
2589         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
2590         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
2591         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
2592         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
2593         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
2594         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
2595         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
2596         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
2597         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
2598         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
2599         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
2600         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
2601         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
2602         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
2603         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
2604         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
2605
2606 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
2607
2608         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
2609         with string_printf.
2610
2611 2018-08-10  Keith Seitz  <keiths@redhat.com>
2612
2613         * compile/compile-c-support.c (add_code_header, add_code_footer):
2614         Move into policy class.
2615         (c_push_user_expression, pop_user_expression_nop)
2616         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
2617         (compile_program): New host class.
2618         (c_compile_program): New typedef.
2619         (c_compute_porgram): Use c_compile_program.
2620
2621 2018-08-10  Keith Seitz  <keiths@redhat.com>
2622
2623         * compile/compile-internal.h (compile_instance::~compile_instance):
2624         Remove calls to htab_delete.
2625         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
2626         * compile.c (compile_instance::compile_instance): Initialize
2627         htab unique pointers.
2628         (compile_instance::get_cached_type, compile_instance::insert_type)
2629         (compile_instance::error_symbol_once): Update for unique_ptr.
2630
2631 2018-08-10  Keith Seitz  <keiths@redhat.com>
2632
2633         * compile/compile-c-symbols.c (struct symbol_error)
2634         (hash_symbol_error, eq_symbol_error, del_symbol_error)
2635         (compile_instance::insert_symbol_error)
2636         (compile_instance::error_symbol_once): Move to ...
2637         * compile/compile.c: ... here.
2638
2639 2018-08-10  Keith Seitz  <keiths@redhat.com>
2640
2641         * compile/compile-c-support.c (c_get_compile_context): Use `new'
2642         instead of `new_compile_instance'.
2643         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
2644         Update description.
2645         If the symbol error map is not initialized, create it.
2646         (generate_c_for_for_one_symbol): Do not check/initialize
2647         the symbol error map.
2648         * compile/compile-c-types.c (compile_c_instance): Make a class.
2649         Update all callers.
2650         (compile_instance::compile_instance): Initialize the type cache.
2651         (get_cached_type): New function.
2652         (insert_type): Update description.
2653         (compile_c_instance::m_default_cflags): Define.
2654         (convert_type): Update description.  Use get_cached_type.
2655         (delete_instance): Moved to destructor.
2656         (new_compile_instance): Moved to constructor.
2657         * compile/compile-c.h (compile_c_instance): Make class inheriting
2658         from compile_instance.
2659         <base>: Remove field.
2660         <type_map, symbol_err_map>: Move to base class.
2661         <c_plugin>: Rename to `m_plugin' and remove pointer type.
2662         * compile/compile-internal.h (compile_instance): Make class.
2663         <type_map_t, symbol_err_map_t>: Define.
2664         <fe>: Rename to `m_gcc_fe'.
2665         <scope, block, gcc_target_options>: Add `m_' prefix.
2666         <m_type_map, m_symbol_err_map>: New fields, moved from
2667         compile_c_instance.
2668         <destroy>: Remove.
2669         (convert_type, new_compile_instance): Remove.
2670         * compile/compile.c (cleanup_compile_instance): Remove.
2671         (compile_to_object): Use unique_ptr to eliminate cleanups.
2672         (compile_instance::set_print_callback, compile_instance::version)
2673         (compile_instance::set_verbose)
2674         (compile_instance::set_driver_filename)
2675         (compile_instance::set_triplet_regexp)
2676         (compile_instance::set_arguments)
2677         (compile_instance::set_source_file)
2678         (compile_instance::compile): Define.
2679
2680 2018-08-10  Keith Seitz  <keiths@redhat.com>
2681
2682         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
2683         * compile/compile-c-types.c: Define GCC_METHODN macros and include
2684         gcc-c-fe.def to define C plugin.
2685         (delete_instance): Delete `c_plugin'.
2686         (new_compile_instance): Initialize `c_plugin'.
2687         * compile/compile-c.h: Include gcc_c_plugin.h.
2688         (struct compile_c_instance) <c_plugin>: New member.
2689         * gcc-c-plugin.h: New file.
2690         Update all callers with API change.
2691
2692 2018-08-10  Keith Seitz  <keiths@redhat.com>
2693
2694         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
2695         (HFILES_NO_SRCDIR): ... to here.
2696         Add compile-internal.h and compile-c.h.
2697         * compile/compile-c-support.c: Include compile-c.h.
2698         * compile/compile-c-symbols.c: Include compile-c.h.
2699         (generate_c_for_variable_locations): Update comment.
2700         * compile/compile-c-types.c: Include compile-c.h.
2701         * compile/compile-c.h: New file -- moved C language declarations
2702         from other files here.
2703         * compile/compile-internal.h: Do not include hashtab.h or
2704         common/enum-flags.h.
2705         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
2706         (gcc_convert_symbol, gcc_symbol_address)
2707         (generate_c_for_variable_locations, c_get_mode_for_size)
2708         (c_get_range_decl_name): Definitions moved to compile-c.h.
2709         * compile/compile-loc2c.c: Include compile-c.h.
2710
2711 2018-08-10  Keith Seitz  <keiths@redhat.com>
2712
2713         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
2714         (c_symbol_substitution_name): ... this.
2715         Update all callers.
2716
2717 2018-08-10  Keith Seitz  <keiths@redhat.com>
2718
2719         * compile/compile-c-support.c (c_compute_program): Use
2720         unique_xmalloc_ptr to eliminate cleanup.
2721         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
2722         Return a unique_xmalloc_ptr and eliminate cleanup.
2723         * compile/compile-internal.h (generate_c_for_variable_locations):
2724         Return unique_xmalloc_ptr and update description.
2725
2726 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
2727
2728         * corelow.c (core_target::get_core_register_section): Rename
2729         min_size to section_min_size.
2730
2731 2018-08-09  Jim Wilson  <jimw@sifive.com>
2732
2733         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
2734         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
2735         * NEWS: Mention new GNU/Linux RISC-V target.
2736         * configure.host: Add riscv*-*-linux*.
2737         * configure.nat: Add riscv*.
2738         * configure.tgt: Add riscv*-*-linux*.
2739         * riscv-linux-nat.c: New file.
2740         * riscv-linux-tdep.c: New file.
2741
2742 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2743
2744         * infrun.c (resume): Make static, add forward declaration.
2745         (proceed): Update header comment.
2746         * infrun.h (resume): Delete declaration.
2747
2748 2018-08-09  Tom Tromey  <tom@tromey.com>
2749
2750         * riscv-tdep.h: Minor formatting fixes.
2751
2752 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
2753
2754         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
2755         * dwarf-index-cache.c (create_dir_and_check): Likewise.
2756         (test_mkdir_recursive): Likewise.
2757         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
2758
2759 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
2760
2761         * valarith.c (value_subscripted_rvalue): If an array is not in
2762         memory, and we don't know the upper bound, then we can't know that
2763         the requested element exists or not.
2764
2765 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
2766
2767         * target.c (str_comma_list_concat_elem): Fix typo in comment.
2768         (target_options_to_string): Add comment.
2769
2770 2018-08-08  Tom Tromey  <tom@tromey.com>
2771
2772         * unittests/scoped_mmap-selftests.c: Check result of "write".
2773
2774 2018-08-08  Jim Wilson  <jimw@sifive.com>
2775
2776         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
2777         (decode_register_index_short): New.
2778         (decode_j_type_insn, decode_cj_type_insn): New.
2779         (decode_b_type_insn, decode_cb_type_insn): New.
2780         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2781         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2782         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2783         is_c_sw_insn instead of is_sw_insn.
2784         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2785         (riscv_software_single_step): New.
2786         * riscv-tdep.h (riscv_software_single_step): Declare.
2787
2788         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2789         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2790
2791 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2792
2793         PR gdb/18050:
2794         * target.c (dispose_inferior): Don't dispose of inferiors that are
2795         already killed.
2796
2797 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2798
2799         * remote.c (remote_target::download_tracepoint): Change char* to
2800         const char*.
2801
2802 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2803
2804         * target.h (target_options_to_string): Return an std::string.
2805         * target.c (str_comma_list_concat_elem): Return void, use
2806         std::string.
2807         (do_option): Likewise.
2808         (target_options_to_string): Return an std::string.
2809         * linux-nat.c (linux_nat_target::wait): Adjust.
2810         * target-debug.h (target_debug_print_options): Adjust.
2811
2812 2018-08-07  Tom Tromey  <tom@tromey.com>
2813
2814         * Makefile.in (CPPFLAGS): New variable.
2815         (INTERNAL_CPPFLAGS): Use it.
2816
2817 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2818
2819         * NEWS: Mention the index cache.
2820
2821 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2822
2823         * common/pathstuff.h (get_standard_cache_dir): New.
2824         * common/pathstuff.c (get_standard_cache_dir): New.
2825         * build-id.h (build_id_to_string): New.
2826         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2827         DEBUG_STR_SUFFIX): Move to here.
2828         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2829         DEBUG_STR_SUFFIX): Move from there.
2830         (write_psymtabs_to_index): Make non-static, add basename
2831         parameter.  Write to temporary files, rename when done.
2832         (save_gdb_index_command): Adjust call to
2833         write_psymtabs_to_index.
2834         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2835         field.
2836         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2837         (get_gdb_index_contents_from_cache): New.
2838         (get_gdb_index_contents_from_cache_dwz): New.
2839         (dwarf2_initialize_objfile): Read index from cache.
2840         (dwarf2_build_psymtabs): Save to index.
2841         * dwarf-index-cache.h: New file.
2842         * dwarf-index-cache.c: New file.
2843         * dwarf-index-write.h: New file.
2844
2845 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2846
2847         * gnulib/aclocal.m4: Re-generate.
2848         * gnulib/config.in: Re-generate.
2849         * gnulib/configure: Re-generate.
2850         * gnulib/import/Makefile.am: Re-generate.
2851         * gnulib/import/Makefile.in: Re-generate.
2852         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2853         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2854         * gnulib/import/m4/mkdir.m4: New file.
2855         * gnulib/import/mkdir.c: New file.
2856         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2857         module.
2858
2859 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2860
2861         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2862         * common/scoped_mmap.c: New file.
2863         * common/scoped_mmap.h (destroy): New method.
2864         (~scoped_mmap, reset): Use destroy.
2865         (scoped_mmap): New move constructor.
2866         (mmap_file): New declaration.
2867         * unittests/scoped_mmap-selftests.c (test_normal,
2868         test_invalid_filename, run_tests): New functions.
2869         (_initialize_scoped_mmap_selftests): Register selftest.
2870
2871 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2872
2873         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2874         (read_gdb_index_from_buffer): ... this.  Remove section
2875         parameter, add buffer parameter.
2876         (get_gdb_index_contents_ftype,
2877         get_gdb_index_contents_dwz_ftype): New typedefs.
2878         (dwarf2_read_gdb_index): Add callback parameters to get the
2879         index contents.
2880         (get_gdb_index_contents_from_section): New.
2881         (dwarf2_initialize_objfile): Update call to
2882         dwarf2_read_gdb_index.
2883
2884 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2885
2886         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2887         (gdb_open_cloexec): Likewise.
2888         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2889         (commandline_from_pid): Likewise.
2890         (linux_xfer_osdata_threads): Likewise.
2891         (linux_xfer_osdata_fds): Likewise.
2892         * ada-lang.c (is_package_name): Likewise.
2893         * auxv.c (procfs_xfer_auxv): Likewise.
2894         * breakpoint.c (print_one_breakpoint_location): Use
2895         uiout::field_fmt.
2896         (print_one_catch_solib): Use string_printf.
2897         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2898         (add_pe_forwarded_sym): Likewise.
2899         * dwarf2read.c (create_type_unit_group): Likewise.
2900         (build_error_marker_type): Likewise.
2901         * infcall.c (get_function_name): Likewise.
2902         * valprint.c (print_converted_chars_to_obstack): Likewise.
2903         * xtensa-tdep.c (xtensa_register_type): Likewise.
2904
2905 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2906
2907         * remote.c (remote_target::download_tracepoint): Fix format
2908         string errors.
2909
2910 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2911
2912         * tracefile.c: Include common/byte-vector.h.
2913         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2914         with trace_regblock_size if needed.  Update uses of buf.
2915
2916 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2917
2918         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2919         std::vector<unsigned char>.
2920         * tracepoint.c (collection_list::collection_list): Remove
2921         m_regs_mask initializer from initializer list.  Resize
2922         m_regs_mask using the largest remote register number.
2923         (collection_list::add_remote_register): Remove size check on
2924         m_regs_mask.  Use at to access element.
2925         (collection_list::stringify): Change type of temp_buf to
2926         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2927         stringify the register mask.  Use pack_hex_byte for the register
2928         mask.
2929
2930 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2931
2932         * tracepoint.h (class collection_list) <add_register>: Remove.
2933         <add_remote_register, add_ax_registers, add_local_register>:
2934         Declare.
2935         <add_memrange>: Add scope parameter.
2936         * tracepoint.c (encode_actions_1): Likewise.
2937         (collection_list::add_register): Rename to ...
2938         (collection_list::add_remote_register): ... this.  Update
2939         comment.
2940         (collection_list::add_ax_registers, add_local_register): New
2941         methods.
2942         (collection_list::add_memrange): Add scope parameter.  Call
2943         add_local_register instead of add_register.
2944         (finalize_tracepoint_aexpr): New function.
2945         (collection_list::collect_symbol): Update calls to add_memrange.
2946         Call add_local_register instead of add_register.  Call
2947         add_ax_registers.  Call finalize_tracepoint_aexpr.
2948         (encode_actions_1): Get remote regnos for $reg action.  Call
2949         add_remote_register, add_ax_registers, and add_local_register.
2950         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2951         (validate_actionline): Call finalize_tracepoint_aexpr.
2952
2953 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2954
2955         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2956         Replace array buf with gdb::char_vector buf, of size
2957         get_remote_packet_size ().  Replace references to buf and
2958         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2959         and xsnprintf with snprintf.  Raise errors if the buffer is too
2960         small.
2961
2962 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2963
2964         * remote.c (remote_target::download_tracepoint): Fix the has_more
2965         predicate in the QTDP action list iteration.
2966
2967 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2968
2969         * remote.c (remote_target::download_tracepoint): Fix indentation
2970         in for block.
2971
2972 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2973
2974         * proc-api.c (_initialize_proc_api): Remove c, unused.
2975         * procfs.c (procfs_init_inferior): Remove signals, unused.
2976         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2977         unused.
2978
2979 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2980             Andrew Burgess  <andrew.burgess@embecosm.com>
2981
2982         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2983         'W_STOPCODE (0)' as this could be ambiguous.
2984
2985 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2986
2987         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2988         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2989         "ai_socktype").
2990
2991 2018-08-02  Tom Tromey  <tom@tromey.com>
2992
2993         PR symtab/16842.
2994         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2995         symbols.
2996         (process_structure_scope): Likewise.
2997
2998 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2999
3000         PR gdb/22629:
3001         * darwin-nat.c (darwin_kill_inferior): Fix handling of
3002         kill inferior.
3003
3004 2018-08-02  Tom Tromey  <tom@tromey.com>
3005
3006         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
3007         (darwin_suspend_inferior, darwin_resume_inferior)
3008         (darwin_decode_notify_message, darwin_resume_inferior_threads)
3009         (darwin_check_new_threads): Check result of get_darwin_inferior.
3010
3011 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
3012
3013         GDB 8.1.1 released.
3014
3015 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
3016
3017         * varobj.c (varobj_get_path_expr_parent): Report an error if
3018         parent is a dynamic varobj.
3019
3020 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3021
3022         * gnulib/aclocal.m4: Re-generate.
3023         * gnulib/config.in: Re-generate.
3024         * gnulib/configure: Re-generate.
3025         * gnulib/import/Makefile.in: Re-generate.
3026         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3027         * gnulib/import/m4/onceonly.m4: Re-generate.
3028
3029 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
3030
3031         * target-descriptions.c (struct xml_test_tdesc): New.
3032         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
3033         (record_xml_tdesc): Update.
3034         (maintenance_check_xml_descriptions): Update.
3035         * target-descriptions.h (record_xml_tdesc): Update comment.
3036
3037 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3038
3039         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
3040         checking array bounds are defined.
3041
3042 2018-07-30  Tom Tromey  <tom@tromey.com>
3043
3044         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
3045         irreflexivity violation.
3046
3047 2018-07-30  Tom Tromey  <tom@tromey.com>
3048
3049         * cli/cli-decode.c (lookup_cmd): Remove lint code.
3050         * value.c (unpack_long): Remove lint code.
3051         * valops.c (value_ind): Remove lint code.
3052         * valarith.c (value_x_binop, value_x_unop, value_equal)
3053         (value_pos): Remove lint code.
3054
3055 2018-07-28  Tom de Vries  <tdevries@suse.de>
3056
3057         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
3058         with undefined upper bound as <optimized out>.
3059
3060 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
3061
3062         * gcore.in: Rename variable "name" to "prefix".  Expand
3063         "usage" text.
3064
3065 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
3066
3067         * windows-nat.c (windows_nat_target::create_inferior): Update to
3068         call close() in global namespace.
3069
3070 2018-07-26  Tom Tromey  <tom@tromey.com>
3071
3072         * dwarf-index-write.c (add_address_entry): Don't add objfile
3073         offsets.
3074         * dbxread.c (find_stab_function): Rename from
3075         find_stab_function_addr.  Return a bound_minimal_symbol.
3076         (read_dbx_symtab): Use raw_text_low, raw_text_high.
3077         Don't add objfile offsets.
3078         (end_psymtab): Use raw_text_low, raw_text_high,
3079         MSYMBOL_VALUE_RAW_ADDRESS.
3080         (read_ofile_symtab): Update.
3081         (process_one_symbol): Update.
3082         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
3083         offsets.
3084         (dw2_relocate): Remove.
3085         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
3086         searching addrmap.
3087         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
3088         Update.
3089         (process_psymtab_comp_unit_reader, add_partial_symbol)
3090         (add_partial_subprogram, dwarf2_ranges_read): Update.
3091         (load_partial_dies): Update.
3092         (add_address_entry): Don't add objfile offsets.
3093         (dwarf2_build_include_psymtabs): Update.
3094         (create_addrmap_from_aranges): Don't add objfile offsets.
3095         (dw2_find_pc_sect_compunit_symtab): Update.
3096         * mdebugread.c (parse_symbol): Don't add objfile offsets.
3097         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
3098         Update.
3099         (parse_partial_symbols): Don't add objfile offsets.  Use
3100         raw_text_low, raw_text_high.  Update.
3101         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
3102         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
3103         or call 'relocate' quick function.  Clear psymbol_map.
3104         * psympriv.h (struct partial_symbol) <address>: Add section
3105         offset.
3106         <set_unrelocated_address>: Rename from set_address.
3107         <raw_text_low, raw_text_high>: New methods.
3108         <text_low, text_high>: Add objfile parameter.
3109         (add_psymbol_to_bcache): Add 'section' parameter.  Call
3110         set_unrelocated_address.
3111         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3112         (find_pc_psymbol): Update.
3113         (fixup_psymbol_section, relocate_psymtabs): Remove.
3114         (dump_psymtab, psym_functions): Update.
3115         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
3116         parameter.
3117         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3118         (start_psymtab_common): Update.
3119         * symfile-debug.c (debug_qf_relocate): Remove.
3120         (debug_sym_quick_functions): Update.
3121         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
3122         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
3123         Update.
3124
3125 2018-07-26  Tom Tromey  <tromey@redhat.com>
3126
3127         * dbxread.c (end_psymtab): Use text_high_valid and
3128         text_low_valid.
3129         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
3130         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
3131         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3132         Update comment.
3133         <text_low_valid, text_high_valid>: New fields.
3134         <set_text_low, set_text_high>: Update.
3135         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
3136
3137 2018-07-26  Tom Tromey  <tom@tromey.com>
3138
3139         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
3140         Update.
3141         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
3142         textlow and texthigh fields.
3143         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
3144         Update.
3145         * mdebugread.c (parse_lines, parse_partial_symbols)
3146         (psymtab_to_symtab_1): Update.
3147         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
3148         Rename fields.  Update comment.  Now private.
3149         <text_low, text_high, set_text_low, set_text_high>: New methods.
3150         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3151         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
3152         (start_psymtab_common, maintenance_info_psymtabs)
3153         (maintenance_check_psymtabs): Update.
3154         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
3155         texthigh fields.
3156         (scan_xcoff_symtab): Update.
3157
3158 2018-07-26  Tom Tromey  <tromey@redhat.com>
3159
3160         * psympriv.h (struct partial_symbol) <unrelocated_address,
3161         address, set_address>: New methods.
3162         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
3163         (fixup_psymbol_section, relocate_psymtabs): Update.
3164         (print_partial_symbols): Add 'objfile' parameter.  Update.
3165         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
3166         Update.
3167
3168 2018-07-26  Tom Tromey  <tom@tromey.com>
3169
3170         * dwarf-index-write.c (write_psymbols, debug_names::insert)
3171         (debug_names::write_psymbols): Update.
3172         * psympriv.h (struct partial_symbol): Derive from
3173         general_symbol_info.
3174         <obj_section>: New method.
3175         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
3176         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
3177         (find_pc_sect_psymbol, fixup_psymbol_section)
3178         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
3179         (print_partial_symbols, recursively_search_psymtabs)
3180         (compare_psymbols, psymbol_hash, psymbol_compare)
3181         (add_psymbol_to_bcache, maintenance_check_psymtabs)
3182         (psymbol_name_matches, psym_fill_psymbol_map): Update.
3183
3184 2018-07-26  Tom Tromey  <tromey@redhat.com>
3185
3186         * dbxread.c (end_psymtab): Remove dead code.
3187
3188 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
3189
3190         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
3191         DWARF unwinders are disabled.
3192         * dwarf2-frame.c: Add dwarf2read.h include.
3193         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
3194         disabled.
3195         (dwarf2_frame_unwinders_enabled_p): Define.
3196         (show_dwarf_unwinders_enabled_p): New function.
3197         (_initialize_dwarf2_frame): Register switch to control DWARF
3198         unwinder use.
3199         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
3200         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
3201         (show_dwarf_cmdlist): Remove static keyword.
3202         * dwarf2read.h (set_dwarf_cmdlist): Declare.
3203         (show_dwarf_cmdlist): Declare.
3204         * NEWS: Document new feature.
3205
3206 2018-07-26  Tom de Vries  <tdevries@suse.de>
3207
3208         PR breakpoints/23366
3209         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
3210
3211 2018-07-26  Tom de Vries  <tdevries@suse.de>
3212
3213         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
3214         DW_AT_count can't be translated to a dynamic prop.
3215
3216 2018-07-25  Tom de Vries  <tdevries@suse.de>
3217
3218         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
3219         try/catch.
3220
3221 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
3222
3223         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
3224
3225 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
3226
3227         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
3228
3229 2018-07-24  Keith Seitz  <keiths@redhat.comt
3230
3231         PR symtab/23010
3232         * dwarf2read.c (dw2_add_symbol_to_list): New function.
3233         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
3234         instead of add_symbol_to_list.
3235         (read_file_scope): Call prepare_one_comp_unit before reading
3236         any other DIEs.
3237
3238 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
3239
3240         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
3241
3242 2018-07-24  Tom Tromey  <tom@tromey.com>
3243
3244         * utils.c (malloc, realloc, free): Don't declare.
3245         * configure, config.in: Rebuild.
3246         * configure.ac: Don't check for declarations of free, malloc, or
3247         realloc.
3248
3249 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3250
3251         * aarch64-linux-nat.c
3252         (aarch64_linux_nat_target::stopped_data_address): Remove unused
3253         variable.
3254         * arm-linux-nat.c (fetch_regs): Likewise.
3255         (store_regs): Likewise.
3256         (fetch_vfp_regs): Likewise.
3257         (store_vfp_regs): Likewise.
3258         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
3259         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
3260         (arm_linux_nat_target::insert_watchpoint): Likewise.
3261         (arm_linux_nat_target::remove_watchpoint): Likewise.
3262         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
3263         Likewise.
3264         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
3265         Likewise.
3266         * ppc-linux-nat.c (fetch_register): Likewise.
3267         (fetch_all_gp_regs): Likewise.
3268         (fetch_ppc_registers): Likewise.
3269         (store_all_gp_regs): Likewise.
3270         (store_ppc_registers): Likewise.
3271         (hwdebug_insert_point): Likewise.
3272         (can_use_watchpoint_cond_accel): Likewise.
3273         * remote-sim.c (gdb_os_write_stdout): Likewise.
3274
3275 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
3276             Tom Tromey  <tom@tromey.com>
3277
3278         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
3279         test for it.
3280         * configure: Rebuild.
3281
3282 2018-07-22  Tom Tromey  <tom@tromey.com>
3283
3284         * regformats/regdat.sh: Define xmltarget_${name} inside
3285         #ifndef IN_PROCESS_AGENT.
3286
3287 2018-07-22  Tom Tromey  <tom@tromey.com>
3288
3289         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
3290
3291 2018-07-22  Tom Tromey  <tom@tromey.com>
3292
3293         * symfile.c (reread_symbols): Notify iter, not objfile.
3294
3295 2018-07-22  Tom Tromey  <tom@tromey.com>
3296
3297         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
3298         Use arch_ops.
3299         (ravenscar_thread_target::prepare_to_store): Likewise.
3300
3301 2018-07-22  Tom Tromey  <tom@tromey.com>
3302
3303         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
3304         unused variable.  Call value_fetch_lazy when needed.
3305         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
3306         Remove unused variable.  Call value_fetch_lazy when needed.
3307
3308 2018-07-22  Tom Tromey  <tom@tromey.com>
3309
3310         * m32c-tdep.c (mark_dma): Return void.
3311         (make_regs): Remove unused declarations.
3312
3313 2018-07-22  Tom Tromey  <tom@tromey.com>
3314
3315         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
3316         cmdscm_get_valid_command_smob_arg_unsafe for effect.
3317         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
3318         bkscm_get_valid_block_smob_arg_unsafe for effect.
3319
3320 2018-07-22  Tom Tromey  <tom@tromey.com>
3321
3322         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
3323         value_type.
3324
3325 2018-07-22  Tom Tromey  <tom@tromey.com>
3326
3327         * windows-nat.c (saved_context): Conditionally define.
3328         * remote.c (remote_target::remote_btrace_maybe_reopen):
3329         Conditionally declare "warned".
3330         * inflow.c (sigquit_ours): Conditionally define.
3331         (new_tty): Move "tty" declaration inside #if.
3332         * guile/guile.c (guile_datadir): Conditionally define.
3333         * charset.c (set_be_le_names): Move some declarations inside #if.
3334         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
3335         #if.
3336         (parse_xml_btrace_conf): Likewise.
3337
3338 2018-07-22  Tom Tromey  <tom@tromey.com>
3339
3340         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
3341
3342 2018-07-22  Tom Tromey  <tom@tromey.com>
3343
3344         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
3345         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
3346         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
3347         * buildsym-legacy.c (get_macro_table): Remove unused variable.
3348         * stack.c (frame_apply_level_command): Remove unused variable.
3349         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
3350         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
3351         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
3352         unused variable.
3353         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
3354         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
3355         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
3356         variable.
3357         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
3358         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
3359         variable.
3360         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
3361         Remove unused variable.
3362         * cli/cli-script.c (recurse_read_control_structure): Remove unused
3363         variable.
3364         * common/tdesc.c (print_xml_feature::visit): Remove unused
3365         variable.
3366         * compile/compile-object-load.c (store_regs): Remove unused
3367         variables.
3368         * complaints.c (clear_complaints): Remove unused variable.
3369         * corelow.c (core_target_open): Remove unused variable.
3370         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
3371         variable.
3372         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
3373         variable.
3374         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
3375         variable.
3376         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
3377         variable.
3378         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
3379         variable.
3380         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
3381         variable.
3382         * ia64-tdep.c (examine_prologue): Remove unused variable.
3383         * infcall.c (run_inferior_call): Remove unused variable.
3384         * inferior.c (exit_inferior): Remove unused variable.
3385         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
3386         * linespec.c (decode_line_2): Remove unused variable.
3387         * linux-nat.c (super_close): Remove.
3388         * linux-tdep.c (linux_info_proc): Remove unused variable.
3389         * mi/mi-main.c (mi_execute_command): Remove unused variable.
3390         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
3391         Remove unused variable.
3392         * parse.c (find_minsym_type_and_address): Remove unused variable.
3393         * printcmd.c (info_symbol_command, printf_floating): Remove unused
3394         variable.
3395         * python/py-breakpoint.c (bppy_set_commands): Remove unused
3396         variable.
3397         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
3398         variables.
3399         * record-btrace.c (record_btrace_target::store_registers): Remove
3400         unused variable.
3401         (cmd_show_record_btrace_cpu): Remove unused variable.
3402         * riscv-tdep.c (riscv_register_reggroup_p)
3403         (riscv_push_dummy_call, riscv_return_value): Remove unused
3404         variable.
3405         * rust-exp.y (literal): Remove unused variable.
3406         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
3407         unused variable.
3408         <STRUCTOP_ANONYMOUS>: Likewise.
3409         * s390-linux-tdep.c (s390_linux_init_abi_31)
3410         (s390_linux_init_abi_64): Remove unused variable.
3411         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
3412         (file_select_thread, net_windows_open, _initialize_ser_windows):
3413         Remove unused variables.
3414         * symtab.c (find_pc_sect_line): Remove unused variable.
3415         * target-memory.c (compute_garbled_blocks): Remove unused
3416         variable.
3417         (target_write_memory_blocks): Remove unused variable.
3418         * target.c (target_stack::unpush): Remove unused variables.
3419         * tracepoint.c (start_tracing, all_tracepoint_actions)
3420         (merge_uploaded_trace_state_variables)
3421         (print_one_static_tracepoint_marker): Remove unused variable.
3422         * unittests/basic_string_view/element_access/char/1.cc (test01):
3423         Remove unused variable.
3424         * windows-nat.c (windows_continue, windows_add_all_dlls)
3425         (do_initial_windows_stuff, windows_nat_target::create_inferior):
3426         Remove unused variables.
3427
3428 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
3429
3430         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
3431         attr_profile in HAVE_ELF.
3432         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
3433         HAVE_ELF.
3434
3435 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
3436
3437         * frame.c (frame_register_unwind): Change parameter name.
3438         (frame_unwind_register): Likewise.
3439         (frame_unwind_register_value): Likewise.
3440         (frame_unwind_register_signed): Likewise.
3441         (frame_unwind_register_unsigned): Likewise.
3442         * frame.h (frame_register_unwind): Likewise.
3443         (frame_unwind_register): Likewise.
3444         (frame_unwind_register_value): Likewise.
3445         (frame_unwind_register_signed): Likewise.
3446         (frame_unwind_register_unsigned): Likewise.
3447         (frame_unwind_arch): Likewise.
3448
3449 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3450
3451         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
3452         ISA maintenance.
3453
3454 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
3455
3456         * mips-linux-nat.c (mips_linux_nat_target::read_description):
3457         Call `get_ptrace_pid' rather than extracting the ptrace PID by
3458         hand.
3459
3460 2018-07-20  Keith Seitz  <keiths@redhat.com>
3461
3462         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
3463         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
3464         m_compunit_symtab, m_language>: Add "m_" prefix.
3465         Update all uses.
3466         * buildsym.c: Update all uses.
3467
3468 2018-07-20  Tom Tromey  <tom@tromey.com>
3469
3470         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
3471         * buildsym.h (record_line_ftype): Remove typedef.
3472
3473 2018-07-20  Tom Tromey  <tom@tromey.com>
3474
3475         * buildsym-legacy.h (augment_type_symtab): Don't declare.
3476         (end_expandable_symtab): Likewise.
3477         (end_symtab_get_static_block): Likewise.
3478         (end_symtab_from_static_block): Likewise.
3479         * buildsym-legacy.c (augment_type_symtab): Remove.
3480         (end_expandable_symtab): Remove.
3481         (end_symtab_get_static_block): Remove.
3482         (end_symtab_from_static_block): Remove.
3483
3484 2018-07-20  Tom Tromey  <tom@tromey.com>
3485
3486         * dwarf2read.c: Include buildsym.h.
3487         (struct dwarf2_cu) <builder>: New method.
3488         (fixup_go_packaging): Update.
3489         (process_full_comp_unit, process_full_type_unit): Update.  Don't
3490         use scoped_free_pendings.
3491         (using_directives): Add "cu" parameter, remove "language".
3492         (read_import_statement, setup_type_unit_groups, )
3493         (read_func_scope, read_lexical_block_scope)
3494         (dwarf2_record_block_ranges, read_namespace): Update.
3495         (lnp_state_machine::lnp_state_machine): Add cu parameter.
3496         (lnp_state_machine::handle_end_sequence): Update.
3497         (class lnp_state_machine) <m_cu>: New member.
3498         <m_record_line_callback>: Remove.
3499         <m_currently_recording_lines>: New member.
3500         (lnp_state_machine::handle_set_file): Update.
3501         (noop_record_line): Remove.
3502         (dwarf_record_line_p): Add cu parameter.
3503         (dwarf_record_line_1, dwarf_finish_line): Likewise.
3504         (lnp_state_machine::record_line)
3505         (lnp_state_machine::lnp_state_machine)
3506         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
3507         (dwarf_decode_lines): Update.
3508         (dwarf2_start_subfile): Add cu parameter.
3509         (dwarf2_start_symtab, new_symbol): Update.
3510         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
3511         Remove dwarf2_per_objfile parameter.
3512         (dwarf_decode_macros): Update.
3513
3514 2018-07-20  Tom Tromey  <tom@tromey.com>
3515
3516         * stabsread.c (define_symbol): Update.
3517         * buildsym-legacy.h (get_buildsym_compunit): Declare.
3518         * dwarf2read.c (new_symbol): Update.
3519         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
3520         * cp-namespace.c: Include buildsym.h.
3521         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
3522         * buildsym-legacy.c (get_buildsym_compunit): New function.
3523
3524 2018-07-20  Tom Tromey  <tom@tromey.com>
3525
3526         * xcoffread.c: Include buildsym-legacy.h.
3527         * windows-nat.c: Include buildsym-legacy.h.
3528         * stabsread.c: Include buildsym-legacy.h.
3529         * mdebugread.c: Include buildsym-legacy.h.
3530         * buildsym-legacy.h: New file.
3531         * buildsym-legacy.c: New file, from buildsym.c.
3532         * go32-nat.c: Include buildsym-legacy.h.
3533         * dwarf2read.c: Include buildsym-legacy.h.
3534         * dbxread.c: Include buildsym-legacy.h.
3535         * cp-namespace.c: Include buildsym-legacy.h.
3536         * coffread.c: Include buildsym-legacy.h.
3537         * buildsym.h: Move some contents to buildsym-legacy.h.
3538         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
3539         buildsym-legacy.c.
3540         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
3541
3542 2018-07-20  Tom Tromey  <tom@tromey.com>
3543
3544         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
3545         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
3546         (buildsym_compunit::buildsym_compunit)
3547         (buildsym_compunit::~buildsym_compunit)
3548         (buildsym_compunit::get_macro_table): Define.
3549
3550 2018-07-20  Tom Tromey  <tom@tromey.com>
3551
3552         * buildsym.c (reset_symtab_globals): Remove.
3553         (buildsym_compunit::end_symtab_from_static_block): Update.
3554         (buildsym_compunit::augment_type_symtab): Update.
3555         (end_symtab_from_static_block): Call free_buildsym_compunit.
3556         (augment_type_symtab, end_symtab, end_expandable_symtab):
3557         Likewise.
3558
3559 2018-07-20  Tom Tromey  <tom@tromey.com>
3560
3561         * arch-utils.c: Do not include buildsym.h.
3562         * mipsread.c: Do not include buildsym.h.
3563         * machoread.c: Do not include buildsym.h.
3564         * elfread.c: Do not include buildsym.h.
3565
3566 2018-07-20  Tom Tromey  <tom@tromey.com>
3567
3568         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
3569         initialization.
3570         (buildsym_compunit): Add new constructor.
3571         (struct buildsym_compunit) <get_last_source_file, finish_block,
3572         record_block_range, start_subfile, patch_subfile_names,
3573         push_subfile, pop_subfile, record_line, get_compunit_symtab,
3574         set_last_source_start_addr, get_last_source_start_addr,
3575         get_local_using_directives, set_local_using_directives,
3576         get_global_using_directives, outermost_context_p,
3577         get_current_context_stack, get_context_stack_depth,
3578         get_current_subfile, get_local_symbols, get_file_symbols,
3579         get_global_symbols, record_debugformat, record_producer,
3580         push_context, pop_context, end_symtab_get_static_block,
3581         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
3582         New public methods.
3583         <record_pending_block, finish_block_internal, make_blockvector,
3584         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
3585         private methods.
3586         Update all users.
3587
3588 2018-05-22  Tom Tromey  <tom@tromey.com>
3589
3590         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3591         parameter.
3592         (finish_block_internal): Update.
3593
3594 2018-07-20  Tom Tromey  <tom@tromey.com>
3595
3596         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
3597         parameter.
3598         (finish_block_internal): Update.
3599
3600 2018-07-20  Tom Tromey  <tom@tromey.com>
3601
3602         * buildsym.h (EXTERN): Don't define or undef.
3603         * buildsym.c (EXTERN): Don't define.
3604
3605 2018-07-20  Tom Tromey  <tom@tromey.com>
3606
3607         * buildsym.c: Remove TODO comment.
3608
3609 2018-07-20  Tom Tromey  <tom@tromey.com>
3610
3611         * coffread.c (coff_symtab_read): Update.
3612         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
3613         (xcoff_new_init): Update.
3614         * mipsread.c (mipscoff_new_init): Update.
3615         * mdebugread.c (mdebug_build_psymtabs): Update.
3616         * elfread.c (elf_new_init): Update.
3617         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3618         Update.
3619         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
3620         (coffstab_build_psymtabs, elfstab_build_psymtabs)
3621         (stabsect_build_psymtabs): Update.
3622         * buildsym.h (buildsym_init): Don't declare.
3623         * buildsym.c: Update comment.
3624         (prepare_for_building): Remove.
3625         (start_symtab, restart_symtab): Update.
3626         (reset_symtab_globals): Update comment.
3627         (buildsym_init): Remove.
3628
3629 2018-07-20  Tom Tromey  <tom@tromey.com>
3630
3631         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
3632         * stabsread.c (patch_block_stabs, define_symbol, read_type)
3633         (read_enum_type, common_block_start, common_block_end)
3634         (cleanup_undefined_types_1, finish_global_stabs): Update.
3635         * mdebugread.c (psymtab_to_symtab_1): Update.
3636         * dwarf2read.c (fixup_go_packaging, read_func_scope)
3637         (read_lexical_block_scope, new_symbol): Update.
3638         * dbxread.c (process_one_symbol): Update.
3639         * coffread.c (coff_symtab_read, process_coff_symbol)
3640         (coff_read_enum_type): Update.
3641         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
3642         declare.
3643         (get_local_symbols, get_file_symbols, get_global_symbols): New
3644         functions.
3645         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
3646         m_global_symbols.
3647         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
3648         (~scoped_free_pendings): Update.
3649         (finish_block, prepare_for_building, reset_symtab_globals)
3650         (end_symtab_get_static_block, end_symtab_with_blockvector)
3651         (augment_type_symtab, push_context): Update.
3652         (get_local_symbols, get_file_symbols, get_global_symbols): New
3653         functions.
3654         (buildsym_init): Update.
3655
3656 2018-07-20  Tom Tromey  <tom@tromey.com>
3657
3658         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
3659         (process_full_type_unit): Likewise.
3660         (dwarf2_start_symtab): Set list_in_scope.
3661
3662 2018-07-20  Tom Tromey  <tom@tromey.com>
3663
3664         * dwarf2read.c (process_psymtab_comp_unit_reader)
3665         (build_type_psymtabs_reader): Do not set list_in_scope.
3666
3667 2018-07-20  Tom Tromey  <tom@tromey.com>
3668
3669         * buildsym.c (free_pendings): Remove.
3670         (add_symbol_to_list, scoped_free_pendings)
3671         (finish_block_internal, buildsym_init): Update.
3672
3673 2018-07-20  Tom Tromey  <tom@tromey.com>
3674
3675         * xcoffread.c (read_xcoff_symtab): Update.
3676         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
3677         Update.
3678         * dbxread.c (process_one_symbol): Update.
3679         * coffread.c (coff_symtab_read): Update.
3680         * buildsym.h (finish_block): Update.
3681         * buildsym.c (finish_block): Remove "listhead" argument.
3682         (end_symtab_get_static_block): Update.
3683
3684 2018-07-20  Tom Tromey  <tom@tromey.com>
3685
3686         * buildsym.h (class scoped_free_pendings): Remove constructor.
3687         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
3688         method.
3689         <m_pending_block_obstack, m_pending_blocks>: New members.
3690         (pending_block_obstack, pending_blocks): Remove.
3691         (scoped_free_pendings::scoped_free_pendings): Default.
3692         (~scoped_free_pendings): Update.
3693         (free_pending_blocks): Remove.
3694         (finish_block_internal, record_pending_block, make_blockvector)
3695         (end_symtab_get_static_block, augment_type_symtab, push_context)
3696         (buildsym_init): Update.
3697
3698 2018-07-20  Tom Tromey  <tom@tromey.com>
3699
3700         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
3701         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
3702         members.
3703         (pending_addrmap, pending_addrmap_obstack)
3704         (pending_addrmap_interesting): Remove.
3705         (scoped_free_pendings, record_block_range, make_blockvector)
3706         (prepare_for_building, reset_symtab_globals, buildsym_init):
3707         Update.
3708
3709 2018-07-20  Tom Tromey  <tom@tromey.com>
3710
3711         * xcoffread.c (process_linenos): Update.
3712         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
3713         * mdebugread.c (psymtab_to_symtab_1): Update.
3714         * dwarf2read.c (setup_type_unit_groups)
3715         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
3716         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
3717         * dbxread.c (process_one_symbol): Update.
3718         * coffread.c (coff_symtab_read, enter_linenos)
3719         (process_coff_symbol): Update.
3720         * buildsym.h (current_subfile): Don't declare.
3721         (get_current_subfile): Declare.
3722         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
3723         member.
3724         (start_subfile, free_buildsym_compunit, push_subfile)
3725         (prepare_for_building, start_symtab): Update.
3726         (get_current_subfile): New function.
3727
3728 2018-07-20  Tom Tromey  <tom@tromey.com>
3729
3730         * coffread.c (coff_symtab_read): Update.
3731         * xcoffread.c (read_xcoff_symtab): Update.
3732         * dwarf2read.c (new_symbol): Update.
3733         (read_func_scope, read_lexical_block_scope): Update.
3734         * dbxread.c (process_one_symbol): Update.
3735         * buildsym.h (context_stack, context_stack_depth): Don't declare.
3736         (outermost_context_p): Remove macro.
3737         (outermost_context_p, get_current_context_stack)
3738         (get_context_stack_depth): Declare.
3739         (pop_context): Return struct context_stack.
3740         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
3741         member.
3742         (context_stack_size): Remove.
3743         (INITIAL_CONTEXT_STACK_SIZE): Remove.
3744         (prepare_for_building, end_symtab_get_static_block)
3745         (augment_type_symtab, push_context): Update.
3746         (pop_context): Return struct context_stack.
3747         (outermost_context_p, get_current_context_stack)
3748         (get_context_stack_depth): New functions.
3749         (buildsym_init): Update.
3750
3751 2018-07-20  Tom Tromey  <tom@tromey.com>
3752
3753         * rust-exp.y: Now a pure parser.  Update all rules.
3754         (%union): Move earlier.
3755         (current_parser, work_obstack): Remove globals.
3756         (rust_parser, ~rust_parser): Update.
3757         (class rust_parser) <copy_name, concat3, crate_name, super_name,
3758         lex_character, lex_number, lex_string, lex_identifier,
3759         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
3760         convert_name, convert_params_to_expression,
3761         convert_ast_to_expression, ast_basic_type, ast_operation,
3762         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
3763         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
3764         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
3765         ast_array_type, ast_slice_type, ast_reference_type,
3766         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
3767         (rust_parse): Update.
3768         (rustyyerror, rustyylex): Add parser parameter.
3769         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
3770         (rust_lex_stringish_test, rust_lex_test_sequence)
3771         (rust_lex_test_trailing_dot, rust_lex_test_completion)
3772         (rust_lex_test_push_back, rust_lex_tests): Update.
3773
3774 2018-07-19  Pedro Alves  <palves@redhat.com>
3775
3776         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
3777         gdb::unique_xmalloc_ptr.
3778         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
3779         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
3780         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3781         copy-initialization.
3782         * guile/scm-pretty-print.c (ppscm_print_children): Use
3783         gdb::unique_xmalloc_ptr instead of cleanups.
3784         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3785         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3786         gdb::unique_xmalloc_ptr.
3787         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3788         Adjust to use gdb::unique_xmalloc_ptr.
3789         * guile/scm-utils.c (extract_arg): Adjust.
3790         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3791         gdb::unique_xmalloc_ptr instead of a cleanup.
3792
3793 2018-07-19  Tom Tromey  <tom@tromey.com>
3794
3795         * utils.c (do_value_free_to_mark)
3796         (make_cleanup_value_free_to_mark): Remove.
3797         * utils.h (make_cleanup_value_free_to_mark): Remove.
3798
3799 2018-07-19  Pedro Alves  <palves@redhat.com>
3800
3801         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3802         forwarding reference.
3803
3804 2018-07-18  Pedro Alves  <palves@redhat.com>
3805
3806         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3807         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3808         cleanup.
3809
3810 2018-07-18  Pedro Alves  <palves@redhat.com>
3811
3812         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3813         exceptions.
3814         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3815         (gdbscm_wrap): New.
3816         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3817         directly instead of a cleanup.
3818         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3819         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3820         (vlscm_binop_gdbthrow): New, factored out from ...
3821         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3822         (vlscm_rich_compare): Use gdbscm_wrap.
3823         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3824         instead of a cleanup.
3825         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3826         cleanup.
3827         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3828         Use xfree directly instead of a cleanup.
3829         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3830         Adjust to use gdbscm_wrap and scoped_value_mark.
3831         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3832         (gdbscm_value_address, gdbscm_value_dereference)
3833         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3834         scoped_value_mark.
3835         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3836         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3837         scoped_value_mark.
3838         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3839         gdbscm_wrap and scoped_value_mark.
3840         (gdbscm_value_to_string): Use xfree directly instead of a
3841         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3842         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3843         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3844         scoped_value_mark.
3845         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3846         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3847         scoped_value_mark.
3848         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3849         gdbscm_wrap.
3850
3851 2018-07-18  Tom de Vries  <tdevries@suse.de>
3852
3853         * findvar.c (default_read_var_value): Also resolve dynamic type for
3854         LOC_OPTIMIZED_OUT vars.
3855
3856 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3857
3858         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3859         decoding.
3860
3861 2018-07-17  Tom Tromey  <tom@tromey.com>
3862
3863         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3864         (compute_enum_list, pascm_set_param_value_x)
3865         (gdbscm_parameter_value): Update.
3866         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3867         (gdbscm_scm_to_host_string): Update.
3868         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3869         Update.
3870         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3871         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3872         * guile/scm-string.c (gdbscm_scm_to_string): Return
3873         unique_xmalloc_ptr.
3874         (gdbscm_scm_to_host_string): Likewise.
3875
3876 2018-07-17  Tom Tromey  <tom@tromey.com>
3877
3878         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3879         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3880         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3881         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3882         unique_xmalloc_ptr.
3883
3884 2018-07-17  Tom Tromey  <tom@tromey.com>
3885
3886         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3887         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3888         Update.
3889         * guile/scm-cmd.c (cmdscm_function): Update.
3890         * guile/scm-pretty-print.c
3891         (ppscm_print_exception_unless_memory_error): Update.
3892         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3893         Return unique_xmalloc_ptr.
3894
3895 2018-07-17  Tom Tromey  <tom@tromey.com>
3896
3897         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3898         Use string_printf.
3899
3900 2018-07-17  Jim Wilson  <jimw@sifive.com>
3901
3902         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3903         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3904         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3905         unecessary braces after EF_RISCV_RVC test.  Delete call to
3906         set_gdbarch_decr_pc_after_break.
3907
3908         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3909         RISCV_LAST_FP_REGNUM + 1.
3910         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3911
3912 2018-07-17  Tom Tromey  <tom@tromey.com>
3913
3914         * configure.ac: Remove --disable-gdbcli.
3915         * configure: Rebuild.
3916         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3917         (SUBDIR_CLI_CFLAGS): Remove.
3918         (SFILES): Use SUBDIR_CLI_SRCS.
3919         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3920
3921 2018-07-17  Tom Tromey  <tom@tromey.com>
3922
3923         PR gdb/18624:
3924         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3925
3926 2018-07-16  Jim Wilson  <jimw@sifive.com>
3927
3928         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3929
3930 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3931
3932         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3933         variable.
3934         (libunwind_frame_sniffer): Likewise.
3935         (libunwind_frame_prev_register): Likewise.
3936         (libunwind_sigtramp_frame_sniffer): Likewise.
3937         * ia64-tdep.c (ia64_access_reg): Likewise.
3938         (ia64_access_rse_reg): Likewise.
3939         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3940         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3941
3942 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3943
3944         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3945
3946 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3947
3948         * remote-sim.c (gdbsim_target::close,
3949         gdbsim_target::mourn_inferior): Remove unused variables.
3950
3951 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3952
3953         * ia64-tdep.c (ktab_buf): New global.
3954         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3955         (get_kernel_table): Adjust.
3956
3957 2018-07-16  Tom Tromey  <tom@tromey.com>
3958
3959         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3960         * dwarf2read.c (using_directives, new_symbol): Use
3961         outermost_context_p.
3962         * dbxread.c (process_one_symbol): Use outermost_context_p.
3963         * coffread.c (coff_symtab_read): Use outermost_context_p.
3964
3965 2018-07-16  Tom Tromey  <tom@tromey.com>
3966
3967         * dwarf2read.c (using_directives, read_func_scope)
3968         (read_lexical_block_scope): Update.
3969         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3970         * buildsym.h (local_using_directives, global_using_directives):
3971         Don't declare.
3972         (get_local_using_directives, set_local_using_directives)
3973         (get_global_using_directives): Declare.
3974         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3975         m_global_using_directives>: New members.
3976         (finish_block_internal, prepare_for_building)
3977         (reset_symtab_globals, end_symtab_get_static_block)
3978         (push_context): Update.
3979         (get_local_using_directives, set_local_using_directives)
3980         (get_global_using_directives): New functions.
3981         (buildsym_init): Update.
3982
3983 2018-07-16  Tom Tromey  <tom@tromey.com>
3984
3985         * xcoffread.c (xcoff_initial_scan): Don't call
3986         free_pending_blocks.
3987         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3988         * buildsym.h (class scoped_free_pendings): Add constructor.
3989         (free_pending_blocks): Don't declare.
3990         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3991         (free_pending_blocks): Now static.
3992
3993 2018-07-16  Tom Tromey  <tom@tromey.com>
3994
3995         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3996         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3997         member.
3998         (struct subfile_stack): Remove.
3999         (subfile_stack): Remove.
4000         (push_subfile, pop_subfile, buildsym_init): Update.
4001
4002 2018-07-16  Tom Tromey  <tom@tromey.com>
4003
4004         * buildsym.c (push_subfile): Use gdb_assert.
4005         (pop_subfile): Use gdb_assert.
4006
4007 2018-07-16  Tom Tromey  <tom@tromey.com>
4008
4009         * buildsym.h (merge_symbol_lists): Remove.
4010         * buildsym.c (merge_symbol_lists): Remove.
4011
4012 2018-07-16  Tom Tromey  <tom@tromey.com>
4013
4014         * stabsread.c (scan_file_globals): Update comment.
4015         * stabsread.h (scan_file_globals): Move from buildsym.h.
4016         * buildsym.h (scan_file_globals): Move to stabsread.h.
4017
4018 2018-07-16  Tom Tromey  <tom@tromey.com>
4019
4020         * xcoffread.c (xcoff_new_init): Update.
4021         * mipsread.c (mipscoff_new_init): Update.
4022         * mdebugread.c (mdebug_build_psymtabs): Update.
4023         * elfread.c (elf_new_init): Update.
4024         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
4025         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
4026         * buildsym.h (buildsym_new_init): Don't declare.
4027         * buildsym.c (buildsym_new_init): Remove.
4028
4029 2018-07-16  Tom Tromey  <tom@tromey.com>
4030
4031         * stabsread.h (within_function): Move from buildsym.h.
4032         * stabsread.c (start_stabs): Clear within_function.
4033         * coffread.c (coff_start_symtab): Clear within_function.
4034         * buildsym.h (within_function): Move to stabsread.h.
4035         * buildsym.c (prepare_for_building): Update.
4036
4037 2018-07-16  Tom Tromey  <tom@tromey.com>
4038
4039         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
4040         * dwarf2read.c (dwarf2_start_symtab): Don't set
4041         processing_gcc_compilation.
4042         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
4043
4044 2018-07-16  Tom Tromey  <tom@tromey.com>
4045
4046         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
4047         (next_symbol_text_func): Move from buildsym.h.
4048         * stabsread.c (hashname): Move from buildsym.c.
4049         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
4050         (next_symbol_text_func, hashname): Move to stabsread.h.
4051         * buildsym.c: Don't include bcache.h
4052         (hashname): Move to stasbread.c.
4053
4054 2018-07-16  Tom Tromey  <tom@tromey.com>
4055
4056         * buildsym.h (context_stack_size): Don't declare.
4057         * buildsym.c (context_stack_size): New global.
4058
4059 2018-07-16  Tom Tromey  <tom@tromey.com>
4060
4061         * dbxread.c (processing_acc_compilation): New global.
4062         * buildsym.h (processing_acc_compilation): Don't declare.
4063
4064 2018-07-16  Tom Tromey  <tom@tromey.com>
4065
4066         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
4067         * dbxread.c (read_ofile_symtab): Update.
4068         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
4069         * buildsym.h (last_source_start_addr): Remove.
4070         (set_last_source_start_addr, get_last_source_start_addr):
4071         Declare.
4072         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
4073         parameter.
4074         (struct buildsym_compunit) <m_last_source_start_addr>: New
4075         member.
4076         (prepare_for_building): Remove start_addr parameter.
4077         (start_symtab, restart_symtab, end_symtab_get_static_block)
4078         (end_symtab_with_blockvector): Update.
4079         (set_last_source_start_addr, get_last_source_start_addr): New
4080         functions.
4081
4082 2018-07-16  Tom Tromey  <tom@tromey.com>
4083
4084         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
4085         member.
4086         (have_line_numbers): Remove.
4087         (record_line, prepare_for_building, end_symtab_get_static_block)
4088         (augment_type_symtab): Update.
4089
4090 2018-07-16  Tom Tromey  <tom@tromey.com>
4091
4092         * buildsym.c (~buildsym_compunit): Free the macro table.
4093         (struct buildsym_compunit) <get_macro_table, release_macros>: New
4094         methods.
4095         <m_pending_macros>: New member.
4096         (pending_macros): Remove.
4097         (~scoped_free_pendings, get_macro_table, prepare_for_building)
4098         (reset_symtab_globals, end_symtab_get_static_block)
4099         (end_symtab_with_blockvector, augment_type_symtab)
4100         (buildsym_init): Update.
4101
4102 2018-07-16  Tom Tromey  <tom@tromey.com>
4103
4104         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
4105         parameter.
4106         (buildsym_compunit::set_last_source_file): New method.
4107         <m_last_source_file>: New member.
4108         (prepare_for_building): Remove "name" parameter.
4109         (start_symtab, restart_symtab, reset_symtab_globals): Update.
4110         (last_source_file): Remove.
4111         (set_last_source_file, get_last_source_file): Update.
4112
4113 2018-07-16  Tom Tromey  <tom@tromey.com>
4114
4115         * buildsym.c (prepare_for_building): Add assert.
4116
4117 2018-07-16  Tom Tromey  <tom@tromey.com>
4118
4119         * buildsym.c (~buildsym_compunit): Update.
4120         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
4121         (start_subfile, patch_subfile_names)
4122         (end_symtab_with_blockvector): Update.
4123
4124 2018-07-16  Tom Tromey  <tom@tromey.com>
4125
4126         * buildsym.c (struct buildsym_compunit): Add constructor,
4127         destructor, initializers.
4128         (start_buildsym_compunit): Remove.
4129         (free_buildsym_compunit): Use "delete".
4130         (start_symtab, restart_symtab): Use "new".
4131
4132 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
4133
4134         * symfile.c (set_objfile_default_section_offset): Remove struct
4135         keyword.
4136
4137 2018-07-14  Stafford Horne  <shorne@gmail.com>
4138
4139         * (Responsible Maintainers): Add myself as or1k maintainer.
4140
4141 2018-07-13  Tom Tromey  <tom@tromey.com>
4142
4143         * symfile.c (set_objfile_default_section_offset): Use extra braces
4144         around initializer.
4145
4146 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
4147
4148         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
4149         non-branching basr.
4150
4151 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4152
4153         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4154         unittests/cli-utils-selftests.c
4155         * unittests/cli-utils-selftests.c: New file.
4156
4157 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4158
4159         * NEWS: Mention new commands. Mention change to 'thread apply'.
4160
4161 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4162
4163         * thread.c (thr_try_catch_cmd): New function.
4164         (thread_apply_all_command): Handle qcs flags.
4165         (thread_apply_command): Handle qcs flags.
4166         (taas_command): New function.
4167         (tfaas_command): New function.
4168         (_initialize_thread): Update to setup the new commands 'taas
4169         and 'tfaas'. Change doc string for 'thread apply'.
4170
4171 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4172
4173         * stack.c: (trailing_outermost_frame): New function, mostly
4174         extracted from backtrace_command_1.
4175         (leading_innermost_frame): New function.
4176         (backtrace_command_1): Update to call trailing_outermost_frame.
4177         (frame_apply_command_count): New function.
4178         (frame_apply_level_command): New function.
4179         (frame_apply_all_command): New function.
4180         (frame_apply_command): New function.
4181         (faas_command): New function.
4182         (frame_cmd_list): New variable.
4183         (_initialize_stack): Update to setup the new commands 'frame apply'
4184         and 'faas'.
4185
4186 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4187
4188         * cli-utils.c (number_or_range_parser::get_number): Only handle
4189         numbers or convenience var as numbers.
4190         (parse_flags): New function.
4191         (parse_flags_qcs): New function.
4192         (number_or_range_parser::finished): Ensure parsing end is detected
4193         before end of string.
4194         * cli-utils.h (parse_flags): New function.
4195         (parse_flags_qcs): New function.
4196         (number_or_range_parser): Remove m_finished bool.
4197         (number_or_range_parser::skip_range): Set m_in_range to false.
4198
4199 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
4200
4201         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
4202         on Windows.
4203
4204 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4205             Jan Kratochvil  <jan.kratochvil@redhat.com>
4206             Paul Fertser  <fercerpav@gmail.com>
4207             Tsutomu Seki  <sekiriki@gmail.com>
4208             Pedro Alves  <palves@redhat.com>
4209
4210         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4211         'unittests/parse-connection-spec-selftests.c'.
4212         (COMMON_SFILES): Add 'common/netstuff.c'.
4213         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
4214         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
4215         * common/netstuff.c: New file.
4216         * common/netstuff.h: New file.
4217         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
4218         (wait_for_connect): Update comment.  New parameter
4219         'gdb::optional<int> sock' instead of 'struct serial *scb'.
4220         Use 'sock' directly instead of 'scb->fd'.
4221         (try_connect): New function, with code from 'net_open'.
4222         (net_open): Rewrite main loop to deal with multiple
4223         sockets/addresses.  Handle IPv6-style hostnames; implement
4224         support for IPv6 connections.
4225         * unittests/parse-connection-spec-selftests.c: New file.
4226
4227 2018-07-11  Pedro Alves  <palves@redhat.com>
4228
4229         PR gdb/23377
4230         * remote.c (remote_target::remote_detach_pid): Call
4231         set_current_process.
4232
4233 2018-07-11  Pedro Alves  <palves@redhat.com>
4234
4235         * h8300-tdep.c (h8300_gdbarch_init): Remove
4236         set_gdbarch_ecoff_reg_to_regnum calls.
4237
4238 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
4239
4240         PR c++/23373
4241         * c-typeprint.c (c_type_print_base_struct_union): Don't print
4242         offsets/sizes for static members of a class/struct.
4243
4244 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
4245
4246         * target-descriptions.c (tdesc_register_bitsize): Rename.
4247         * target-descriptions.h (tdesc_register_bitsize): Likewise.
4248         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
4249         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
4250
4251 2018-07-10  Tom Tromey  <tom@tromey.com>
4252
4253         * breakpoint.c (moribund_locations): Now static and a
4254         std::vector.
4255         (breakpoint_init_inferior, moribund_breakpoint_here_p)
4256         (build_bpstat_chain, update_global_location_list)
4257         (breakpoint_retire_moribund): Update.
4258         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
4259         VEC.
4260
4261 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4262
4263         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
4264         (riscv_register_reggroup_p): Use new function, remove unneeded
4265         parenthesis.
4266         (riscv_push_dummy_call): Extend assert to compare against xlen or
4267         flen based on register type.
4268
4269 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4270
4271         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
4272
4273 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4274
4275         * remote.c (show_hardware_watchpoint_limit): New function.
4276         (show_hardware_watchpoint_length_limit): New function.
4277         (show_hardware_breakpoint_limit): New function.
4278         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
4279         where appropriate, update help text.
4280
4281 2018-07-09  Tom Tromey  <tom@tromey.com>
4282
4283         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
4284         (CLIBS): Don't mention NAT_CLIBS.
4285
4286 2018-07-09  Tom Tromey  <tom@tromey.com>
4287
4288         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
4289         (LIBGDB_OBS, clean mostlyclean): Update.
4290         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
4291
4292 2018-07-09  Tom Tromey  <tom@tromey.com>
4293
4294         * Makefile.in (%.c: %.y): Use ECHO_YACC.
4295         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
4296         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
4297
4298 2018-07-09  Tom Tromey  <tom@tromey.com>
4299
4300         * Makefile.in (ALLDEPFILES): Remove exec.c.
4301         (COMMON_OBS): Remove exec.o.
4302         (COMMON_SFILES): Add exec.c.
4303
4304 2018-07-09  Tom Tromey  <tom@tromey.com>
4305
4306         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
4307
4308 2018-07-09  Tom Tromey  <tom@tromey.com>
4309
4310         * Makefile.in (clean mostlyclean): Remove stamp-version.
4311         (version.c): Depend on stamp-version.
4312         (stamp-version): New rule, from version.c rule.
4313
4314 2018-07-09  Tom Tromey  <tom@tromey.com>
4315
4316         * Makefile.in (init.c): Depend on stamp-init.
4317         (stamp-init): New rule, from init.c rule.
4318         (clean mostlyclean): Remove stamp-init.
4319
4320 2018-07-09  Tom Tromey  <tom@tromey.com>
4321
4322         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
4323         SUBDIR_GCC_COMPILE_SRCS.
4324
4325 2018-07-09  Tom Tromey  <tom@tromey.com>
4326
4327         * Makefile.in (init.c): Remove some unused sed rules.
4328
4329 2018-07-09  Tom Tromey  <tom@tromey.com>
4330
4331         * Makefile.in (TSOBS): Remove.
4332         (INIT_FILES): Update.
4333         (LIBGDB_OBS): Update.
4334         (COMMON_SFILES): Add inflow.c.
4335         (SFILES): Remove inflow.c.
4336
4337 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
4338
4339         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
4340
4341 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
4342
4343         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
4344         get_saveloc_name, is_signal_frame_name, step_name,
4345         init_remote_name, create_addr_space_name,
4346         destroy_addr_space_name, search_unwind_table_name,
4347         find_dyn_list_name): Constify.
4348
4349 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
4350
4351         * darwin-nat.c (darwin_pthread_kill): New function.
4352         (darwin_resume_thread): Use darwin_pthread_kill.
4353
4354 2018-07-05  Tom de Vries  <tdevries@suse.de>
4355
4356         * macroexp.c (macro_buffer) <operator=>: New member function.
4357
4358 2018-07-04  Tom Tromey  <tom@tromey.com>
4359
4360         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
4361
4362 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
4363
4364         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
4365         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
4366         * maint.c: Likewise.
4367         * top.c: Likewise.
4368
4369 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4370
4371         * NEWS: Create a new section for the next release branch.
4372         Rename the section of the current branch, now that it has
4373         been cut.
4374
4375 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
4376
4377         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
4378         * version.in: Bump version to 8.2.50.DATE-git.
4379
4380 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
4381             Pedro Alves  <palves@redhat.com>
4382
4383         * linux-nat.c (linux_init_ptrace): Rename to ...
4384         (linux_init_ptrace_procfs): ... this.  Call
4385         linux_proc_init_warnings.
4386         (linux_nat_target::post_attach)
4387         (linux_nat_target::post_startup_inferior): Adjust.
4388         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
4389         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
4390
4391 2018-07-04  Tom de Vries  <tdevries@suse.de>
4392
4393         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
4394         check ...
4395         (read_comp_unit_head): ... here.
4396
4397 2018-07-03  Tom Tromey  <tom@tromey.com>
4398
4399         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
4400         (stop_tracing, tstatus_command)
4401         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
4402         (print_one_static_tracepoint_marker): Update.
4403         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
4404         std::vector.
4405         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
4406         VEC.
4407         (all_tracepoints, static_tracepoints_here): Return std::vector.
4408
4409 2018-07-03  Tom Tromey  <tom@tromey.com>
4410
4411         * common/ptid.c (ptid_equal): Remove.
4412         * common/ptid.h (ptid_equal): Don't declare.
4413         * ada-tasks.c: Update.
4414         * breakpoint.c: Update.
4415         * common/agent.c: Update.
4416         * corelow.c: Update.
4417         * darwin-nat-info.c: Update.
4418         * darwin-nat.c: Update.
4419         * dcache.c: Update.
4420         * dtrace-probe.c: Update.
4421         * dummy-frame.c: Update.
4422         * fbsd-nat.c: Update.
4423         * frame.c: Update.
4424         * gdbthread.h: Update.
4425         * gnu-nat.c: Update.
4426         * go32-nat.c: Update.
4427         * inf-loop.c: Update.
4428         * inf-ptrace.c: Update.
4429         * infcall.c: Update.
4430         * infcmd.c: Update.
4431         * inflow.c: Update.
4432         * infrun.c: Update.
4433         * linux-fork.c: Update.
4434         * linux-nat.c: Update.
4435         * linux-thread-db.c: Update.
4436         * mi/mi-cmd-var.c: Update.
4437         * mi/mi-interp.c: Update.
4438         * mi/mi-main.c: Update.
4439         * nto-procfs.c: Update.
4440         * ppc-linux-tdep.c: Update.
4441         * procfs.c: Update.
4442         * python/py-inferior.c: Update.
4443         * python/py-record-btrace.c: Update.
4444         * python/py-record.c: Update.
4445         * ravenscar-thread.c: Update.
4446         * regcache.c: Update.
4447         * remote-sim.c: Update.
4448         * remote.c: Update.
4449         * sol-thread.c: Update.
4450         * solib.c: Update.
4451         * target.c: Update.
4452         * tui/tui-stack.c: Update.
4453         * varobj.c: Update.
4454         * windows-nat.c: Update.
4455         * windows-tdep.c: Update.
4456
4457 2018-07-03  Tom Tromey  <tom@tromey.com>
4458
4459         * common/ptid.c (ptid_match): Remove.
4460         * common/ptid.h (ptid_match): Don't declare.
4461         * fbsd-nat.c: Update.
4462         * infcmd.c: Update.
4463         * infrun.c: Update.
4464         * linux-nat.c: Update.
4465         * record-btrace.c: Update.
4466         * regcache.c: Update.
4467         * remote.c: Update.
4468
4469 2018-07-03  Tom Tromey  <tom@tromey.com>
4470
4471         * common/ptid.c (ptid_tid_p): Remove.
4472         * common/ptid.h (ptid_tid_p): Don't declare.
4473         * sol-thread.c: Update.
4474
4475 2018-07-03  Tom Tromey  <tom@tromey.com>
4476
4477         * common/ptid.c (ptid_lwp_p): Remove.
4478         * common/ptid.h (ptid_lwp_p): Don't declare.
4479         * fbsd-nat.c: Update.
4480         * linux-nat.c: Update.
4481         * nat/linux-procfs.c: Update.
4482         * nat/x86-linux-dregs.c: Update.
4483         * sol-thread.c: Update.
4484
4485 2018-07-03  Tom Tromey  <tom@tromey.com>
4486
4487         * common/ptid.c (ptid_is_pid): Remove.
4488         * common/ptid.h (ptid_is_pid): Don't declare.
4489         * infrun.c: Update.
4490         * linux-nat.c: Update.
4491         * mi/mi-interp.c: Update.
4492         * remote.c: Update.
4493         * thread.c: Update.
4494
4495 2018-07-03  Tom Tromey  <tom@tromey.com>
4496
4497         * common/ptid.c (ptid_get_tid): Remove.
4498         * common/ptid.h (ptid_get_tid): Don't declare.
4499         * ada-tasks.c: Update.
4500         * aix-thread.c: Update.
4501         * bsd-uthread.c: Update.
4502         * darwin-nat.c: Update.
4503         * fbsd-nat.c: Update.
4504         * i386-darwin-nat.c: Update.
4505         * infrun.c: Update.
4506         * linux-tdep.c: Update.
4507         * nto-procfs.c: Update.
4508         * ppc-ravenscar-thread.c: Update.
4509         * python/py-infthread.c: Update.
4510         * ravenscar-thread.c: Update.
4511         * sol-thread.c: Update.
4512         * sparc-ravenscar-thread.c: Update.
4513         * windows-nat.c: Update.
4514
4515 2018-07-03  Tom Tromey  <tom@tromey.com>
4516
4517         * common/ptid.c (ptid_get_lwp): Remove.
4518         * common/ptid.h (ptid_get_lwp): Don't declare.
4519         * aarch64-linux-nat.c: Update.
4520         * ada-tasks.c: Update.
4521         * aix-thread.c: Update.
4522         * amd64-linux-nat.c: Update.
4523         * arm-linux-nat.c: Update.
4524         * corelow.c: Update.
4525         * fbsd-nat.c: Update.
4526         * fbsd-tdep.c: Update.
4527         * gnu-nat.c: Update.
4528         * i386-cygwin-tdep.c: Update.
4529         * i386-gnu-nat.c: Update.
4530         * i386-linux-nat.c: Update.
4531         * ia64-linux-nat.c: Update.
4532         * inf-ptrace.c: Update.
4533         * infrun.c: Update.
4534         * linux-fork.c: Update.
4535         * linux-nat.c: Update.
4536         * linux-tdep.c: Update.
4537         * linux-thread-db.c: Update.
4538         * mips-linux-nat.c: Update.
4539         * nat/aarch64-linux-hw-point.c: Update.
4540         * nat/aarch64-linux.c: Update.
4541         * nat/linux-btrace.c: Update.
4542         * nat/linux-osdata.c: Update.
4543         * nat/linux-procfs.c: Update.
4544         * nat/x86-linux-dregs.c: Update.
4545         * obsd-nat.c: Update.
4546         * ppc-fbsd-nat.c: Update.
4547         * ppc-linux-nat.c: Update.
4548         * procfs.c: Update.
4549         * python/py-infthread.c: Update.
4550         * ravenscar-thread.c: Update.
4551         * remote.c: Update.
4552         * s390-linux-nat.c: Update.
4553         * sol-thread.c: Update.
4554         * sol2-tdep.c: Update.
4555         * spu-linux-nat.c: Update.
4556         * x86-linux-nat.c: Update.
4557         * xtensa-linux-nat.c: Update.
4558
4559 2018-07-03  Tom Tromey  <tom@tromey.com>
4560
4561         * common/ptid.c (ptid_get_pid): Remove.
4562         * common/ptid.h (ptid_get_pid): Don't declare.
4563         * aarch64-linux-nat.c: Update.
4564         * ada-lang.c: Update.
4565         * aix-thread.c: Update.
4566         * alpha-bsd-nat.c: Update.
4567         * amd64-fbsd-nat.c: Update.
4568         * amd64-linux-nat.c: Update.
4569         * arm-linux-nat.c: Update.
4570         * arm-nbsd-nat.c: Update.
4571         * auxv.c: Update.
4572         * break-catch-syscall.c: Update.
4573         * breakpoint.c: Update.
4574         * bsd-uthread.c: Update.
4575         * corelow.c: Update.
4576         * ctf.c: Update.
4577         * darwin-nat.c: Update.
4578         * fbsd-nat.c: Update.
4579         * fbsd-tdep.c: Update.
4580         * gcore.c: Update.
4581         * gnu-nat.c: Update.
4582         * hppa-nbsd-nat.c: Update.
4583         * hppa-obsd-nat.c: Update.
4584         * i386-fbsd-nat.c: Update.
4585         * ia64-linux-nat.c: Update.
4586         * inf-ptrace.c: Update.
4587         * infcmd.c: Update.
4588         * inferior.c: Update.
4589         * inferior.h: Update.
4590         * inflow.c: Update.
4591         * infrun.c: Update.
4592         * linux-fork.c: Update.
4593         * linux-nat.c: Update.
4594         * linux-tdep.c: Update.
4595         * linux-thread-db.c: Update.
4596         * m68k-bsd-nat.c: Update.
4597         * mi/mi-interp.c: Update.
4598         * mi/mi-main.c: Update.
4599         * mips-linux-nat.c: Update.
4600         * mips-nbsd-nat.c: Update.
4601         * mips64-obsd-nat.c: Update.
4602         * nat/aarch64-linux-hw-point.c: Update.
4603         * nat/aarch64-linux.c: Update.
4604         * nat/linux-btrace.c: Update.
4605         * nat/linux-osdata.c: Update.
4606         * nat/linux-procfs.c: Update.
4607         * nat/x86-linux-dregs.c: Update.
4608         * nto-procfs.c: Update.
4609         * obsd-nat.c: Update.
4610         * ppc-linux-nat.c: Update.
4611         * ppc-nbsd-nat.c: Update.
4612         * ppc-obsd-nat.c: Update.
4613         * proc-service.c: Update.
4614         * procfs.c: Update.
4615         * python/py-inferior.c: Update.
4616         * python/py-infthread.c: Update.
4617         * ravenscar-thread.c: Update.
4618         * record.c: Update.
4619         * remote-sim.c: Update.
4620         * remote.c: Update.
4621         * rs6000-nat.c: Update.
4622         * s390-linux-nat.c: Update.
4623         * sh-nbsd-nat.c: Update.
4624         * sol-thread.c: Update.
4625         * sparc-nat.c: Update.
4626         * sparc64-tdep.c: Update.
4627         * spu-linux-nat.c: Update.
4628         * spu-tdep.c: Update.
4629         * target-debug.h: Update.
4630         * target.c: Update.
4631         * thread.c: Update.
4632         * tid-parse.c: Update.
4633         * tracefile-tfile.c: Update.
4634         * vax-bsd-nat.c: Update.
4635         * windows-nat.c: Update.
4636         * x86-linux-nat.c: Update.
4637         * x86-nat.c: Update.
4638
4639 2018-07-03  Tom Tromey  <tom@tromey.com>
4640
4641         * common/ptid.c (pid_to_ptid): Remove.
4642         * common/ptid.h (pid_to_ptid): Don't declare.
4643         * aix-thread.c: Update.
4644         * arm-linux-nat.c: Update.
4645         * common/ptid.c: Update.
4646         * common/ptid.h: Update.
4647         * corelow.c: Update.
4648         * ctf.c: Update.
4649         * darwin-nat.c: Update.
4650         * fbsd-nat.c: Update.
4651         * fork-child.c: Update.
4652         * gnu-nat.c: Update.
4653         * go32-nat.c: Update.
4654         * inf-ptrace.c: Update.
4655         * infcmd.c: Update.
4656         * inferior.c: Update.
4657         * infrun.c: Update.
4658         * linux-fork.c: Update.
4659         * linux-nat.c: Update.
4660         * nat/aarch64-linux-hw-point.c: Update.
4661         * nat/fork-inferior.c: Update.
4662         * nat/x86-linux-dregs.c: Update.
4663         * nto-procfs.c: Update.
4664         * obsd-nat.c: Update.
4665         * procfs.c: Update.
4666         * progspace.c: Update.
4667         * remote.c: Update.
4668         * rs6000-nat.c: Update.
4669         * s390-linux-nat.c: Update.
4670         * sol-thread.c: Update.
4671         * spu-linux-nat.c: Update.
4672         * target.c: Update.
4673         * top.c: Update.
4674         * tracefile-tfile.c: Update.
4675         * windows-nat.c: Update.
4676
4677 2018-07-03  Tom Tromey  <tom@tromey.com>
4678
4679         * common/ptid.h (ptid_build): Don't declare.
4680         * common/ptid.c (ptid_build): Remove.
4681         * aix-thread.c: Update.
4682         * bsd-kvm.c: Update.
4683         * bsd-uthread.c: Update.
4684         * common/agent.c: Update.
4685         * common/ptid.c: Update.
4686         * common/ptid.h: Update.
4687         * corelow.c: Update.
4688         * darwin-nat.c: Update.
4689         * fbsd-nat.c: Update.
4690         * gnu-nat.c: Update.
4691         * linux-fork.c: Update.
4692         * linux-nat.c: Update.
4693         * linux-thread-db.c: Update.
4694         * nat/linux-osdata.c: Update.
4695         * nat/linux-procfs.c: Update.
4696         * nto-procfs.c: Update.
4697         * obsd-nat.c: Update.
4698         * proc-service.c: Update.
4699         * procfs.c: Update.
4700         * ravenscar-thread.c: Update.
4701         * remote-sim.c: Update.
4702         * remote.c: Update.
4703         * sol-thread.c: Update.
4704         * target.c: Update.
4705         * windows-nat.c: Update.
4706
4707 2018-07-03  Tom Tromey  <tom@tromey.com>
4708
4709         * infrun.c (follow_exec): Use exit_inferior_silent.
4710         * inferior.c (exit_inferior_num_silent): Remove.
4711         * inferior.h (exit_inferior_num_silent): Don't declare.
4712
4713 2018-07-03  Tom Tromey  <tom@tromey.com>
4714
4715         PR cli/23340:
4716         * darwin-nat.c (darwin_attach_pid): Reset inferior and
4717         inferior_ptid on error.
4718
4719 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
4720             Simon Marchi  <simon.marchi@polymtl.ca>
4721
4722         PR tdep/8282
4723         * disasm.h (gdb_disassembler): Add
4724         `m_disassembler_options_holder'. member
4725         * disasm.c (get_all_disassembler_options): New function.
4726         (gdb_disassembler::gdb_disassembler): Use it.
4727         (gdb_buffered_insn_length_init_dis): Likewise.
4728         (gdb_buffered_insn_length): Adjust accordingly.
4729         (set_disassembler_options): Handle options with arguments.
4730         (show_disassembler_options_sfunc): Likewise.  Add a leading new
4731         line if showing options with descriptions.
4732         (disassembler_options_completer): Adapt to using the
4733         `disasm_options_and_args_t' structure.
4734         * mips-tdep.c (mips_disassembler_options): New variable.
4735         (mips_disassembler_options_o32): Likewise.
4736         (mips_disassembler_options_n32): Likewise.
4737         (mips_disassembler_options_n64): Likewise.
4738         (gdb_print_insn_mips): Don't set `disassembler_options'.
4739         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
4740         functions.
4741         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
4742         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
4743         `gdbarch_disassembler_options_implicit' and
4744         `gdbarch_valid_disassembler_options'.
4745         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
4746         `disasm_options_and_args_t' structure.
4747         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
4748         method.
4749         (valid_disassembler_options): Switch from `disasm_options_t' to
4750         the `disasm_options_and_args_t' structure.
4751         * NEWS: Document `set disassembler-options' support for the MIPS
4752         target.
4753         * gdbarch.h: Regenerate.
4754         * gdbarch.c: Regenerate.
4755
4756 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
4757
4758         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
4759
4760 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
4761
4762         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
4763         parameter in call to amd64_target_description.
4764         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
4765         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
4766         (amd64fbsd_init_abi): Likewise.
4767         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
4768         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
4769         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
4770         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
4771
4772 2018-06-29  Pedro Alves  <palves@redhat.com>
4773
4774         * gdb/amd64-tdep.h (amd64_create_target_description): Add
4775         "segments" parameter.
4776         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
4777         (_initialize_amd64_tdep): Update call to
4778         amd64_create_target_description.
4779         (amd64_target_description): Add "segments" parameter.  Adjust
4780         the implementation to use it.
4781         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4782         call to amd64_create_target_description.
4783         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4784         * gdb/arch/amd64.h (amd64_create_target_description): Add
4785         "segments" register.
4786         * gdb/arch/amd64.c (amd64_create_target_description): Add
4787         "segments" parameter.  Call create_feature_i386_64bit_segments
4788         only if SEGMENTS is true.
4789         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4790         call to amd64_create_target_description.
4791
4792 2018-06-29  Pedro Alves  <palves@redhat.com>
4793
4794         * thread.c (thread_target_id_str): New, factored out from ...
4795         (print_thread_info_1): ... here.  Use it to compute the max
4796         "Target Id" column width.
4797
4798 2018-06-29  Pedro Alves  <palves@redhat.com>
4799
4800         * remote.c (remote_target::extra_thread_info): Delete
4801         'display_buf' and 'n' locals.  from the cache, regardless of
4802         packet mechanims is in use.  Use cache for qThreadExtra and qP
4803         methods too.
4804
4805 2018-06-29  Pedro Alves  <palves@redhat.com>
4806
4807         * blockframe.c (find_pc_sect_containing_function): New function.
4808         * breakpoint.c (print_breakpoint_location): Don't call
4809         find_pc_sect_function.
4810         * linespec.c (create_sals_line_offset): Record the location's
4811         symbol in the sal.
4812         * linespec.c (convert_address_location_to_sals): Fill in sal's
4813         symbol with find_pc_sect_containing_function.
4814         * symtab.c (find_function_start_sal): Rename to ...
4815         (find_function_start_sal_1): ... this.
4816         (find_function_start_sal): Reimplement as wrapper around
4817         find_function_start_sal_1, and use
4818         find_pc_sect_containing_function to fill in the sal's symbol.
4819         (find_function_start_sal(symbol*, bool)): Adjust.
4820         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4821         comments.
4822         (find_pc_sect_containing_function): Declare.
4823
4824 2018-06-29  Pedro Alves  <palves@redhat.com>
4825
4826         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4827         true if the the location has no symbol.
4828
4829 2018-06-28  Tom Tromey  <tom@tromey.com>
4830
4831         * NEWS: Mention --enable-codesign.
4832         * silent-rules.mk (ECHO_SIGN): New variable.
4833         * configure.ac: Add --enable-codesign.
4834         * configure: Rebuild.
4835         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4836         (gdb$(EXEEXT)): Optionally invoke codesign.
4837
4838 2018-06-28  Pedro Alves  <palves@redhat.com>
4839
4840         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4841         comments.
4842         (switch_to_thread_no_regs): Adjust comment.
4843         * infcmd.c (stop_pc): Delete.
4844         (post_create_inferior, info_program_command): Replace references
4845         to stop_pc with references to thread_info->suspend.stop_pc.
4846         * inferior.h (stop_pc): Delete declaration.
4847         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4848         (handle_inferior_event_1, handle_signal_stop)
4849         (process_event_stop_test, keep_going_stepped_thread)
4850         (handle_step_into_function, handle_step_into_function_backward)
4851         (print_stop_location): Replace references to stop_pc with
4852         references to thread_info->suspend.stop_pc.
4853         (struct infcall_suspend_state) <stop_pc>: Delete field.
4854         (save_infcall_suspend_state, restore_infcall_suspend_state):
4855         Remove references to inf_stat->stop_pc.
4856         * linux-fork.c (fork_load_infrun_state): Likewise.
4857         * record-btrace.c (record_btrace_set_replay): Likewise.
4858         * record-full.c (record_full_goto_entry): Likewise.
4859         * remote.c (print_one_stopped_thread): Likewise.
4860         * target.c (target_resume): Extend comment.
4861         * thread.c (set_executing_thread): New.
4862         (set_executing): Use it.
4863         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4864         Remove references to stop_pc.
4865
4866 2018-06-28  Pedro Alves  <palves@redhat.com>
4867
4868         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4869         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4870
4871 2018-06-28  Tom Tromey  <tom@tromey.com>
4872
4873         * coffread.c (coff_symfile_finish): Update.
4874         * xcoffread.c (xcoff_symfile_finish): Update.
4875         * elfread.c (elf_symfile_finish): Update.
4876         * symfile.h (dwarf2_free_objfile): Don't declare.
4877         * dwarf2read.c (_initialize_dwarf2_read): Use
4878         register_objfile_data_with_cleanup.
4879         (dwarf2_free_objfile): Now static.  Change signature.
4880
4881 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4882
4883         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4884         option "-o" to add-symbol-file-load to add an offset to each
4885         section's load address.
4886         * symfile.c (set_objfile_default_section_offset): New function.
4887
4888 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4889
4890         * symfile.c (add_symbol_file_command): Make sure that sections
4891         with the same name are sorted in the same order.
4892
4893 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4894
4895         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4896         require the second argument.  If omitted, load sections at the
4897         addresses specified in the file.
4898
4899 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4900
4901         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4902         (_initialize_symfile): Add option "-o" to symbol-file to add an
4903         offset to each section of the symbol file.
4904
4905 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4906
4907         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4908
4909 2018-06-27  Tom Tromey  <tom@tromey.com>
4910
4911         * stack.c (_initialize_stack): Update "func" help text.
4912
4913 2018-06-27  Tom Tromey  <tom@tromey.com>
4914
4915         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4916         std::vector.
4917         (unwind_infopy_str, pyuw_create_unwind_info)
4918         (unwind_infopy_add_saved_register, pyuw_sniffer)
4919         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4920         Update.
4921         (struct saved_reg): Add constructor.
4922         <value>: Now a gdbpy_ref<>.
4923
4924 2018-06-27  Tom Tromey  <tom@tromey.com>
4925
4926         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4927
4928 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4929
4930         * gdb-gdb.py.in: Format using autopep8.
4931
4932 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4933
4934         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4935         (type_lookup_function): Recognize CORE_ADDR values.
4936
4937 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4938
4939         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4940         print tag_name.
4941
4942 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4943
4944         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4945         <__lt__>: Add.
4946
4947 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4948
4949         * gdb-gdb.py: Move to...
4950         * gdb-gdb.py.in: ... here.
4951         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4952         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4953         dependencies.
4954         (distclean): Remove gdb-gdb.py when cleaning.
4955         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4956         * configure: Re-generate.
4957
4958 2018-06-27  Pedro Alves  <palves@redhat.com>
4959
4960         * proc-service.c (get_ps_regcache): New.
4961         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4962         (ps_lsetfpregs): Use it.
4963
4964 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4965
4966         PR gdb/21695
4967         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4968         (dwarf_decode_lines_1): Adjust.
4969
4970 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4971
4972         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4973         override.
4974         <info_proc>: Likewise.
4975
4976 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4977
4978         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4979         to windows_fetch_one_register, and only handle the case of
4980         fetching one register.  Move the code that reloads the context
4981         and iterates over all registers if R is negative to...
4982         (windows_nat_target::fetch_registers): ... here.
4983         (do_windows_store_inferior_registers): Rename to
4984         windows_store_one_register, and only handle the case of storing
4985         one register.  Move the code that handles the case where r is
4986         negative to...
4987         (windows_nat_target::store_registers) ... here.
4988
4989 2018-06-26  Tom Tromey  <tom@tromey.com>
4990
4991         PR rust/22574:
4992         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4993         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4994         Update.
4995         (rust_internal_print_type): Add podata parameter.
4996         (rust_print_type): Update.
4997
4998 2018-06-26  Tom Tromey  <tom@tromey.com>
4999
5000         * typeprint.h (struct print_offset_data) <update, finish,
5001         maybe_print_hole>: New methods.
5002         <indentation>: New constant.
5003         * typeprint.c (print_offset_data::indentation): Define.
5004         (print_offset_data::maybe_print_hole, print_offset_data::update)
5005         (print_offset_data::finish): Move from c-typeprint.c and rename.
5006         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
5007         (print_spaces_filtered_with_print_options): Update.
5008         (c_print_type_union_field_offset, maybe_print_hole)
5009         (c_print_type_struct_field_offset): Move to typeprint.c and
5010         rename.
5011         (c_type_print_base_struct_union): Update.
5012
5013 2018-06-25  Pedro Alves  <palves@redhat.com>
5014
5015         * gdbthread.h (thread_info_ref, delete_thread)
5016         (delete_thread_silent, first_thread_of_inferior)
5017         (any_thread_of_inferior, switch_to_thread)
5018         (enable_thread_stack_temporaries)
5019         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5020         (get_last_thread_stack_temporary)
5021         (value_in_thread_stack_temporaries, can_access_registers_thread):
5022         Spell out "struct thread_info" instead of just "thread_info".
5023         * inferior.h (notice_new_inferior): Likewise.
5024
5025 2018-06-25  Pedro Alves  <palves@redhat.com>
5026
5027         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5028         pass thread_info pointer to delete_thread.
5029         (windows_nat_target::detach): Pass inferior pointer to
5030         detach_inferior.
5031         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
5032         delete_thread.
5033         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
5034         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
5035         and pass a thread_info pointer to delete_thread.
5036         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
5037         pass thread_info pointer to delete_thread.
5038         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
5039         delete_thread_silent call.
5040         * procfs.c (procfs_target::detach): Pass inferior pointer to
5041         detach_inferior.
5042         (procfs_target::wait): Pass thread_info pointer to delete_thread.
5043         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
5044         delete_thread_silent call.
5045         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
5046         pass thread_info pointer to delete_thread.
5047         (windows_nat_target::detach): Pass inferior pointer to
5048         delete_inferior.
5049
5050 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5051
5052         * regcache.c (readable_regcache::read_part): Fix asserts.
5053         (reg_buffer::raw_collect_part): New function.
5054         (regcache::write_part): Fix asserts.
5055         (reg_buffer::raw_supply_part): New function.
5056         (regcache::transfer_regset_register): New helper function.
5057         (regcache::transfer_regset): Call new functions.
5058         (regcache_supply_regset): Use gdb_byte*.
5059         (regcache::supply_regset): Likewise.
5060         (regcache_collect_regset): Likewise.
5061         (regcache::collect_regset): Likewise.
5062         * regcache.h (reg_buffer::raw_collect_part): New declaration.
5063         (reg_buffer::raw_supply_part): Likewise.
5064         (regcache::transfer_regset_register): Likewise.
5065         (regcache::transfer_regset): Use gdb_byte*.
5066
5067 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
5068
5069         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
5070
5071 2018-06-21  Pedro Alves  <palves@redhat.com>
5072
5073         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
5074         instead of a ptid_t.  All callers adjusted.
5075         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
5076         adjusted.
5077         (print_ada_task_info, display_current_task_id, task_command_1):
5078         Adjust.
5079         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
5080         inferior_thread.
5081         (breakpoint_kind): Adjust.
5082         (remove_breakpoints_pid): Rename to ...
5083         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
5084         pointer.  All callers adjusted.
5085         (bpstat_clear_actions): Use inferior_thread.
5086         (get_bpstat_thread): New.
5087         (bpstat_do_actions): Use it.
5088         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
5089         to take a thread_info pointer.  All callers adjusted.
5090         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
5091         (breakpoint_re_set_thread): Use inferior_thread.
5092         * breakpoint.h (struct inferior): Forward declare.
5093         (bpstat_stop_status): Update.
5094         (remove_breakpoints_pid): Delete.
5095         (remove_breakpoints_inf): New.
5096         * bsd-uthread.c (bsd_uthread_target::wait)
5097         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
5098         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
5099         (maint_btrace_packet_history_cmd)
5100         (maint_btrace_clear_packet_history_cmd): Adjust.
5101         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
5102         inferior_thread.
5103         * cli/cli-interp.c: Include "inferior.h".
5104         * common/refcounted-object.h (struct
5105         refcounted_object_ref_policy): New.
5106         * compile/compile-object-load.c: Include gdbthread.h.
5107         (store_regs): Use inferior_thread.
5108         * corelow.c (core_target::close): Use current_inferior.
5109         (core_target_open): Adjust to use first_thread_of_inferior and use
5110         the current inferior.
5111         * ctf.c (ctf_target::close): Adjust to use current_inferior.
5112         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
5113         <thread>: ... this new field.  All references adjusted.
5114         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
5115         Take a thread_info pointer instead of a ptid_t.
5116         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
5117         (dummy_frame_discard, register_dummy_frame_dtor): Take a
5118         thread_info pointer instead of a ptid_t.
5119         * elfread.c: Include "inferior.h".
5120         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
5121         Use inferior_thread.
5122         * eval.c (evaluate_subexp): Likewise.
5123         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
5124         inferior_thread.
5125         * gdb_proc_service.h (struct thread_info): Forward declare.
5126         (struct ps_prochandle) <ptid>: Delete, replaced by ...
5127         <thread>: ... this new field.  All references adjusted.
5128         * gdbarch.h, gdbarch.c: Regenerate.
5129         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
5130         'thread' parameter.  All implementations and callers adjusted.
5131         * gdbthread.h (thread_info) <set_running>: New method.
5132         (delete_thread, delete_thread_silent): Take a thread_info pointer
5133         instead of a ptid.
5134         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
5135         (first_thread_of_process): Delete, replaced by ...
5136         (first_thread_of_inferior): ... this new function.  All callers
5137         adjusted.
5138         (any_live_thread_of_process): Delete, replaced by ...
5139         (any_live_thread_of_inferior): ... this new function.  All callers
5140         adjusted.
5141         (switch_to_thread, switch_to_no_thread): Declare.
5142         (is_executing): Delete.
5143         (enable_thread_stack_temporaries): Update comment.
5144         <enable_thread_stack_temporaries>: Take a thread_info pointer
5145         instead of a ptid_t.  Incref the thread.
5146         <~enable_thread_stack_temporaries>: Decref the thread.
5147         <m_ptid>: Delete
5148         <m_thr>: New.
5149         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5150         (get_last_thread_stack_temporary)
5151         (value_in_thread_stack_temporaries, can_access_registers_thread):
5152         Take a thread_info pointer instead of a ptid_t.  All callers
5153         adjusted.
5154         * infcall.c (get_call_return_value): Use inferior_thread.
5155         (run_inferior_call): Work with thread pointers instead of ptid_t.
5156         (call_function_by_hand_dummy): Work with thread pointers instead
5157         of ptid_t.  Use thread_info_ref.
5158         * infcmd.c (proceed_thread_callback): Access thread's state
5159         directly.
5160         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
5161         access thread's state directly.
5162         (continue_command): Use inferior_thread.
5163         (info_program_command): Use find_thread_ptid and access thread
5164         state directly.
5165         (proceed_after_attach_callback): Use thread state directly.
5166         (notice_new_inferior): Take a thread_info pointer instead of a
5167         ptid_t.  All callers adjusted.
5168         (exit_inferior): Take an inferior pointer instead of a pid.  All
5169         callers adjusted.
5170         (exit_inferior_silent): New.
5171         (detach_inferior): Delete.
5172         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
5173         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
5174         (detach_inferior_command, kill_inferior_command): Use
5175         find_inferior_id instead of valid_gdb_inferior_id and
5176         gdb_inferior_id_to_pid.
5177         (inferior_command): Use inferior and thread pointers.
5178         * inferior.h (struct thread_info): Forward declare.
5179         (notice_new_inferior): Take a thread_info pointer instead of a
5180         ptid_t.  All callers adjusted.
5181         (detach_inferior): Delete declaration.
5182         (exit_inferior, exit_inferior_silent): Take an inferior pointer
5183         instead of a pid.  All callers adjusted.
5184         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
5185         (valid_gdb_inferior_id): Delete.
5186         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
5187         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
5188         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
5189         ...
5190         <inf>: ... this new field.
5191         <step_ptid>: Delete, replaced by ...
5192         <step_thread>: ... this new field.
5193         (get_displaced_stepping_state): Take an inferior pointer instead
5194         of a pid.  All callers adjusted.
5195         (displaced_step_in_progress_any_inferior): Adjust.
5196         (displaced_step_in_progress_thread): Take a thread pointer instead
5197         of a ptid_t.  All callers adjusted.
5198         (displaced_step_in_progress, add_displaced_stepping_state): Take
5199         an inferior pointer instead of a pid.  All callers adjusted.
5200         (get_displaced_step_closure_by_addr): Adjust.
5201         (remove_displaced_stepping_state): Take an inferior pointer
5202         instead of a pid.  All callers adjusted.
5203         (displaced_step_prepare_throw, displaced_step_prepare)
5204         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
5205         All callers adjusted.
5206         (start_step_over): Adjust.
5207         (infrun_thread_ptid_changed): Remove bit updating ptids in the
5208         displaced step queue.
5209         (do_target_resume): Adjust.
5210         (fetch_inferior_event): Use inferior_thread.
5211         (context_switch, get_inferior_stop_soon): Take an
5212         execution_control_state pointer instead of a ptid_t.  All callers
5213         adjusted.
5214         (switch_to_thread_cleanup): Delete.
5215         (stop_all_threads): Use scoped_restore_current_thread.
5216         * inline-frame.c: Include "gdbthread.h".
5217         (inline_state) <inline_state>: Take a thread pointer instead of a
5218         ptid_t.  All callers adjusted.
5219         <ptid>: Delete, replaced by ...
5220         <thread>: ... this new field.
5221         (find_inline_frame_state): Take a thread pointer instead of a
5222         ptid_t.  All callers adjusted.
5223         (skip_inline_frames, step_into_inline_frame)
5224         (inline_skipped_frames, inline_skipped_symbol): Take a thread
5225         pointer instead of a ptid_t.  All callers adjusted.
5226         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
5227         (inline_skipped_frames, inline_skipped_symbol): Likewise.
5228         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
5229         pointers directly.
5230         * linux-nat.c (get_detach_signal): Likewise.
5231         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
5232         (thread_db_notice_clone): Adjust.
5233         (thread_db_find_new_threads_silently)
5234         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
5235         a thread pointer instead of a ptid_t.  All callers adjusted.
5236         * mi/mi-cmd-var.c: Include "inferior.h".
5237         (mi_cmd_var_update_iter): Update to use thread pointers.
5238         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
5239         inferior directly.
5240         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
5241         out to ...
5242         (mi_output_running): ... this new function.
5243         (mi_on_resume_1): Adjust to use it.
5244         (mi_user_selected_context_changed): Adjust to use inferior_thread.
5245         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
5246         directly.
5247         (interrupt_thread_callback): : Adjust to use thread and inferior
5248         pointers.
5249         * proc-service.c: Include "gdbthread.h".
5250         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
5251         * progspace-and-thread.c: Include "inferior.h".
5252         * progspace.c: Include "inferior.h".
5253         * python/py-exitedevent.c (create_exited_event_object): Adjust to
5254         hold a reference to an inferior_object.
5255         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
5256         inferior_thread.
5257         * python/py-inferior.c (struct inferior_object): Give the type a
5258         tag name instead of a typedef.
5259         (python_on_normal_stop): No need to check if the current thread is
5260         listed.
5261         (inferior_to_inferior_object): Change return type to
5262         inferior_object.  All callers adjusted.
5263         (find_thread_object): Delete, bits factored out to ...
5264         (thread_to_thread_object): ... this new function.
5265         * python/py-infthread.c (create_thread_object): Use
5266         inferior_to_inferior_object.
5267         (thpy_is_stopped): Use thread pointer directly.
5268         (gdbpy_selected_thread): Use inferior_thread.
5269         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
5270         field, replaced with ...
5271         <thread>: ... this new field.  All users adjusted.
5272         (btpy_insn_or_gap_new): Drop const.
5273         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
5274         callers adjusted.
5275         * python/py-record.c: Include "gdbthread.h".
5276         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5277         a ptid_t.  All callers adjusted.
5278         (gdbpy_current_recording): Use inferior_thread.
5279         * python/py-record.h (recpy_record_object) <ptid>: Delete
5280         field, replaced with ...
5281         <thread>: ... this new field.  All users adjusted.
5282         (recpy_element_object) <ptid>: Delete
5283         field, replaced with ...
5284         <thread>: ... this new field.  All users adjusted.
5285         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
5286         a ptid_t.  All callers adjusted.
5287         * python/py-threadevent.c: Include "gdbthread.h".
5288         (get_event_thread): Use thread_to_thread_object.
5289         * python/python-internal.h (struct inferior_object): Forward
5290         declare.
5291         (find_thread_object, find_inferior_object): Delete declarations.
5292         (thread_to_thread_object, inferior_to_inferior_object): New
5293         declarations.
5294         * record-btrace.c: Include "inferior.h".
5295         (require_btrace_thread): Use inferior_thread.
5296         (record_btrace_frame_sniffer)
5297         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
5298         (get_thread_current_frame): Use scoped_restore_current_thread and
5299         switch_to_thread.
5300         (get_thread_current_frame): Use thread pointer directly.
5301         (record_btrace_replay_at_breakpoint): Use thread's inferior
5302         pointer directly.
5303         * record-full.c: Include "inferior.h".
5304         * regcache.c: Include "gdbthread.h".
5305         (get_thread_arch_regcache): Use the inferior's address space
5306         directly.
5307         (get_thread_regcache, registers_changed_thread): New.
5308         * regcache.h (get_thread_regcache(thread_info *thread)): New
5309         overload.
5310         (registers_changed_thread): New.
5311         (remote_target) <remote_detach_1>: Swap order of parameters.
5312         (remote_add_thread): <remote_add_thread>: Return the new thread.
5313         (get_remote_thread_info(ptid_t)): New overload.
5314         (remote_target::remote_notice_new_inferior): Use thread pointers
5315         directly.
5316         (remote_target::process_initial_stop_replies): Use
5317         thread_info::set_running.
5318         (remote_target::remote_detach_1, remote_target::detach)
5319         (extended_remote_target::detach): Adjust.
5320         * stack.c (frame_show_address): Use inferior_thread.
5321         * target-debug.h (target_debug_print_thread_info_pp): New.
5322         * target-delegates.c: Regenerate.
5323         * target.c (default_thread_address_space): Delete.
5324         (memory_xfer_partial_1): Use current_inferior.
5325         (target_detach): Use current_inferior.
5326         (target_thread_address_space): Delete.
5327         (generic_mourn_inferior): Use current_inferior.
5328         * target.h (struct target_ops) <thread_address_space>: Delete.
5329         (target_thread_address_space): Delete.
5330         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
5331         pointers directly.
5332         (delete_thread_1, delete_thread, delete_thread_silent): Take a
5333         thread pointer instead of a ptid_t.  Adjust all callers.
5334         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
5335         (first_thread_of_process): Delete, replaced by ...
5336         (first_thread_of_inferior): ... this new function.  All callers
5337         adjusted.
5338         (any_thread_of_process): Rename to ...
5339         (any_thread_of_inferior): ... this, and take an inferior pointer.
5340         (any_live_thread_of_process): Rename to ...
5341         (any_live_thread_of_inferior): ... this, and take an inferior
5342         pointer.
5343         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
5344         (value_in_thread_stack_temporaries)
5345         (get_last_thread_stack_temporary): Take a thread pointer instead
5346         of a ptid_t.  Adjust all callers.
5347         (thread_info::set_running): New.
5348         (validate_registers_access): Use inferior_thread.
5349         (can_access_registers_ptid): Rename to ...
5350         (can_access_registers_thread): ... this, and take a thread
5351         pointer.
5352         (print_thread_info_1): Adjust to compare thread pointers instead
5353         of ptids.
5354         (switch_to_no_thread, switch_to_thread): Make extern.
5355         (scoped_restore_current_thread::~scoped_restore_current_thread):
5356         Use m_thread pointer directly.
5357         (scoped_restore_current_thread::scoped_restore_current_thread):
5358         Use inferior_thread.
5359         (thread_command): Use thread pointer directly.
5360         (thread_num_make_value_helper): Use inferior_thread.
5361         * top.c (execute_command): Use inferior_thread.
5362         * tui/tui-interp.c: Include "inferior.h".
5363         * varobj.c (varobj_create): Use inferior_thread.
5364         (value_of_root_1): Use find_thread_global_id instead of
5365         global_thread_id_to_ptid.
5366
5367 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
5368
5369         * regcache.c (readable_regcache::read_part): Avoid memcpy when
5370         possible.
5371         (regcache::write_part): Likewise.
5372         (readable_regcache::cooked_read_part): Update comment.
5373         (readable_regcache::cooked_write_part): Likewise.
5374         * regcache.h: (readable_regcache::read_part): Likewise.
5375         (regcache::write_part): Likewise.
5376
5377 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
5378             Dirk Schubert  <dirk.schubert@arm.com>
5379
5380         * aarch64-linux-nat.c (post_attach): New.
5381         (aarch64_linux_nat_target::post_attach): Override post_attach to
5382         record the number of hardware debug registers.
5383
5384 2018-06-20  Tom Tromey  <tom@tromey.com>
5385
5386         * python/py-param.c (add_setshow_generic): Make parameters const.
5387         (parmpy_init): Update.
5388
5389 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5390
5391         * regcache.h (regcache_cooked_read_ftype): Rename to...
5392         (register_read_ftype): ...this, change type to function_view.
5393         (class reg_buffer) <save>: Remove src parameter.
5394         (readonly_detached_regcache) <readonly_detached_regcache>: Make
5395         parameter non-const in first overload.  Remove src parameter in
5396         second overload.
5397         * regcache.c (do_cooked_read): Remove.
5398         (readonly_detached_regcache::readonly_detached_regcache): Make
5399         parameter non-const, adjust call to other constructor.
5400         (reg_buffer::save): Remove src parameter.
5401         * frame.c (do_frame_register_read): Remove.
5402         (frame_save_as_regcache): Use lambda function.
5403         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
5404         parameter to ppu2spu_data *.
5405         (ppu2spu_sniffer): Use lambda function.
5406
5407 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
5408
5409         * record-full.c (record_full_target::insert_breakpoint): Remove
5410         "struct" keyword, add const.
5411
5412 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
5413
5414         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
5415         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
5416         * configure.ac: Remove AC_PREREQ, add missing quoting.
5417         * gnulib/configure.ac: Modernize usage of
5418         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
5419         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
5420         (AUTOMAKE_VERSION): Bump to 1.15.1.
5421         * configure: Re-generate.
5422         * config.in: Re-generate.
5423         * aclocal.m4: Re-generate.
5424         * gnulib/aclocal.m4: Re-generate.
5425         * gnulib/config.in: Re-generate.
5426         * gnulib/configure: Re-generate.
5427         * gnulib/import/Makefile.in: Re-generate.
5428
5429 2018-06-19  Pedro Alves  <palves@redhat.com>
5430
5431         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
5432         (lookup_minimal_symbol_by_pc_section): ... here with
5433         gdb_assert_not_reached added.
5434
5435 2018-06-19  Pedro Alves  <palves@redhat.com>
5436
5437         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
5438         parameter with a block parameter.  Compare location's block symbol
5439         with the frame's block instead of addresses.
5440         (skip_inline_frames): Pass the current block instead of the
5441         frame's address.  Break out as soon as we determine the frame
5442         should not be skipped.
5443
5444 2018-06-18  Tom Tromey  <tom@tromey.com>
5445
5446         * solib-aix.c (solib_aix_get_section_offsets): Return
5447         unique_xmalloc_ptr.
5448         (solib_aix_solib_create_inferior_hook): Update.
5449
5450 2018-06-18  Tom Tromey  <tom@tromey.com>
5451
5452         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
5453
5454 2018-06-18  Tom Tromey  <tom@tromey.com>
5455
5456         * solib-frv.c (frv_relocate_main_executable): Use
5457         unique_xmalloc_ptr.
5458         * solib-dsbt.c (dsbt_relocate_main_executable): Use
5459         unique_xmalloc_ptr.
5460
5461 2018-06-18  Tom Tromey  <tom@tromey.com>
5462
5463         * objfiles.h (inhibit_section_map_updates): Update.
5464         (resume_section_map_updates, resume_section_map_updates_cleanup):
5465         Remove.
5466         * solib-svr4.c (svr4_handle_solib_event): Update.
5467         * objfiles.c (inhibit_section_map_updates): Return
5468         scoped_restore_tmpl<int>.
5469         (resume_section_map_updates, resume_section_map_updates_cleanup):
5470         Remove.
5471
5472 2018-06-18  Tom Tromey  <tom@tromey.com>
5473
5474         * valprint.h (read_string): Update.
5475         * valprint.c (read_string): Change type of "buffer".
5476         (val_print_string): Update.
5477         * python/py-value.c (valpy_string): Update.
5478         * language.h (struct language_defn) <la_get_string>: Change
5479         type of "buffer".
5480         (default_get_string, c_get_string): Update.
5481         * language.c (default_get_string): Change type of "buffer".
5482         * guile/scm-value.c (gdbscm_value_to_string): Update.
5483         * c-lang.c (c_get_string): Change type of "buffer".
5484
5485 2018-06-18  Tom Tromey  <tom@tromey.com>
5486
5487         * ser-mingw.c (struct pipe_state_destroyer): New.
5488         (pipe_state_up): New typedef.
5489         (cleanup_pipe_state): Remove.
5490         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
5491
5492 2018-06-18  Tom Tromey  <tom@tromey.com>
5493
5494         * rust-lang.h (rust_yyerror): Don't declare.
5495         * rust-lang.c (rust_language_defn): Update.
5496         * rust-exp.y (yyerror): Now static.
5497         * parse.c (parse_exp_in_context_1): Update.
5498         * p-lang.h (p_yyerror): Don't declare.
5499         * p-lang.c (p_language_defn): Update.
5500         * p-exp.y (yyerror): Now static.
5501         * opencl-lang.c (opencl_language_defn): Update.
5502         * objc-lang.c (objc_language_defn): Update.
5503         * m2-lang.h (m2_yyerror): Don't declare.
5504         * m2-lang.c (m2_language_defn): Update.
5505         * m2-exp.y (yyerror): Now static.
5506         * language.h (struct language_defn) <la_error>: Remove.
5507         * language.c (unk_lang_error): Remove.
5508         (unknown_language_defn, auto_language_defn): Remove.
5509         * go-lang.h (go_yyerror): Don't declare.
5510         * go-lang.c (go_language_defn): Update.
5511         * go-exp.y (yyerror): Now static.
5512         * f-lang.h (f_yyerror): Don't declare.
5513         * f-lang.c (f_language_defn): Update.
5514         * f-exp.y (yyerror): Now static.
5515         * d-lang.h (d_yyerror): Don't declare.
5516         * d-lang.c (d_language_defn): Update.
5517         * d-exp.y (yyerror): Now static.
5518         * c-lang.h (c_yyerror): Don't declare.
5519         * c-lang.c (c_language_defn, cplus_language_defn)
5520         (asm_language_defn, minimal_language_defn): Update.
5521         * c-exp.y (yyerror): Now static.
5522         * ada-lang.h (ada_yyerror): Don't declare.
5523         * ada-lang.c (ada_language_defn): Update.
5524         * ada-exp.y (yyerror): Now static.
5525
5526 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5527
5528         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
5529         (store_sveregs_to_thread): Likewise.
5530         (aarch64_linux_fetch_inferior_registers): Check for SVE.
5531         (aarch64_linux_store_inferior_registers): Likewise.
5532         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
5533         function.
5534         (aarch64_sve_regs_copy_to_regcache): Likewise.
5535         (aarch64_sve_regs_copy_from_regcache): Likewise.
5536         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
5537         declaration.
5538         (aarch64_sve_regs_copy_to_regcache): Likewise.
5539         (aarch64_sve_regs_copy_from_regcache): Likewise.
5540         (sve_context): Structure from Linux headers.
5541         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
5542         (SVE_SIG_ZREG_SIZE): Likewise.
5543         (SVE_SIG_PREG_SIZE): Likewise.
5544         (SVE_SIG_FFR_SIZE): Likewise.
5545         (SVE_SIG_REGS_OFFSET): Likewise.
5546         (SVE_SIG_ZREGS_OFFSET): Likewise.
5547         (SVE_SIG_ZREG_OFFSET): Likewise.
5548         (SVE_SIG_ZREGS_SIZE): Likewise.
5549         (SVE_SIG_PREGS_OFFSET): Likewise.
5550         (SVE_SIG_PREG_OFFSET): Likewise.
5551         (SVE_SIG_PREGS_SIZE): Likewise.
5552         (SVE_SIG_FFR_OFFSET): Likewise.
5553         (SVE_SIG_REGS_SIZE): Likewise.
5554         (SVE_SIG_CONTEXT_SIZE): Likewise.
5555         (SVE_PT_REGS_MASK): Likewise.
5556         (SVE_PT_REGS_FPSIMD): Likewise.
5557         (SVE_PT_REGS_SVE): Likewise.
5558         (SVE_PT_VL_INHERIT): Likewise.
5559         (SVE_PT_VL_ONEXEC): Likewise.
5560         (SVE_PT_REGS_OFFSET): Likewise.
5561         (SVE_PT_FPSIMD_OFFSET): Likewise.
5562         (SVE_PT_FPSIMD_SIZE): Likewise.
5563         (SVE_PT_SVE_ZREG_SIZE): Likewise.
5564         (SVE_PT_SVE_PREG_SIZE): Likewise.
5565         (SVE_PT_SVE_FFR_SIZE): Likewise.
5566         (SVE_PT_SVE_FPSR_SIZE): Likewise.
5567         (SVE_PT_SVE_FPCR_SIZE): Likewise.
5568         (__SVE_SIG_TO_PT): Likewise.
5569         (SVE_PT_SVE_OFFSET): Likewise.
5570         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
5571         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
5572         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
5573         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
5574         (SVE_PT_SVE_PREG_OFFSET): Likewise.
5575         (SVE_PT_SVE_PREGS_SIZE): Likewise.
5576         (SVE_PT_SVE_FFR_OFFSET): Likewise.
5577         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
5578         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
5579         (SVE_PT_SVE_SIZE): Likewise.
5580         (SVE_PT_SIZE): Likewise.
5581         (HAS_SVE_STATE): New define.
5582
5583 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
5584
5585         * nat/aarch64-sve-linux-sigcontext.h: New file.
5586         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
5587         new files.
5588         (SVE_VQ_MIN): Likewise.
5589         (SVE_VQ_MAX): Likewise.
5590         (SVE_VL_MIN): Likewise.
5591         (SVE_VL_MAX): Likewise.
5592         (SVE_NUM_ZREGS): Likewise.
5593         (SVE_NUM_PREGS): Likewise.
5594         (sve_vl_valid): Likewise.
5595         (struct user_sve_header): Likewise.
5596
5597 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
5598             Richard Bunt <Richard.Bunt@arm.com>
5599
5600         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
5601         was requested by GDB.
5602
5603 2018-06-15  Tom de Vries  <tdevries@suse.de>
5604
5605         * MAINTAINERS (Write After Approval): Add Tom de Vries.
5606
5607 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
5608
5609         * gnulib/update-gnulib.sh: Print expected versions of
5610         autoconf/aclocal.
5611
5612 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
5613
5614         * arch-utils.c (default_type_align): Use type_length_units.
5615         * gdbtypes.c (type_align): Use type_length_units.
5616
5617 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5618
5619         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
5620         of 'define' command.
5621
5622 2018-06-14  Tom de Vries  <tdevries@suse.de>
5623
5624         PR cli/22573
5625         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
5626         get_no_prettyformat_print_options.
5627
5628 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
5629
5630         * sparc-nat.h: Include target.h.
5631         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
5632         <fetch_registers>: Remove this argument in function call.
5633         <store_registers>: Remove this argument in function call, remove
5634         extra semicolon.
5635         <low_forget_process>: Call sparc64_forget_process instead of
5636         sparc_forget_process.
5637
5638 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5639
5640         * procfs.c (_initialize_procfs): Use add_inf_child_target.
5641         (procfs_target::make_corefile_notes): Adjust to new
5642         target_read_alloc return type.
5643
5644 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5645             Stephen Roberts  <stephen.roberts@arm.com>
5646
5647         PR gdb/22882
5648         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
5649         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
5650         Move should_notify_stop local into more inner scope.
5651
5652 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5653             Stephen Roberts  <stephen.roberts@arm.com>
5654
5655         PR gdb/22882
5656         * infrun.c (resume_1): Add call to mark_async_event_handler.
5657
5658 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
5659
5660         * infrun.c (do_target_wait): Change old version of $pc printed.
5661
5662 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
5663
5664         * dwarf2read.c (read_index_from_section): Rename to...
5665         (read_gdb_index_from_section): ... this, update all callers.
5666         (dwarf2_read_index): Rename to...
5667         (dwarf2_read_gdb_index): ... this, update all callers.
5668
5669 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
5670
5671         * gdb/hppa-linux-nat.c
5672         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
5673         hppa_linux_nat_target::fetch_registers.
5674
5675 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5676
5677         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
5678         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
5679         (AARCH64_DWARF_SVE_FFR): Likewise.
5680         (AARCH64_DWARF_SVE_P0): Likewise.
5681         (AARCH64_DWARF_SVE_Z0): Likewise.
5682
5683 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5684
5685         * common/common-regcache.h (raw_compare): New function.
5686         * regcache.c (regcache::raw_compare): Likewise.
5687         * regcache.h (regcache::raw_compare): New declaration.
5688
5689 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
5690
5691         * common/common-regcache.h (reg_buffer_common): New structure.
5692         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
5693         (reg_buffer::raw_supply): Likewise.
5694         (reg_buffer::raw_supply_integer): Likewise.
5695         (reg_buffer::raw_supply_zeroed): Likewise.
5696         (reg_buffer::raw_collect): Likewise.
5697         (reg_buffer::raw_collect_integer): Likewise.
5698         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
5699         (reg_buffer::raw_supply): Likewise.
5700         (reg_buffer::raw_supply_integer): Likewise.
5701         (reg_buffer::raw_supply_zeroed): Likewise.
5702         (reg_buffer::raw_collect): Likewise.
5703         (reg_buffer::raw_collect_integer): Likewise.
5704
5705 2018-06-10  Tom Tromey  <tom@tromey.com>
5706
5707         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
5708         (class remote_state) <stop_reply_queue>: Now std::vector.
5709         (remote_state::~remote_state)
5710         (remote_target::stop_reply_queue_length): Update.
5711         (struct queue_iter_param, remove_child_of_pending_fork)
5712         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
5713         (check_pending_event_prevents_wildcard_vcont_callback)
5714         (remove_stop_reply_for_inferior)
5715         (remove_stop_reply_of_remote_state)
5716         (remote_notif_remove_once_on_match)
5717         (stop_reply_match_ptid_and_ws)
5718         (remote_kill_child_of_pending_fork): Remove.
5719         (remote_target::remove_new_fork_children)
5720         (remote_target::check_pending_events_prevent_wildcard_vcont)
5721         (remote_target::discard_pending_stop_replies)
5722         (remote_target::discard_pending_stop_replies_in_queue)
5723         (remote_target::remote_notif_remove_queued_reply)
5724         (remote_target::queued_stop_reply)
5725         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
5726         (remote_target::wait, remote_target::kill_new_fork_children)
5727         (remote_target::async): Update.
5728
5729 2018-06-10  Tom Tromey  <tom@tromey.com>
5730
5731         * record-full.c (record_full_arch_list_cleanups): Remove.
5732         (record_full_message): Use try/catch.
5733         (record_full_wait_cleanups): Remove.
5734         (record_full_wait_1): Use try/catch.
5735         (record_full_restore): Likewise.
5736
5737 2018-06-10  Tom Tromey  <tom@tromey.com>
5738
5739         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
5740         declare VEC.  Add constructor.
5741         <in_target_beneath>: Now bool.
5742         (record_full_breakpoints): Now a std::vector, static.
5743         (record_full_sync_record_breakpoints)
5744         (record_full_init_record_breakpoints)
5745         (record_full_target::insert_breakpoint)
5746         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
5747
5748 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
5749
5750         * dwarf2read.c (process_cu_includes): Remove struct keyword.
5751         * serial.c (serial_interface_lookup): Remove struct keyword.
5752
5753 2018-06-10  Tom Tromey  <tom@tromey.com>
5754
5755         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
5756         method.
5757         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
5758         a method.
5759         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
5760         method.
5761         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
5762         "beneath" as a method.
5763         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
5764         Use "beneath" as a method.
5765
5766 2018-06-10  Tom Tromey  <tom@tromey.com>
5767
5768         * tracefile.c (struct trace_file_writer_deleter): New.
5769         <operator()>: Rename from trace_file_writer_xfree.
5770         (trace_file_writer_up): New typedef.
5771         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
5772
5773 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5774
5775         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
5776         <m_registers, m_register_status>: Change type to
5777         std::unique_ptr.
5778         * regcache.c (reg_buffer::reg_buffer): Use new instead of
5779         XCNEWVEC.
5780
5781 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5782
5783         * common/common-regcache.h (enum register_status): Add
5784         underlying type "signed char".
5785         * regcache.h (reg_buffer) <m_register_status>: Change type to
5786         register_status *.
5787         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5788         register_status instead of signed char.
5789         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5790         (reg_buffer::get_register_status): Remove cast.
5791         (readable_regcache::raw_read): Remove cast.
5792         (readable_regcache::cooked_read): Remove cast.
5793
5794 2018-06-09  Tom Tromey  <tom@tromey.com>
5795
5796         * source.c (reverse_search_command, forward_search_command): Use
5797         scoped_fd.
5798
5799 2018-06-09  Tom Tromey  <tom@tromey.com>
5800
5801         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5802         (serial_ops_list): Now static, std::vector.
5803         (serial_interface_lookup, serial_add_interface): Update.
5804
5805 2018-06-09  Tom Tromey  <tom@tromey.com>
5806
5807         * dwarf2read.c (process_cu_includes): Update.
5808         (process_full_comp_unit): Update.
5809         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5810         std::vector.
5811
5812 2018-06-08  Paul Koning  <paul_koning@dell.com>
5813
5814         PR gdb/23252
5815
5816         * python/python.c (do_start_initialization):
5817         Avoid call to internal Python API.
5818         (init__gdb_module): New function.
5819
5820 2018-06-08  Gary Benson <gbenson@redhat.com>
5821
5822         * linux-thread-db.c (valprint.h): New include.
5823         (struct check_thread_db_info): New structure.
5824         (check_thread_db_on_load, tdb_testinfo): New static globals.
5825         (check_thread_db, check_thread_db_callback): New functions.
5826         (try_thread_db_load_1): Run integrity checks if requested.
5827         (maintenance_check_libthread_db): New function.
5828         (_initialize_thread_db): Register "maint check libthread-db"
5829         and "maint set/show check-libthread-db".
5830         * NEWS: Mention the above new commands.
5831
5832 2018-06-08  Tom Tromey  <tom@tromey.com>
5833
5834         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5835         now a method.
5836
5837 2018-06-08  Tom Tromey  <tom@tromey.com>
5838
5839         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5840
5841 2018-06-08  Tom Tromey  <tom@tromey.com>
5842
5843         * common/btrace-common.h (struct btrace_data): Add constructor,
5844         destructor, move assignment operator.
5845         <empty, clear, fini>: New methods.
5846         <format>: Initialize.
5847         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5848         (btrace_data_empty): Don't declare.
5849         * common/btrace-common.c (btrace_data_init): Remove.
5850         (btrace_data::fini): Rename from btrace_data_fini.
5851         (btrace_data::empty): Rename from btrace_data_empty.
5852         (btrace_data::clear): Rename from btrace_data_clear.  Return
5853         bool.
5854         * btrace.h (make_cleanup_btrace_data): Don't declare.
5855         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5856         (parse_xml_btrace): Update.
5857         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5858         (maint_btrace_clear_packet_history_cmd): Update.
5859
5860 2018-06-07  Pedro Alves  <palves@redhat.com>
5861
5862         * target.h (target_ops) <beneath>: Now a method.  All references
5863         updated.
5864         (class target_stack): New.
5865         * target.c (g_target_stack): New.
5866         (g_current_top_target): Delete.
5867         (current_top_target): Get the top target out of g_target_stack.
5868         (target_stack::push, target_stack::unpush): New.
5869         (push_target, unpush_target): Reimplement.
5870         (target_is_pushed): Reimplement in terms of g_target_stack.
5871         (target_ops::beneath, target_stack::find_beneath): New.
5872
5873 2018-06-07  Pedro Alves  <palves@redhat.com>
5874
5875         * target.h (find_target_beneath): Delete declaration.
5876         * target.c (find_target_beneath): Delete definition.
5877         * aix-thread.c: All callers of find_target_beneath adjusted to
5878         call target_ops::beneath instead.
5879         * bsd-uthread.c: Likewise.
5880         * linux-thread-db.c: Likewise.
5881         * ravenscar-thread.c: Likewise.
5882         * sol-thread.c: Likewise.
5883         * spu-multiarch.c: Likewise.
5884
5885 2018-06-07  Pedro Alves  <palves@redhat.com>
5886
5887         * target.h (target_ops) <beneath>: Now a method.  All references
5888         updated.
5889         (target_ops) <m_beneath>: New.
5890         * target.c (target_ops::beneath): New.
5891         * corelow.c: Adjust all references to target_ops::beneath.
5892         * linux-thread-db.c: Likewise.
5893         * make-target-delegates: Likewise.
5894         * record-btrace.c: Likewise.
5895         * record-full.c: Likewise.
5896         * remote.c: Likewise.
5897         * target.c: Likewise.
5898         * target-delegates.c: Regenerate.
5899
5900 2018-06-07  Pedro Alves  <palves@redhat.com>
5901
5902         * target.h (target_stack): Delete.
5903         (current_top_target): Declare function.
5904         * target.c (target_stack): Delete.
5905         (g_current_top_target): New.
5906         (current_top_target): New function.
5907         * auxv.c: Use current_top_target instead of target_stack
5908         throughout.
5909         * avr-tdep.c: Likewise.
5910         * breakpoint.c: Likewise.
5911         * corefile.c: Likewise.
5912         * elfread.c: Likewise.
5913         * eval.c: Likewise.
5914         * exceptions.c: Likewise.
5915         * frame.c: Likewise.
5916         * gdbarch-selftests.c: Likewise.
5917         * gnu-v3-abi.c: Likewise.
5918         * ia64-tdep.c: Likewise.
5919         * ia64-vms-tdep.c: Likewise.
5920         * infcall.c: Likewise.
5921         * infcmd.c: Likewise.
5922         * infrun.c: Likewise.
5923         * linespec.c: Likewise.
5924         * linux-tdep.c: Likewise.
5925         * minsyms.c: Likewise.
5926         * ppc-linux-nat.c: Likewise.
5927         * ppc-linux-tdep.c: Likewise.
5928         * procfs.c: Likewise.
5929         * regcache.c: Likewise.
5930         * remote.c: Likewise.
5931         * rs6000-tdep.c: Likewise.
5932         * s390-linux-nat.c: Likewise.
5933         * s390-tdep.c: Likewise.
5934         * solib-aix.c: Likewise.
5935         * solib-darwin.c: Likewise.
5936         * solib-dsbt.c: Likewise.
5937         * solib-spu.c: Likewise.
5938         * solib-svr4.c: Likewise.
5939         * solib-target.c: Likewise.
5940         * sparc-tdep.c: Likewise.
5941         * sparc64-tdep.c: Likewise.
5942         * spu-tdep.c: Likewise.
5943         * symfile.c: Likewise.
5944         * symtab.c: Likewise.
5945         * target-descriptions.c: Likewise.
5946         * target-memory.c: Likewise.
5947         * target.c: Likewise.
5948         * target.h: Likewise.
5949         * tracefile-tfile.c: Likewise.
5950         * tracepoint.c: Likewise.
5951         * valops.c: Likewise.
5952         * valprint.c: Likewise.
5953         * value.c: Likewise.
5954         * windows-tdep.c: Likewise.
5955         * mi/mi-main.c: Likewise.
5956
5957 2018-06-07  Tom Tromey  <tom@tromey.com>
5958
5959         * valprint.h (build_address_symbolic): Declare.
5960         * printcmd.c (print_address_symbolic): Update.
5961         (build_address_symbolic): Change "name" and "filename" to
5962         std::string.
5963         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5964         Update.
5965         * defs.h (build_address_symbolic): Remove declaration.
5966
5967 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5968
5969         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5970         (aarch64_vnv_type): Add function.
5971         (aarch64_pseudo_register_name): Add V regs for SVE.
5972         (aarch64_pseudo_register_type): Likewise.
5973         (aarch64_pseudo_register_reggroup_p): Likewise.
5974         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5975         (aarch64_pseudo_read_value): Add V regs for SVE.
5976         (aarch64_pseudo_write_2): Use V0 offset for SVE
5977         (aarch64_pseudo_write): Add V regs for SVE.
5978         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5979
5980 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5981
5982         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5983         (sve_vl_from_vq): Likewise.
5984
5985 2018-06-05  Tom Tromey  <tom@tromey.com>
5986
5987         * cli/cli-cmds.c (show_version): Update.
5988         * top.c (print_gdb_version): Add "interactive" parameter.
5989         Update.
5990         * main.c (captured_main_1): Update.
5991         * top.h (print_gdb_version): Add "interactive" parameter and a
5992         comment.
5993
5994 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5995
5996         * common/enum-flags.h: Add trailing semicolon to example in
5997         comment.
5998
5999 2018-06-05  Tom Tromey  <tom@tromey.com>
6000
6001         PR cli/12326:
6002         * NEWS: Add entry about pager.
6003         * utils.c (pagination_disabled_for_command): New global.
6004         (prompt_for_continue): Allow "c" response to prompt.
6005         (reinitialize_more_filter): Clear
6006         pagination_disabled_for_command.
6007         (fputs_maybe_filtered): Check pagination_disabled_for_command.
6008
6009 2018-06-04  Tom Tromey  <tom@tromey.com>
6010
6011         * ada-lang.h (ada_lookup_symbol_list): Update.
6012         * ada-lang.c (resolve_subexp): Update.
6013         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
6014         parameter.
6015         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
6016         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
6017         results parameter to std::vector.
6018         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
6019         Update.
6020         * ada-exp.y (block_lookup): Update.
6021         (select_possible_type_sym): Change type of syms.  Remove nsyms
6022         parameter.
6023         (write_var_or_type, write_name_assoc): Update.
6024
6025 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
6026
6027         * windows-nat.c (windows_nat_target::xfer_partial): Return
6028         TARGET_XFER_E_IO if we need to delegate to the target beneath
6029         but BENEATH is NULL.
6030
6031 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
6032
6033         * Makefile.in (config.status): Add configure.nat as a
6034         dependency.
6035
6036 2018-06-04  Tom Tromey  <tom@tromey.com>
6037
6038         * cp-name-parser.y (cpname_state): Add method declarations.
6039         (HANDLE_QUAL): Update.
6040         (cpname_state::d_grab, cpname_state::fill_comp)
6041         (cpname_state::make_operator, cpname_state::make_dtor)
6042         (cpname_state::make_builtin_type, cpname_state::make_name)
6043         (cpname_state::d_qualify, cpname_state::d_int_type)
6044         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
6045         (%union): Move earlier.
6046
6047 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6048
6049         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
6050
6051 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6052
6053         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
6054         (aarch64_pseudo_write_1): Likewise.
6055         (aarch64_pseudo_read_value): Use helper.
6056         (aarch64_pseudo_write): Likewise.
6057
6058 2018-06-04  Pedro Alves  <palves@redhat.com>
6059
6060         * darwin-nat.c (darwin_ops): Delete.
6061         (darwin_attach_pid): Use get_native_target.
6062
6063 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6064
6065         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
6066         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
6067
6068 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6069
6070         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
6071         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
6072         (aarch64_gdbarch_init): Check for SVE.
6073         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
6074
6075 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
6076
6077         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
6078         * aarch64-tdep.h (aarch64_read_description): Likewise.
6079         * arch/aarch64.c (aarch64_create_target_description): Likewise.
6080         * arch/aarch64.h (aarch64_create_target_description): Likewise.
6081         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
6082         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
6083         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
6084
6085 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
6086
6087         * value.c (value_fetch_lazy_bitfield): New.
6088         (value_fetch_lazy_memory): New.
6089         (value_fetch_lazy_register): New.
6090         (value_fetch_lazy): Factor out to smaller functions.
6091
6092 2018-06-01  Tom Tromey  <tom@tromey.com>
6093
6094         * cp-name-parser.y (backslashable, represented): Now const.
6095
6096 2018-06-01  Tom Tromey  <tom@tromey.com>
6097
6098         * cp-name-parser.y: Include parser-defs.h.
6099         (parser_fprintf): Remove declaration.
6100
6101 2018-06-01  Tom Tromey  <tom@tromey.com>
6102
6103         * cp-name-parser.y: Use %pure-parser, %lex-param, and
6104         %parse-param.
6105         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
6106         (global_result): Remove globals.
6107         (struct cpname_state): New.
6108         (yyparse): Don't declare.
6109         (yylex, yyerror): Move declarations after %union.
6110         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
6111         (make_name): Add state parameter.
6112         Update all callers.
6113         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
6114         parameter.
6115         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
6116         Update.
6117         (yylex): Add lvalp, state parameters.
6118         (yyerror): Add state parameter.
6119         (cp_demangled_name_to_comp): Update.
6120
6121 2018-06-01  Tom Tromey  <tom@tromey.com>
6122
6123         * cp-name-parser.y (parser_fprintf): Declare.
6124         (GDB_YY_REMAP_PREFIX): Define.
6125         Include yy-remap.h.  Don't redefine yy* identifiers.
6126
6127 2018-06-01  Tom Tromey  <tom@tromey.com>
6128
6129         * python/py-type.c (typy_legacy_template_argument): Update.
6130         * cp-support.h (cp_demangled_name_to_comp): Update.
6131         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
6132         parameter to be a "std::string *".
6133         (main): Update.
6134
6135 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
6136
6137         * ada-lex.l: Include "diagnostics.h" instead of
6138         "common/diagnostics.h".
6139         * unittests/environ-selftests.c: Likewise.
6140         * common/diagnostics.h: Moved to ../include.
6141
6142 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
6143
6144         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
6145         to language_mode_manual while calling breakpoint_re_set_one.
6146
6147 2018-06-01  Tom Tromey  <tom@tromey.com>
6148
6149         * valops.c (value_cast_structs, destructor_name_p): Update.
6150         * symtab.c (gdb_mangle_name): Update.
6151         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
6152         Update.
6153         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
6154         (pascal_object_print_value_fields, pascal_object_print_value):
6155         Update.
6156         * p-typeprint.c (pascal_type_print_derivation_info): Update.
6157         * linespec.c (find_methods): Update.
6158         * gdbtypes.h (type_name_no_tag): Remove.
6159         (type_name_or_error): Rename from type_name_no_tag_or_error.
6160         * gdbtypes.c (type_name_no_tag): Remove.
6161         (type_name_or_error): Rename from type_name_no_tag_or_error.
6162         (lookup_struct_elt_type, check_typedef): Update.
6163         * expprint.c (print_subexp_standard): Update.
6164         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
6165         * d-namespace.c (d_lookup_nested_symbol): Update.
6166         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
6167         (cp_print_class_member): Update.
6168         * cp-namespace.c (cp_lookup_nested_symbol): Update.
6169         * completer.c (add_struct_fields): Update.
6170         * c-typeprint.c (cp_type_print_derivation_info)
6171         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
6172         Update.
6173         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
6174         (ada_prefer_type, ada_is_exception_sym): Update.
6175
6176 2018-06-01  Tom Tromey  <tom@tromey.com>
6177
6178         * valops.c (enum_constant_from_type, value_namespace_elt)
6179         (value_maybe_namespace_elt): Update.
6180         * valarith.c (find_size_for_pointer_math): Update.
6181         * target-descriptions.c (make_gdb_type): Update.
6182         * symmisc.c (print_symbol): Update.
6183         * stabsread.c (define_symbol, read_type)
6184         (complain_about_struct_wipeout, add_undefined_type)
6185         (cleanup_undefined_types_1): Update.
6186         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
6187         (rust_range_type_p, val_print_struct, rust_print_struct_def)
6188         (rust_internal_print_type, rust_composite_type)
6189         (rust_evaluate_funcall, rust_evaluate_subexp)
6190         (rust_inclusive_range_type_p): Update.
6191         * python/py-type.c (typy_get_tag): Update.
6192         * p-typeprint.c (pascal_type_print_base): Update.
6193         * mdebugread.c (parse_symbol, parse_type): Update.
6194         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
6195         Update.
6196         * guile/scm-type.c (gdbscm_type_tag): Update.
6197         * go-lang.c (sixg_string_p): Update.
6198         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
6199         Update.
6200         * gdbtypes.h (struct main_type) <tag_name>: Remove.
6201         (TYPE_TAG_NAME): Remove.
6202         * gdbtypes.c (type_name_no_tag): Simplify.
6203         (check_typedef, check_types_equal, recursive_dump_type)
6204         (copy_type_recursive, arch_composite_type): Update.
6205         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
6206         in summary mode when needed.
6207         * eval.c (evaluate_funcall): Update.
6208         * dwarf2read.c (fixup_go_packaging, read_structure_type)
6209         (process_structure_scope, read_enumeration_type)
6210         (read_namespace_type, read_module_type, determine_prefix): Update.
6211         * cp-support.c (inspect_type): Update.
6212         * coffread.c (process_coff_symbol, decode_base_type): Update.
6213         * c-varobj.c (c_is_path_expr_parent): Update.
6214         * c-typeprint.c (c_type_print_base_struct_union): Update.
6215         (c_type_print_base_1): Update.  Print struct/class/union/enum in
6216         summary when using C language.
6217         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
6218         (gen_maybe_namespace_elt): Update.
6219         * ada-lang.c (ada_type_name): Simplify.
6220         (empty_record, ada_template_to_fixed_record_type_1)
6221         (template_to_static_fixed_type)
6222         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
6223
6224 2018-06-01  Tom Tromey  <tom@tromey.com>
6225
6226         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
6227         c_print_type.
6228         * c-typeprint.c (c_print_type_1): Add "language" parameter.
6229         (c_print_type): Update.
6230         (c_print_type): New overload.
6231         (c_type_print_varspec_prefix, c_type_print_args)
6232         (c_type_print_varspec_suffix, c_print_type_no_offsets)
6233         (c_type_print_base_struct_union, c_type_print_base_1)
6234         (cp_type_print_method_args): Add "language" parameter.
6235         (c_type_print_base): Update.
6236         * c-lang.h (c_print_type): Add new overload.
6237
6238 2018-06-01  Tom Tromey  <tom@tromey.com>
6239
6240         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
6241         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
6242
6243 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
6244
6245         * aarch64-tdep.c (aarch64_sve_register_names): New const
6246         var.
6247         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
6248         (AARCH64_SVE_Z_REGS_NUM): New define.
6249         (AARCH64_SVE_P_REGS_NUM): Likewise.
6250         (AARCH64_SVE_NUM_REGS): Likewise.
6251
6252 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
6253
6254         * nat/linux-ptrace.h [__alpha__]
6255         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
6256         definitions.
6257
6258 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
6259
6260         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
6261         the endianness selected.
6262         * NEWS: Document `set endian auto' mode operation update.
6263
6264 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6265
6266         * Makefile.in: Add new header.
6267         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
6268         (sve_vl_from_vg): Likewise.
6269         (sve_vq_from_vl): Likewise.
6270         (sve_vl_from_vq): Likewise.
6271         (sve_vq_from_vg): Likewise.
6272         (sve_vg_from_vq): Likewise.
6273         * configure.nat: Add new c file.
6274         * nat/aarch64-sve-linux-ptrace.c: New file.
6275         * nat/aarch64-sve-linux-ptrace.h: New file.
6276
6277 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
6278
6279         * aarch64-linux-nat.c (aarch64_linux_read_description):
6280         Add parmeter zero.
6281         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
6282         Likewise.
6283         * aarch64-tdep.c (tdesc_aarch64_list): Add.
6284         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
6285         (aarch64_gdbarch_init): Add parmeter zero.
6286         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
6287         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
6288         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
6289         parmeter.
6290         * doc/gdb.texinfo: Describe SVE feature
6291         * features/aarch64-sve.c: New file.
6292
6293 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
6294
6295         PR gdb/23210
6296         * gdbarch.sh (significant_addr_bit): Default to zero when
6297         not set by target architecture.
6298         * gdbarch.c: Re-generated.
6299         * utils.c (address_significant): Update.
6300
6301 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
6302
6303         * stack.c (func_command): Remove trailing newline in call to error.
6304
6305 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6306
6307         * regcache.h (regcache_raw_collect): Remove, update callers to
6308         use regcache::raw_collect.
6309         * regcache.c (regcache_raw_collect): Remove.
6310
6311 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6312
6313         * regcache.h (regcache_raw_supply): Remove, update callers to
6314         use detached_regcache::raw_supply.
6315         * regcache.c (regcache_raw_supply): Remove.
6316
6317 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6318
6319         * regcache.h (regcache_cooked_write_part): Remove, update
6320         callers to use regcache::cooked_write_part.
6321         * regcache.c (regcache_cooked_write_part): Remove.
6322
6323 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6324
6325         * regcache.h (regcache_cooked_read_part): Remove, update callers
6326         to use readable_regcache::cooked_read_part.
6327         * regcache.c (regcache_cooked_read_part): Remove.
6328
6329 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6330
6331         * regcache.h (regcache_cooked_read_value): Remove, update
6332         callers to use readable_regcache::cooked_read_value.
6333         * regcache.c (regcache_cooked_read_value): Remove.
6334
6335 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6336
6337         * regcache.h (regcache_cooked_write): Remove, update callers to
6338         use regcache::cooked_write.
6339         * regcache.c (regcache_cooked_write): Remove.
6340
6341 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6342
6343         * regcache.h (regcache_invalidate): Remove, update callers to
6344         use detached_regcache::invalidate instead.
6345         * regcache.c (regcache_invalidate): Remove.
6346
6347 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6348
6349         * regcache.h (regcache_raw_write_part): Remove, update callers
6350         to use regcache::raw_write_part instead.
6351         * regcache.c (regcache_raw_write_part): Remove.
6352
6353 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6354
6355         * regcache.h (regcache_raw_read_part): Remove, update callers to
6356         use readable_regcache::raw_read_part instead.
6357         * regcache.c (regcache_raw_read_part): Remove.
6358
6359 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6360
6361         * regcache.h (regcache_cooked_read): Remove, update callers to
6362         use readable_regcache::cooked_read instead.
6363         * regcache.c (regcache_cooked_read): Remove.
6364
6365 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6366
6367         * regcache.h (regcache_raw_write): Remove, update callers to use
6368         regcache::raw_write instead.
6369         * regcache.c (regcache_raw_write): Remove.
6370
6371 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6372
6373         * regcache.h (regcache_raw_read): Remove, update callers to use
6374         readable_regcache::raw_read instead.
6375         * regcache.c (regcache_raw_read): Remove.
6376
6377 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6378
6379         * regcache.h (regcache_raw_update): Remove, update callers to
6380         use readable_regcache::raw_update instead.
6381         * regcache.c (regcache_raw_update): Remove.
6382
6383 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6384
6385         * regcache.h (regcache_register_status): Remove, update callers
6386         to use reg_buffer::get_register_status directly instead.
6387         * regcache.c (regcache_register_status): Remove.
6388
6389 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6390
6391         * regcache.h (regcache_get_ptid): Remove, update all callers to
6392         call regcache::ptid instead.
6393         * regcache.c (regcache_get_ptid): Remove.
6394
6395 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
6396
6397         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
6398
6399 2018-05-30  Pedro Alves  <palves@redhat.com>
6400
6401         * common/common-exceptions.h (exception_rethrow): Use
6402         ATTRIBUTE_NORETURN.
6403
6404 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
6405
6406         * breakpoint.c (print_solib_event, check_status_catch_solib):
6407         Remove struct keyword in range-based for loops.
6408         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
6409         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
6410         Likewise.
6411         * linespec.c (find_superclass_methods, search_minsyms_for_name):
6412         Likewise.
6413         * symfile.c (addr_info_make_relative): Likewise.
6414         * thread.c (value_in_thread_stack_temporaries): Likewise.
6415
6416 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
6417
6418         PR gdb/16841
6419         * valops.c (value_struct_elt_for_reference): Call check_typedef on
6420         aggregate type to get its real type before accessing it.
6421
6422 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
6423
6424         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
6425         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
6426         * coff-pe-read.c (add_pe_forwarded_sym): Replace
6427         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
6428         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
6429         * jit.c (jit_breakpoint_re_set_internal): Likewise.
6430         * printcmd.c (info_address_command): Likewise.
6431
6432 2018-05-29  Tom Tromey  <tom@tromey.com>
6433
6434         * windows-nat.c (handle_exception): Update fall-through comment.
6435
6436 2018-05-29  Tom Tromey  <tom@tromey.com>
6437
6438         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
6439         (struct program_space) <added_solibs>: Now a std::vector.
6440         * breakpoint.c (print_solib_event): Update.
6441         (check_status_catch_solib): Update.
6442         * progspace.c (clear_program_space_solib_cache): Update.
6443         * solib.c (update_solib_list): Update.
6444
6445 2018-05-29  Tom Tromey  <tom@tromey.com>
6446
6447         * python/py-type.c (typy_richcompare): Update.
6448         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
6449         * gdbtypes.h (types_deeply_equal): Return bool.
6450         (types_equal): Likewise.
6451         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
6452         declare VEC.
6453         (check_types_equal): Change worklist to std::vector.  Return
6454         bool.
6455         (struct type_equality_entry): Add constructor.
6456         (compare_maybe_null_strings): Return bool.
6457         (check_types_worklist): Return bool.  Change worklist to
6458         std::vector.
6459         (types_deeply_equal): Use std::vector.
6460         (types_equal): Return bool.
6461         (compare_maybe_null_strings): Simplify.
6462
6463 2018-05-29  Tom Tromey  <tom@tromey.com>
6464
6465         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
6466
6467 2018-05-29  Tom Tromey  <tom@tromey.com>
6468
6469         * objc-lang.h: Don't include cp-support.h.
6470         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
6471         declare VEC.
6472
6473 2018-05-27  Tom Tromey  <tom@tromey.com>
6474
6475         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
6476
6477 2018-05-25  Tom Tromey  <tom@tromey.com>
6478
6479         * value.c (value::location): Initialize.
6480
6481 2018-05-25  Tom Tromey  <tom@tromey.com>
6482
6483         * dbxread.c (init_bincl_list): Remove.
6484         (bincl_list): Now a std::vector.
6485         (bincls_allocated, next_bincl): Remove.
6486         (free_bincl_list, do_free_bincl_list_cleanup)
6487         (make_cleanup_free_bincl_list): Remove.
6488         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
6489         unique_xmalloc_ptr.
6490         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
6491         (struct header_file_location): Add constructor.
6492         (add_bincl_to_list): Remove.
6493
6494 2018-05-25  Tom Tromey  <tom@tromey.com>
6495
6496         * tui/tui.c (tui_enable): Update.
6497         * mi/mi-interp.c (mi_interp::init): Update.
6498         * interps.h (class interp) <name>: New method.
6499         <m_name>: Rename from name.
6500         (~scoped_restore_interp): Update.
6501         * interps.c (interp::interp): Update.
6502         (interp_add, interp_set, interp_lookup_existing)
6503         (current_interp_named_p): Update.
6504
6505 2018-05-25  Tom Tromey  <tom@tromey.com>
6506
6507         * interps.c (interp_name): Remove.
6508         * mi/mi-interp.c (mi_interp::init): Update.
6509         * interps.h (interp_name): Remove.
6510         (~scoped_restore_interp): Update.
6511         * tui/tui.c (tui_enable): Update.
6512
6513 2018-05-25  Tom Tromey  <tom@tromey.com>
6514
6515         * utils.c (fputs_maybe_filtered): Update.
6516         * linespec.c (decode_line_full): Update.
6517         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
6518         (mi_print_breakpoint_for_event, mi_solib_loaded)
6519         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6520         (mi_user_selected_context_changed): Update.
6521         * mi/mi-main.c (mi_execute_command): Update.
6522         * cli/cli-script.c (execute_control_command): Update.
6523         * python/python.c (execute_gdb_command): Update.
6524         * solib.c (info_sharedlibrary_command): Update.
6525         * interps.c (interp_ui_out): Remove.
6526         * interps.h (interp_ui_out): Remove.
6527
6528 2018-05-25  Tom Tromey  <tom@tromey.com>
6529
6530         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
6531         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
6532         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
6533
6534 2018-05-25  Tom Tromey  <tom@tromey.com>
6535
6536         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
6537         * interps.c (interp_exec): Use scoped_restore.
6538
6539 2018-05-25  Tom Tromey  <tom@tromey.com>
6540
6541         * remote.c (remote_target::remote_file_get): Use
6542         gdb::byte_vector.
6543         (remote_target::remote_file_put): Likewise.
6544
6545 2018-05-25  Tom Tromey  <tom@tromey.com>
6546
6547         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
6548         a std::string.
6549         (get_pe_section_index, add_pe_exported_sym): Update.
6550         (read_pe_exported_syms): Use gdb::def_vector.
6551
6552 2018-05-25  Tom Tromey  <tom@tromey.com>
6553
6554         * frame.c (remove_prev_frame): Remove.
6555         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
6556
6557 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
6558
6559         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
6560         Remove prototypes.
6561         * mips-linux-nat.c (supply_fpregset): Always call
6562         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
6563         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
6564         `mips_fill_fpregset'.
6565         * mips-linux-tdep.c (mips_supply_fpregset)
6566         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
6567         (mips_fill_fpregset_wrapper): Remove functions.
6568         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
6569         (mips_linux_fpregset): Remove variable.
6570         (mips_linux_iterate_over_regset_sections): Use
6571         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
6572         (mips_linux_o32_sigframe_init): Remove comment.
6573
6574 2018-05-25  Pedro Alves  <palves@redhat.com>
6575
6576         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
6577         (struct readahead_cache, struct packet_reg, struct
6578         remote_arch_state, class remote_state): Move higher up in the
6579         file.
6580         (remote_target::m_remote_state): Now an object instead of a pointer.
6581         (remote_target::get_remote_state): Adjust.
6582
6583 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6584
6585         * stack.c (select_and_print_frame): Delete.
6586         (struct function_bounds): Move struct within function.
6587         (func_command): Most content moved into new function
6588         find_frame_for_function, use new function, print result, add
6589         function comment.
6590         (find_frame_for_function): New function, now returns a result.
6591
6592 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6593
6594         * stack.c (iterate_over_block_arg_vars): Fix comment.
6595         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
6596
6597 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
6598
6599         PR gdb/23203
6600         * frame.c
6601         (scoped_restore_selected_frame::scoped_restore_selected_frame):
6602         Define.
6603         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
6604         Define.
6605         * frame.h (class scoped_restore_selected_frame): New class.
6606         * stack.c (print_frame_local_vars): Remove catching and rethrowing
6607         of any exception, use scoped_restore_selected_frame to restore the
6608         frame instead.
6609
6610 2018-05-24  Pedro Alves  <palves@redhat.com>
6611
6612         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
6613         override.
6614
6615 2018-05-23  Tom Tromey  <tom@tromey.com>
6616
6617         * complaints.c (struct complaints): Remove.
6618         (symfile_complaint_book): Remove.
6619         (series): New global.
6620         (complaint_internal): Update.
6621         (clear_complaints): Update.
6622
6623 2018-05-23  Tom Tromey  <tom@tromey.com>
6624
6625         * complaints.c (counters): New global.
6626         (struct complain): Remove.
6627         (struct complaints) <root>: Remove.
6628         (complaint_sentinel): Remove.
6629         (symfile_complaint_book): Update.
6630         (find_complaint) Remove.
6631         (complaint_internal, clear_complaints): Update.
6632
6633 2018-05-23  Tom Tromey  <tom@tromey.com>
6634
6635         * complaints.c (struct complain) <file, line>: Remove.
6636         (find_complaint): Remove file, line parameters.
6637         (complaint_internal): Update.
6638
6639 2018-05-23  Tom Tromey  <tom@tromey.com>
6640
6641         * complaints.c (vcomplaint): Remove.
6642         (complaint_internal) Merge in contents of vcomplaint.
6643
6644 2018-05-23  Tom Tromey  <tom@tromey.com>
6645
6646         * complaints.c (struct complaints) <explanation>: Remove.
6647         (symfile_explanations): Remove.
6648         (symfile_complaint_book): Update.
6649         (vcomplaint): Update.
6650         (struct explanation): Remove.
6651
6652 2018-05-23  Tom Tromey  <tom@tromey.com>
6653
6654         * complaints.c (symfile_complaints): Remove.
6655         (complaint_internal): Remove "complaints" parameter.
6656         (clear_complaints, vcomplaint): Remove "c" parameter.
6657         (get_complaints): Remove.
6658         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
6659         (dwarf2_debug_line_missing_file_complaint)
6660         (dwarf2_debug_line_missing_end_sequence_complaint)
6661         (dwarf2_complex_location_expr_complaint)
6662         (dwarf2_const_value_length_mismatch_complaint)
6663         (dwarf2_section_buffer_overflow_complaint)
6664         (dwarf2_macro_malformed_definition_complaint)
6665         (dwarf2_invalid_attrib_class_complaint)
6666         (create_addrmap_from_index, dw2_symtab_iter_next)
6667         (dw2_expand_marked_cus)
6668         (dw2_debug_names_iterator::find_vec_in_debug_names)
6669         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
6670         (create_debug_type_hash_table, init_cutu_and_read_dies)
6671         (partial_die_parent_scope, add_partial_enumeration)
6672         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
6673         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
6674         (read_import_statement, read_file_scope, create_dwo_cu_reader)
6675         (create_cus_hash_table, create_dwp_hash_table)
6676         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
6677         (dwarf2_rnglists_process, dwarf2_ranges_process)
6678         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
6679         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
6680         (handle_struct_member_die, process_structure_scope)
6681         (read_array_type, read_common_block, read_module_type)
6682         (read_tag_pointer_type, read_typedef, read_base_type)
6683         (read_subrange_type, load_partial_dies, partial_die_info::read)
6684         (partial_die_info::read, partial_die_info::read)
6685         (partial_die_info::read, read_checked_initial_length_and_offset)
6686         (dwarf2_string_attr, read_formatted_entries)
6687         (dwarf_decode_line_header)
6688         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6689         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
6690         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
6691         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
6692         (get_signatured_type, get_DW_AT_signature_type)
6693         (decode_locdesc, file_file_name, consume_improper_spaces)
6694         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
6695         (dwarf_decode_macro_bytes, dwarf_decode_macros)
6696         (dwarf2_symbol_mark_computed, set_die_type)
6697         (read_attribute_value): Update.
6698         * stap-probe.c (handle_stap_probe, get_stap_base_address):
6699         Update.
6700         * dbxread.c (unknown_symtype_complaint)
6701         (lbrac_mismatch_complaint, repeated_header_complaint)
6702         (set_namestring, function_outside_compilation_unit_complaint)
6703         (read_dbx_symtab, process_one_symbol): Update.
6704         * gdbtypes.c (stub_noname_complaint): Update.
6705         * windows-nat.c (handle_unload_dll): Update.
6706         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
6707         (decode_base_type): Update.
6708         * xcoffread.c (bf_notfound_complaint, ef_complaint)
6709         (eb_complaint, record_include_begin, record_include_end)
6710         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
6711         (process_xcoff_symbol, read_symbol)
6712         (function_outside_compilation_unit_complaint)
6713         (scan_xcoff_symtab): Update.
6714         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
6715         * buildsym.c (finish_block_internal, make_blockvector)
6716         (end_symtab_get_static_block, augment_type_symtab): Update.
6717         * dtrace-probe.c (dtrace_process_dof)
6718         (dtrace_static_probe_ops::get_probes): Update.
6719         * complaints.h (struct complaint): Don't declare.
6720         (symfile_complaints): Remove.
6721         (complaint_internal): Remove "complaints" parameter.
6722         (complaint): Likewise.
6723         (clear_complaints): Likewise.
6724         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6725         (reread_symbols): Update.
6726         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
6727         (dwarf2_frame_cache, decode_frame_entry): Update.
6728         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
6729         * objc-lang.c (lookup_objc_class, lookup_child_selector)
6730         (info_selectors_command): Update.
6731         * macrotab.c (macro_include, check_for_redefinition)
6732         (macro_undef): Update.
6733         * objfiles.c (filter_overlapping_sections): Update.
6734         * stabsread.c (invalid_cpp_abbrev_complaint)
6735         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
6736         (define_symbol, error_type, read_type, rs6000_builtin_type)
6737         (stabs_method_name_from_physname, read_member_functions)
6738         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
6739         (attach_fields_to_type, complain_about_struct_wipeout)
6740         (read_range_type, read_args, common_block_start)
6741         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
6742         Update.
6743         * mdebugread.c (index_complaint, unknown_ext_complaint)
6744         (basic_type_complaint, bad_tag_guess_complaint)
6745         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
6746         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
6747         (parse_procedure, parse_lines)
6748         (function_outside_compilation_unit_complaint)
6749         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
6750         (bad_tag_guess_complaint, reg_value_complaint): Update.
6751         * cp-support.c (demangled_name_complaint): Update.
6752         * macroscope.c (sal_macro_scope): Update.
6753         * dwarf-index-write.c (class debug_names): Update.
6754
6755 2018-05-23  Tom Tromey  <tom@tromey.com>
6756
6757         * complaints.c (clear_complaints): Remove "noisy" parameter.
6758         * complaints.h (clear_complaints): Update.
6759         * symfile.c (syms_from_objfile_1, finish_new_objfile)
6760         (reread_symbols): Update.
6761
6762 2018-05-23  Tom Tromey  <tom@tromey.com>
6763
6764         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
6765         SUBSEQUENT_MESSAGE.
6766         (vcomplaint, clear_complaints): Update.
6767         (symfile_explanations): Remove some messages.
6768
6769 2018-05-23  Tom Tromey  <tom@tromey.com>
6770
6771         * complaints.c (internal_complaint): Remove.
6772         * complaints.h (internal_complaint): Remove.
6773
6774 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6775
6776         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
6777
6778 2018-05-22  Pedro Alves  <palves@redhat.com>
6779
6780         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6781         (remote_fileio_badfd, remote_fileio_return_errno)
6782         (remote_fileio_return_success, remote_fileio_func_open)
6783         (remote_fileio_func_open, remote_fileio_func_close)
6784         (remote_fileio_func_read, remote_fileio_func_write)
6785         (remote_fileio_func_lseek, remote_fileio_func_rename)
6786         (remote_fileio_func_unlink, remote_fileio_func_stat)
6787         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6788         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6789         remote_target parameter.
6790         (remote_fio_func_map) <func>: Add remote_target parameter.
6791         (do_remote_fileio_request, remote_fileio_request):
6792         * remote-fileio.h (remote_fileio_request):
6793         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6794         remote_target parameter.
6795         (remote_notif_process, handle_notification): Adjust to pass down
6796         the remote.
6797         (remote_notif_state_allocate): Add remote_target parameter.  Save
6798         it.
6799         * remote-notif.h (struct remote_target): Forward declare.
6800         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6801         remote_target parameter.
6802         (struct remote_notif_state) <remote>: New field.
6803         (remote_notif_ack, remote_notif_parse): Add remote_target
6804         parameter.
6805         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6806         remote_target parameter.
6807         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6808         (threads_listing_context, rmt_thread_action, protocol_feature)
6809         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6810         (packet_result, struct threads_listing_context, remote_state):
6811         Move definitions and declarations higher up.
6812         (remote_target) <~remote_target>: Declare.
6813         (remote_download_command_source, remote_file_put, remote_file_get)
6814         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6815         (remote_hostio_pread_vFile, remote_hostio_send_command)
6816         (remote_hostio_set_filesystem, remote_hostio_open)
6817         (remote_hostio_close, remote_hostio_unlink, remote_state)
6818         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6819         (get_memory_write_packet_size, get_memory_read_packet_size)
6820         (append_pending_thread_resumptions, remote_detach_1)
6821         (append_resumption, remote_resume_with_vcont)
6822         (add_current_inferior_and_thread, wait_ns, wait_as)
6823         (process_stop_reply, remote_notice_new_inferior)
6824         (process_initial_stop_replies, remote_add_thread)
6825         (btrace_sync_conf, remote_btrace_maybe_reopen)
6826         (remove_new_fork_children, kill_new_fork_children)
6827         (discard_pending_stop_replies, stop_reply_queue_length)
6828         (check_pending_events_prevent_wildcard_vcont)
6829         (discard_pending_stop_replies_in_queue, stop_reply)
6830         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6831         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6832         (remote_interrupt_as, remote_interrupt_ns)
6833         (remote_get_noisy_reply, remote_query_attached)
6834         (remote_add_inferior, remote_current_thread, get_current_thread)
6835         (set_thread, set_general_thread, set_continue_thread)
6836         (set_general_process, write_ptid)
6837         (remote_unpack_thread_info_response, remote_get_threadinfo)
6838         (parse_threadlist_response, remote_get_threadlist)
6839         (remote_threadlist_iterator, remote_get_threads_with_ql)
6840         (remote_get_threads_with_qxfer)
6841         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6842         (get_offsets, remote_check_symbols, remote_supported_packet)
6843         (remote_query_supported, remote_packet_size)
6844         (remote_serial_quit_handler, remote_detach_pid)
6845         (remote_vcont_probe, remote_resume_with_hc)
6846         (send_interrupt_sequence, interrupt_query)
6847         (remote_notif_get_pending_events, fetch_register_using_p)
6848         (send_g_packet, process_g_packet, fetch_registers_using_g)
6849         (store_register_using_P, store_registers_using_G)
6850         (set_remote_traceframe, check_binary_download)
6851         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6852         (remote_xfer_live_readonly_partial, remote_read_bytes)
6853         (remote_send_printf, remote_flash_write, readchar)
6854         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6855         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6856         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6857         (extended_remote_disable_randomization, extended_remote_run)
6858         (send_environment_packet, extended_remote_environment_support)
6859         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6860         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6861         (packet_command): Now methods of ...
6862         (remote_target): ... this class.
6863         (m_remote_state) <remote_target>: New field.
6864         (struct remote_state) <stop_reply_queue,
6865         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6866         fields.
6867         (remote_state::remote_state): Allocate stop_reply_queue.
6868         (remote_state): Delete global.
6869         (get_remote_state_raw): Delete.
6870         (remote_target::get_remote_state): Allocate m_remote_state on
6871         demand.
6872         (get_current_remote_target): New.
6873         (remote_ops, extended_remote_ops): Delete.
6874         (wait_forever_enabled_p, remote_async_inferior_event_token):
6875         Delete, moved to struct remote_state.
6876         (remote_target::close): Delete self.  Destruction bits split to
6877         ...
6878         (remote_target::~remote_target): ... this.
6879         (show_memory_packet_size): Adjust to use
6880         get_current_remote_target.
6881         (struct protocol_feature) <func>: Add remote_target parameter.
6882         All callers adjusted.
6883         (curr_quit_handler_target): New.
6884         (remote_serial_quit_handler): Reimplement.
6885         (remote_target::open_1): Adjust to use get_current_remote_target.
6886         Heap-allocate remote_target/extended_remote_target instances.
6887         (vcont_builder::vcont_builder): Add remote_target parameter, and
6888         save it in m_remote.  All callers adjusted.
6889         (vcont_builder::m_remote): New field.
6890         (vcont_builder::restart, vcont_builder::flush)
6891         (vcont_builder::push_action): Use it.
6892         (remote_target::commit_resume): Use it.
6893         (struct queue_iter_param) <remote>: New field.
6894         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6895         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6896         (check_pending_event_prevents_wildcard_vcont_callback)
6897         (remote_target::check_pending_events_prevent_wildcard_vcont)
6898         (remote_target::discard_pending_stop_replies)
6899         (remote_target::discard_pending_stop_replies_in_queue)
6900         (remote_target::remote_notif_remove_queued_reply): Fill in
6901         'remote' field.
6902         (remote_notif_get_pending_events): New.
6903         (remote_target::readchar, remote_target::remote_serial_write):
6904         Save/restore curr_quit_handler_target.
6905         (putpkt): New.
6906         (kill_new_fork_children): Fill in 'remote' field.
6907         (packet_command): Use get_current_remote_target, defer to
6908         remote_target method of same name.
6909         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6910         parameter, and save it in m_remote.  All callers adjusted.
6911         (scoped_remote_fd::release): Use m_remote.
6912         (scoped_remote_fd::m_remote): New field.
6913         (remote_file_put, remote_file_get, remote_file_delete): Use
6914         get_current_remote_target, defer to remote_target method of same
6915         name.
6916         (remote_btrace_reset): Add remote_state paremeter.  Update all
6917         callers.
6918         (remote_async_inferior_event_handler). Pass down 'data'.
6919         (remote_new_objfile): Use get_current_remote_target.
6920         (remote_target::vcont_r_supported): New.
6921         (set_range_stepping): Use get_current_remote_target and
6922         remote_target::vcont_r_supported.
6923         (_initialize_remote): Don't allocate 'remote_state' and
6924         'stop_reply_queue' globals.
6925         * remote.h (struct remote_target): Forward declare.
6926         (getpkt, putpkt, remote_notif_get_pending_events): Add
6927         'remote_target' parameter.
6928
6929 2018-05-22  Pedro Alves  <palves@redhat.com>
6930
6931         * remote.c (vcont_builder): Now a class.  Make all data members
6932         private.
6933         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6934         Declare methods.
6935         (vcont_builder_restart): Rename to ...
6936         (vcont_builder::restart): ... this.
6937         (vcont_builder_flush): Rename to ...
6938         (vcont_builder::flush): ... this.
6939         (vcont_builder_push_action): Rename to ...
6940         (vcont_builder::push_action): ... this.
6941         (remote_target::commit_resume): Adjust.
6942
6943 2018-05-22  Pedro Alves  <palves@redhat.com>
6944
6945         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6946         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6947         (get_fixed_memory_packet_size): New.
6948         (get_memory_packet_size): Use it.
6949         (set_memory_packet_size): Don't override the config size with
6950         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6951         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6952         Don't refer to get_memory_packet_size if not connected to a remote
6953         target.  Show "(default)" if configured size is 0.
6954
6955 2018-05-22  Pedro Alves  <palves@redhat.com>
6956
6957         * remote.c (remote_target::mourn_inferior): Move
6958         discard_pending_stop_replies call here from ...
6959         (_initialize_remote): ... here.
6960
6961 2018-05-22  Pedro Alves  <palves@redhat.com>
6962
6963         * remote.c (compare_section_command): Remove set_general_process
6964         call.
6965
6966 2018-05-22  Pedro Alves  <palves@redhat.com>
6967
6968         * remote.c (struct packet_reg, struct remote_arch_state):
6969         Move higher up in the file.
6970         (remote_state) <m_arch_states>: Store remote_arch_state values
6971         instead of remote_arch_state pointers.
6972         (remote_state::get_remote_arch_state): Adjust.
6973
6974 2018-05-22  Pedro Alves  <palves@redhat.com>
6975
6976         * remote.c: Include <unordered_map>.
6977         (remote_state): Now a class.
6978         (remote_state) <get_remote_arch_state>: Declare method.
6979         <get_remote_arch_state>: New field.
6980         (remote_arch_state) <remote_arch_state>: Declare ctor.
6981         <regs>: Now a unique_ptr.
6982         (remote_gdbarch_data_handle): Delete.
6983         (get_remote_arch_state): Delete.
6984         (remote_state::get_remote_arch_state): New.
6985         (get_remote_state): Adjust to call remote_state's
6986         get_remote_arch_state method.
6987         (init_remote_state): Delete, bits factored out to ...
6988         (remote_arch_state::remote_arch_state): ... this new method.
6989         (get_remote_packet_size, get_memory_packet_size)
6990         (process_g_packet, remote_target::fetch_registers)
6991         (remote_target::prepare_to_store, store_registers_using_G)
6992         (remote_target::store_registers, remote_target::get_trace_status):
6993         Adjust to call remote_state's method.
6994         (_initialize_remote): Remove reference to
6995         remote_gdbarch_data_handle.
6996
6997 2018-05-22  Pedro Alves  <palves@redhat.com>
6998
6999         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
7000         pread>: New method declarations.
7001         (remote_target::open_1): Adjust.
7002         (readahead_cache_invalidate): Rename to ...
7003         (readahead_cache::invalidate): ... this, and adjust to be a class
7004         method.
7005         (readahead_cache_invalidate_fd): Rename to ...
7006         (readahead_cache::invalidate_fd): ... this, and adjust to be a
7007         class method.
7008         (remote_hostio_pwrite): Adjust.
7009         (remote_hostio_pread_from_cache): Rename to ...
7010         (readahead_cache::pread): ... this, and adjust to be a class
7011         method.
7012         (remote_hostio_close): Adjust.
7013
7014 2018-05-22  Pedro Alves  <palves@redhat.com>
7015
7016         * remote.c (remote_hostio_close_cleanup): Delete.
7017         (class scoped_remote_fd): New.
7018         (remote_file_put, remote_file_get): Use it.
7019
7020 2018-05-22  Pedro Alves  <palves@redhat.com>
7021
7022         (struct vCont_action_support): Use bool and initialize all fields.
7023         (struct readahead_cache): Initialize all fields.
7024         (remote_state): Use bool and initialize all fields.
7025         (remote_state::remote_state, remote_state::~remote_state): New.
7026         (new_remote_state): Delete.
7027         (_initialize_remote): Use new to allocate remote_state.
7028
7029 2018-05-22  Pedro Alves  <palves@redhat.com>
7030             張俊芝  <zjz@zjz.name>
7031
7032         PR gdb/22973
7033         * c-exp.y: Include "c-support.h".
7034         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
7035         of tolower.  Use c_ident_is_alpha to scan names.
7036         * c-lang.c: Include "c-support.h".
7037         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
7038         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
7039         * c-support.h: New file, with bits factored out from ...
7040         * cp-name-parser.y: ... this file.
7041         Include "c-support.h".
7042         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
7043         c-support.h and renamed.
7044         (symbol_end, yylex): Adjust.
7045
7046 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7047
7048         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
7049         parameter type to CORE_ADDR.
7050         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
7051         parameter type in declaration to CORE_ADDR.
7052         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
7053         target_auxv_search to get AT_HWCAP and use the result to get the
7054         target description.
7055         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
7056         to CORE_ADDR. Remove the cast of the return value to unsigned
7057         long. Fix error predicate of target_auxv_search.
7058         (ppc_linux_nat_target::read_description): Change the type of the
7059         hwcap variable to CORE_ADDR.
7060
7061 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7062
7063         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
7064         if the size of fpscr is larger than 32 bits.
7065
7066 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7067
7068         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
7069         (ppc32_linux_vsxregmap): New global.
7070         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
7071         regcache_supply_regset, and regcache_collect_regset.
7072         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
7073         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
7074         (fetch_vsx_register, store_vsx_register): Remove.
7075         (fetch_vsx_registers): Add regno parameter. Get regset using
7076         ppc_linux_vsxregset. Use regset to supply registers.
7077         (store_vsx_registers): Add regno parameter. Get regset using
7078         ppc_linux_vsxregset. Use regset to collect registers.
7079         (fetch_register): Call fetch_vsx_registers instead of
7080         fetch_vsx_register.
7081         (store_register): Call store_vsx_registers instead of
7082         store_vsx_register.
7083         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
7084         new regno parameter.
7085         (store_ppc_registers): Call store_vsx_registers with -1 for the
7086         new regno parameter.
7087         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
7088         (ppc_collect_vsxregset): Remove.
7089
7090 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7091
7092         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
7093         offset fields.
7094         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
7095         for vector register offset fields.
7096         (ppc64_fbsd_reg_offsets): Likewise.
7097         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7098         to vector register offset fields.
7099         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
7100         to vector register offset fields.
7101         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
7102         vector register offset fields.
7103         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
7104         initializers for vector register offset fields.
7105         (rs6000_aix64_reg_offsets): Likewise.
7106         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
7107         (ppc_supply_vrregset): Remove.
7108         (ppc_collect_vrregset): Remove.
7109         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
7110         (ppc_linux_vrregset) : New function.
7111         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
7112         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
7113         (ppc32_linux_vrregset): Remove.
7114         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
7115         and use result instead of ppc32_linux_vrregset.
7116         (ppc32_linux_reg_offsets): Remove initializers for vector register
7117         offset fields.
7118         (ppc64_linux_reg_offsets): Likewise.
7119         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
7120         * ppc-linux-nat.c: Include regset.h.
7121         (gdb_vrregset_t): Adjust comment to account for little-endian
7122         mode.
7123         (supply_vrregset, fill_vrregset): Remove.
7124         (fetch_altivec_register, store_altivec_register): Remove.
7125         (fetch_altivec_registers): Add regno parameter. Get regset using
7126         ppc_linux_vrregset. Use regset to supply registers.
7127         (store_altivec_registers): Add regno parameter. Get regset using
7128         ppc_linux_vrregset. Use regset to collect registers.
7129         (fetch_register): Call fetch_altivec_registers instead of
7130         fetch_altivec_register.
7131         (store_register): Call store_altivec_registers instead of
7132         store_altivec_register.
7133         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
7134         the new regno parameter.
7135         (store_ppc_registers): Call store_altivec_registers with -1 for
7136         the new regno parameter.
7137
7138 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7139
7140         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
7141         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
7142         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
7143         (gdb_vrregset_t): Change array type size to
7144         PPC_LINUX_SIZEOF_VRREGSET.
7145         (gdb_vsxregset_t): Change array type size to
7146         PPC_LINUX_SIZEOF_VSXREGSET.
7147         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
7148         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
7149         PPC_LINUX_SIZEOF_VSXREGSET.
7150
7151 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7152
7153         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
7154         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
7155         nat/ppc-linux.c.
7156         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
7157         ppc_linux_target_wordsize with tid.
7158         (ppc_linux_nat_target::read_description): Call ppc_linux_target
7159         wordsize with tid.
7160         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
7161         (ppc64_64bit_inferior_p): Add static and inline specifiers.
7162         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
7163         tid parameter. Remove static specifier.
7164         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
7165         (ppc_linux_target_wordsize): New declaration.
7166
7167 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
7168
7169         * arch/ppc-linux-common.c: New file.
7170         * arch/ppc-linux-common.h: New file.
7171         * arch/ppc-linux-tdesc.h: New file.
7172         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
7173         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
7174         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
7175         arch/ppc-linux-tdesc.h.
7176         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
7177         arch/ppc-linux-tdesc.h.
7178         (ppc_linux_nat_target::read_description): Remove target
7179         description matching code. Fill a ppc_linux_features struct and
7180         call ppc_linux_match_description with it. Move comment about ISA
7181         2.05 to ppc-linux-common.c.
7182         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
7183         arch/ppc-linux-tdesc.h.
7184         (ppc_linux_core_read_description): Remove target description
7185         matching code. Fill a ppc_linux_features struct and call
7186         ppc_linux_match_description with it.
7187         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
7188         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
7189         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
7190         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
7191         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
7192         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
7193         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
7194         (tdesc_powerpc_e500l): Remove.
7195
7196 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
7197
7198         * ada-lang.c (catch_assert_command): Pass empty string instead
7199         of NULL for excep_string argument.
7200
7201 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7202
7203         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
7204         the width of the requested register exceeds the width of the
7205         `ptrace' data type.
7206
7207 2018-05-21  Tom Tromey  <tom@tromey.com>
7208
7209         * printcmd.c (output_command): Remove.
7210         (output_command_const): Rename to output_command.
7211         * valprint.h (output_command): Rename from output_command_const.
7212         * tracepoint.c (trace_dump_actions): Call output_command.
7213
7214 2018-05-21  Tom Tromey  <tom@tromey.com>
7215
7216         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7217         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
7218         * ada-lang.h (create_ada_exception_catchpoint): Update.
7219         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
7220         std::string.
7221         (create_excep_cond_exprs, ~ada_catchpoint)
7222         (should_stop_exception, print_one_exception)
7223         (print_mention_exception, print_recreate_exception): Update.
7224         (ada_get_next_arg): Remove.
7225         (catch_ada_exception_command_split): Use std::string.  Change type
7226         of "excep_string", "cond_string".
7227         (catch_ada_exception_command): Update.
7228         (create_ada_exception_catchpoint): Change type of excep_string.
7229         (ada_exception_sal): Remove excep_string parameter.
7230         (~ada_catchpoint): Remove.
7231
7232 2018-05-21  Tom Tromey  <tom@tromey.com>
7233
7234         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
7235         cleanup.
7236
7237 2018-05-21  Tom Tromey  <tom@tromey.com>
7238
7239         * ada-lang.c (ada_exception_message_1, ada_exception_message):
7240         Return unique_xmalloc_ptr.
7241         (print_it_exception): Update.
7242
7243 2018-05-21  Tom Tromey  <tom@tromey.com>
7244
7245         * tracepoint.c (trace_dump_actions): Use std::string.
7246
7247 2018-05-21  Tom Tromey  <tom@tromey.com>
7248
7249         * symfile.c (reread_symbols): Use std::string for original_name.
7250
7251 2018-05-21  Tom Tromey  <tom@tromey.com>
7252
7253         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
7254         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
7255         constructor.
7256
7257 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
7258
7259         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
7260         instance to...
7261         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
7262         * objfiles.c (get_objfile_bfd_data): Allocate
7263         objfile_per_bfd_storage with obstack_new when allocating on
7264         obstack.
7265
7266 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7267
7268         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
7269         OBSTACK_ZALLOC.
7270         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
7271         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
7272         * mdebugread.c (mdebug_build_psymtabs): Likewise.
7273         (add_pending): Likewise.
7274         (parse_symbol): Likewise.
7275         (parse_partial_symbols): Likewise.
7276         (psymtab_to_symtab_1): Likewise.
7277         (new_psymtab): Likewise.
7278         (elfmdebug_build_psymtabs): Likewise.
7279         * minsyms.c (terminate_minimal_symbol_table): Likewise.
7280         * objfiles.c (get_objfile_bfd_data): Likewise.
7281         (objfile_register_static_link): Likewise.
7282         * psymtab.c (allocate_psymtab): Likewise.
7283         * stabsread.c (read_member_functions): Likewise.
7284         * xcoffread.c (xcoff_end_psymtab): Likewise.
7285
7286 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
7287
7288         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
7289         compiler supports std::is_trivially_constructible.
7290         * common/poison.h: Include obstack.h.
7291         (IsMallocable): Define to is_trivially_constructible if the
7292         compiler supports it, define to true_type otherwise.
7293         (xobnew): New.
7294         (XOBNEW): Redefine.
7295         (xobnewvec): New.
7296         (XOBNEWVEC): Redefine.
7297         * gdb_obstack.h (obstack_zalloc): New.
7298         (OBSTACK_ZALLOC): Redefine.
7299         (obstack_calloc): New.
7300         (OBSTACK_CALLOC): Redefine.
7301         (obstack_new): New.
7302         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
7303         (gdbarch_obstack): New declaration in gdbarch.h, definition in
7304         gdbarch.c.
7305         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
7306         obstack_calloc/obstack_zalloc.
7307         (gdbarch_obstack_zalloc): Remove.
7308         * target-descriptions.c (tdesc_data_init): Use obstack_new.
7309
7310 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7311
7312         * stack.c (backtrace_command_1): Remove useless variable int i.
7313
7314 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7315
7316         * stack.c (print_frame_info): Fix comment.
7317
7318 2018-05-18  Tom Tromey  <tom@tromey.com>
7319
7320         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
7321         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
7322         (~dwarf2_per_objfile): Update
7323         (dwarf2_get_dwz_file): Use new.
7324         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
7325         unique_ptr.
7326
7327 2018-05-18  Tom Tromey  <tom@tromey.com>
7328
7329         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
7330         unique_ptr.
7331         * dwarf2read.c (struct dwp_file): Add constructor and
7332         initializers.
7333         (open_and_init_dwp_file): Return a unique_ptr.
7334         (dwarf2_per_objfile, create_dwp_hash_table)
7335         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
7336         (lookup_dwo_unit_in_dwp): Update.
7337         (open_and_init_dwp_file, get_dwp_file): Update.
7338
7339 2018-05-18  Tom Tromey  <tom@tromey.com>
7340
7341         * dwarf2read.c (dwarf2_per_objfile): Update.
7342         (struct mapped_index): Add initializers.
7343         (dwarf2_read_index): Use new.
7344         (dw2_symtab_iter_init): Update.
7345         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
7346         unique_ptr.
7347
7348 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7349
7350         * dwarf2read.c (mapped_index) <total_size>: Remove.
7351
7352 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
7353
7354         * unittests/format_pieces-selftests.c (test_format_specifier):
7355         Add ARI comments.
7356
7357 2018-05-18  Tom Tromey  <tom@tromey.com>
7358
7359         * c-typeprint.c (maybe_print_hole): New function.
7360         (c_print_type_struct_field_offset): Update.
7361         (c_type_print_base_struct_union): Call maybe_print_hole.
7362
7363 2018-05-17  Keith Seitz  <keiths@redhat.com>
7364
7365         * breakpoint.c (build_bpstat_chain): New function, moved from
7366         bpstat_stop_status.
7367         (bpstat_stop_status): Add optional parameter, `stop_chain'.
7368         If no stop chain is passed, call build_bpstat_chain to build it.
7369         * breakpoint.h (build_bpstat_chain): Declare.
7370         (bpstat_stop_status): Move documentation here from breakpoint.c.
7371         * infrun.c (handle_signal_stop): Before eliding inlined frames,
7372         build the stop chain and pass it to skip_inline_frames.
7373         Pass this stop chain to bpstat_stop_status.
7374         * inline-frame.c: Include breakpoint.h.
7375         (stopped_by_user_bp_inline_frame): New function.
7376         (skip_inline_frames): Add parameter `stop_chain'.
7377         Move documention to inline-frame.h.
7378         If non-NULL, use stopped_by_user_bp_inline_frame to determine
7379         whether the frame should be elided.
7380         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
7381         Add moved documentation and update for new parameter.
7382
7383 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7384
7385         PR cli/14975
7386         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
7387         unittests/format_pieces-selftests.c.
7388         * common/format.h (format_piece) <operator==>: New.
7389         (format_pieces) <operator[]>: Remove.
7390         * common/format.c (format_pieces::format_pieces): Handle \e.
7391         * unittests/format_pieces-selftests.c: New.
7392
7393 2018-05-17  Tom Tromey  <tom@tromey.com>
7394
7395         PR symtab/23010:
7396         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
7397         (dw2_instantiate_symtab): Add skip_partial parameter.
7398         (dw2_find_last_source_symtab, dw2_map_expand_apply)
7399         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
7400         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
7401         (dw2_expand_symtabs_matching_one)
7402         (dw2_find_pc_sect_compunit_symtab)
7403         (dw2_debug_names_lookup_symbol)
7404         (dw2_debug_names_expand_symtabs_for_function): Update.
7405         (init_cutu_and_read_dies): Add skip_partial parameter.
7406         (process_psymtab_comp_unit, build_type_psymtabs_1)
7407         (process_skeletonless_type_unit, load_partial_comp_unit)
7408         (psymtab_to_symtab_1): Update.
7409         (load_full_comp_unit): Add skip_partial parameter.
7410         (process_imported_unit_die, dwarf2_read_addr_index)
7411         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
7412         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
7413         (read_signatured_type): Update.
7414
7415 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
7416
7417         * value.c (release_value): Remove unused variable.
7418         (record_latest_value): Likewise.
7419         (access_value_history): Likewise.
7420         (preserve_values): Likewise.
7421
7422 2018-05-17  Tom Tromey  <tom@tromey.com>
7423
7424         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
7425         Initialize.
7426
7427 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
7428
7429         PR gdb/22286
7430         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
7431         Also handle registers whose width is not a multiple of
7432         PTRACE_TYPE_RET.
7433         (linux_nat_trad_target::store_register): Likewise.
7434
7435 2018-05-16  Tom Tromey  <tom@tromey.com>
7436
7437         * gdbcore.h (core_bfd): Redefine.
7438         * corelow.c (core_target::close): Update.
7439         (core_target_open): Update.
7440         * progspace.h (struct program_space) <cbfd>: Now a
7441         gdb_bfd_ref_ptr.
7442
7443 2018-05-16  Tom Tromey  <tom@tromey.com>
7444
7445         PR cli/19551:
7446         * symfile-add-flags.h (enum symfile_add_flags)
7447         <SYMFILE_NOT_FILENAME>: New constant.
7448         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
7449         objfile name from BFD.
7450         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
7451         * minidebug.c (find_separate_debug_file_in_section): Put
7452         ".gnu_debugdata" into BFD's file name.
7453
7454 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
7455
7456         * regcache.c (regcache_read_ftype, regcache_write_ftype):
7457         Remove.
7458
7459 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
7460
7461         PR binutils/21446
7462         * aarch64-tdep.c (aarch64_analyze_prologue,
7463         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
7464         Indicate not interested in errors.
7465
7466 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7467
7468         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
7469         Supply the MIPS_ZERO_REGNUM register.
7470
7471 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
7472
7473         * mips-tdep.c (mask_address_var): Make variable static.
7474
7475 2018-05-14  Tom Tromey  <tom@tromey.com>
7476
7477         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
7478
7479 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
7480
7481         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
7482         FXSAVE_ADDR for the mxcsr register.
7483
7484 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
7485
7486         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
7487
7488 2018-05-11  Pedro Alves  <palves@redhat.com>
7489
7490         * corelow.c (core_target) <core_target>: No longer inline.
7491         Initialize m_core_gdbarch, m_core_vec and build the section table
7492         here.
7493         <~core_target>: New.
7494         <core_gdbarch, get_core_register_section>: New methods.
7495         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
7496         factored out from ...
7497         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
7498         (core_ops): Delete.
7499         (sniff_core_bfd): Add gdbarch parameter.
7500         (core_close): Delete, merged into ...
7501         (core_target::close): ... here.  Delete self.
7502         (core_close_cleanup): Delete.
7503         (core_target_open): Allocate a core_target on the heap.  Use a
7504         unique_ptr instead of a cleanup.  Bits moved into the core_target
7505         ctor.  Adjust to use core_target methods instead of globals.
7506         (get_core_register_section): Rename to ...
7507         (core_target::get_core_register_section): ... this and adjust.
7508         (struct get_core_registers_cb_data): New.
7509         (get_core_registers_cb): Use it.  Use bool.
7510         (core_target::fetch_registers, core_target::files_info)
7511         (core_target::xfer_partial, core_target::read_description)
7512         (core_target::pid_to, core_target::thread_name): Adjust to
7513         reference class fields instead of globals.
7514         * target.h (struct target_ops_deleter, target_ops_up): New.
7515
7516 2018-05-11  Pedro Alves  <palves@redhat.com>
7517
7518         * corefile.c (core_file_command): Move to corelow.c.
7519         * corelow.c (the_core_target): Delete.
7520         (core_file_command): Moved from corefile.c.  Check exec_bfd
7521         instead of the_core_target.  Use target_detach instead of calling
7522         into the_core_target directly.
7523         (maybe_say_no_core_file_now): New.
7524         (core_target::detach): Use it.
7525         (_initialize_corelow): Remove references to the_core_target.
7526         * gdbcore.h (the_core_target): Delete.
7527
7528 2018-05-11  Tom Tromey  <tromey@redhat.com>
7529             Pedro Alves  <palves@redhat.com>
7530
7531         * corefile.c (core_bfd): Remove.
7532         * gdbcore.h (core_bfd): Now a macro.
7533         * progspace.h (struct program_space) <cbfd>: New field.
7534
7535 2018-05-11  Tom Tromey  <tom@tromey.com>
7536
7537         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
7538         gdb::def_vector.
7539
7540 2018-05-10  Tom Tromey  <tom@tromey.com>
7541
7542         * configure: Rebuild.
7543         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
7544
7545 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
7546
7547         PR server/23158:
7548         * regformats/regdat.sh: Adjust script, following the addition
7549         of the new expedite_regs parameter to init_target_desc.
7550
7551 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
7552     
7553         PR gdb/23127
7554         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
7555         set_gdbarch_significant_addr_bit.
7556         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
7557         set_gdbarch_significant_addr_bit.
7558         * utils.c (address_significant): Update to sign extend addr.
7559
7560 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
7561
7562         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
7563         (xtensa_linux_init_abi): Limit tdep->num_regs by
7564         tdep->num_nopriv_regs.
7565         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
7566         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
7567         not initialized.
7568
7569 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
7570
7571         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
7572
7573 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
7574
7575         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
7576         (I387_MXCSR_INIT_VAL): New constant.
7577         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
7578         buffer if it was supplied by the inferior.
7579         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
7580         (i387_xsave_get_clear_bv): New function.
7581         (i387_supply_xsave): Only read x87 control registers from the
7582         xsave buffer if the feature is enabled, and the state will have
7583         been written, otherwise, provide a suitable default.
7584         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
7585         including x87 control registers.  Update control registers if they
7586         have changed from the default value, and mark features as enabled
7587         as required.
7588         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
7589
7590 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
7591
7592         * spu-tdep.c (info_spu_event_command): Fix output formatting.
7593
7594 2018-05-07  Tom Tromey  <tom@tromey.com>
7595
7596         * configure: Rebuild.
7597         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
7598
7599 2018-05-07  Tom Tromey  <tom@tromey.com>
7600
7601         PR tdep/20362:
7602         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
7603         bit.  Use correct value for VDIV.
7604
7605 2018-05-04  Tom Tromey  <tom@tromey.com>
7606
7607         * configure: Rebuild.
7608         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
7609
7610 2018-05-04  Tom Tromey  <tom@tromey.com>
7611
7612         * linux-record.c (record_linux_system_call) <case
7613         RECORD_SYS_RECVFROM>: Add "break".
7614
7615 2018-05-04  Tom Tromey  <tom@tromey.com>
7616
7617         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
7618         Add missing "break".
7619         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
7620         Add missing "break".
7621
7622 2018-05-04  Tom Tromey  <tom@tromey.com>
7623
7624         * rs6000-tdep.c (ppc_process_record_op4)
7625         (ppc_process_record_op63): Add fall-through comment.
7626
7627 2018-05-04  Tom Tromey  <tom@tromey.com>
7628
7629         * i386-tdep.c (i386_process_record): Add fall-through comment.
7630
7631 2018-05-04  Tom Tromey  <tom@tromey.com>
7632
7633         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
7634         comment.
7635
7636 2018-05-04  Tom Tromey  <tom@tromey.com>
7637
7638         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
7639         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
7640         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
7641         comment.
7642         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
7643         comment.
7644         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
7645         comment.
7646
7647 2018-05-04  Tom Tromey  <tom@tromey.com>
7648
7649         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
7650
7651 2018-05-04  Tom Tromey  <tom@tromey.com>
7652
7653         * s390-tdep.c (s390_process_record): Fix fall-through comments.
7654         * xcoffread.c (scan_xcoff_symtab): Move comment later.
7655         * symfile.c (section_is_mapped): Fix fall-through comment.
7656         * stabsread.c (define_symbol, read_member_functions): Fix
7657         fall-through comment.
7658         * s390-linux-tdep.c (s390_process_record): Fix fall-through
7659         comment.
7660         * remote.c (remote_wait_as): Fix fall-through comment.
7661         * p-exp.y (yylex): Fix fall-through comment.
7662         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
7663         comment.
7664         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
7665         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
7666         * jv-exp.y (yylex): Fix fall-through comment.
7667         * go-exp.y (lex_one_token): Fix fall-through comment.
7668         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
7669         fall-through comment.
7670         * f-exp.y (yylex): Fix fall-through comment.
7671         * dwarf2read.c (process_die): Fix fall-through comments.
7672         * dbxread.c (process_one_symbol): Fix fall-through comment.
7673         * d-exp.y (lex_one_token): Fix fall-through comment.
7674         * cp-name-parser.y (yylex): Fix fall-through comment.
7675         * coffread.c (coff_symtab_read): Fix fall-through comment.
7676         * c-exp.y (lex_one_token): Fix fall-through comment.
7677         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
7678         comment.
7679         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
7680         comment.
7681
7682 2018-05-04  Tom Tromey  <tom@tromey.com>
7683
7684         PR python/22730:
7685         * NEWS: Mention gdb.execute change.
7686         * gdbcmd.h (execute_control_command): Don't declare.
7687         * python/python.c (execute_gdb_command): Use read_command_lines_1,
7688         execute_control_commands, execute_control_commands_to_string.
7689         * cli/cli-script.h (execute_control_commands)
7690         (execute_control_commands_to_string): Declare.
7691         (execute_control_command): Add from_tty parameter.
7692         * cli/cli-script.c (execute_control_commands)
7693         (execute_control_commands_to_string): New functions.
7694         (execute_user_command): Use execute_control_commands.
7695         (execute_control_command_1): Add "from_tty" parameter.  Update.
7696         (execute_control_command): Likewise.
7697
7698 2018-05-04  Tom Tromey  <tom@tromey.com>
7699
7700         PR python/22731:
7701         * NEWS: Mention that breakpoint commands are writable.
7702         * python/py-breakpoint.c (bppy_set_commands): New function.
7703         (breakpoint_object_getset) <"commands">: Use it.
7704
7705 2018-05-04  Tom Tromey  <tom@tromey.com>
7706
7707         * tracepoint.c (actions_command): Update.
7708         * mi/mi-cmd-break.c (mi_command_line_array)
7709         (mi_command_line_array_cnt, mi_command_line_array_ptr)
7710         (mi_read_next_line): Remove.
7711         (mi_cmd_break_commands): Update.
7712         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
7713         function_view.
7714         * cli/cli-script.c (get_command_line): Update.
7715         (process_next_line): Use function_view.  Constify.
7716         (recurse_read_control_structure, read_command_lines)
7717         (read_command_lines_1): Change argument types to function_view.
7718         (do_define_command, document_command): Update.
7719         * breakpoint.h (check_tracepoint_command): Don't declare.
7720         * breakpoint.c (check_tracepoint_command): Remove.
7721         (commands_command_1, create_tracepoint_from_upload): Update.
7722
7723 2018-05-04  Tom Tromey  <tom@tromey.com>
7724
7725         PR gdb/11750:
7726         * cli/cli-script.h (enum command_control_type) <define_control>:
7727         New constant.
7728         * cli/cli-script.c (multi_line_command_p): Handle define_control.
7729         (build_command_line, execute_control_command_1)
7730         (process_next_line): Likewise.
7731         (do_define_command): New function, extracted from define_command.
7732         (define_command): Use it.
7733
7734 2018-05-04  Tom Tromey  <tom@tromey.com>
7735
7736         * tracepoint.c (actions_command): Update.
7737         * cli/cli-script.h (read_command_lines): Update.
7738         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
7739         (MAX_TMPBUF): Remove define.
7740         (define_command): Use string_printf.
7741         (document_command): Likewise.
7742         * breakpoint.c (commands_command_1): Update.
7743
7744 2018-05-04  Tom Tromey  <tom@tromey.com>
7745
7746         * top.c (execute_command): Update.
7747         * cli/cli-script.h (print_command_lines): Now varargs.
7748         * cli/cli-script.c (print_command_lines): Now varargs.
7749         (execute_control_command_1) <case while_control, case if_control>:
7750         Update.
7751
7752 2018-05-04  Tom Tromey  <tom@tromey.com>
7753
7754         * tracepoint.c (all_tracepoint_actions): Rename from
7755         all_tracepoint_actions_and_cleanup.  Change return type.
7756         (actions_command, encode_actions_1, encode_actions)
7757         (trace_dump_actions, tdump_command): Update.
7758         * remote.c (remote_download_command_source): Update.
7759         * python/python.c (gdbpy_eval_from_control_command)
7760         (python_command, python_interactive_command): Update.
7761         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
7762         * guile/guile.c (guile_command)
7763         (gdbscm_eval_from_control_command, guile_command): Update.
7764         * compile/compile.c (compile_code_command)
7765         (compile_print_command, compile_to_object): Update.
7766         * cli/cli-script.h (struct command_lines_deleter): New.
7767         (counted_command_line): New typedef.
7768         (struct command_line): Add constructor, destructor.
7769         <body_list>: Remove.
7770         <body_list_0, body_list_1>: New members.
7771         (command_line_up): Remove typedef.
7772         (read_command_lines, read_command_lines_1, get_command_line):
7773         Update.
7774         (copy_command_lines): Don't declare.
7775         * cli/cli-script.c (build_command_line): Use "new".
7776         (get_command_line): Return counted_command_line.
7777         (print_command_lines, execute_user_command)
7778         (execute_control_command_1, while_command, if_command): Update.
7779         (realloc_body_list): Remove.
7780         (process_next_line, recurse_read_control_structure): Update.
7781         (read_command_lines, read_command_lines_1): Return counted_command_line.
7782         (free_command_lines): Use "delete".
7783         (copy_command_lines): Remove.
7784         (define_command, document_command, show_user_1): Update.
7785         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7786         a counted_command_line.
7787         * breakpoint.h (counted_command_line): Remove typedef.
7788         (breakpoint_set_commands): Update.
7789         * breakpoint.c (check_no_tracepoint_commands)
7790         (validate_commands_for_breakpoint): Update.
7791         (breakpoint_set_commands): Change commands to be a
7792         counted_command_line.
7793         (commands_command_1, update_dprintf_command_list)
7794         (create_tracepoint_from_upload): Update.
7795
7796 2018-05-04  Tom Tromey  <tom@tromey.com>
7797
7798         * cli/cli-decode.h (cmd_list_element): New constructor.
7799         (~cmd_list_element): New destructor.
7800         (struct cmd_list_element): Add initializers.
7801         * cli/cli-decode.c (do_add_cmd): Use "new".
7802         (delete_cmd): Use "delete".
7803
7804 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7805             Pedro Alves <palves@redhat.com>
7806
7807         PR breakpoints/19806 and support for PR external/20207.
7808         * NEWS: Mention Aarch64 watchpoint improvements.
7809         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7810         watchpoints and PR external/20207 watchpoints.
7811         * nat/aarch64-linux-hw-point.c
7812         (kernel_supports_any_contiguous_range): New.
7813         (aarch64_watchpoint_offset): New.
7814         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7815         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7816         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7817         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7818         next_addr_orig_p.  Support PR external/20207 watchpoints.
7819         (aarch64_downgrade_regs): New.
7820         (aarch64_dr_state_insert_one_point): New parameters offset and
7821         addr_orig.
7822         (aarch64_dr_state_remove_one_point): Likewise.
7823         (aarch64_handle_breakpoint): Update caller.
7824         (aarch64_handle_aligned_watchpoint): Likewise.
7825         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7826         aligned_offset.
7827         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7828         aarch64_downgrade_regs.
7829         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7830         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7831         (DR_CONTROL_MASK): ... this.
7832         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7833         (unsigned int aarch64_watchpoint_offset): New prototype.
7834         (aarch64_linux_set_debug_regs): Remove const from state.
7835         * utils.c (align_up, align_down): Move to ...
7836         * common/common-utils.c (align_up, align_down): ... here.
7837         * utils.h (align_up, align_down): Move to ...
7838         * common/common-utils.h (align_up, align_down): ... here.
7839
7840 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7841
7842         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7843         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7844         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7845         Re-implement to match the ABI as summarized in GCC's
7846         gcc/config/sparc/sparc.c.  All callers updated.
7847         (sparc32_store_arguments): Remove assertion.
7848
7849 2018-05-04  Tom Tromey  <tom@tromey.com>
7850
7851         * printcmd.c: Don't include tui.h.
7852         (decode_format): Use skip_spaces.
7853
7854 2018-05-04  Tom Tromey  <tom@tromey.com>
7855
7856         PR gdb/22619:
7857         * printcmd.c (last_count): New global.
7858         (x_command): Use saved count when repeating.
7859
7860 2018-05-04  Tom Tromey  <tom@tromey.com>
7861
7862         * nto-procfs.c (do_closedir_cleanup): Remove.
7863         (procfs_pidlist): Use gdb_dir_up.
7864         * procfs.c (do_closedir_cleanup): Remove.
7865         (proc_update_threads): Use gdb_dir_up.
7866         * common/filestuff.h (struct gdb_dir_deleter): New.
7867         (gdb_dir_up): New typedef.
7868
7869 2018-05-04  Tom Tromey  <tom@tromey.com>
7870
7871         * ada-lang.c (print_mention_exception): Use std::string.
7872
7873 2018-05-04  Tom Tromey  <tom@tromey.com>
7874
7875         * ada-lang.c (create_excep_cond_exprs): Update.
7876         (ada_exception_catchpoint_cond_string): Use std::string.
7877
7878 2018-05-04  Tom Tromey  <tom@tromey.com>
7879
7880         * ada-lang.c (xget_renaming_scope): Return std::string.
7881         (old_renaming_is_invisible): Update.
7882
7883 2018-05-04  Tom Tromey  <tom@tromey.com>
7884
7885         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7886         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7887
7888 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7889
7890         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7891
7892 2018-05-04  Tom Tromey  <tom@tromey.com>
7893
7894         * remote.c (remote_query_supported_append): Change type.
7895         (remote_check_symbols): Update.
7896
7897 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7898
7899         PR gdb/11420
7900         * configure.ac: Prepend libpython.
7901         * python/python-config.py: Likewise.
7902         * configure: Regenerate.
7903
7904 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7905
7906         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7907
7908 2018-05-03  Pedro Alves  <palves@redhat.com>
7909
7910         * s390-linux-nat.c
7911         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7912         override.  Write 'true' instead of '1'.
7913         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7914         declaration.
7915
7916 2018-05-02  Pedro Alves  <palves@redhat.com>
7917
7918         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7919         add_inf_child_target.
7920         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7921         add_inf_child_target.
7922         * aix-thread.c (aix_thread_target_info): New.
7923         (aix_thread_target) <shortname, longname, doc>: Delete.
7924         <info>: New.
7925         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7926         add_inf_child_target.
7927         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7928         add_inf_child_target.
7929         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7930         add_inf_child_target.
7931         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7932         add_inf_child_target.
7933         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7934         add_inf_child_target.
7935         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7936         add_inf_child_target.
7937         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7938         add_inf_child_target.
7939         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7940         add_inf_child_target.
7941         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7942         add_inf_child_target.
7943         * bfd-target.c (target_bfd_target_info): New.
7944         (target_bfd) <shortname, longname, doc>: Delete.
7945         <info>: New.
7946         * bsd-kvm.c (bsd_kvm_target_info): New.
7947         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7948         <info>: New.
7949         (bsd_kvm_target::open): Rename to ...
7950         (bsd_kvm_target_open): ... this.  Adjust.
7951         * bsd-uthread.c (bsd_uthread_target_info): New.
7952         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7953         <info>: New.
7954         * corefile.c (core_file_command): Adjust.
7955         * corelow.c (core_target_info): New.
7956         (core_target) <shortname, longname, doc>: Delete.
7957         <info>: New.
7958         (core_target::open): Rename to ...
7959         (core_target_open): ... this.  Adjust.
7960         * ctf.c (ctf_target_info): New.
7961         (ctf_target) <shortname, longname, doc>: Delete.
7962         <info>: New.
7963         (ctf_target::open): Rename to ...
7964         (ctf_target_open): ... this.
7965         (_initialize_ctf): Adjust.
7966         * exec.c (exec_target_info): New.
7967         (exec_target) <shortname, longname, doc>: Delete.
7968         <info>: New.
7969         (exec_target::open): Rename to ...
7970         (exec_target_open): ... this.
7971         * gdbcore.h (core_target_open): Declare.
7972         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7973         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7974         add_inf_child_target.
7975         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7976         add_inf_child_target.
7977         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7978         add_inf_child_target.
7979         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7980         add_inf_child_target.
7981         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7982         add_inf_child_target.
7983         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7984         add_inf_child_target.
7985         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7986         add_inf_child_target.
7987         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7988         add_inf_child_target.
7989         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7990         add_inf_child_target.
7991         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7992         add_inf_child_target.
7993         * inf-child.c (inf_child_target_info): New.
7994         (inf_child_target::info): New.
7995         (inf_child_open_target): Remove 'target' parameter.  Use
7996         get_native_target instead.
7997         (inf_child_target::open): Delete.
7998         (add_inf_child_target): New.
7999         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
8000         Delete.
8001         <info>: New.
8002         (add_inf_child_target): Declare.
8003         (inf_child_open_target): Declare.
8004         * linux-thread-db.c (thread_db_target_info): New.
8005         (thread_db_target) <shortname, longname, doc>: Delete.
8006         <info>: New.
8007         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
8008         add_inf_child_target.
8009         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
8010         add_inf_child_target.
8011         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
8012         add_inf_child_target.
8013         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
8014         add_inf_child_target.
8015         * make-target-delegates (print_class): Adjust.
8016         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
8017         add_inf_child_target.
8018         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
8019         add_inf_child_target.
8020         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
8021         add_inf_child_target.
8022         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
8023         add_inf_child_target.
8024         * nto-procfs.c (nto_native_target_info): New.
8025         (nto_procfs_target_native) <shortname, longname, doc>:
8026         Delete.
8027         <info>: New.
8028         (nto_procfs_target_info): New.
8029         (nto_procfs_target_procfs) <shortname, longname, doc>:
8030         Delete.
8031         <info>: New.
8032         (init_procfs_targets): Adjust.
8033         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
8034         add_inf_child_target.
8035         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
8036         add_inf_child_target.
8037         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
8038         add_inf_child_target.
8039         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
8040         add_inf_child_target.
8041         * ravenscar-thread.c (ravenscar_target_info): New.
8042         (ravenscar_thread_target) <shortname, longname, doc>:
8043         Delete.
8044         <info>: New.
8045         * record-btrace.c (record_btrace_target_info):
8046         (record_btrace_target) <shortname, longname, doc>: Delete.
8047         <info>: New.
8048         (record_btrace_target::open): Rename to ...
8049         (record_btrace_target_open): ... this.  Adjust.
8050         * record-full.c (record_longname, record_doc): New.
8051         (record_full_base_target) <shortname, longname, doc>: Delete.
8052         <info>: New.
8053         (record_full_target_info): New.
8054         (record_full_target): <shortname>: Delete.
8055         <info>: New.
8056         (record_full_core_open_1, record_full_open_1): Update comments.
8057         (record_full_base_target::open): Rename to ...
8058         (record_full_open): ... this.
8059         (cmd_record_full_restore): Update.
8060         (_initialize_record_full): Update.
8061         * remote-sim.c (remote_sim_target_info): New.
8062         (gdbsim_target) <shortname, longname, doc>: Delete.
8063         <info>: New.
8064         (gdbsim_target::open): Rename to ...
8065         (gdbsim_target_open): ... this.
8066         (_initialize_remote_sim): Adjust.
8067         * remote.c (remote_doc): New.
8068         (remote_target_info): New.
8069         (remote_target) <shortname, longname, doc>: Delete.
8070         <info>: New.
8071         (extended_remote_target_info): New.
8072         (extended_remote_target) <shortname, longname, doc>: Delete.
8073         <info>: New.
8074         (remote_target::open_1): Make static.  Adjust.
8075         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
8076         * s390-linux-nat.c (_initialize_s390_nat): Use
8077         add_inf_child_target.
8078         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
8079         add_inf_child_target.
8080         * sol-thread.c (thread_db_target_info): New.
8081         (sol_thread_target) <shortname, longname, doc>: Delete.
8082         <info>: New.
8083         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
8084         add_inf_child_target.
8085         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
8086         add_inf_child_target.
8087         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
8088         add_inf_child_target.
8089         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
8090         add_inf_child_target.
8091         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
8092         add_inf_child_target.
8093         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
8094         add_inf_child_target.
8095         * spu-linux-nat.c (_initialize_spu_nat): Use
8096         add_inf_child_target.
8097         * spu-multiarch.c (spu_multiarch_target_info): New.
8098         (spu_multiarch_target) <shortname, longname, doc>: Delete.
8099         <info>: New.
8100         * target-delegates.c: Regenerate.
8101         * target.c: Include <unordered_map>.
8102         (target_ops_p): Delete.
8103         (DEF_VEC_P(target_ops_p)): Delete.
8104         (target_factories): New.
8105         (test_target_info): New.
8106         (test_target_ops::info): New.
8107         (open_target): Adjust to use target_factories.
8108         (add_target_with_completer): Rename to ...
8109         (add_target): ... this.  Change prototype.  Register target_info
8110         and open callback in target_factories.  Register target_info in
8111         command context instead of target_ops.
8112         (add_target): Delete old implementation.
8113         (add_deprecated_target_alias): Change prototype.  Adjust.
8114         (the_native_target): New.
8115         (set_native_target, get_native_target): New.
8116         (find_default_run_target): Use the_native_target.
8117         (find_attach_target, find_run_target): Simplify.
8118         (target_ops::open): Delete.
8119         (dummy_target_info): New.
8120         (dummy_target::shortname, dummy_target::longname)
8121         (dummy_target::doc): Delete.
8122         (dummy_target::info): New.
8123         (debug_target::shortname, debug_target::longname)
8124         (debug_target::doc): Delete.
8125         (debug_target::info): New.
8126         * target.h (struct target_info): New.
8127         (target_ops::~target_ops): Add comment.
8128         (target_ops::info): New.
8129         (target_ops::shortname, target_ops::longname, target_ops::doc): No
8130         longer virtual.  Implement in terms of target_info.
8131         (set_native_target, get_native_target): Declare.
8132         (target_open_ftype): New.
8133         (add_target, add_target_with_completer)
8134         (add_deprecated_target_alias): Change prototype.
8135         (test_target) <shortname, longname, doc>: Delete.
8136         <info>: New.
8137         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
8138         add_inf_child_target.
8139         * tracefile-tfile.c (tfile_target_info): New.
8140         (tfile_target) <shortname, longname, doc>: Delete.
8141         <info>: New.
8142         (tfile_target::open): Rename to ...
8143         (tfile_target_open): ... this.
8144         (_initialize_tracefile_tfile): Adjust.
8145         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
8146         add_inf_child_target.
8147         * windows-nat.c (_initialize_windows_nat): Use
8148         add_inf_child_target.
8149         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
8150         add_inf_child_target.
8151
8152 2018-05-02  Pedro Alves  <palves@redhat.com>
8153
8154         * linux-nat.h (linux_nat_target) <low_new_thread,
8155         low_delete_thread, low_new_fork, low_forget_process,
8156         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
8157         New virtual methods.
8158         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8159         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
8160         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
8161         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8162         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
8163         Delete.
8164         * linux-fork.c (delete_fork): Adjust to call low method.
8165         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
8166         (linux_nat_new_fork, linux_nat_forget_process_hook)
8167         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
8168         (linux_nat_status_is_event):
8169         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
8170         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
8171         to call low method.
8172         (sigtrap_is_event): Rename to ...
8173         (linux_nat_target::low_status_is_event): ... this.
8174         (linux_nat_set_status_is_event): Delete.
8175         (save_stop_reason, linux_nat_wait_1)
8176         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
8177         low methods.
8178         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
8179         (linux_nat_set_new_fork, linux_nat_set_forget_process)
8180         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
8181         (linux_nat_set_prepare_to_resume): Delete.
8182         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
8183         low virtual methods.
8184         * amd64-linux-nat.c: Likewise.
8185         * arm-linux-nat.c: Likewise.
8186         * i386-linux-nat.c: Likewise.
8187         * ia64-linux-nat.c: Likewise.
8188         * mips-linux-nat.c: Likewise.
8189         * ppc-linux-nat.c: Likewise.
8190         * s390-linux-nat.c: Likewise.
8191         * sparc64-linux-nat.c: Likewise.
8192         * x86-linux-nat.c: Likewise.
8193         * x86-linux-nat.h: Include "nat/x86-linux.h".
8194         (x86_linux_nat_target) <low_new_fork, low_forget_process,
8195         low_prepare_to_resume, low_new_thread, low_delete_thread>:
8196         Override methods.
8197
8198 2018-05-02  Pedro Alves  <palves@redhat.com>
8199
8200         * target.h (target_ops)
8201         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
8202         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
8203         stopped_by_watchpoint, have_continuable_watchpoint,
8204         stopped_data_address, watchpoint_addr_within_range,
8205         can_accel_watchpoint_condition, can_run, thread_alive,
8206         has_all_memory, has_memory, has_stack, has_registers,
8207         has_execution, can_async_p, is_async_p, supports_non_stop,
8208         always_non_stop_p, can_execute_reverse, supports_multi_process,
8209         supports_enable_disable_tracepoint,
8210         supports_disable_randomization, supports_string_tracing,
8211         supports_evaluation_of_breakpoint_conditions,
8212         can_run_breakpoint_commands, filesystem_is_local,
8213         can_download_tracepoint, get_trace_state_variable_value,
8214         set_trace_notes, get_tib_address, use_agent, can_use_agent,
8215         record_is_replaying, record_will_replay,
8216         augmented_libraries_svr4_read>: Adjust to return bool.
8217         * aarch64-linux-nat.c: All implementations adjusted.
8218         * aix-thread.c: All implementations adjusted.
8219         * arm-linux-nat.c: All implementations adjusted.
8220         * breakpoint.c: All implementations adjusted.
8221         * bsd-kvm.c: All implementations adjusted.
8222         * bsd-uthread.c: All implementations adjusted.
8223         * corelow.c: All implementations adjusted.
8224         * ctf.c: All implementations adjusted.
8225         * darwin-nat.c: All implementations adjusted.
8226         * darwin-nat.h: All implementations adjusted.
8227         * exec.c: All implementations adjusted.
8228         * fbsd-nat.c: All implementations adjusted.
8229         * fbsd-nat.h: All implementations adjusted.
8230         * gnu-nat.c: All implementations adjusted.
8231         * gnu-nat.h: All implementations adjusted.
8232         * go32-nat.c: All implementations adjusted.
8233         * ia64-linux-nat.c: All implementations adjusted.
8234         * inf-child.c: All implementations adjusted.
8235         * inf-child.h: All implementations adjusted.
8236         * inf-ptrace.c: All implementations adjusted.
8237         * inf-ptrace.h: All implementations adjusted.
8238         * linux-nat.c: All implementations adjusted.
8239         * linux-nat.h: All implementations adjusted.
8240         * mips-linux-nat.c: All implementations adjusted.
8241         * nto-procfs.c: All implementations adjusted.
8242         * ppc-linux-nat.c: All implementations adjusted.
8243         * procfs.c: All implementations adjusted.
8244         * ravenscar-thread.c: All implementations adjusted.
8245         * record-btrace.c: All implementations adjusted.
8246         * record-full.c: All implementations adjusted.
8247         * remote-sim.c: All implementations adjusted.
8248         * remote.c: All implementations adjusted.
8249         * s390-linux-nat.c: All implementations adjusted.
8250         * sol-thread.c: All implementations adjusted.
8251         * spu-multiarch.c: All implementations adjusted.
8252         * target-delegates.c: All implementations adjusted.
8253         * target.c: All implementations adjusted.
8254         * target.h: All implementations adjusted.
8255         * tracefile-tfile.c: All implementations adjusted.
8256         * tracefile.c: All implementations adjusted.
8257         * tracefile.h: All implementations adjusted.
8258         * windows-nat.c: All implementations adjusted.
8259         * x86-linux-nat.h: All implementations adjusted.
8260         * x86-nat.h: All implementations adjusted.
8261
8262 2018-05-02  Pedro Alves  <palves@redhat.com>
8263
8264         * make-target-delegates (scan_target_h): Don't trim lines here.
8265         Replace sequences of tabs and/or whitespace with a single
8266         whitespace.
8267         (top level, parsing methods): Trim each line before processing it
8268         here.
8269
8270 2018-05-02  Pedro Alves  <palves@redhat.com>
8271             John Baldwin  <jhb@freebsd.org>
8272
8273         * target.h (enum strata) <debug_stratum>: New.
8274         (struct target_ops) <all delegation methods>: Replace by C++
8275         virtual methods, and drop "to_" prefix.  All references updated
8276         throughout.
8277         <to_shortname, to_longname, to_doc, to_data,
8278         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
8279         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
8280         virtual methods.  All references updated throughout.
8281         <can_attach, supports_terminal_ours, can_create_inferior,
8282         get_thread_control_capabilities, attach_no_wait>: New
8283         virtual methods.
8284         <insert_breakpoint, remove_breakpoint>: Now
8285         TARGET_DEFAULT_NORETURN methods.
8286         <info_proc>: Now returns bool.
8287         <to_magic>: Delete.
8288         (OPS_MAGIC): Delete.
8289         (current_target): Delete.  All references replaced by references
8290         to ...
8291         (target_stack): ... this.  New.
8292         (target_shortname, target_longname): Adjust.
8293         (target_can_run): Now a function declaration.
8294         (default_child_has_all_memory, default_child_has_memory)
8295         (default_child_has_stack, default_child_has_registers)
8296         (default_child_has_execution): Remove target_ops parameter.
8297         (complete_target_initialization): Delete.
8298         (memory_breakpoint_target): New template class.
8299         (test_target_ops): Refactor as a C++ class with virtual methods.
8300         * make-target-delegates (NAME_PART): Tighten.
8301         (POINTER_PART, CP_SYMBOL): New.
8302         (SIMPLE_RETURN_PART): Reimplement.
8303         (VEC_RETURN_PART): Expect less.
8304         (RETURN_PART, VIRTUAL_PART): New.
8305         (METHOD): Adjust to C++ virtual methods.
8306         (scan_target_h): Remove reference to C99.
8307         (dname): Output "target_ops::" prefix.
8308         (write_function_header): Adjust to output a C++ class method.
8309         (write_declaration): New.
8310         (write_delegator): Adjust to output a C++ class method.
8311         (tdname): Output "dummy_target::" prefix.
8312         (write_tdefault, write_debugmethod): Adjust to output a C++ class
8313         method.
8314         (tdefault_names, debug_names): Delete.
8315         (return_types, tdefaults, styles, argtypes_array): New.
8316         (top level): All methods are delegators.
8317         (print_class): New.
8318         (top level): Print dummy_target and debug_target classes.
8319         * target-delegates.c: Regenerate.
8320         * target-debug.h (target_debug_print_enum_info_proc_what)
8321         (target_debug_print_thread_control_capabilities)
8322         (target_debug_print_thread_info_p): New.
8323         * target.c (dummy_target): Delete.
8324         (the_dummy_target, the_debug_target): New.
8325         (target_stack): Now extern.
8326         (set_targetdebug): Push/unpush debug target.
8327         (default_child_has_all_memory, default_child_has_memory)
8328         (default_child_has_stack, default_child_has_registers)
8329         (default_child_has_execution): Remove target_ops parameter.
8330         (complete_target_initialization): Delete.
8331         (add_target_with_completer): No longer call
8332         complete_target_initialization.
8333         (target_supports_terminal_ours): Use regular delegation.
8334         (update_current_target): Delete.
8335         (push_target): No longer check magic number.  Don't call
8336         update_current_target.
8337         (unpush_target): Don't call update_current_target.
8338         (target_is_pushed): No longer check magic number.
8339         (target_require_runnable): Skip for all stratums over
8340         process_stratum.
8341         (target_ops::info_proc): New.
8342         (target_info_proc): Use find_target_at and
8343         find_default_run_target.
8344         (target_supports_disable_randomization): Use regular delegation.
8345         (target_get_osdata): Use find_target_at.
8346         (target_ops::open, target_ops::close, target_ops::can_attach)
8347         (target_ops::attach, target_ops::can_create_inferior)
8348         (target_ops::create_inferior, target_ops::can_run)
8349         (target_can_run): New.
8350         (default_fileio_target): Use regular delegation.
8351         (target_ops::fileio_open, target_ops::fileio_pwrite)
8352         (target_ops::fileio_pread, target_ops::fileio_fstat)
8353         (target_ops::fileio_close, target_ops::fileio_unlink)
8354         (target_ops::fileio_readlink): New.
8355         (target_fileio_open_1, target_fileio_unlink)
8356         (target_fileio_readlink): Always call the target method.  Handle
8357         FILEIO_ENOSYS.
8358         (return_zero, return_zero_has_execution): Delete.
8359         (init_dummy_target): Delete.
8360         (dummy_target::dummy_target, dummy_target::shortname)
8361         (dummy_target::longname, dummy_target::doc)
8362         (debug_target::debug_target, debug_target::shortname)
8363         (debug_target::longname, debug_target::doc): New.
8364         (target_supports_delete_record): Use regular delegation.
8365         (setup_target_debug): Delete.
8366         (maintenance_print_target_stack): Skip debug_stratum.
8367         (initialize_targets): Instantiate the_dummy_target and
8368         the_debug_target.
8369         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
8370         use target_stack.
8371         (target_auxv_search, fprint_target_auxv): Adjust.
8372         (info_auxv_command): Adjust to use target_stack.
8373         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
8374         * exceptions.c (print_flush): Handle a NULL target_stack.
8375         * regcache.c (target_ops_no_register): Refactor as class with
8376         virtual methods.
8377
8378         * exec.c (exec_target): New class.
8379         (exec_ops): Now an exec_target.
8380         (exec_open, exec_close_1, exec_get_section_table)
8381         (exec_xfer_partial, exec_files_info, exec_has_memory)
8382         (exec_make_note_section): Refactor as exec_target methods.
8383         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
8384         Delete.
8385         (exec_target::find_memory_regions): New.
8386         (_initialize_exec): Don't call init_exec_ops.
8387         * gdbcore.h (exec_file_clear): Delete.
8388
8389         * corefile.c (core_target): Delete.
8390         (core_file_command): Adjust.
8391         * corelow.c (core_target): New class.
8392         (the_core_target): New.
8393         (core_close): Remove target_ops parameter.
8394         (core_close_cleanup): Adjust.
8395         (core_target::close): New.
8396         (core_open, core_detach, get_core_registers, core_files_info)
8397         (core_xfer_partial, core_thread_alive, core_read_description)
8398         (core_pid_to_str, core_thread_name, core_has_memory)
8399         (core_has_stack, core_has_registers, core_info_proc): Rework as
8400         core_target methods.
8401         (ignore, core_remove_breakpoint, init_core_ops): Delete.
8402         (_initialize_corelow): Initialize the_core_target.
8403         * gdbcore.h (core_target): Delete.
8404         (the_core_target): New.
8405
8406         * ctf.c: (ctf_target): New class.
8407         (ctf_ops): Now a ctf_target.
8408         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
8409         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
8410         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
8411         methods.
8412         (init_ctf_ops): Delete.
8413         (_initialize_ctf): Don't call it.
8414         * tracefile-tfile.c (tfile_target): New class.
8415         (tfile_ops): Now a tfile_target.
8416         (tfile_open, tfile_close, tfile_files_info)
8417         (tfile_get_tracepoint_status, tfile_trace_find)
8418         (tfile_fetch_registers, tfile_xfer_partial)
8419         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
8420         Refactor as tfile_target methods.
8421         (tfile_xfer_partial_features): Remove target_ops parameter.
8422         (init_tfile_ops): Delete.
8423         (_initialize_tracefile_tfile): Don't call it.
8424         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
8425         (tracefile_has_stack, tracefile_has_registers)
8426         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
8427         tracefile_target methods.
8428         (init_tracefile_ops): Delete.
8429         (tracefile_target::tracefile_target): New.
8430         * tracefile.h: Include "target.h".
8431         (tracefile_target): New class.
8432         (init_tracefile_ops): Delete.
8433
8434         * spu-multiarch.c (spu_multiarch_target): New class.
8435         (spu_ops): Now a spu_multiarch_target.
8436         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
8437         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
8438         (spu_search_memory, spu_mourn_inferior): Refactor as
8439         spu_multiarch_target methods.
8440         (init_spu_ops): Delete.
8441         (_initialize_spu_multiarch): Remove references to init_spu_ops,
8442         complete_target_initialization.
8443
8444         * ravenscar-thread.c (ravenscar_thread_target): New class.
8445         (ravenscar_ops): Now a ravenscar_thread_target.
8446         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
8447         (ravenscar_thread_alive, ravenscar_pid_to_str)
8448         (ravenscar_fetch_registers, ravenscar_store_registers)
8449         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
8450         (ravenscar_stopped_by_hw_breakpoint)
8451         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
8452         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
8453         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
8454         methods.
8455         (init_ravenscar_thread_ops): Delete.
8456         (_initialize_ravenscar): Remove references to
8457         init_ravenscar_thread_ops and complete_target_initialization.
8458
8459         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
8460         (bsd_uthread_target): New class.
8461         (bsd_uthread_ops): Now a bsd_uthread_target.
8462         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
8463         (bsd_uthread_close, bsd_uthread_mourn_inferior)
8464         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
8465         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
8466         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
8467         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
8468         (bsd_uthread_target): Delete function.
8469         (_initialize_bsd_uthread): Remove reference to
8470         complete_target_initialization.
8471
8472         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
8473         (target_bfd): ... this new class.
8474         (target_bfd_xfer_partial, target_bfd_get_section_table)
8475         (target_bfd_close): Refactor as target_bfd methods.
8476         (target_bfd::~target_bfd): New.
8477         (target_bfd_reopen): Adjust.
8478         (target_bfd::close): New.
8479
8480         * record-btrace.c (record_btrace_target): New class.
8481         (record_btrace_ops): Now a record_btrace_target.
8482         (record_btrace_open, record_btrace_stop_recording)
8483         (record_btrace_disconnect, record_btrace_close)
8484         (record_btrace_async, record_btrace_info)
8485         (record_btrace_insn_history, record_btrace_insn_history_range)
8486         (record_btrace_insn_history_from, record_btrace_call_history)
8487         (record_btrace_call_history_range)
8488         (record_btrace_call_history_from, record_btrace_record_method)
8489         (record_btrace_is_replaying, record_btrace_will_replay)
8490         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
8491         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
8492         (record_btrace_store_registers, record_btrace_prepare_to_store)
8493         (record_btrace_to_get_unwinder)
8494         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
8495         (record_btrace_commit_resume, record_btrace_wait)
8496         (record_btrace_stop, record_btrace_can_execute_reverse)
8497         (record_btrace_stopped_by_sw_breakpoint)
8498         (record_btrace_supports_stopped_by_sw_breakpoint)
8499         (record_btrace_stopped_by_hw_breakpoint)
8500         (record_btrace_supports_stopped_by_hw_breakpoint)
8501         (record_btrace_update_thread_list, record_btrace_thread_alive)
8502         (record_btrace_goto_begin, record_btrace_goto_end)
8503         (record_btrace_goto, record_btrace_stop_replaying_all)
8504         (record_btrace_execution_direction)
8505         (record_btrace_prepare_to_generate_core)
8506         (record_btrace_done_generating_core): Refactor as
8507         record_btrace_target methods.
8508         (init_record_btrace_ops): Delete.
8509         (_initialize_record_btrace): Remove reference to
8510         init_record_btrace_ops.
8511         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
8512         the execution_direction global.
8513         (record_full_base_target, record_full_target)
8514         (record_full_core_target): New classes.
8515         (record_full_ops): Now a record_full_target.
8516         (record_full_core_ops): Now a record_full_core_target.
8517         (record_full_target::detach, record_full_target::disconnect)
8518         (record_full_core_target::disconnect)
8519         (record_full_target::mourn_inferior, record_full_target::kill):
8520         New.
8521         (record_full_open, record_full_close, record_full_async): Refactor
8522         as methods of the record_full_base_target class.
8523         (record_full_resume, record_full_commit_resume): Refactor
8524         as methods of the record_full_target class.
8525         (record_full_wait, record_full_stopped_by_watchpoint)
8526         (record_full_stopped_data_address)
8527         (record_full_stopped_by_sw_breakpoint)
8528         (record_full_supports_stopped_by_sw_breakpoint)
8529         (record_full_stopped_by_hw_breakpoint)
8530         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
8531         methods of the record_full_base_target class.
8532         (record_full_store_registers, record_full_xfer_partial)
8533         (record_full_insert_breakpoint, record_full_remove_breakpoint):
8534         Refactor as methods of the record_full_target class.
8535         (record_full_can_execute_reverse, record_full_get_bookmark)
8536         (record_full_goto_bookmark, record_full_execution_direction)
8537         (record_full_record_method, record_full_info, record_full_delete)
8538         (record_full_is_replaying, record_full_will_replay)
8539         (record_full_goto_begin, record_full_goto_end, record_full_goto)
8540         (record_full_stop_replaying): Refactor as methods of the
8541         record_full_base_target class.
8542         (record_full_core_resume, record_full_core_kill)
8543         (record_full_core_fetch_registers)
8544         (record_full_core_prepare_to_store)
8545         (record_full_core_store_registers, record_full_core_xfer_partial)
8546         (record_full_core_insert_breakpoint)
8547         (record_full_core_remove_breakpoint)
8548         (record_full_core_has_execution): Refactor
8549         as methods of the record_full_core_target class.
8550         (record_full_base_target::supports_delete_record): New.
8551         (init_record_full_ops): Delete.
8552         (init_record_full_core_ops): Delete.
8553         (record_full_save): Refactor as method of the
8554         record_full_base_target class.
8555         (_initialize_record_full): Remove references to
8556         init_record_full_ops and init_record_full_core_ops.
8557
8558         * remote.c (remote_target, extended_remote_target): New classes.
8559         (remote_ops): Now a remote_target.
8560         (extended_remote_ops): Now an extended_remote_target.
8561         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
8562         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
8563         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
8564         (remote_pass_signals, remote_set_syscall_catchpoint)
8565         (remote_program_signals, )
8566         (remote_thread_always_alive): Remove target_ops parameter.
8567         (remote_thread_alive, remote_thread_name)
8568         (remote_update_thread_list, remote_threads_extra_info)
8569         (remote_static_tracepoint_marker_at)
8570         (remote_static_tracepoint_markers_by_strid)
8571         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
8572         (remote_open): Refactor as methods of remote_target.
8573         (extended_remote_open, extended_remote_detach)
8574         (extended_remote_attach, extended_remote_post_attach):
8575         (extended_remote_supports_disable_randomization)
8576         (extended_remote_create_inferior): : Refactor as method of
8577         extended_remote_target.
8578         (remote_set_permissions, remote_open_1, remote_detach)
8579         (remote_follow_fork, remote_follow_exec, remote_disconnect)
8580         (remote_resume, remote_commit_resume, remote_stop)
8581         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
8582         (remote_terminal_ours, remote_wait, remote_fetch_registers)
8583         (remote_prepare_to_store, remote_store_registers)
8584         (remote_flash_erase, remote_flash_done, remote_files_info)
8585         (remote_kill, remote_mourn, remote_insert_breakpoint)
8586         (remote_remove_breakpoint, remote_insert_watchpoint)
8587         (remote_watchpoint_addr_within_range)
8588         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
8589         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
8590         (remote_supports_stopped_by_sw_breakpoint)
8591         (remote_stopped_by_hw_breakpoint)
8592         (remote_supports_stopped_by_hw_breakpoint)
8593         (remote_stopped_by_watchpoint, remote_stopped_data_address)
8594         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
8595         (remote_verify_memory): Refactor as methods of remote_target.
8596         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
8597         parameter.
8598         (remote_xfer_partial, remote_get_memory_xfer_limit)
8599         (remote_search_memory, remote_rcmd, remote_memory_map)
8600         (remote_pid_to_str, remote_get_thread_local_address)
8601         (remote_get_tib_address, remote_read_description): Refactor as
8602         methods of remote_target.
8603         (remote_target::fileio_open, remote_target::fileio_pwrite)
8604         (remote_target::fileio_pread, remote_target::fileio_close): New.
8605         (remote_hostio_readlink, remote_hostio_fstat)
8606         (remote_filesystem_is_local, remote_can_execute_reverse)
8607         (remote_supports_non_stop, remote_supports_disable_randomization)
8608         (remote_supports_multi_process, remote_supports_cond_breakpoints)
8609         (remote_supports_enable_disable_tracepoint)
8610         (remote_supports_string_tracing)
8611         (remote_can_run_breakpoint_commands, remote_trace_init)
8612         (remote_download_tracepoint, remote_can_download_tracepoint)
8613         (remote_download_trace_state_variable, remote_enable_tracepoint)
8614         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
8615         (remote_trace_start, remote_get_trace_status)
8616         (remote_get_tracepoint_status, remote_trace_stop)
8617         (remote_trace_find, remote_get_trace_state_variable_value)
8618         (remote_save_trace_data, remote_get_raw_trace_data)
8619         (remote_set_disconnected_tracing, remote_core_of_thread)
8620         (remote_set_circular_trace_buffer, remote_traceframe_info)
8621         (remote_get_min_fast_tracepoint_insn_len)
8622         (remote_set_trace_buffer_size, remote_set_trace_notes)
8623         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
8624         (remote_disable_btrace, remote_teardown_btrace)
8625         (remote_read_btrace, remote_btrace_conf)
8626         (remote_augmented_libraries_svr4_read, remote_load)
8627         (remote_pid_to_exec_file, remote_can_do_single_step)
8628         (remote_execution_direction, remote_thread_handle_to_thread_info):
8629         Refactor as methods of remote_target.
8630         (init_remote_ops, init_extended_remote_ops): Delete.
8631         (remote_can_async_p, remote_is_async_p, remote_async)
8632         (remote_thread_events, remote_upload_tracepoints)
8633         (remote_upload_trace_state_variables): Refactor as methods of
8634         remote_target.
8635         (_initialize_remote): Remove references to init_remote_ops and
8636         init_extended_remote_ops.
8637
8638         * remote-sim.c (gdbsim_target): New class.
8639         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
8640         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
8641         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
8642         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
8643         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
8644         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
8645         Refactor as methods of gdbsim_target.
8646         (gdbsim_ops): Now a gdbsim_target.
8647         (init_gdbsim_ops): Delete.
8648         (gdbsim_cntrl_c): Adjust.
8649         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
8650
8651         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
8652         (the_amd64_linux_nat_target): New.
8653         (amd64_linux_fetch_inferior_registers)
8654         (amd64_linux_store_inferior_registers): Refactor as methods of
8655         amd64_linux_nat_target.
8656         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
8657         * i386-linux-nat.c: Don't include "linux-nat.h".
8658         (i386_linux_nat_target): New class.
8659         (the_i386_linux_nat_target): New.
8660         (i386_linux_fetch_inferior_registers)
8661         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
8662         as methods of i386_linux_nat_target.
8663         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
8664         * inf-child.c (inf_child_ops): Delete.
8665         (inf_child_fetch_inferior_registers)
8666         (inf_child_store_inferior_registers): Delete.
8667         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
8668         methods of inf_child_target.
8669         (inf_child_target::supports_terminal_ours)
8670         (inf_child_target::terminal_init)
8671         (inf_child_target::terminal_inferior)
8672         (inf_child_target::terminal_ours_for_output)
8673         (inf_child_target::terminal_ours, inf_child_target::interrupt)
8674         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
8675         New.
8676         (inf_child_open, inf_child_disconnect, inf_child_close)
8677         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
8678         (inf_child_post_startup_inferior, inf_child_can_run)
8679         (inf_child_pid_to_exec_file): Refactor as methods of
8680         inf_child_target.
8681         (inf_child_follow_fork): Delete.
8682         (inf_child_target::can_create_inferior)
8683         (inf_child_target::can_attach): New.
8684         (inf_child_target::has_all_memory, inf_child_target::has_memory)
8685         (inf_child_target::has_stack, inf_child_target::has_registers)
8686         (inf_child_target::has_execution): New.
8687         (inf_child_fileio_open, inf_child_fileio_pwrite)
8688         (inf_child_fileio_pread, inf_child_fileio_fstat)
8689         (inf_child_fileio_close, inf_child_fileio_unlink)
8690         (inf_child_fileio_readlink, inf_child_use_agent)
8691         (inf_child_can_use_agent): Refactor as methods of
8692         inf_child_target.
8693         (return_zero, inf_child_target): Delete.
8694         (inf_child_target::inf_child_target): New.
8695         * inf-child.h: Include "target.h".
8696         (inf_child_target): Delete function prototype.
8697         (inf_child_target): New class.
8698         (inf_child_open_target, inf_child_mourn_inferior)
8699         (inf_child_maybe_unpush_target): Delete.
8700         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
8701         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
8702         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
8703         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
8704         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
8705         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
8706         (inf_ptrace_wait, inf_ptrace_xfer_partial)
8707         (inf_ptrace_thread_alive, inf_ptrace_files_info)
8708         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
8709         methods of inf_ptrace_target.
8710         (inf_ptrace_target): Delete function.
8711         * inf-ptrace.h: Include "inf-child.h".
8712         (inf_ptrace_target): Delete function declaration.
8713         (inf_ptrace_target): New class.
8714         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
8715         * linux-nat.c (linux_target): New.
8716         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
8717         (linux_nat_target::~linux_nat_target): New.
8718         (linux_child_post_attach, linux_child_post_startup_inferior)
8719         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
8720         (linux_child_remove_fork_catchpoint)
8721         (linux_child_insert_vfork_catchpoint)
8722         (linux_child_remove_vfork_catchpoint)
8723         (linux_child_insert_exec_catchpoint)
8724         (linux_child_remove_exec_catchpoint)
8725         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
8726         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
8727         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
8728         (linux_nat_stopped_data_address)
8729         (linux_nat_stopped_by_sw_breakpoint)
8730         (linux_nat_supports_stopped_by_sw_breakpoint)
8731         (linux_nat_stopped_by_hw_breakpoint)
8732         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
8733         (linux_nat_kill, linux_nat_mourn_inferior)
8734         (linux_nat_xfer_partial, linux_nat_thread_alive)
8735         (linux_nat_update_thread_list, linux_nat_pid_to_str)
8736         (linux_nat_thread_name, linux_child_pid_to_exec_file)
8737         (linux_child_static_tracepoint_markers_by_strid)
8738         (linux_nat_is_async_p, linux_nat_can_async_p)
8739         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
8740         (linux_nat_supports_multi_process)
8741         (linux_nat_supports_disable_randomization, linux_nat_async)
8742         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
8743         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
8744         (linux_nat_fileio_open, linux_nat_fileio_readlink)
8745         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
8746         methods of linux_nat_target.
8747         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
8748         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
8749         parameter.
8750         (check_stopped_by_watchpoint): Adjust.
8751         (linux_xfer_partial): Delete.
8752         (linux_target_install_ops, linux_target, linux_nat_add_target):
8753         Delete.
8754         (linux_nat_target::linux_nat_target): New.
8755         * linux-nat.h: Include "inf-ptrace.h".
8756         (linux_nat_target): New.
8757         (linux_target, linux_target_install_ops, linux_nat_add_target):
8758         Delete function declarations.
8759         (linux_target): Declare global.
8760         * linux-thread-db.c (thread_db_target): New.
8761         (thread_db_target::thread_db_target): New.
8762         (thread_db_ops): Delete.
8763         (the_thread_db_target): New.
8764         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
8765         (thread_db_update_thread_list, thread_db_pid_to_str)
8766         (thread_db_extra_thread_info)
8767         (thread_db_thread_handle_to_thread_info)
8768         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
8769         (thread_db_resume): Refactor as methods of thread_db_target.
8770         (init_thread_db_ops): Delete.
8771         (_initialize_thread_db): Remove reference to init_thread_db_ops.
8772         * x86-linux-nat.c: Don't include "linux-nat.h".
8773         (super_post_startup_inferior): Delete.
8774         (x86_linux_nat_target::~x86_linux_nat_target): New.
8775         (x86_linux_child_post_startup_inferior)
8776         (x86_linux_read_description, x86_linux_enable_btrace)
8777         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
8778         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
8779         methods of x86_linux_nat_target.
8780         (x86_linux_create_target): Delete.  Bits folded ...
8781         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8782         pointer.
8783         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8784         (x86_linux_nat_target): New class.
8785         (x86_linux_create_target): Delete.
8786         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8787         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8788         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8789         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8790         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8791         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8792         make extern.
8793         (x86_use_watchpoints): Delete.
8794         * x86-nat.h: Include "breakpoint.h" and "target.h".
8795         (x86_use_watchpoints): Delete.
8796         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8797         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8798         (x86_insert_watchpoint, x86_remove_watchpoint)
8799         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8800         (x86_stopped_by_hw_breakpoint): New declarations.
8801         (x86_nat_target): New template class.
8802
8803         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8804         (the_ppc_linux_nat_target): New.
8805         (ppc_linux_fetch_inferior_registers)
8806         (ppc_linux_can_use_hw_breakpoint)
8807         (ppc_linux_region_ok_for_hw_watchpoint)
8808         (ppc_linux_ranged_break_num_registers)
8809         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8810         (ppc_linux_insert_mask_watchpoint)
8811         (ppc_linux_remove_mask_watchpoint)
8812         (ppc_linux_can_accel_watchpoint_condition)
8813         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8814         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8815         (ppc_linux_watchpoint_addr_within_range)
8816         (ppc_linux_masked_watch_num_registers)
8817         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8818         (ppc_linux_read_description): Refactor as methods of
8819         ppc_linux_nat_target.
8820         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8821
8822         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8823         (procfs_target): New class.
8824         (the_procfs_target): New.
8825         (procfs_target): Delete function.
8826         (procfs_auxv_parse, procfs_attach, procfs_detach)
8827         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8828         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8829         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8830         (procfs_create_inferior, procfs_update_thread_list)
8831         (procfs_thread_alive, procfs_pid_to_str)
8832         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8833         (procfs_stopped_data_address, procfs_insert_watchpoint)
8834         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8835         (proc_find_memory_regions, procfs_info_proc)
8836         (procfs_make_note_section): Refactor as methods of procfs_target.
8837         (_initialize_procfs): Adjust.
8838         * sol-thread.c (sol_thread_target): New class.
8839         (sol_thread_ops): Now a sol_thread_target.
8840         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8841         (sol_thread_fetch_registers, sol_thread_store_registers)
8842         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8843         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8844         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8845         (init_sol_thread_ops): Delete.
8846         (_initialize_sol_thread): Adjust.  Remove references to
8847         init_sol_thread_ops and complete_target_initialization.
8848
8849         * windows-nat.c (windows_nat_target): New class.
8850         (windows_fetch_inferior_registers)
8851         (windows_store_inferior_registers, windows_resume, windows_wait)
8852         (windows_attach, windows_detach, windows_pid_to_exec_file)
8853         (windows_files_info, windows_create_inferior)
8854         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8855         (windows_close, windows_pid_to_str, windows_xfer_partial)
8856         (windows_get_tib_address, windows_get_ada_task_ptid)
8857         (windows_thread_name, windows_thread_alive): Refactor as
8858         windows_nat_target methods.
8859         (do_initial_windows_stuff): Adjust.
8860         (windows_target): Delete function.
8861         (_initialize_windows_nat): Adjust.
8862
8863         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8864         (darwin_mourn_inferior, darwin_kill_inferior)
8865         (darwin_create_inferior, darwin_attach, darwin_detach)
8866         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8867         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8868         (darwin_supports_multi_process): Refactor as darwin_nat_target
8869         methods.
8870         (darwin_resume_to, darwin_files_info): Delete.
8871         (_initialize_darwin_inferior): Rename to ...
8872         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8873         * darwin-nat.h: Include "inf-child.h".
8874         (darwin_nat_target): New class.
8875         (darwin_complete_target): Delete.
8876         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8877         (darwin_target): New.
8878         (i386_darwin_fetch_inferior_registers)
8879         (i386_darwin_store_inferior_registers): Refactor as methods of
8880         darwin_nat_target.
8881         (darwin_complete_target): Delete, with ...
8882         (_initialize_i386_darwin_nat): ... bits factored out here.
8883
8884         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8885         (the_alpha_linux_nat_target): New.
8886         (alpha_linux_register_u_offset): Refactor as
8887         alpha_linux_nat_target method.
8888         (_initialize_alpha_linux_nat): Adjust.
8889         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8890         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8891         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8892         methods of linux_nat_trad_target.
8893         (linux_trad_target): Delete.
8894         * linux-nat-trad.h (linux_trad_target): Delete function.
8895         (linux_nat_trad_target): New class.
8896         * mips-linux-nat.c (mips_linux_nat_target): New class.
8897         (super_fetch_registers, super_store_registers, super_close):
8898         Delete.
8899         (the_mips_linux_nat_target): New.
8900         (mips64_linux_regsets_fetch_registers)
8901         (mips64_linux_regsets_store_registers)
8902         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8903         (mips_linux_register_u_offset, mips_linux_read_description)
8904         (mips_linux_can_use_hw_breakpoint)
8905         (mips_linux_stopped_by_watchpoint)
8906         (mips_linux_stopped_data_address)
8907         (mips_linux_region_ok_for_hw_watchpoint)
8908         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8909         (mips_linux_close): Refactor as methods of mips_linux_nat.
8910         (_initialize_mips_linux_nat): Adjust to C++ification.
8911
8912         * aix-thread.c (aix_thread_target): New class.
8913         (aix_thread_ops): Now an aix_thread_target.
8914         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8915         (aix_thread_fetch_registers, aix_thread_store_registers)
8916         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8917         (aix_thread_thread_alive, aix_thread_pid_to_str)
8918         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8919         Refactor as methods of aix_thread_target.
8920         (init_aix_thread_ops): Delete.
8921         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8922         and complete_target_initialization.
8923         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8924         (rs6000_nat_target): New class.
8925         (the_rs6000_nat_target): New.
8926         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8927         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8928         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8929         (super_create_inferior): Delete.
8930         (_initialize_rs6000_nat): Adjust to C++ification.
8931
8932         * arm-linux-nat.c (arm_linux_nat_target): New class.
8933         (the_arm_linux_nat_target): New.
8934         (arm_linux_fetch_inferior_registers)
8935         (arm_linux_store_inferior_registers, arm_linux_read_description)
8936         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8937         (arm_linux_remove_hw_breakpoint)
8938         (arm_linux_region_ok_for_hw_watchpoint)
8939         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8940         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8941         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8942         arm_linux_nat_target.
8943         (_initialize_arm_linux_nat): Adjust to C++ification.
8944
8945         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8946         (the_aarch64_linux_nat_target): New.
8947         (aarch64_linux_fetch_inferior_registers)
8948         (aarch64_linux_store_inferior_registers)
8949         (aarch64_linux_child_post_startup_inferior)
8950         (aarch64_linux_read_description)
8951         (aarch64_linux_can_use_hw_breakpoint)
8952         (aarch64_linux_insert_hw_breakpoint)
8953         (aarch64_linux_remove_hw_breakpoint)
8954         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8955         (aarch64_linux_region_ok_for_hw_watchpoint)
8956         (aarch64_linux_stopped_data_address)
8957         (aarch64_linux_stopped_by_watchpoint)
8958         (aarch64_linux_watchpoint_addr_within_range)
8959         (aarch64_linux_can_do_single_step): Refactor as methods of
8960         aarch64_linux_nat_target.
8961         (super_post_startup_inferior): Delete.
8962         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8963
8964         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8965         (the_hppa_linux_nat_target): New.
8966         (hppa_linux_fetch_inferior_registers)
8967         (hppa_linux_store_inferior_registers): Refactor as methods of
8968         hppa_linux_nat_target.
8969         (_initialize_hppa_linux_nat): Adjust to C++ification.
8970
8971         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8972         (the_ia64_linux_nat_target): New.
8973         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8974         (ia64_linux_stopped_data_address)
8975         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8976         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8977         ia64_linux_nat_target methods.
8978         (super_xfer_partial): Delete.
8979         (_initialize_ia64_linux_nat): Adjust to C++ification.
8980
8981         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8982         (the_m32r_linux_nat_target): New.
8983         (m32r_linux_fetch_inferior_registers)
8984         (m32r_linux_store_inferior_registers): Refactor as
8985         m32r_linux_nat_target methods.
8986         (_initialize_m32r_linux_nat): Adjust to C++ification.
8987
8988         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8989         (the_m68k_linux_nat_target): New.
8990         (m68k_linux_fetch_inferior_registers)
8991         (m68k_linux_store_inferior_registers): Refactor as
8992         m68k_linux_nat_target methods.
8993         (_initialize_m68k_linux_nat): Adjust to C++ification.
8994
8995         * s390-linux-nat.c (s390_linux_nat_target): New class.
8996         (the_s390_linux_nat_target): New.
8997         (s390_linux_fetch_inferior_registers)
8998         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8999         (s390_insert_watchpoint, s390_remove_watchpoint)
9000         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
9001         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
9002         (s390_auxv_parse, s390_read_description): Refactor as methods of
9003         s390_linux_nat_target.
9004         (_initialize_s390_nat): Adjust to C++ification.
9005
9006         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
9007         (the_sparc_linux_nat_target): New.
9008         (_initialize_sparc_linux_nat): Adjust to C++ification.
9009         * sparc-nat.c (sparc_fetch_inferior_registers)
9010         (sparc_store_inferior_registers): Remove target_ops parameter.
9011         * sparc-nat.h (sparc_fetch_inferior_registers)
9012         (sparc_store_inferior_registers): Remove target_ops parameter.
9013         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
9014         (the_sparc64_linux_nat_target): New.
9015         (_initialize_sparc64_linux_nat): Adjust to C++ification.
9016
9017         * spu-linux-nat.c (spu_linux_nat_target): New class.
9018         (the_spu_linux_nat_target): New.
9019         (spu_child_post_startup_inferior, spu_child_post_attach)
9020         (spu_child_wait, spu_fetch_inferior_registers)
9021         (spu_store_inferior_registers, spu_xfer_partial)
9022         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
9023         methods.
9024         (_initialize_spu_nat): Adjust to C++ification.
9025
9026         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
9027         (the_tilegx_linux_nat_target): New.
9028         (fetch_inferior_registers, store_inferior_registers):
9029         Refactor as methods.
9030         (_initialize_tile_linux_nat): Adjust to C++ification.
9031
9032         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
9033         (the_xtensa_linux_nat_target): New.
9034         (xtensa_linux_fetch_inferior_registers)
9035         (xtensa_linux_store_inferior_registers): Refactor as
9036         xtensa_linux_nat_target methods.
9037         (_initialize_xtensa_linux_nat): Adjust to C++ification.
9038
9039         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
9040         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
9041         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
9042         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
9043         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
9044         (fbsd_stopped_by_sw_breakpoint)
9045         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
9046         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
9047         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
9048         (fbsd_post_startup_inferior, fbsd_post_attach)
9049         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
9050         (fbsd_set_syscall_catchpoint)
9051         (super_xfer_partial, super_resume, super_wait)
9052         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
9053         (fbsd_handle_debug_trap): Remove target_ops parameter.
9054         (fbsd_nat_add_target): Delete.
9055         * fbsd-nat.h: Include "inf-ptrace.h".
9056         (fbsd_nat_add_target): Delete.
9057         (USE_SIGTRAP_SIGINFO): Define.
9058         (fbsd_nat_target): New class.
9059
9060         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
9061         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
9062         (amd64bsd_target): Delete.
9063         * amd64-bsd-nat.h: New file.
9064         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
9065         "x86-bsd-nat.h".
9066         (amd64_fbsd_nat_target): New class.
9067         (the_amd64_fbsd_nat_target): New.
9068         (amd64fbsd_read_description): Refactor as method of
9069         amd64_fbsd_nat_target.
9070         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9071         (_initialize_amd64fbsd_nat): Adjust to C++ification.
9072         * amd64-nat.h (amd64bsd_target): Delete function declaration.
9073         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
9074         (i386bsd_store_inferior_registers): Remove target_ops parameter.
9075         (i386bsd_target): Delete.
9076         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
9077         (i386bsd_fetch_inferior_registers)
9078         (i386bsd_store_inferior_registers): Declare.
9079         (i386_bsd_nat_target): New class.
9080         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
9081         (the_i386_fbsd_nat_target): New.
9082         (i386fbsd_resume, i386fbsd_read_description): Refactor as
9083         i386_fbsd_nat_target methods.
9084         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
9085         (_initialize_i386fbsd_nat): Adjust to C++ification.
9086         * x86-bsd-nat.c (super_mourn_inferior): Delete.
9087         (x86bsd_mourn_inferior, x86bsd_target): Delete.
9088         (_initialize_x86_bsd_nat): Adjust to C++ification.
9089         * x86-bsd-nat.h: Include "x86-nat.h".
9090         (x86bsd_target): Delete declaration.
9091         (x86bsd_nat_target): New class.
9092
9093         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
9094         (the_aarch64_fbsd_nat_target): New.
9095         (aarch64_fbsd_fetch_inferior_registers)
9096         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
9097         aarch64_fbsd_nat_target.
9098         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
9099         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
9100         (the_alpha_bsd_nat_target): New.
9101         (alphabsd_fetch_inferior_registers)
9102         (alphabsd_store_inferior_registers): Refactor as
9103         alpha_bsd_nat_target methods.
9104         (_initialize_alphabsd_nat): Refactor as methods of
9105         alpha_bsd_nat_target.
9106         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
9107         (the_amd64_nbsd_nat_target): New.
9108         (_initialize_amd64nbsd_nat): Adjust to C++ification.
9109         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
9110         (the_amd64_obsd_nat_target): New.
9111         (_initialize_amd64obsd_nat): Adjust to C++ification.
9112         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
9113         (the_arm_fbsd_nat_target): New.
9114         (arm_fbsd_fetch_inferior_registers)
9115         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
9116         (_initialize_arm_fbsd_nat): Refactor as methods of
9117         arm_fbsd_nat_target.
9118         (_initialize_arm_fbsd_nat): Adjust to C++ification.
9119         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
9120         (the_arm_netbsd_nat_target): New.
9121         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
9122         arm_netbsd_nat_target.
9123         (_initialize_arm_netbsd_nat): Adjust to C++ification.
9124         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
9125         (the_hppa_nbsd_nat_target): New.
9126         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
9127         hppa_nbsd_nat_target methods.
9128         (_initialize_hppanbsd_nat): Adjust to C++ification.
9129         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
9130         (the_hppa_obsd_nat_target): New.
9131         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
9132         methods of hppa_obsd_nat_target.
9133         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
9134         add_target.
9135         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
9136         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
9137         add_target.
9138         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
9139         (_initialize_i386obsd_nat): Use add_target.
9140         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
9141         (the_m68k_bsd_nat_target): New.
9142         (m68kbsd_fetch_inferior_registers)
9143         (m68kbsd_store_inferior_registers): Refactor as methods of
9144         m68k_bsd_nat_target.
9145         (_initialize_m68kbsd_nat): Adjust to C++ification.
9146         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
9147         (the_mips_fbsd_nat_target): New.
9148         (mips_fbsd_fetch_inferior_registers)
9149         (mips_fbsd_store_inferior_registers): Refactor as methods of
9150         mips_fbsd_nat_target.
9151         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
9152         add_target.
9153         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
9154         (the_mips_nbsd_nat_target): New.
9155         (mipsnbsd_fetch_inferior_registers)
9156         (mipsnbsd_store_inferior_registers): Refactor as methods of
9157         mips_nbsd_nat_target.
9158         (_initialize_mipsnbsd_nat): Adjust to C++ification.
9159         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
9160         (the_mips64_obsd_nat_target): New.
9161         (mips64obsd_fetch_inferior_registers)
9162         (mips64obsd_store_inferior_registers): Refactor as methods of
9163         mips64_obsd_nat_target.
9164         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
9165         add_target.
9166         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
9167         nbsd_nat_target.
9168         * nbsd-nat.h: Include "inf-ptrace.h".
9169         (nbsd_nat_target): New class.
9170         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
9171         (obsd_wait): Refactor as methods of obsd_nat_target.
9172         (obsd_add_target): Delete.
9173         * obsd-nat.h: Include "inf-ptrace.h".
9174         (obsd_nat_target): New class.
9175         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
9176         (the_ppc_fbsd_nat_target): New.
9177         (ppcfbsd_fetch_inferior_registers)
9178         (ppcfbsd_store_inferior_registers): Refactor as methods of
9179         ppc_fbsd_nat_target.
9180         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
9181         add_target.
9182         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
9183         (the_ppc_nbsd_nat_target): New.
9184         (ppcnbsd_fetch_inferior_registers)
9185         (ppcnbsd_store_inferior_registers): Refactor as methods of
9186         ppc_nbsd_nat_target.
9187         (_initialize_ppcnbsd_nat): Adjust to C++ification.
9188         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
9189         (the_ppc_obsd_nat_target): New.
9190         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
9191         methods of ppc_obsd_nat_target.
9192         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
9193         add_target.
9194         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
9195         (the_sh_nbsd_nat_target): New.
9196         (shnbsd_fetch_inferior_registers)
9197         (shnbsd_store_inferior_registers): Refactor as methods of
9198         sh_nbsd_nat_target.
9199         (_initialize_shnbsd_nat): Adjust to C++ification.
9200         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
9201         (inf_ptrace_xfer_partial): Delete.
9202         (sparc_xfer_partial, sparc_target): Delete.
9203         * sparc-nat.h (sparc_fetch_inferior_registers)
9204         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
9205         (sparc_target): Delete function declaration.
9206         (sparc_target): New template class.
9207         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
9208         (_initialize_sparcnbsd_nat): Adjust to C++ification.
9209         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
9210         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
9211         add_target.
9212         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
9213         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
9214         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
9215         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
9216         add_target.
9217         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
9218         (the_vax_bsd_nat_target): New.
9219         (vaxbsd_fetch_inferior_registers)
9220         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
9221         methods.
9222         (_initialize_vaxbsd_nat): Adjust to C++ification.
9223
9224         * bsd-kvm.c (bsd_kvm_target): New class.
9225         (bsd_kvm_ops): Now a bsd_kvm_target.
9226         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
9227         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
9228         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
9229         bsd_kvm_target.
9230         (bsd_kvm_return_one): Delete.
9231         (bsd_kvm_add_target): Adjust to C++ification.
9232
9233         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
9234         (nto_procfs_target_procfs): New classes.
9235         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
9236         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
9237         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
9238         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
9239         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
9240         (procfs_remove_hw_breakpoint, procfs_resume)
9241         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
9242         (procfs_kill_inferior, procfs_store_registers)
9243         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
9244         as methods of nto_procfs_target.
9245         (nto_procfs_ops): Now an nto_procfs_target_procfs.
9246         (nto_native_ops): Delete.
9247         (procfs_open, procfs_native_open): Delete.
9248         (nto_native_ops): Now an nto_procfs_target_native.
9249         (init_procfs_targets): Adjust to C++ification.
9250         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
9251         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
9252         Refactor as methods of nto_procfs_target.
9253
9254         * go32-nat.c (go32_nat_target): New class.
9255         (the_go32_nat_target): New.
9256         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
9257         (go32_store_registers, go32_xfer_partial, go32_files_info)
9258         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
9259         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
9260         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
9261         (go32_pid_to_str): Refactor as methods of go32_nat_target.
9262         (go32_target): Delete.
9263         (_initialize_go32_nat): Adjust to C++ification.
9264
9265         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
9266         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
9267         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
9268         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
9269         gnu_nat_target.
9270         (gnu_target): Delete.
9271         * gnu-nat.h (gnu_target): Delete.
9272         (gnu_nat_target): New class.
9273         * i386-gnu-nat.c (gnu_base_target): New.
9274         (i386_gnu_nat_target): New class.
9275         (the_i386_gnu_nat_target): New.
9276         (_initialize_i386gnu_nat): Adjust to C++ification.
9277
9278 2018-05-02  Pedro Alves  <palves@redhat.com>
9279
9280         * bfd-target.c (target_bfd_xclose): Rename to ...
9281         (target_bfd_close): ... this.
9282         (target_bfd_reopen): Adjust.
9283         * target.c (target_close): Remove references to to_xclose.
9284         * target.h (target_ops::to_xclose): Delete.
9285         (target_ops::to_close): Update comments.
9286
9287 2018-05-02  Pedro Alves  <palves@redhat.com>
9288
9289         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
9290         "linux-nat.h".
9291         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
9292         * inf-ptrace.c (inf_ptrace_register_u_offset)
9293         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9294         (inf_ptrace_store_register, inf_ptrace_store_registers)
9295         (inf_ptrace_trad_target): Move to ...
9296         * linux-nat-trad.c: ... this new file.
9297         * linux-nat-trad.h: New file.
9298         * linux-nat.c (linux_target_install_ops): Make extern.
9299         (linux_trad_target): Delete.
9300         * linux-nat.h (linux_trad_target): Delete declaration.
9301         (linux_target_install_ops): Declare.
9302         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
9303         "linux-nat.h".
9304
9305 2018-05-02  Pedro Alves  <palves@redhat.com>
9306
9307         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9308         procfs_target/add_target here.
9309         * procfs.c (procfs_target): Make static.
9310         (_initialize_procfs): Call add_target here.
9311         * procfs.h (struct target_ops): Remove forward declaration.
9312         (procfs_target): Remove declaration.
9313         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
9314
9315 2018-05-02  Pedro Alves  <palves@redhat.com>
9316
9317         * procfs.c (procfs_stopped_by_watchpoint)
9318         (procfs_insert_watchpoint, procfs_remove_watchpoint)
9319         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
9320         Forward declare.
9321         (procfs_use_watchpoints): Delete, move contents...
9322         (procfs_target): ... here.
9323         * procfs.h (procfs_use_watchpoints): Delete declaration.
9324         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
9325         procfs_use_watchpoints.
9326         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
9327         procfs_use_watchpoints.
9328
9329 2018-05-02  Tom Tromey  <tom@tromey.com>
9330
9331         PR python/20084:
9332         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
9333         and var_zuinteger_unlimited.
9334         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
9335         and PARAM_ZUINTEGER_UNLIMITED.
9336         (set_parameter_value): Handle var_zuinteger and
9337         var_zuinteger_unlimited.
9338         (add_setshow_generic): Likewise.
9339         (parmpy_init): Likewise.
9340
9341 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
9342
9343         PR rust/23124
9344         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
9345         pointer is not null before dereferencing it.
9346
9347 2018-04-30  Tom Tromey  <tom@tromey.com>
9348
9349         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
9350         is_mi_like_p.
9351
9352 2018-04-30  Tom Tromey  <tom@tromey.com>
9353
9354         * breakpoint.c (mention): Remove use of is_mi_like_p.
9355         (print_mention_ranged_breakpoint): Likewise.
9356         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
9357         of is_mi_like_p.
9358
9359 2018-04-30  Tom Tromey  <tom@tromey.com>
9360
9361         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
9362
9363 2018-04-30  Tom Tromey  <tom@tromey.com>
9364
9365         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
9366         (info_spu_event_command): Remove some uses of is_mi_like_p.
9367
9368 2018-04-30  Tom Tromey  <tom@tromey.com>
9369
9370         * python/py-framefilter.c (py_print_single_arg)
9371         (enumerate_locals, py_print_args, py_print_frame): Remove some
9372         uses of is_mi_like_p.
9373
9374 2018-04-30  Tom Tromey  <tom@tromey.com>
9375
9376         * ui-out.c: Update.
9377         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
9378         * ui-out.h (ui_out::is_mi_like_p): Now const.
9379         (ui_out::do_is_mi_like_p): Now const.
9380         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
9381
9382 2018-04-30  Tom Tromey  <tom@tromey.com>
9383
9384         * varobj.c (varobj_set_visualizer): Use new_reference.
9385         * python/python.c (gdbpy_decode_line): Use new_reference.
9386         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
9387         new_reference.
9388
9389 2018-04-30  Tom Tromey  <tom@tromey.com>
9390
9391         * varobj.c (install_new_value): Use new_reference.
9392         * value.h (value_incref): Return void.  Swap intro comment with
9393         value_decref.
9394         * value.c (set_value_parent): Use new_reference.
9395         (value_incref): Return void.  Update intro comment.
9396         (release_value): Use new_reference.
9397         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
9398
9399 2018-04-30  Tom Tromey  <tom@tromey.com>
9400
9401         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
9402         * gdb_bfd.h (new_bfd_ref): Remove.
9403         (gdb_bfd_open): Update comment.
9404         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
9405         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
9406         (gdb_bfd_fdopenr): Use new_reference.
9407         * exec.c (exec_file_attach): Use new_reference.
9408
9409 2018-04-30  Tom Tromey  <tom@tromey.com>
9410
9411         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
9412         method.
9413
9414 2018-04-30  Tom Tromey  <tom@tromey.com>
9415
9416         * jit.c (jit_read_code_entry): Use type_align.
9417         * i386-tdep.c (i386_gdbarch_init): Don't call
9418         set_gdbarch_long_long_align_bit.
9419         * gdbarch.sh: Remove long_long_align_bit.
9420         * gdbarch.c, gdbarch.h: Rebuild.
9421         * arc-tdep.c (arc_type_align): New function.
9422         (arc_gdbarch_init): Use arc_type_align.  Don't call
9423         set_gdbarch_long_long_align_bit.
9424
9425 2018-04-30  Tom Tromey  <tom@tromey.com>
9426
9427         * rust-lang.c (rust_type_alignment): Remove.
9428         (rust_composite_type): Use type_align.
9429
9430 2018-04-30  Tom Tromey  <tom@tromey.com>
9431
9432         * NEWS: Mention Type.align.
9433         * python/py-type.c (typy_get_alignof): New function.
9434         (type_object_getset): Add "alignof".
9435
9436 2018-04-30  Tom Tromey  <tom@tromey.com>
9437
9438         PR exp/17095:
9439         * NEWS: Update.
9440         * std-operator.def (UNOP_ALIGNOF): New operator.
9441         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
9442         New.
9443         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
9444         * c-lang.c (c_op_print_tab): Add alignof.
9445         * c-exp.y (ALIGNOF): New token.
9446         (exp): Add "ALIGNOF" production.
9447         (ident_tokens): Add _Alignof and alignof.
9448
9449 2018-04-30  Tom Tromey  <tom@tromey.com>
9450
9451         * i386-tdep.c (i386_type_align): New function.
9452         (i386_gdbarch_init): Update.
9453         * gdbarch.sh (type_align): New method.
9454         * gdbarch.c, gdbarch.h: Rebuild.
9455         * arch-utils.h (default_type_align): Declare.
9456         * arch-utils.c (default_type_align): New function.
9457         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
9458         (struct type) <align_log2>: New field.
9459         <instance_flags>: Now a bitfield.
9460         (TYPE_RAW_ALIGN): New macro.
9461         (type_align, type_raw_align, set_type_align): Declare.
9462         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
9463         functions.
9464         * dwarf2read.c (quirk_rust_enum): Set type alignment.
9465         (get_alignment, maybe_set_alignment): New functions.
9466         (read_structure_type, read_enumeration_type, read_array_type)
9467         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
9468         (read_subrange_type, read_base_type): Set type alignment.
9469
9470 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
9471
9472         * dwarf2read.c (read_index_from_section): Use bool.
9473
9474 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
9475
9476         PR gdb/22950
9477         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
9478         with #ifdef.
9479
9480 2018-04-29  John Reiser  <jreiser@BitWagon.com>
9481
9482         PR build/22873
9483         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
9484         last step, and do it atomically.
9485
9486 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
9487
9488         * compile/compile-c-types.c (convert_int, convert_float):
9489         Update for C FE v1.
9490
9491 2018-04-27  Tom Tromey  <tom@tromey.com>
9492
9493         PR rust/22545:
9494         * rust-lang.c (rust_inclusive_range_type_p): New function.
9495         (rust_range): Handle inclusive ranges.
9496         (rust_compute_range): Likewise.
9497         * rust-exp.y (struct rust_op) <inclusive>: New field.
9498         (DOTDOTEQ): New constant.
9499         (range_expr): Add "..=" productions.
9500         (operator_tokens): Add "..=" token.
9501         (ast_range): Add "inclusive" parameter.
9502         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
9503         ranges.
9504         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
9505         bounds values.
9506         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
9507         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
9508         Update comments.
9509         * expprint.c (print_subexp_standard): Handle new bounds values.
9510         (dump_subexp_body_standard): Likewise.
9511
9512 2018-04-27  Tom Tromey  <tom@tromey.com>
9513
9514         * configure: Rebuild.
9515         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
9516         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
9517         "OVERRIDE".
9518         (class symbol_needs_eval_context): Likewise.
9519         * dwarf2read.c (mock_mapped_index::symbol_name_count)
9520         (mock_mapped_index::symbol_name_at): Use "override".  Remove
9521         "virtual".
9522         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
9523         "override".
9524         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
9525         * aarch64-tdep.c (instruction_reader::read): Use "override".
9526         (instruction_reader_test::read): Likewise.
9527         * arm-tdep.c (instruction_reader::read): Use "override".
9528         (instruction_reader_thumb::read): Likewise.
9529
9530 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
9531
9532         PR remote/9665
9533         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
9534         instead of remote_send.
9535         (remote_send): Remove.
9536
9537 2018-04-26  Pedro Alves  <palves@redhat.com>
9538
9539         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
9540         find_function_start_sal instead of find_pc_line.
9541
9542 2018-04-26  Pedro Alves  <palves@redhat.com>
9543
9544         * breakpoint.c (set_breakpoint_location_function): Handle
9545         mst_data_gnu_ifunc.
9546         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
9547         * elfread.c (elf_symtab_read): Give data symbols with
9548         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
9549         (elf_rel_plt_read): Update comment.
9550         * linespec.c (convert_linespec_to_sals): Handle
9551         mst_data_gnu_ifunc.
9552         (minsym_found): Handle mst_data_gnu_ifunc.
9553         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
9554         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
9555         * parse.c (find_minsym_type_and_address): Handle
9556         mst_data_gnu_ifunc.
9557         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
9558         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
9559         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
9560         comment.
9561         <mst_data_gnu_ifunc>: New enumerator.
9562
9563 2018-04-26  Pedro Alves  <palves@redhat.com>
9564
9565         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
9566         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
9567         'want_trampoline' parameter by a lookup_msym_prefer parameter.
9568         Handle it.
9569         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
9570         (lookup_minimal_symbol_by_pc): Adjust.
9571         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
9572         (lookup_solib_trampoline_symbol_by_pc): Adjust.
9573         * minsyms.h (lookup_msym_prefer): New enum.
9574         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9575         parameter by a lookup_msym_prefer parameter.
9576
9577 2018-04-26  Pedro Alves  <palves@redhat.com>
9578
9579         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
9580         ends in "@plt" instead of looking at the symbol's section.
9581
9582 2018-04-26  Pedro Alves  <palves@redhat.com>
9583
9584         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
9585         all references.
9586         (find_pc_partial_function_gnu_ifunc): Rename to ...
9587         (find_pc_partial_function): ... this, and remove references to
9588         'is_gnu_ifunc_p'.
9589         (find_pc_partial_function): Delete old implementation.
9590         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
9591
9592 2018-04-26  Pedro Alves  <palves@redhat.com>
9593
9594         * linespec.c (struct bound_minimal_symbol_search_key): New.
9595         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
9596         skip first line if we found a GNU ifunc minimal symbol by name.
9597         (compare_msymbols): Change parameters to work with a destructured
9598         lhs minsym.
9599         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
9600         functions.
9601
9602 2018-04-26  Pedro Alves  <palves@redhat.com>
9603
9604         * breakpoint.c (set_breakpoint_location_function): Don't resolve
9605         ifunc targets here.  Instead, if we have an ifunc minsym, use its
9606         address/name.
9607         (add_location_to_breakpoint): Store the minsym and the objfile in
9608         the breakpoint location.
9609         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
9610         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
9611         Record the minsym in the sal.
9612         * symtab.h (symtab_and_line) <msymbol>: New field.
9613
9614 2018-04-26  Pedro Alves  <palves@redhat.com>
9615
9616         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
9617         unless we actually resolved the ifunc.
9618
9619 2018-04-26  Pedro Alves  <palves@redhat.com>
9620
9621         * c-exp.y (variable production): Prefer ifunc minsyms over
9622         regular function symbols.
9623         * symtab.c (find_gnu_ifunc): New function.
9624         * minsyms.h (lookup_msym_prefer): New enum.
9625         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
9626         parameter by a lookup_msym_prefer parameter.
9627         * symtab.h (find_gnu_ifunc): New declaration.
9628
9629 2018-04-26  Pedro Alves  <palves@redhat.com>
9630
9631         * blockframe.c (find_gnu_ifunc_target_type): New function.
9632         (find_function_type): New.
9633         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
9634         return a value with a memory address.
9635         (eval_call): For calls to GNU ifunc functions, try to find the
9636         type of the target function from the type that the resolver
9637         returns.
9638         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
9639         symbols.
9640         * infcall.c (find_function_return_type): Delete.
9641         (find_function_addr): Add 'function_type' parameter.  For calls to
9642         GNU ifunc functions, try to find the type of the target function
9643         from the type that the resolver returns, and return it via
9644         FUNCTION_TYPE.
9645         (call_function_by_hand_dummy): Adjust to use the function type
9646         returned by find_function_addr.
9647         (find_function_addr): Add 'function_type' parameter and move
9648         description here.
9649         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
9650         declarations.
9651
9652 2018-04-26  Pedro Alves  <palves@redhat.com>
9653
9654         * c-exp.y (variable production): Skip finding an alias for ifunc
9655         symbols.
9656
9657 2018-04-26  Pedro Alves  <palves@redhat.com>
9658
9659         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
9660
9661 2018-04-25  Pedro Alves  <palves@redhat.com>
9662
9663         * infcmd.c (kill_command): Print the pid as string, not the whole
9664         thread's ptid.  Add comment.  s/has been killed/killed/ in output
9665         message.
9666         * remote.c (remote_detach_1): Print the pid as string, not the
9667         whole thread's ptid.
9668
9669 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
9670             Sergio Durigan Junior  <sergiodj@redhat.com>
9671             Pedro Alves  <palves@redhat.com>
9672
9673         * infcmd.c (kill_command): Print message when inferior has
9674         been killed.
9675         * inferior.c (print_inferior_events): Remove 'static'.  Set as
9676         '1'.
9677         (add_inferior): Improve message printed when
9678         'print_inferior_events' is on.
9679         (exit_inferior): Remove message printed when
9680         'print_inferior_events' is on.
9681         (detach_inferior): Improve message printed when
9682         'print_inferior_events' is on.
9683         (initialize_inferiors): Use 'add_inferior_silent' to set
9684         'current_inferior_'.
9685         * inferior.h (print_inferior_events): Declare here as
9686         'extern'.
9687         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
9688         '[Detaching...]' messages when 'print_inferior_events' is on.
9689         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
9690         as prefix/suffix for messages.  Remove periods.  Fix erroneous
9691         'Detaching after fork from child...', replace it by '... from
9692         parent...'.
9693         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
9694         prefix/suffix when printing 'Detaching...' messages.  Print
9695         them when 'print_inferior_events' is on.
9696         * remote.c (remote_detach_1): Print message when detaching
9697         from inferior and '!is_fork_parent'.
9698
9699 2018-04-24  Tom Tromey  <tom@tromey.com>
9700
9701         * cli-out.h: Reindent.
9702
9703 2018-04-24  Tom Tromey  <tom@tromey.com>
9704
9705         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
9706         (cli_ui_out::do_field_string): Use fputs_filtered.
9707         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
9708
9709 2018-04-23  Tom Tromey  <tom@tromey.com>
9710
9711         * guile/scm-frame.c (gdbscm_frame_read_var): Use
9712         gdb::unique_xmalloc_ptr.
9713
9714 2018-04-23  Tom Tromey  <tom@tromey.com>
9715
9716         * configure: Rebuild.
9717
9718 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
9719
9720         PR gdb/23095
9721         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
9722         prepare_for_testing.  Set normal_bp to r_debug_state if target
9723         is bsd.
9724
9725 2018-04-21  Pedro Alves  <palves@redhat.com>
9726             Rajendra SY  <rajendra.sy@gmail.com>
9727
9728         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
9729         * remote.c (extended_remote_attach): In all-stop mode, mark the
9730         thread as executing.
9731
9732 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9733
9734         * thread.c (thread_apply_all_command): Fix comment.
9735         (thread_command): Fix comment.
9736
9737 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
9738
9739         * common/tdesc.h (tdesc_create_feature): Remove xml filename
9740         parameter.
9741         * features/aarch64-core.c (create_feature_aarch64_core):
9742         Regenerate.
9743         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
9744         Likewise.
9745         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
9746         Likewise.
9747         * features/i386/32bit-avx512.c
9748         (create_feature_i386_32bit_avx512): Likewise.
9749         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
9750         Likewise.
9751         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
9752         Likewise.
9753         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
9754         Likewise.
9755         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
9756         Likewise.
9757         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
9758         Likewise.
9759         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
9760         Likewise.
9761         * features/i386/64bit-avx512.c
9762         (create_feature_i386_64bit_avx512): Likewise.
9763         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
9764         Likewise.
9765         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
9766         Likewise.
9767         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
9768         Likewise.
9769         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
9770         Likewise.
9771         * features/i386/64bit-segments.c
9772         (create_feature_i386_64bit_segments): Likewise.
9773         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
9774         Likewise.
9775         * features/i386/x32-core.c
9776         (create_feature_i386_x32_core): Likewise.
9777         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
9778         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
9779         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
9780         * target-descriptions.c: In generated code, don't pass xml
9781         filename.
9782
9783 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9784
9785         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9786         (print_xml_feature::visit_post): Likewise.
9787         (print_xml_feature::visit): Likewise.
9788         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9789         (print_xml_feature): Add new class.
9790         * regformats/regdat.sh: Null xmltarget on feature targets.
9791         * target-descriptions.c (struct target_desc): Add xmltarget.
9792         (maintenance_check_tdesc_xml_convert): Add unittest function.
9793         (tdesc_get_features_xml): Add function to get xml.
9794         (maintenance_check_xml_descriptions): Test xml generation.
9795         * xml-tdesc.c (string_read_description_xml): Add function.
9796         * xml-tdesc.h (string_read_description_xml): Add declaration.
9797
9798 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9799
9800         * features/Makefile: Add feature marker to targets with new style
9801         target descriptions.
9802         * regformats/aarch64.dat: Regenerate.
9803         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9804         * regformats/i386/amd64-avx-linux.dat: Likewise.
9805         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9806         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9807         * regformats/i386/amd64-linux.dat: Likewise.
9808         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9809         * regformats/i386/amd64.dat: Likewise.
9810         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9811         * regformats/i386/i386-avx-linux.dat: Likewise.
9812         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9813         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9814         * regformats/i386/i386-linux.dat: Likewise.
9815         * regformats/i386/i386-mmx-linux.dat: Likewise.
9816         * regformats/i386/i386-mpx-linux.dat: Likewise.
9817         * regformats/i386/i386.dat: Likewise.
9818         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9819         * regformats/i386/x32-avx-linux.dat: Likewise.
9820         * regformats/i386/x32-linux.dat: Likewise.
9821         * regformats/tic6x-c62x-linux.dat: Likewise.
9822         * regformats/tic6x-c64x-linux.dat: Likewise.
9823         * regformats/tic6x-c64xp-linux.dat: Likewise.
9824         * regformats/regdat.sh: Parse feature marker.
9825
9826 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9827
9828         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9829         (tdesc_osabi_name): Likewise.
9830         * target-descriptions.c (tdesc_architecture_name): Add new
9831         function.
9832         (tdesc_osabi_name): Likewise.
9833
9834 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9835
9836         * common/tdesc.c (tdesc_predefined_type): Move to here.
9837         (tdesc_named_type): Likewise.
9838         (tdesc_create_vector): Likewise.
9839         (tdesc_create_struct): Likewise.
9840         (tdesc_set_struct_size): Likewise.
9841         (tdesc_create_union): Likewise.
9842         (tdesc_create_flags): Likewise.
9843         (tdesc_create_enum): Likewise.
9844         (tdesc_add_field): Likewise.
9845         (tdesc_add_typed_bitfield): Likewise.
9846         (tdesc_add_bitfield): Likewise.
9847         (tdesc_add_flag): Likewise.
9848         (tdesc_add_enum_value): Likewise.
9849         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9850         (struct tdesc_type_vector): Likewise.
9851         (struct tdesc_type_field): Likewise.
9852         (struct tdesc_type_with_fields): Likewise.
9853         (tdesc_create_enum): Add declaration.
9854         (tdesc_add_typed_bitfield): Likewise.
9855         (tdesc_add_enum_value): Likewise.
9856         * target-descriptions.c (tdesc_type_field): Move from here.
9857         (tdesc_type_builtin): Likewise.
9858         (tdesc_type_vector): Likewise.
9859         (tdesc_type_with_fields): Likewise.
9860         (tdesc_predefined_types): Likewise.
9861         (tdesc_named_type): Likewise.
9862         (tdesc_create_vector): Likewise.
9863         (tdesc_create_struct): Likewise.
9864         (tdesc_set_struct_size): Likewise.
9865         (tdesc_create_union): Likewise.
9866         (tdesc_create_flags): Likewise.
9867         (tdesc_create_enum): Likewise.
9868         (tdesc_add_field): Likewise.
9869         (tdesc_add_typed_bitfield): Likewise.
9870         (tdesc_add_bitfield): Likewise.
9871         (tdesc_add_flag): Likewise.
9872         (tdesc_add_enum_value): Likewise.
9873         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9874         (tdesc_add_typed_bitfield): Likewise.
9875         (tdesc_add_enum_value): Likewise.
9876
9877 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9878
9879         * common/tdesc.c (tdesc_feature::accept): Move to here.
9880         (tdesc_feature::operator==): Likewise.
9881         (tdesc_create_reg): Likewise.
9882         * common/tdesc.h (tdesc_type_kind): Likewise.
9883         (struct tdesc_type): Likewise.
9884         (struct tdesc_feature): Likewise.
9885         * regformats/regdat.sh: Create a feature.
9886         * target-descriptions.c (tdesc_type_kind): Move from here.
9887         (tdesc_type): Likewise.
9888         (tdesc_type_up): Likewise.
9889         (tdesc_feature): Likewise.
9890         (tdesc_create_reg): Likewise.
9891
9892 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9893
9894         * Makefile.in: Add arch/tdesc.c
9895         * common/tdesc.c: New file.
9896         * common/tdesc.h (tdesc_element_visitor): Move to here.
9897         (tdesc_element): Likewise.
9898         (tdesc_reg): Likewise.
9899         (tdesc_reg_up): Likewise.
9900         * regformats/regdef.h (reg): Add offset to constructors.
9901         * target-descriptions.c (tdesc_element_visitor): Move from here.
9902         (tdesc_element): Likewise.
9903         (tdesc_reg): Likewise.
9904         (tdesc_reg_up): Likewise.
9905
9906 2018-04-17  Tom Tromey  <tom@tromey.com>
9907
9908         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9909         discriminant field.
9910
9911 2018-04-17  Tom Tromey  <tom@tromey.com>
9912
9913         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9914
9915 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9916
9917         * symtab.c (print_symbol_info): Skip printing filename and line
9918         number when `last' is NULL.
9919         (symtab_symbol_info): Use empty string instead of NULL for first
9920         invocation of print_symbol_info.
9921         (rbreak_command): Pass NULL to `last' parameter of
9922         print_symbol_info.
9923
9924 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9925
9926         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9927         instead of nullptr.
9928
9929 2018-04-16  Pedro Alves  <palves@redhat.com>
9930
9931         * MAINTAINERS (sh): Remove.
9932         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9933         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9934         (ALLDEPFILES): Remove sh64-tdep.c.
9935         * NEWS: Mentions that support for SH-5/SH64 is removed.
9936         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9937         (sh*-*-openbsd*): Ditto.
9938         (sh64-*-elf*): Remove.
9939         (sh*): Remove.
9940         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9941         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9942         * sh-tdep.c: No longer include "sh64-tdep.h".
9943         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9944         * sh64-tdep.c, sh64-tdep.h: Remove files.
9945
9946 2018-04-16  Pedro Alves  <palves@redhat.com>
9947
9948         * MAINTAINERS: Remove m88k.
9949         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9950         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9951         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9952         * NEWS: Mention that support for m88k was removed.
9953         * configure.host (m88*-*-*): Remove support.
9954         * configure.nat (m88k-*-*): Remove support.
9955         * configure.tgt (m88*-*-openbsd*): Remove.
9956         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9957
9958 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9959
9960         * configure.tgt (x86_tobjs): New variable.
9961         (amd64_tobjs, i386_tobjs): Use it.
9962
9963 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9964
9965         * symtab.c (print_symbol_info): Precede the symbol definition by
9966         the line number when available.
9967         * NEWS: Advertise this enhancement.
9968
9969 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9970
9971         * NEWS (New options): announce set/show record btrace cpu.
9972         * btrace.c: Include record-btrace.h.
9973         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9974         the vendor is unknown.
9975         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9976         Maybe overwrite the btrace configuration's cpu.
9977         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9978         (btrace_fetch): Add cpu parameter.  Update callers.
9979         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9980         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9981         errata workarounds if the vendor is unknown.
9982         * python/py-record-btrace.c: Include record-btrace.h.
9983         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9984         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9985         * record-btrace.c (record_btrace_cpu_state_kind): New.
9986         (record_btrace_cpu): New.
9987         (set_record_btrace_cpu_cmdlist): New.
9988         (record_btrace_get_cpu): New.
9989         (require_btrace_thread, record_btrace_info)
9990         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9991         (cmd_set_record_btrace_cpu_none): New.
9992         (cmd_set_record_btrace_cpu_auto): New.
9993         (cmd_set_record_btrace_cpu): New.
9994         (cmd_show_record_btrace_cpu): New.
9995         (_initialize_record_btrace): Initialize set/show record btrace cpu
9996         commands.
9997         * record-btrace.h (record_btrace_get_cpu): New.
9998
9999 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10000
10001         * record.c (set_record_command): Fix typo in message.
10002
10003 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10004
10005         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
10006
10007 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
10008
10009         * infrun.c (process_event_stop_test): Call
10010         gdbarch_in_indirect_branch_thunk.
10011         * gdbarch.sh (in_indirect_branch_thunk): New.
10012         * gdbarch.c: Regenerated.
10013         * gdbarch.h: Regenerated.
10014         * x86-tdep.h: New.
10015         * x86-tdep.c: New.
10016         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
10017         (HFILES_NO_SRCDIR): Add x86-tdep.h.
10018         (ALLDEPFILES): Add x86-tdep.c.
10019         * arch-utils.h (default_in_indirect_branch_thunk): New.
10020         * arch-utils.c (default_in_indirect_branch_thunk): New.
10021         * i386-tdep: Include x86-tdep.h.
10022         (i386_in_indirect_branch_thunk): New.
10023         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
10024         function.
10025         * amd64-tdep: Include x86-tdep.h.
10026         (amd64_in_indirect_branch_thunk): New.
10027         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
10028
10029 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
10030
10031         PR gdb/23053
10032         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
10033         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
10034         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
10035         regression.
10036
10037 2018-04-12  Tom Tromey  <tom@tromey.com>
10038
10039         * rust-lang.c (rust_print_struct_def): Remove univariant code.
10040         (rust_evaluate_subexp): Likewise.
10041
10042 2018-04-12  Pedro Alves  <palves@redhat.com>
10043
10044         * procfs.c (procfs_detach): Make forward declaration's prototype
10045         match definition's protototype.
10046         (proc_get_LDT_entry): Remove stale do_cleanups call.
10047
10048 2018-04-12  Pedro Alves  <palves@redhat.com>
10049
10050         * target.h (target_ops::to_has_exited): Delete.
10051         (target_has_exited): Delete.
10052         * target-delegates.c: Regenerate.
10053
10054 2018-04-11  Pedro Alves  <palves@redhat.com>
10055
10056         * target.c (fileio_fh_t::t): Add comment.
10057         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10058         (target_fileio_close): Handle a NULL target.
10059         (invalidate_fileio_fh): New.
10060         (target_close): Call it.
10061         * remote.c (remote_hostio_send_command): No longer check whether
10062         remote_desc is open.
10063
10064 2018-04-11  Pedro Alves  <palves@redhat.com>
10065
10066         * target.c (fileio_fh_t): Make it a named struct instead of a
10067         typedef.
10068         (fileio_fh_t::is_closed): New method.
10069         (DEF_VEC_O (fileio_fh_t)): Remove.
10070         (fileio_fhandles): Now a std::vector.
10071         (is_closed_fileio_fh): Delete.
10072         (acquire_fileio_fd): Adjust.  Rename parameters.
10073         (release_fileio_fd): Adjust.
10074         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
10075         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
10076         (target_fileio_close): Adjust.
10077
10078 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
10079
10080         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
10081         index.
10082
10083 2018-04-10  Pedro Alves  <palves@redhat.com>
10084
10085         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
10086         (scoped_finish_thread_state): New class.
10087         * infcmd.c (run_command_1): Use it instead of finish_thread_state
10088         cleanup.
10089         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
10090         (fetch_inferior_event, normal_stop): Likewise.
10091         * thread.c (finish_thread_state_cleanup): Delete.
10092
10093 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10094             Pedro Alves  <palves@redhat.com>
10095
10096         * value.c: Include "selftest.h" and "common/array-view.h".
10097         (struct range) <operator ==>: New.
10098         (test_ranges_contain): New.
10099         (check_ranges_vector): New.
10100         (test_insert_into_bit_range_vector): New.
10101         (_initialize_values): Register selftests.
10102         * common/array-view.h (operator==, operator!=): New.
10103
10104 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10105
10106         * common/gdb_vecs.h (unordered_remove): Add overload that takes
10107         an iterator.
10108         * inline-frame.c: Include <algorithm>.
10109         (struct inline_state): Add constructor.
10110         (inline_state_s): Remove.
10111         (DEF_VEC_O(inline_state_s)): Remove.
10112         (inline_states): Change type to std::vector.
10113         (find_inline_frame_state): Adjust to std::vector.
10114         (allocate_inline_frame_state): Remove.
10115         (clear_inline_frame_state): Adjust to std::vector.
10116         (skip_inline_frames): Adjust to std::vector.
10117
10118 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10119
10120         * tracepoint.h (struct trace_state_variable): Add constructor.
10121         <name>: Change type to std::string.
10122         * tracepoint.c (tsv_s): Remove.
10123         (DEF_VEC_O(tsv_s)): Remove.
10124         (tvariables): Change to std::vector.
10125         (create_trace_state_variable): Adjust to std::vector.
10126         (find_trace_state_variable): Likewise.
10127         (find_trace_state_variable_by_number): Likewise.
10128         (delete_trace_state_variable): Likewise.
10129         (trace_variable_command): Adjust to std::string.
10130         (delete_trace_variable_command): Likewise.
10131         (tvariables_info_1): Adjust to std::vector.
10132         (save_trace_state_variables): Likewise.
10133         (start_tracing): Likewise.
10134         (merge_uploaded_trace_state_variables): Adjust to std::vector
10135         and std::string.
10136         * target.h (struct target_ops)
10137         <to_download_trace_state_variable>: Pass reference to
10138         trace_state_variable.
10139         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
10140         * target-delegates.c: Re-generate.
10141         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
10142         (mi_tsv_deleted): Likewise.
10143         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
10144         * remote.c (remote_download_trace_state_variable): Change
10145         pointer to reference and adjust.
10146         * make-target-delegates (parse_argtypes): Handle references.
10147         (write_function_header): Likewise.
10148         (munge_type): Likewise.
10149
10150 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10151
10152         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10153         string_view-selftests.c.
10154         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
10155         testsuite.
10156         * unittests/basic_string_view/cons/char/1.cc: Likewise.
10157         * unittests/basic_string_view/cons/char/2.cc: Likewise.
10158         * unittests/basic_string_view/cons/char/3.cc: Likewise.
10159         * unittests/basic_string_view/element_access/char/1.cc:
10160         Likewise.
10161         * unittests/basic_string_view/element_access/char/empty.cc:
10162         Likewise.
10163         * unittests/basic_string_view/element_access/char/front_back.cc:
10164         Likewise.
10165         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
10166         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
10167         Likewise.
10168         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
10169         Likewise.
10170         * unittests/basic_string_view/modifiers/swap/char/1.cc:
10171         Likewise.
10172         * unittests/basic_string_view/operations/compare/char/1.cc:
10173         Likewise.
10174         * unittests/basic_string_view/operations/compare/char/13650.cc:
10175         Likewise.
10176         * unittests/basic_string_view/operations/copy/char/1.cc:
10177         Likewise.
10178         * unittests/basic_string_view/operations/data/char/1.cc:
10179         Likewise.
10180         * unittests/basic_string_view/operations/find/char/1.cc:
10181         Likewise.
10182         * unittests/basic_string_view/operations/find/char/2.cc:
10183         Likewise.
10184         * unittests/basic_string_view/operations/find/char/3.cc:
10185         Likewise.
10186         * unittests/basic_string_view/operations/find/char/4.cc:
10187         Likewise.
10188         * unittests/basic_string_view/operations/rfind/char/1.cc:
10189         Likewise.
10190         * unittests/basic_string_view/operations/rfind/char/2.cc:
10191         Likewise.
10192         * unittests/basic_string_view/operations/rfind/char/3.cc:
10193         Likewise.
10194         * unittests/basic_string_view/operations/substr/char/1.cc:
10195         Likewise.
10196         * unittests/basic_string_view/operators/char/2.cc: Likewise.
10197         * unittests/string_view-selftests.c: New file.
10198
10199 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10200
10201         * unittests/basic_string_view/capacity/1.cc: New file.
10202         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
10203         * unittests/basic_string_view/cons/char/1.cc: New file.
10204         * unittests/basic_string_view/cons/char/2.cc: New file.
10205         * unittests/basic_string_view/cons/char/3.cc: New file.
10206         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
10207         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
10208         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
10209         * unittests/basic_string_view/element_access/char/1.cc: New file.
10210         * unittests/basic_string_view/element_access/char/2.cc: New file.
10211         * unittests/basic_string_view/element_access/char/empty.cc: New file.
10212         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
10213         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
10214         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
10215         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
10216         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
10217         * unittests/basic_string_view/include.cc: New file.
10218         * unittests/basic_string_view/inserters/char/1.cc: New file.
10219         * unittests/basic_string_view/inserters/char/2.cc: New file.
10220         * unittests/basic_string_view/inserters/char/3.cc: New file.
10221         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
10222         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
10223         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
10224         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
10225         * unittests/basic_string_view/literals/types.cc: New file.
10226         * unittests/basic_string_view/literals/values.cc: New file.
10227         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
10228         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
10229         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
10230         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
10231         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
10232         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
10233         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
10234         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
10235         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
10236         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
10237         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
10238         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
10239         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
10240         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
10241         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
10242         * unittests/basic_string_view/operations/data/char/1.cc: New file.
10243         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
10244         * unittests/basic_string_view/operations/find/char/1.cc: New file.
10245         * unittests/basic_string_view/operations/find/char/2.cc: New file.
10246         * unittests/basic_string_view/operations/find/char/3.cc: New file.
10247         * unittests/basic_string_view/operations/find/char/4.cc: New file.
10248         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
10249         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
10250         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
10251         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
10252         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
10253         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
10254         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
10255         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
10256         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
10257         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
10258         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
10259         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
10260         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
10261         * unittests/basic_string_view/operators/char/2.cc: New file.
10262         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
10263         * unittests/basic_string_view/range_access/char/1.cc: New file.
10264         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
10265         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
10266         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
10267         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
10268         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
10269         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
10270         * unittests/basic_string_view/requirements/typedefs.cc: New file.
10271         * unittests/basic_string_view/typedefs.cc: New file.
10272         * unittests/basic_string_view/types/1.cc: New file.
10273
10274 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10275
10276         * common/gdb_string_view.h: Remove libstdc++ implementation
10277         details, adjust to gdb reality.
10278         * common/gdb_string_view.tcc: Likewise.
10279         * cli/cli-script.c (struct string_view): Remove.
10280         (user_args) <m_args>: Change element type to gdb::string_view.
10281         (user_args::insert_args): Adjust.
10282
10283 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10284
10285         * common/gdb_string_view.h: New file.
10286         * common/gdb_string_view.tcc: New file.
10287
10288 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
10289
10290         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
10291         * configure: Re-generate.
10292
10293 2018-04-09  Pedro Alves  <palves@redhat.com>
10294
10295         * gdbarch.sh: Include "observable.h" instead of "observer.h".
10296         (set_target_gdbarch): Call
10297         gdb::observers::architecture_changed.notify instead of
10298         observer_notify_architecture_changed.
10299
10300 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10301
10302         * tracepoint.c (struct current_traceframe_cleanup): Remove.
10303         (do_restore_current_traceframe_cleanup): Remove.
10304         (restore_current_traceframe_cleanup_dtor): Remove.
10305         (make_cleanup_restore_current_traceframe): Remove.
10306         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
10307         New.
10308         * tracepoint.h (struct scoped_restore_current_traceframe): New.
10309         * infrun.c (fetch_inferior_event): Use
10310         scoped_restore_current_traceframe.
10311
10312 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10313
10314         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
10315         Remove.
10316         <n_allocated_type_units>: Remove.
10317         <all_type_units>: Change to std::vector.
10318         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10319         to std::vector change.
10320         (dwarf2_per_objfile::get_cutu): Likewise.
10321         (dwarf2_per_objfile::get_tu): Likewise.
10322         (create_signatured_type_table_from_index): Likewise.
10323         (create_signatured_type_table_from_debug_names): Likewise.
10324         (dw2_symtab_iter_next): Likewise.
10325         (dw2_print_stats): Likewise.
10326         (dw2_expand_all_symtabs): Likewise.
10327         (dw2_expand_marked_cus): Likewise.
10328         (dw2_debug_names_iterator::next): Likewise.
10329         (dwarf2_initialize_objfile): Likewise.
10330         (add_signatured_type_cu_to_table): Likewise.
10331         (create_all_type_units): Likewise.
10332         (add_type_unit): Likewise.
10333         (struct tu_abbrev_offset): Add constructor.
10334         (build_type_psymtabs_1): Adjust to std::vector change.
10335         (print_tu_stats): Likewise.
10336         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10337         (write_debug_names): Likewise.
10338
10339 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10340
10341         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
10342         Make an std::vector.
10343         <n_comp_units>: Remove.
10344         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
10345         to std::vector change.
10346         (dwarf2_per_objfile::get_cutu): Likewise.
10347         (dwarf2_per_objfile::get_cu): Likewise.
10348         (create_cus_from_index): Likewise.
10349         (create_addrmap_from_index): Likewise.
10350         (create_addrmap_from_aranges): Likewise.
10351         (dwarf2_read_index): Likewise.
10352         (dw2_find_last_source_symtab): Likewise.
10353         (dw2_map_symtabs_matching_filename): Likewise.
10354         (dw2_symtab_iter_next): Likewise.
10355         (dw2_print_stats): Likewise.
10356         (dw2_expand_all_symtabs): Likewise.
10357         (dw2_expand_symtabs_with_fullname): Likewise.
10358         (dw2_expand_marked_cus): Likewise.
10359         (dw2_map_symbol_filenames): Likewise.
10360         (create_cus_from_debug_names): Likewise.
10361         (dwarf2_read_debug_names): Likewise.
10362         (dw2_debug_names_iterator::next): Likewise.
10363         (dwarf2_initialize_objfile): Likewise.
10364         (set_partial_user): Likewise.
10365         (dwarf2_build_psymtabs_hard): Likewise.
10366         (read_comp_units_from_section): Remove arguments, adjust to
10367         std::vector change.
10368         (create_all_comp_units): Adjust to std::vector and
10369         read_comp_units_from_section changes.
10370         (dwarf2_find_containing_comp_unit): Adjust to std::vector
10371         change.
10372         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
10373         (psyms_seen_size): Likewise.
10374         (write_gdbindex): Likewise.
10375         (write_debug_names): Likewise.
10376
10377 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10378
10379         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
10380         with dwarf2_per_objfile.
10381         (create_cus_from_index): Likewise.
10382         (create_signatured_type_table_from_index): Likewise.
10383         (dwarf2_read_index): Likewise.
10384         (dwarf2_initialize_objfile): Likewise.
10385         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
10386         per_cu rather than get_dwarf2_per_objfile.
10387
10388 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10389
10390         * dwarf2read.h (struct signatured_type): Forward declare.
10391         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
10392         New methods.
10393         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
10394         (dw2_get_cutu): ...this.
10395         (dwarf2_per_objfile::get_cu): Rename from...
10396         (dw2_get_cu): ...this.
10397         (dwarf2_per_objfile::get_tu): New.
10398         (create_addrmap_from_index): Adjust.
10399         (create_addrmap_from_aranges): Adjust.
10400         (dw2_find_last_source_symtab): Adjust.
10401         (dw2_map_symtabs_matching_filename): Adjust.
10402         (dw2_symtab_iter_next): Adjust.
10403         (dw2_print_stats): Adjust.
10404         (dw2_expand_all_symtabs): Adjust.
10405         (dw2_expand_symtabs_with_fullname): Adjust.
10406         (dw2_expand_marked_cus): Adjust.
10407         (dw_expand_symtabs_matching_file_matcher): Adjust.
10408         (dw2_map_symbol_filenames): Adjust.
10409         (dw2_debug_names_iterator::next): Adjust.
10410         (dwarf2_initialize_objfile): Adjust.
10411         (set_partial_user): Adjust.
10412         (dwarf2_build_psymtabs_hard): Adjust.
10413
10414 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10415
10416         * dwarf2read.c (create_signatured_type_table_from_debug_names):
10417         Remove unused variables.
10418         (dw2_map_symtabs_matching_filename): Likewise.
10419         (dwarf2_record_block_ranges): Likewise.
10420         (dwarf2_read_addr_index): Likewise.
10421         (follow_die_offset): Likewise.
10422
10423 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10424
10425         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
10426         to symbol_file_add_main.
10427
10428 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10429
10430         PR mi/22299
10431         * mi/mi-console.c (do_fputc_async_safe): New.
10432         (mi_console_file::write_async_safe): New.
10433         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
10434         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
10435         New.
10436         * ui-file.c (ui_file::putstrn): Adjust call to
10437         fputstrn_unfiltered.
10438         * utils.c (printchar): Replace do_fputs and do_fprintf
10439         parameters by do_fputc.
10440         (fputstr_filtered): Adjust call to printchar.
10441         (fputstr_unfiltered): Likewise.
10442         (fputstrn_filtered): Likewise.
10443         (fputstrn_unfiltered): Add do_fputc parameter, pass to
10444         printchar.
10445         * utils.h (do_fputc_ftype): New typedef.
10446         (fputstrn_unfiltered): Add do_fputc parameter.
10447
10448 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
10449
10450         * regformats/i386/i386-avx.dat: Remove.
10451
10452 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10453
10454         PR gdb/22979
10455         * amd64-tdep.c (amd64_none_init_abi): New function.
10456         (amd64_x32_none_init_abi): New function.
10457         (_initialize_amd64_tdep): Register handlers for x86-64 and
10458         x64_32 with GDB_OSABI_NONE.
10459         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
10460         GDB_OSABI_NONE osabi.
10461
10462 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10463
10464         PR gdb/22980
10465         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
10466         GDB_OSABI_NONE.
10467         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
10468         * osabi.c (gdb_osabi_names): Add "unknown" entry.
10469
10470 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
10471
10472         * common/byte-vector.h (char_vector): New type.
10473         * target.h (target_read_alloc): Return
10474         gdb::optional<byte_vector>.
10475         (target_read_stralloc): Return gdb::optional<char_vector>.
10476         (target_get_osdata): Return gdb::optional<char_vector>.
10477         * target.c (target_read_alloc_1): Templatize.  Replacement
10478         manual memory management with vector.
10479         (target_read_alloc): Change return type, adjust.
10480         (target_read_stralloc): Change return type, adjust.
10481         (target_get_osdata): Change return type, adjust.
10482         * auxv.c (struct auxv_info) <length>: Remove.
10483         <data>: Change type to gdb::optional<byte_vector>.
10484         (auxv_inferior_data_cleanup): Free auxv_info with delete.
10485         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
10486         (target_auxv_search): Adjust.
10487         (fprint_target_auxv): Adjust.
10488         * avr-tdep.c (avr_io_reg_read_command): Adjust.
10489         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
10490         (linux_make_corefile_notes): Adjust.
10491         * osdata.c (get_osdata): Adjust.
10492         * remote.c (remote_get_threads_with_qxfer): Adjust.
10493         (remote_memory_map): Adjust.
10494         (remote_traceframe_info): Adjust.
10495         (btrace_read_config): Adjust.
10496         (remote_read_btrace): Adjust.
10497         (remote_pid_to_exec_file): Adjust.
10498         * solib-aix.c (solib_aix_get_library_list): Adjust.
10499         * solib-dsbt.c (decode_loadmap): Don't free buf.
10500         (dsbt_get_initial_loadmaps): Adjust.
10501         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
10502         * solib-target.c (solib_target_current_sos): Adjust.
10503         * tracepoint.c (sdata_make_value): Adjust.
10504         * xml-support.c (xinclude_start_include): Adjust.
10505         (xml_fetch_content_from_file): Adjust.
10506         * xml-support.h (xml_fetch_another): Change return type.
10507         (xml_fetch_content_from_file): Change return type.
10508         * xml-syscall.c (xml_init_syscalls_info): Adjust.
10509         * xml-tdesc.c (file_read_description_xml): Adjust.
10510         (fetch_available_features_from_target): Change return type.
10511         (target_fetch_description_xml): Adjust.
10512         (target_read_description_xml): Adjust.
10513
10514 2018-04-06  Tom Tromey  <tom@tromey.com>
10515
10516         * value.c (~value): Update.
10517         (struct value) <contents>: Now unique_xmalloc_ptr.
10518         (value_contents_bits_eq, allocate_value_contents)
10519         (value_contents_raw, value_contents_all_raw)
10520         (value_contents_for_printing, value_contents_for_printing_const)
10521         (set_value_enclosing_type): Update.
10522
10523 2018-04-06  Tom Tromey  <tom@tromey.com>
10524
10525         * value.c (range_s): Remove typedef, VEC.
10526         (struct range): Add operator<.
10527         (range_lessthan): Remove.
10528         (ranges_contain): Change type.
10529         (~value): Update.
10530         (struct value) <unavailable, optimized_out>: Now std::vector.
10531         (value_entirely_available)
10532         (value_entirely_covered_by_range_vector)
10533         (value_entirely_unavailable, value_entirely_optimized_out):
10534         Update.
10535         (insert_into_bit_range_vector): Change argument type.
10536         (find_first_range_overlap): Likewise.
10537         (struct ranges_and_idx, value_contents_bits_eq)
10538         (require_not_optimized_out, require_available): Update.
10539         (ranges_copy_adjusted): Change argument types.
10540         (value_optimized_out, value_copy, value_fetch_lazy): Update.
10541
10542 2018-04-06  Tom Tromey  <tom@tromey.com>
10543
10544         * value.c (~value): Update.
10545         (struct value) <parent>: Now a value_ref_ptr.
10546         (value_parent, set_value_parent, value_address, value_copy):
10547         Update.
10548
10549 2018-04-06  Tom Tromey  <tom@tromey.com>
10550
10551         * value.c (struct value): Add constructor, destructor, and member
10552         initializers.
10553         (allocate_value_lazy, value_decref): Update.
10554
10555 2018-04-06  Tom Tromey  <tom@tromey.com>
10556
10557         * value.c (struct value) <released, next>: Remove.
10558         (all_values): Now a std::vector.
10559         (allocate_value_lazy): Update.
10560         (value_next): Remove.
10561         (value_mark, value_free_to_mark, release_value)
10562         (value_release_to_mark): Update.
10563
10564 2018-04-06  Tom Tromey  <tom@tromey.com>
10565
10566         * value.h (fetch_subexp_value, value_release_to_mark): Update.
10567         (free_value_chain): Remove.
10568         * value.c (free_value_chain): Remove.
10569         (value_release_to_mark): Return a std::vector.
10570         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
10571         std::vector.
10572         (check_condition): Update.
10573         * eval.c (fetch_subexp_value): Change "val_chain" to a
10574         std::vector.
10575         * breakpoint.c (update_watchpoint): Update.
10576         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
10577
10578 2018-04-06  Tom Tromey  <tom@tromey.com>
10579
10580         * value.h (free_all_values): Remove.
10581         * value.c (free_all_values): Remove.
10582
10583 2018-04-06  Tom Tromey  <tom@tromey.com>
10584
10585         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
10586         (value_history_chain, value_history_count): Remove.
10587         (value_history): New global.
10588         (record_latest_value, access_value_history, show_values)
10589         (preserve_values): Update.
10590
10591 2018-04-06  Tom Tromey  <tom@tromey.com>
10592
10593         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
10594         * varobj.c (varobj_set_display_format, varobj_set_value)
10595         (install_default_visualizer, construct_visualizer)
10596         (install_new_value, ~varobj, varobj_get_value_type)
10597         (my_value_of_variable, varobj_editable_p): Update.
10598         * c-varobj.c (c_describe_child, c_value_of_variable)
10599         (cplus_number_of_children, cplus_describe_child): Update.
10600         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
10601         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
10602         (ada_value_of_variable, ada_value_is_changeable_p): Update.
10603
10604 2018-04-06  Tom Tromey  <tom@tromey.com>
10605
10606         * printcmd.c (last_examine_address): Change type to
10607         value_ref_ptr.
10608         (do_examine, x_command): Update.
10609
10610 2018-04-06  Tom Tromey  <tom@tromey.com>
10611
10612         * value.c (release_value): Update.
10613         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
10614         (struct bpstats) <val>: Now a value_ref_ptr.
10615         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10616         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10617         (~watchpoint, print_it_watchpoint, watch_command_1)
10618         (invalidate_bp_value_on_memory_change): Update.
10619
10620 2018-04-06  Tom Tromey  <tom@tromey.com>
10621
10622         * varobj.c (varobj_clear_saved_item)
10623         (update_dynamic_varobj_children, install_new_value, ~varobj):
10624         Update.
10625         * value.h (value_incref): Move declaration earlier.
10626         (value_decref): Rename from value_free.
10627         (struct value_ref_policy): New.
10628         (value_ref_ptr): New typedef.
10629         (struct value_deleter): Remove.
10630         (gdb_value_up): Remove typedef.
10631         (release_value): Change return type.
10632         (release_value_or_incref): Remove.
10633         * value.c (set_value_parent): Update.
10634         (value_incref): Change return type.
10635         (value_decref): Rename from value_free.
10636         (value_free_to_mark, free_all_values, free_value_chain): Update.
10637         (release_value): Return value_ref_ptr.
10638         (release_value_or_incref): Remove.
10639         (record_latest_value, set_internalvar, clear_internalvar):
10640         Update.
10641         * stack.c (info_frame_command): Don't call value_free.
10642         * python/py-value.c (valpy_dealloc, valpy_new)
10643         (value_to_value_object): Update.
10644         * printcmd.c (do_examine): Update.
10645         * opencl-lang.c (lval_func_free_closure): Update.
10646         * mi/mi-main.c (register_changed_p): Don't call value_free.
10647         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
10648         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
10649         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
10650         value_free.
10651         * guile/scm-value.c (vlscm_free_value_smob)
10652         (vlscm_scm_from_value): Update.
10653         * frame.c (frame_register_unwind, frame_unwind_register_signed)
10654         (frame_unwind_register_unsigned, get_frame_register_bytes)
10655         (put_frame_register_bytes): Don't call value_free.
10656         * findvar.c (address_from_register): Don't call value_free.
10657         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
10658         * dwarf2loc.c (entry_data_value_free_closure)
10659         (value_of_dwarf_reg_entry, free_pieced_value_closure)
10660         (dwarf2_evaluate_loc_desc_full): Update.
10661         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
10662         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
10663         (~watchpoint, watch_command_1)
10664         (invalidate_bp_value_on_memory_change): Update.
10665         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
10666
10667 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
10668
10669         PR gdb/23022
10670         * warning.m4: Add -Wno-error=deprecated-register.
10671         * configure: Re-generate.
10672
10673 2018-04-05  Tom Tromey  <tom@tromey.com>
10674
10675         * linespec.h: Remove include of "vec.h".
10676
10677 2018-04-05  Tom Tromey  <tom@tromey.com>
10678
10679         * linespec.c (typep): Remove typedef.
10680         (find_methods, find_superclass_methods): Take a std::vector.
10681         (find_method): Use std::vector.
10682
10683 2018-04-05  Tom Tromey  <tom@tromey.com>
10684
10685         * utils.c (compare_strings): Remove.
10686         * utils.h (compare_strings): Remove.
10687         * objc-lang.h (find_imps): Update.
10688         * objc-lang.c (find_methods): Take a std::vector.
10689         (uniquify_strings, find_imps): Likewise.
10690         * linespec.c (find_methods): Take a std::vector.
10691         (decode_objc): Use std::vector.
10692         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
10693         a std::vector.
10694         (find_method, find_function_symbols): Use std::vector.
10695
10696 2018-04-05  Tom Tromey  <tom@tromey.com>
10697
10698         * completer.c (completion_tracker::completion_tracker): Remove
10699         cast.
10700         (completion_tracker::discard_completions): Likewise.
10701         * breakpoint.c (ambiguous_names_p): Remove cast.
10702         * ada-lang.c (_initialize_ada_language): Remove cast.
10703         * utils.h (streq): Update.
10704         (streq_hash): Add new declaration.
10705         * utils.c (streq): Return bool.
10706         (streq_hash): New function.
10707
10708 2018-04-05  Tom Tromey  <tom@tromey.com>
10709
10710         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
10711         Remove a string copy.
10712
10713 2018-04-05  Tom Tromey  <tom@tromey.com>
10714
10715         * linespec.c (filter_results): Use std::vector.
10716         (decode_line_2, decode_line_full): Update.
10717
10718 2018-04-05  Tom Tromey  <tom@tromey.com>
10719
10720         * linespec.c (canonical_to_fullform): Return std::string.
10721         (filter_results): Update.
10722         (struct decode_line_2_item): Add constructor.
10723         <fullform, displayform>: Now std::string.
10724         (decode_line_2_compare_items): Now a std::sort comparator.
10725         (decode_line_2): Update.
10726
10727 2018-04-05  Tom Tromey  <tom@tromey.com>
10728
10729         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
10730         (unexpected_linespec_error): Update.
10731         (linespec_parse_basic, parse_linespec): Update.
10732
10733 2018-04-05  Tom Tromey  <tom@tromey.com>
10734
10735         * linespec.c (linespec_parse_basic): Reindent.
10736
10737 2018-04-05  Tom Tromey  <tom@tromey.com>
10738
10739         * minsyms.h (iterate_over_minimal_symbols): Update.
10740         * minsyms.c (iterate_over_minimal_symbols): Take a
10741         gdb::function_view.
10742         * linespec.c (struct collect_minsyms): Remove.
10743         (compare_msyms): Now a std::sort comparator.
10744         (add_minsym): Add parameters.
10745         (search_minsyms_for_name): Update.  Use std::vector.
10746
10747 2018-04-03  Tom Tromey  <tom@tromey.com>
10748
10749         * mipsread.c (read_alphacoff_dynamic_symtab): Use
10750         gdb::byte_vector.
10751
10752 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10753
10754         * MAINTAINERS (Write After Approval): Add Weimin Pan.
10755
10756 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
10757
10758         PR gdb/16959
10759         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
10760         printing static type.
10761
10762 2018-04-01  Tom Tromey  <tom@tromey.com>
10763
10764         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
10765         (rs6000_xfer_shared_libraries): Update.
10766
10767 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
10768
10769         * common/gdb_vecs.h (char_ptr): Remove.
10770         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
10771
10772 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10773
10774         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
10775         with std::vector.
10776         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
10777
10778 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10779
10780         * tracepoint.h (struct uploaded_tp): Initialize fields.
10781         <actions, step_actions, cmd_strings>: Change type to
10782         std::vector<char *>.
10783         * tracepoint.c (get_uploaded_tp): Allocate with new.
10784         (free_uploaded_tps): Free with delete.
10785         (parse_tracepoint_definition): Adjust to std::vector change.
10786         * breakpoint.c (read_uploaded_action): Likewise.
10787         (create_tracepoint_from_upload): Likewise.
10788         * ctf.c (ctf_write_uploaded_tp): Likewise.
10789         (SET_ARRAY_FIELD): Likewise.
10790         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10791
10792 2018-03-30  Tom Tromey  <tom@tromey.com>
10793
10794         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10795         std::unique_ptr.
10796         (svr4_keep_data_in_core): Update.
10797         (svr4_read_so_list): Update.
10798
10799 2018-03-30  Tom Tromey  <tom@tromey.com>
10800
10801         * windows-nat.c (handle_output_debug_string, handle_exception):
10802         Update.
10803         * target.h (target_read_string): Update.
10804         * target.c (target_read_string): Change "string" to
10805         unique_xmalloc_ptr.
10806         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10807         Update.
10808         * solib-frv.c (frv_current_sos): Update.
10809         * solib-dsbt.c (dsbt_current_sos): Update.
10810         * solib-darwin.c (darwin_current_sos): Update.
10811         * linux-thread-db.c (inferior_has_bug): Update.
10812         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10813         Update.  Remove alloca.
10814         * ada-lang.c (ada_main_name): Update.
10815
10816 2018-03-30  Tom Tromey  <tom@tromey.com>
10817
10818         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10819         (struct dwo_file_deleter): New.
10820         (dwo_file_up): New typedef.
10821         (open_and_init_dwo_file): Use dwo_file_up.
10822         (free_dwo_file_cleanup): Remove.
10823
10824 2018-03-30  Tom Tromey  <tom@tromey.com>
10825
10826         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10827         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10828
10829 2018-03-30  Tom Tromey  <tom@tromey.com>
10830
10831         * dwarf2read.c (class free_cached_comp_units): New class.
10832         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10833         (free_cached_comp_units): Remove function.
10834
10835 2018-03-30  Tom Tromey  <tom@tromey.com>
10836
10837         * utils.h (make_cleanup_unpush_target): Remove.
10838         * inf-ptrace.c (struct target_unpusher): New.
10839         (target_unpush_up) New typedef.
10840         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10841         target_unpush_up.
10842         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10843
10844 2018-03-27  Tom Tromey  <tom@tromey.com>
10845
10846         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10847
10848 2018-03-27  Pedro Alves  <palves@redhat.com>
10849             Tom Tromey  <tom@tromey.com>
10850
10851         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10852         destructor.  Now a class.
10853         (gdb_readline_wrapper_cleanup): Remove function.
10854         (gdb_readline_wrapper): Remove cleanups.
10855
10856 2018-03-27  Tom Tromey  <tom@tromey.com>
10857
10858         * typeprint.h (struct type_print_options) <local_typedefs,
10859         global_typedefs>: Remove "struct" keyword.
10860         (class typedef_hash_table): New class.
10861         (recursively_update_typedef_hash, add_template_parameters)
10862         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10863         (find_typedef_in_hash): Don't declare.
10864         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10865         (typedef_hash_table::recursively_update): Rename from
10866         recursively_update_typedef_hash.  Now a member.
10867         (typedef_hash_table::add_template_parameters): Rename from
10868         add_template_parameters.  Now a member.
10869         (typedef_hash_table::typedef_hash_table): Now a constructor;
10870         rename from create_typedef_hash.
10871         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10872         rename from free_typedef_hash.
10873         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10874         (do_free_global_table): Remove.
10875         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10876         from copy_type_recursive.
10877         (create_global_typedef_table): Remove.
10878         (typedef_hash_table::find_global_typedef): Now a member of
10879         typedef_hash_table.
10880         (typedef_hash_table::find_typedef): Rename from
10881         find_typedef_in_hash; now a member.
10882         (whatis_exp): Update.
10883         * extension.h (struct ext_lang_type_printers): Add constructor and
10884         destructor.
10885         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10886         declare.
10887         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10888         Now a constructor; rename from start_ext_lang_type_printers.
10889         (ext_lang_type_printers): Now a destructor; rename from
10890         free_ext_lang_type_printers.
10891         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10892         Update.
10893         (c_type_print_base_struct_union): Update.  Remove cleanups.
10894
10895 2018-03-27  Tom Tromey  <tom@tromey.com>
10896
10897         * dwarf-index-write.c: Include <cmath>.
10898
10899 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10900
10901         * NEWS: Add entry describing new "set|show varsize-limit" command.
10902         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10903         command.
10904         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10905         "set variable".
10906
10907 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10908
10909         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10910         dwarf-index-write.c
10911         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10912         * dwarf-index-common.c: New file.
10913         * dwarf-index-common.h: New file.
10914         * dwarf-index-write.c: New file.
10915         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10916         (struct dwarf2_section_info): Move from here.
10917         (dwarf2_section_info_def): Likewise.
10918         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10919         (offset_type): Likewise.
10920         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10921         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10922         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10923         (byte_swap): Likewise.
10924         (MAYBE_SWAP): Likewise.
10925         (dwarf2_per_cu_ptr): Likewise.
10926         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10927         (struct tu_stats): Likewise.
10928         (struct dwarf2_per_objfile): Likewise.
10929         (struct dwarf2_per_cu_data): Likewise.
10930         (struct signatured_type): Likewise.
10931         (sig_type_ptr): Likewise.
10932         (DEF_VEC_P (sig_type_ptr)): Likewise.
10933         (INDEX4_SUFFIX): Likewise.
10934         (INDEX5_SUFFIX): Likewise.
10935         (DEBUG_STR_SUFFIX): Likewise.
10936         (dwarf2_read_section): Make non-static.
10937         (mapped_index_string_hash): Move from here.
10938         (dwarf5_djb_hash): Likewise.
10939         (file_write): Likewise.
10940         (class data_buf): Likewise.
10941         (struct symtab_index_entry): Likewise.
10942         (struct mapped_symtab): Likewise.
10943         (find_slot): Likewise.
10944         (hash_expand): Likewise.
10945         (add_index_entry): Likewise.
10946         (uniquify_cu_indices): Likewise.
10947         (class c_str_view): Likewise.
10948         (class c_str_view_hasher): Likewise.
10949         (class vector_hasher): Likewise.
10950         (write_hash_table): Likewise.
10951         (psym_index_map): Likewise.
10952         (struct addrmap_index_data): Likewise.
10953         (add_address_entry): Likewise.
10954         (add_address_entry_worker): Likewise.
10955         (write_address_map): Likewise.
10956         (symbol_kind): Likewise.
10957         (write_psymbols): Likewise.
10958         (struct signatured_type_index_data): Likewise.
10959         (write_one_signatured_type): Likewise.
10960         (recursively_count_psymbols): Likewise.
10961         (recursively_write_psymbols): Likewise.
10962         (class debug_names): Likewise.
10963         (check_dwarf64_offsets): Likewise.
10964         (psyms_seen_size): Likewise.
10965         (write_gdbindex): Likewise.
10966         (write_debug_names): Likewise.
10967         (assert_file_size): Likewise.
10968         (write_psymtabs_to_index): Likewise.
10969         (save_gdb_index_command): Likewise.
10970         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10971         command.
10972         * dwarf2read.h: New file.
10973
10974 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10975
10976         PR gdb/22670
10977         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10978         symbol name if the CU's language stores symbol names in linkage
10979         format.
10980         * language.h (struct language_defn)
10981         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10982         all instances of this struct.
10983
10984 2018-03-26  Tom Tromey  <tom@tromey.com>
10985
10986         * stack.c (backtrace_command_1): Remove verbose code.
10987
10988 2018-03-26  Tom Tromey  <tom@tromey.com>
10989
10990         * python/py-framefilter.c (py_print_type): Don't catch
10991         exceptions.  Return void.
10992         (py_print_value): Likewise.
10993         (py_print_single_arg): Likewise.
10994         (enumerate_args): Don't catch exceptions.
10995         (py_print_args): Likewise.
10996         (py_print_frame): Likewise.
10997         (gdbpy_apply_frame_filter): Catch exceptions here.
10998
10999 2018-03-26  Tom Tromey  <tom@tromey.com>
11000
11001         * stack.c (_initialize_stack): Remove trailing newlines from help
11002         text.  Add "Usage" line to "backtrace" help.
11003
11004 2018-03-26  Tom Tromey  <tom@tromey.com>
11005
11006         PR python/16486:
11007         * python/py-framefilter.c (py_print_args): Call wrap_hint.
11008
11009 2018-03-26  Tom Tromey  <tom@tromey.com>
11010
11011         * python/py-framefilter.c (py_print_single_arg): Return
11012         EXT_LANG_BT_ERROR from catch.
11013
11014 2018-03-26  Tom Tromey  <tom@tromey.com>
11015
11016         PR backtrace/15584:
11017         * stack.c (backtrace_command_1): Move some code into no-filters
11018         "if".
11019
11020 2018-03-26  Tom Tromey  <tom@tromey.com>
11021
11022         * python/py-framefilter.c (throw_quit_or_print_exception): New
11023         function.
11024         (gdbpy_apply_frame_filter): Use it.
11025
11026 2018-03-26  Tom Tromey  <tom@tromey.com>
11027
11028         PR cli/17716:
11029         * python/py-framefilter.c (py_print_type, py_print_value)
11030         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
11031         RETURN_MASK_ERROR.
11032
11033 2018-03-26  Tom Tromey  <tom@tromey.com>
11034
11035         * python/py-framefilter.c (enumerate_args): Use
11036         gdb::unique_xmalloc_ptr.
11037
11038 2018-03-26  Tom Tromey  <tom@tromey.com>
11039
11040         * python/py-framefilter.c (py_print_frame): Return
11041         EXT_LANG_BT_OK.
11042         (gdbpy_apply_frame_filter): Update comment.
11043         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
11044         Remove.
11045         <EXT_LANG_BT_NO_FILTERS>: Change value.
11046
11047 2018-03-26  Tom Tromey  <tom@tromey.com>
11048
11049         PR backtrace/15582:
11050         * stack.c (backtrace_command): Parse "hide" argument.
11051         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
11052         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
11053         constant.
11054
11055 2018-03-26  Tom Tromey  <tom@tromey.com>
11056
11057         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
11058         add "flags".
11059         (backtrace_command): Remove "fulltrace", add "flags".
11060
11061 2018-03-26  Tom Tromey  <tom@tromey.com>
11062
11063         * stack.c (backtrace_command): Rewrite command line parsing.
11064
11065 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11066
11067         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
11068
11069 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
11070
11071         * filename-seen-cache.h: Add include guard.
11072
11073 2018-03-26  Keith Seitz  <keiths@redhat.com>
11074
11075         * symfile.c (place_section): Remove "struct" from section_addr_info
11076         in comment.
11077         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
11078         "struct" keyword from section_addr_info.
11079
11080 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
11081
11082         * regformats/regdef.h (reg): Add constructors.
11083
11084 2018-03-25  Pedro Alves  <palves@redhat.com>
11085
11086         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
11087         if then/else bodies in var_func_name extraction.
11088
11089 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
11090
11091         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
11092         lookup_minimal_symbol() to find symbol entry.
11093         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
11094
11095 2018-03-23  Keith Seitz  <keiths@redhat.com>
11096
11097         PR c++/22968
11098         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
11099         nested type definitions for C++, too.
11100
11101 2018-03-23  Tom Tromey  <tom@tromey.com>
11102
11103         * machoread.c (struct oso_el): Add a constructor.  Don't define as
11104         a typedef.
11105         (macho_register_oso): Remove.
11106         (macho_symtab_read): Take a std::vector.
11107         (oso_el_compare_name): Now a std::sort comparator.
11108         (macho_symfile_read_all_oso): Take a std::vector.
11109         (macho_symfile_read): Use std::vector.  Remove cleanups.
11110
11111 2018-03-22  Tom Tromey  <tom@tromey.com>
11112
11113         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
11114         (record_full_goto_bookmark): Use std::string.
11115
11116 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11117
11118         PR tdep/18295
11119         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
11120         a single mask.
11121
11122 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11123
11124         * rs6000-tdep.c (store_insn_p): New function.
11125         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
11126         and cr_reg to their unshifted values. Use store_insn_p to
11127         match LR saves using either R1 or fdata->alloca_reg. Use
11128         store_insn_p to match CR saves. Set alloca_reg_offset
11129         when alloca_reg and framep are set. Remove lr_reg shift
11130         when assigning to fdata->lr_register.
11131
11132 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11133
11134         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
11135         command line args instead of emitting a warning.
11136
11137 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11138
11139         * tracepoint.h (struct static_tracepoint_marker): Initialize
11140         fields, define default constructor, move constructor and move
11141         assignment, disable the rest.
11142         <str_id, extra>: Make std::string.
11143         (release_static_tracepoint_marker): Remove.
11144         (free_current_marker): Remove.
11145         * tracepoint.c (free_current_marker): Remove.
11146         (parse_static_tracepoint_marker_definition): Adjust to
11147         std::string, use new hex2str overload.
11148         (release_static_tracepoint_marker): Remove.
11149         (print_one_static_tracepoint_marker): Get marker by reference
11150         and adjust to std::string.
11151         (info_static_tracepoint_markers_command): Adjust to std::vector
11152         changes
11153         * target.h (static_tracepoint_marker_p): Remove typedef.
11154         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
11155         (struct target_ops) <to_static_tracepoint_marker_at>: Return
11156         bool.
11157         <to_static_tracepoint_markers_by_strid>: Return std::vector.
11158         * target-debug.h
11159         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
11160         (target_debug_print_std_vector_static_tracepoint_marker): New.
11161         (target_debug_print_struct_static_tracepoint_marker_p): Rename
11162         to...
11163         (target_debug_print_static_tracepoint_marker_p): ... this.
11164         * target-delegates.c: Re-generate.
11165         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
11166         Make std::string.
11167         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
11168         (decode_static_tracepoint_spec): Adjust to std::vector.
11169         (tracepoint_print_one_detail): Adjust to std::string.
11170         (strace_marker_decode_location): Adjust to std::string.
11171         (update_static_tracepoint): Adjust to std::string, remove call
11172         to release_static_tracepoint_marker.
11173         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
11174         Adjust to std::vector.
11175         * remote.c (remote_static_tracepoint_marker_at): Return bool.
11176         (remote_static_tracepoint_markers_by_strid): Adjust to
11177         std::vector.
11178         * common/rsp-low.h (hex2str): New overload with explicit count
11179         of bytes.
11180         * common/rsp-low.c (hex2str): New overload with explicit count
11181         of bytes.
11182         * unittests/rsp-low-selftests.c (test_hex2str): New function.
11183         (_initialize_rsp_low_selftests): Add test_hex2str test.
11184         * unittests/tracepoint-selftests.c
11185         (test_parse_static_tracepoint_marker_definition): Adjust to
11186         std::string.
11187
11188 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
11189
11190         * tracepoint.c (parse_static_tracepoint_marker_definition):
11191         Consider case where the definition is followed by more
11192         definitions.
11193         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11194         tracepoint-selftests.c.
11195         * unittests/tracepoint-selftests.c: New.
11196
11197 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
11198
11199         * MAINTAINERS (Write After Approval): Add Pedro Franco de
11200         Carvalho.
11201
11202 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11203
11204         * symtab.c (find_pc_sect_line): fixed indentation.
11205
11206 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
11207
11208         * symtab.c (find_pc_sect_line): now uses binary search.
11209
11210 2018-03-19  Tom Tromey  <tom@tromey.com>
11211
11212         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
11213         "IDENT" production.
11214
11215 2018-03-19  Pedro Alves  <palves@redhat.com>
11216             Tom Tromey  <tom@tromey.com>
11217
11218         * unittests/observable-selftests.c: New file.
11219         * common/observable.h: New file.
11220         * observable.h: New file.
11221         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
11222         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
11223         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
11224         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
11225         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
11226         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
11227         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
11228         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
11229         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
11230         python/py-breakpoint.c, python/py-finishbreakpoint.c,
11231         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
11232         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
11233         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
11234         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
11235         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
11236         tui/tui-interp.c, valops.c: Update all users.
11237         * tui/tui-hooks.c (tui_bp_created_observer)
11238         (tui_bp_deleted_observer, tui_bp_modified_observer)
11239         (tui_inferior_exit_observer, tui_before_prompt_observer)
11240         (tui_normal_stop_observer, tui_register_changed_observer):
11241         Remove.
11242         (tui_observers_token): New global.
11243         (attach_or_detach, tui_attach_detach_observers): New functions.
11244         (tui_install_hooks, tui_remove_hooks): Use
11245         tui_attach_detach_observers.
11246         * record-btrace.c (record_btrace_thread_observer): Remove.
11247         (record_btrace_thread_observer_token): New global.
11248         * observer.sh: Remove.
11249         * observer.c: Rename to observable.c.
11250         * observable.c (namespace gdb_observers): Define new objects.
11251         (observer_debug): Move into gdb_observers namespace.
11252         (struct observer, struct observer_list, xalloc_observer_list_node)
11253         (xfree_observer_list_node, generic_observer_attach)
11254         (generic_observer_detach, generic_observer_notify): Remove.
11255         (_initialize_observer): Update.
11256         Don't include observer.inc.
11257         * Makefile.in (generated_files): Remove observer.h, observer.inc.
11258         (clean mostlyclean): Likewise.
11259         (observer.h, observer.inc): Remove targets.
11260         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
11261         (COMMON_SFILES): Use observable.c, not observer.c.
11262         * .gitignore: Remove observer.h.
11263
11264 2018-03-18  Tom Tromey  <tom@tromey.com>
11265
11266         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
11267         gdb::def_vector.
11268         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
11269
11270 2018-03-17  Tom Tromey  <tom@tromey.com>
11271
11272         * auto-load.c (auto_load_objfile_script_1): Use std::string.
11273
11274 2018-03-17  Tom Tromey  <tom@tromey.com>
11275
11276         * target.c (class scoped_target_fd): New.
11277         (target_fileio_close_cleanup): Remove.
11278         (target_fileio_read_alloc_1): Use scoped_target_fd.
11279
11280 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
11281
11282         * silent-rules.mk: New.
11283         * Makefile.in: Include silent-rules.mk
11284         (srcdir, VPATH, top_srcdir): Move up.
11285         (COMPILE): Add ECHO_CXX.
11286         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
11287         (init.c): Add ECHO_INIT_C.
11288         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
11289         (version.c): Add ECHO_GEN.
11290         (printcmd.o): Add ECHO_CXX.
11291         (target-float.o): Add ECHO_CXX.
11292         (ada-exp.o): Add ECHO_CXX.
11293         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
11294         (insight$(EXEEXT)): Add ECHO_CXXLD.
11295         * gnulib/configure.ac: Add AM_SILENT_RULES.
11296         * gnulib/aclocal.m4: Re-generate.
11297         * gnulib/configure: Re-generate.
11298         * gnulib/import/Makefile.in: Re-generate.
11299
11300 2018-03-16  Tom Tromey  <tom@tromey.com>
11301
11302         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
11303         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
11304         * utils.c (do_free_section_addr_info)
11305         (make_cleanup_free_section_addr_info): Remove.
11306         * symfile.h (struct other_sections): Add constructor.
11307         (struct section_addr_info): Remove.
11308         (section_addr_info): New typedef.
11309         (struct sym_fns) <sym_offsets>: Change type of parameter.
11310         (build_section_addr_info_from_objfile)
11311         (relative_addr_info_to_section_offsets, addr_info_make_relative)
11312         (default_symfile_offsets, symbol_file_add)
11313         (symbol_file_add_from_bfd)
11314         (build_section_addr_info_from_section_table): Update.
11315         (alloc_section_addr_info, free_section_addr_info): Don't declare.
11316         * symfile.c (alloc_section_addr_info): Remove.
11317         (build_section_addr_info_from_section_table): Change return type.
11318         Update.
11319         (build_section_addr_info_from_bfd)
11320         (build_section_addr_info_from_objfile): Likewise.
11321         (free_section_addr_info): Remove.
11322         (relative_addr_info_to_section_offsets): Change type of "addrs".
11323         (addrs_section_compar): Now a std::sort comparator.
11324         (addrs_section_sort): Change return type.
11325         (addr_info_make_relative): Change type of "addrs".  Update.
11326         (default_symfile_offsets, syms_from_objfile_1)
11327         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
11328         (symbol_file_add_separate): Update.
11329         (symbol_file_add): Change type of "addrs".  Update.
11330         (add_symbol_file_command): Update.  Remove cleanups.
11331         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
11332         cleanups.
11333         * symfile-debug.c (debug_sym_offsets): Change type of "info".
11334         * solib.c (solib_read_symbols): Update.
11335         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
11336         * machoread.c (macho_symfile_offsets): Update.
11337         * jit.c (jit_bfd_try_read_symtab): Update.
11338
11339 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
11340
11341         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11342         unittests/utils-selftests.c.
11343         * unittests/utils-selftests.c: New file.
11344
11345 2018-03-14  Tom Tromey  <tom@tromey.com>
11346
11347         PR cli/14977:
11348         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
11349         for NULL.
11350
11351 2018-03-14  Tom Tromey  <tom@tromey.com>
11352
11353         PR cli/19918:
11354         * printcmd.c (printf_pointer): Allow "-" in format.
11355
11356 2018-03-14  Tom Tromey  <tom@tromey.com>
11357
11358         * printcmd.c (_initialize_printcmd): Add usage to printf.
11359
11360 2018-03-14  Yao Qi  <qiyao@sourceware.org>
11361
11362         * MAINTAINERS: Update my email address.
11363
11364 2018-03-13  Tom Tromey  <tom@tromey.com>
11365
11366         * machoread.c (macho_check_dsym): Change filenamep to a
11367         std::string*.
11368         (macho_symfile_read): Update.
11369         * symfile.c (load_command): Use std::string.
11370
11371 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11372
11373         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
11374         to error message string.
11375         (riscv_register_name): Use xsnprintf instead of sprintf.
11376         (riscv_insn::fetch_instruction): Use gdb_assert instead of
11377         internal_error.
11378         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
11379         error.
11380         (riscv_push_dummy_call): Likewise.
11381
11382 2018-03-12  Tom Tromey  <tom@tromey.com>
11383
11384         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
11385         Use gdb::byte_vector.
11386         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
11387
11388 2018-03-12  Yao Qi  <yao.qi@linaro.org>
11389
11390         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
11391         parameter type to readable_regcache.
11392         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
11393         the declaration.
11394
11395 2018-03-11  Tom Tromey  <tom@tromey.com>
11396
11397         * dwarf2read.c (struct nextfield): Add initializers.
11398         (struct nextfnfield): Remove.
11399         (struct fnfieldlist): Add initializers.  Remove "length" and
11400         "head", use std::vector.
11401         (struct decl_field_list): Remove.
11402         (struct field_info): Add initializers.
11403         <fields, baseclasses>: Now std::vector.
11404         <nbaseclasses, nfnfields, typedef_field_list_count,
11405         nested_types_list_count>: Remove.
11406         (dwarf2_add_field, dwarf2_add_type_defn)
11407         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
11408         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
11409         (process_structure_scope): Update.
11410
11411 2018-03-11  Tom Tromey  <tom@tromey.com>
11412
11413         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
11414         for use by std::sort.
11415         (build_type_psymtabs_1): Use std::vector.
11416
11417 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
11418
11419         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
11420         and LIBMPFR in the printed configuration.
11421
11422 2018-03-08  Tom Tromey  <tom@tromey.com>
11423
11424         * source.c (get_filename_and_charpos): Use scoped_fd.
11425         * nto-procfs.c (procfs_open_1): Use scoped_fd.
11426         (procfs_pidlist): Likewise.
11427         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
11428         (iterate_over_mappings): Likewise.
11429
11430 2018-03-08  Tom Tromey  <tom@tromey.com>
11431
11432         * infcall.c (struct call_return_meta_info)
11433         <stack_temporaries_enabled>: Remove.
11434         (get_call_return_value, call_function_by_hand_dummy): Update.
11435         * thread.c (disable_thread_stack_temporaries): Remove.
11436         (enable_thread_stack_temporaries): Remove.
11437         (thread_stack_temporaries_enabled_p): Return bool.
11438         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
11439         (get_last_thread_stack_temporary): Update.
11440         * eval.c (evaluate_subexp): Update.
11441         * gdbthread.h (class enable_thread_stack_temporaries): Now a
11442         class, not a function.
11443         (value_ptr, value_vec): Remove typedefs.
11444         (class thread_info) <stack_temporaries_enabled>: Now bool.
11445         <stack_temporaries>: Now a std::vector.
11446         (thread_stack_temporaries_enabled_p)
11447         (value_in_thread_stack_temporaries): Return bool.
11448
11449 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
11450
11451         * remote.c (putpkt_binary): Fix omitted bytes reporting.
11452         (getpkt_or_notif_sane_1): Likewise.
11453
11454 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11455
11456         * build-id.c (build_id_to_debug_bfd): Use std::string.
11457
11458 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11459
11460         * build-id.c (find_separate_debug_file_by_buildid): Return
11461         std::string.
11462         * build-id.h (find_separate_debug_file_by_buildid): Return
11463         std::string.
11464         * coffread.c (coff_symfile_read): Adjust to std::string.
11465         * elfread.c (elf_symfile_read): Adjust to std::string.
11466         * symfile.c (separate_debug_file_exists): Change parameter to
11467         std::string.
11468         (find_separate_debug_file): Return std::string.
11469         (find_separate_debug_file_by_debuglink): Return std::string.
11470         * symfile.h (find_separate_debug_file_by_debuglink): Return
11471         std::string.
11472
11473 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
11474
11475         * common/xml-utils.c (xml_escape_text): Move code to...
11476         (xml_escape_text_append): ... this new function.
11477         * common/xml-utils.h (xml_escape_text_append): New declaration.
11478         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
11479         New function.
11480         (_initialize_xml_utils): register test_xml_escape_text_append as
11481         a selftest.
11482
11483 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
11484
11485         * defs.h: Remove MAX_REGISTER_SIZE.
11486         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
11487         asserts.
11488         * python/py-unwind.c (pyuw_sniffer): Likewise.
11489
11490 2018-03-07  Tom Tromey  <tom@tromey.com>
11491
11492         * linux-tdep.c (linux_info_proc): Update.
11493         * target.h (struct target_ops) <to_fileio_readlink>: Return
11494         optional<string>.
11495         (target_fileio_readlink): Return optional<string>.
11496         * remote.c (remote_hostio_readlink): Return optional<string>.
11497         * inf-child.c (inf_child_fileio_readlink): Return
11498         optional<string>.
11499         * target.c (target_fileio_readlink): Return optional<string>.
11500
11501 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
11502
11503         * regcache.c (cooked_read_test): Add riscv to the list of
11504         architectures that have a save_reggroup.
11505
11506 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11507
11508         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
11509         value is not a dynamic class object.
11510
11511 2018-03-06  Tom Tromey  <tom@tromey.com>
11512
11513         * rust-exp.y: Formatting fixes.
11514
11515 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11516
11517         * riscv-tdep.c (riscv_register_name): Remove target description
11518         support.
11519         (riscv_gdbarch_init): Remove target description check.
11520
11521 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11522
11523         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
11524         comment.
11525         * riscv-tdep.h: Likewise.
11526
11527 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11528
11529         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
11530         (riscv_pseudo_register_write): Delete.
11531         (riscv_gdbarch_init): Remove all use of pseudo registers.
11532
11533 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11534
11535         * record-btrace.c (btrace_print_lines): Replace cleanup
11536         parameter with RAII equivalents.
11537         (btrace_insn_history): Replace cleanup with RAII equivalents.
11538         * ui-out.h (make_cleanup_ui_out_list_begin_end,
11539         make_cleanup_ui_out_tuple_begin_end): Remove.
11540         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
11541         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
11542         make_cleanup_ui_out_list_begin_end): Remove.
11543
11544 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11545
11546         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
11547         parameter types to std::vector.  Use bool.
11548         (record_btrace_wait): Replace VEC(tp_t) with
11549         std::vector<thread_info *>.
11550         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
11551
11552 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
11553
11554         * record-btrace.c (record_btrace_disable_callback): Remove.
11555         (struct scoped_btrace_disable): New.
11556         (record_btrace_open): Use scoped_btrace_disable.
11557
11558 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11559
11560         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
11561         reading values from registers.
11562
11563 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11564
11565         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
11566         where appropriate.
11567
11568 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11569
11570         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
11571         change parameter type.  Use GDB's print functions, and use
11572         core_addr_to_string where appropriate.
11573         (riscv_push_dummy_call): Use core_addr_to_string where
11574         appropriate, update call to riscv_print_arg_location, and reindent
11575         a few lines.
11576         (riscv_return_value): Update call to riscv_print_arg_location.
11577
11578 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11579             Tim Newsome <tim@sifive.com>
11580             Albert Ou <a0u@eecs.berkeley.edu>
11581             Darius Rad <darius@bluespec.com>
11582
11583         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
11584         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
11585         (ALLDEPFILES): Add riscv-tdep.c
11586         * configure.tgt: Add riscv support.
11587         * riscv-tdep.c: New file.
11588         * riscv-tdep.h: New file.
11589         * NEWS: Mention new target.
11590         * MAINTAINERS: Add entry for riscv.
11591
11592 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
11593
11594         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
11595         fields within aggregates.
11596
11597 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
11598
11599         * record-btrace.c (btrace_print_lines): Change type of flags to
11600         gdb_disassembly_flags.
11601
11602 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11603
11604         * fbsd-nat.c: Include "inf-ptrace.h".
11605         (USE_SIGTRAP_SIGINFO): Conditionally define.
11606         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
11607         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
11608         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
11609         function.
11610         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
11611         Likewise.
11612         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
11613         Likewise.
11614         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
11615         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
11616         "supports_stopped_by_hw_breakpoint" target methods.
11617
11618 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11619
11620         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
11621         * fbsd-nat.c (debug_fbsd_nat): New variable.
11622         (show_fbsd_nat_debug): New function.
11623         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
11624         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
11625
11626 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
11627
11628         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
11629         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
11630         prototype.
11631         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
11632         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
11633         method.
11634
11635 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11636
11637         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
11638         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
11639
11640 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11641
11642         * charset.c (struct charset_vector): New.
11643         (charsets): Change type to charset_vector.
11644         (find_charset_names): Adjust.
11645         (add_one): Adjust.
11646         (_initialize_charset): Adjust.
11647
11648 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11649
11650         * progspace.h (struct program_space) <deleted_solibs>: Change
11651         type to std::vector<std::string>.
11652         * progspace.c (clear_program_space_solib_cache): Adjust.
11653         * breakpoint.c (print_solib_event): Adjust.
11654         (check_status_catch_solib): Adjust.
11655         * solib.c (update_solib_list): Adjust.
11656         * ui-out.h (class ui_out) <field_string>: New overload.
11657         * ui-out.c (ui_out::field_string): New overload.
11658
11659 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11660
11661         * progspace.h (struct program_space): Add constructor and
11662         destructor, initialize fields.
11663         (add_program_space): Remove.
11664         * progspace.c (add_program_space): Rename to...
11665         (program_space::program_space): ... this.
11666         (release_program_space): Rename to...
11667         (program_space::~program_space): ... this.
11668         (delete_program_space): Use delete to delete program_space.
11669         (initialize_progspace): Use new to allocate program_space.
11670         * inferior.c (add_inferior_with_spaces): Likewise.
11671         (clone_inferior_command): Likewise.
11672         * infrun.c (follow_fork_inferior): Likewise.
11673         (handle_vfork_child_exec_or_exit): Likewise.
11674
11675 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
11676
11677         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
11678         (delim_string_to_char_ptr_vec): Return std::vector of
11679         gdb::unique_xmalloc_ptr.
11680         (dirnames_to_char_ptr_vec_append): Take std::vector of
11681         gdb::unique_xmalloc_ptr.
11682         (dirnames_to_char_ptr_vec): Return std::vector of
11683         gdb::unique_xmalloc_ptr.
11684         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
11685         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
11686         (delim_string_to_char_ptr_vec): Return an std::vector of
11687         gdb::unique_xmalloc_ptr, adjust the code.
11688         (dirnames_to_char_ptr_vec_append): Take an std::vector of
11689         gdb::unique_xmalloc_ptr, adjust the code.
11690         (dirnames_to_char_ptr_vec): Return an std::vector of
11691         gdb::unique_xmalloc_ptr, adjust the code.
11692         * auto-load.c (auto_load_safe_path_vec): Change type to
11693         std::vector of gdb::unique_xmalloc_ptr.
11694         (auto_load_expand_dir_vars): Return an std::vector of
11695         gdb::unique_xmalloc_ptr, adjust the code.
11696         (auto_load_safe_path_vec_update): Adjust.
11697         (filename_is_in_auto_load_safe_path_vec): Adjust.
11698         (auto_load_objfile_script_1): Adjust.
11699         * build-id.c (build_id_to_debug_bfd): Adjust.
11700         * linux-thread-db.c (thread_db_load_search): Adjust.
11701         * source.c (add_path): Adjust.
11702         (openp): Adjust.
11703         * symfile.c (find_separate_debug_file): Adjust.
11704         * utils.c (do_free_char_ptr_vec): Remove.
11705         (make_cleanup_free_char_ptr_vec): Remove.
11706
11707 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
11708
11709         PR gdb/22907
11710         * common/pathstuff.c: Conditionally include "<windows.h>".
11711
11712 2018-03-01  Georg Sauthoff  <mail@georg.so>
11713
11714         PR gdb/22888
11715         * gcore.in: Quote variables and switch interpreter to bash.
11716
11717 2018-03-01  Tom Tromey  <tom@tromey.com>
11718
11719         * dwarf2read.c (alloc_discriminant_info): Fix default_index
11720         assertion.  Add assertion for discriminant_index.
11721         (quirk_rust_enum): Use correct base type name in univariant case.
11722
11723 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
11724
11725         * record.c (get_call_history_modifiers): Return a
11726         record_print_flags.
11727         (cmd_record_call_history): Adjust.
11728         * record-btrace.c (record_btrace_call_history): Adjust.
11729         (record_btrace_call_history_range): Adjust.
11730         (record_btrace_call_history_from): Adjust.
11731         * target-debug.h (target_debug_print_record_print_flags): New.
11732         * target-delegates.c: Re-generate.
11733         * target.c (target_call_history): Change flags type.
11734         (target_call_history_from): Likewise.
11735         (target_call_history_range): Likewise.
11736         * target.h (struct target_ops) <target_call_history>: Likewise.
11737         (target_call_history_from): Likewise.
11738         (target_call_history_range): Likewise.
11739
11740 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11741             Simon Marchi  <simon.marchi@polymtl.ca>
11742
11743         * common/common-utils.c: Include "sys/stat.h".
11744         (is_regular_file): Move here from "source.c"; change return
11745         type to "bool".
11746         * common/common-utils.h (is_regular_file): New prototype.
11747         * common/pathstuff.c (contains_dir_separator): New function.
11748         * common/pathstuff.h (contains_dir_separator): New prototype.
11749         * source.c: Don't include "sys/stat.h".
11750         (is_regular_file): Move to "common/common-utils.c".
11751
11752 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
11753
11754         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
11755         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
11756         * auto-load.c: Include "common/pathstuff.h".
11757         * common/common-def.h (current_directory): Move here.
11758         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
11759         function.
11760         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
11761         prototype.
11762         * common/pathstuff.c: New file.
11763         * common/pathstuff.h: New file.
11764         * compile/compile.c: Include "common/pathstuff.h".
11765         * defs.h (current_directory): Move to "common/common-defs.h".
11766         * dwarf2read.c: Include "common/pathstuff.h".
11767         * exec.c: Likewise.
11768         * guile/scm-safe-call.c: Likewise.
11769         * linux-thread-db.c: Likewise.
11770         * main.c: Likewise.
11771         * nto-tdep.c: Likewise.
11772         * objfiles.c: Likewise.
11773         * source.c: Likewise.
11774         * symtab.c: Likewise.
11775         * utils.c: Include "common/pathstuff.h".
11776         (gdb_realpath): Move to "common/pathstuff.c".
11777         (gdb_realpath_keepfile): Likewise.
11778         (gdb_abspath): Likewise.
11779         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
11780         (gdb_realpath_keepfile): Likewise.
11781         (gdb_abspath): Likewise.
11782
11783 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
11784
11785         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11786         wildcard process pid for super_resume for kernels with a
11787         specific bug.
11788
11789 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11790
11791         * compile/compile.c (get_args): Add additional comments
11792         explaining function.
11793
11794 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11795             Tom Tromey  <tom@tromey.com>
11796
11797         * target.h (memory_write_request_s): Remove typedef.  Don't define
11798         VEC.
11799         (target_write_memory_blocks): Change argument to std::vector.
11800         (struct memory_write_request): Add constructor.
11801         * target-memory.c (compare_block_starting_address): Return bool.
11802         Change argument types.
11803         (claim_memory): Change arguments to use std::vector.
11804         (split_regular_and_flash_blocks, blocks_to_erase)
11805         (compute_garbled_blocks): Likewise.
11806         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11807         (target_write_memory_blocks): Change argument to std::vector.
11808         * symfile.c (struct load_section_data): Add constructor and
11809         destructor.  Use std::vector for "requests".
11810         (struct load_progress_data): Add initializers.
11811         (load_section_callback): Update.  Use "new".
11812         (clear_memory_write_data): Remove.
11813         (generic_load): Update.
11814
11815 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11816
11817         * arch/aarch64.h: Use common/tdesc.h.
11818
11819 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11820
11821         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11822         architecture with a 64-bit ABI.
11823
11824 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11825
11826         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11827         ahead of target description loading.
11828
11829 2018-02-26  Tom Tromey  <tom@tromey.com>
11830
11831         * stack.c (backtrace_command_1): Update.
11832         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11833         of "flags".
11834         * python/py-framefilter.c (py_print_frame)
11835         (gdbpy_apply_frame_filter): Change type of "flags".
11836         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11837         of "flags".
11838         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11839         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11840         * extension.h (enum frame_filter_flag): Rename from
11841         frame_filter_flags.
11842         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11843         (apply_ext_lang_frame_filter): Change type of "flags".
11844         * extension.c (apply_ext_lang_frame_filter): Change type of
11845         "flags".
11846         * extension-priv.h (struct extension_language_ops)
11847         <apply_frame_filter>: Change type of "flags".
11848
11849 2018-02-26  Tom Tromey  <tom@tromey.com>
11850
11851         PR python/16497:
11852         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11853         off-by-one in py_end computation.
11854         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11855         PRINT_MORE_FRAMES.
11856         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11857         constant.
11858
11859 2018-02-26  Tom Tromey  <tom@tromey.com>
11860
11861         * dwarf2read.c (struct variant_field): New.
11862         (struct nextfield) <variant>: New field.
11863         (dwarf2_add_field): Handle DW_TAG_variant_part.
11864         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11865         discriminated union.
11866         (read_structure_type): Handle DW_TAG_variant_part.
11867         (handle_struct_member_die): New function, extracted from
11868         process_structure_scope.  Handle DW_TAG_variant.
11869         (process_structure_scope): Handle discriminated unions.  Call
11870         handle_struct_member_die.
11871
11872 2018-02-26  Tom Tromey  <tom@tromey.com>
11873
11874         * rust-lang.h (rust_last_path_segment): Declare.
11875         * rust-lang.c (rust_last_path_segment): Now public.  Change
11876         contract.
11877         (struct disr_info): Remove.
11878         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11879         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11880         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11881         (rust_enum_p, rust_enum_variant): New function.
11882         (rust_underscore_fields): Remove "offset" parameter.
11883         (rust_print_enum): New function.
11884         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11885         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11886         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11887         enums.
11888         (rust_internal_print_type): New function, from rust_print_type.
11889         Remove enum code.
11890         (rust_print_type): Call rust_internal_print_type.
11891         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11892         Update enum handling.
11893         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11894         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11895         (rust_union_quirks): New functions.
11896         (process_full_comp_unit, process_full_type_unit): Call
11897         rust_union_quirks.
11898         (process_structure_scope): Update rust_unions if necessary.
11899
11900 2018-02-26  Tom Tromey  <tom@tromey.com>
11901
11902         * value.h (value_union_variant): Declare.
11903         * valops.c (value_union_variant): New function.
11904         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11905         (struct discriminant_info): New.
11906         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11907         enumerator.
11908         (struct main_type) <flag_discriminated_union>: New field.
11909
11910 2018-02-26  Tom Tromey  <tom@tromey.com>
11911
11912         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11913         unittests/unpack-selftests.c.
11914         * unittests/unpack-selftests.c: New file.
11915         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11916
11917 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11918
11919         * dwarf2read.c (struct partial_die_info) <read>: New method.
11920         (read_partial_die): Remove the declaration.
11921         (load_partial_dies): Update.
11922         (partial_die_info::partial_die_info):
11923         (read_partial_die): Change it to partial_die_info::read.
11924
11925 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11926
11927         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11928         (fixup_partial_die): Remove declaration.
11929         (scan_partial_symbols): Update.
11930         (partial_die_parent_scope): Likewise.
11931         (partial_die_full_name): Likewise.
11932         (fixup_partial_die): Change it to partial_die_info::fixup.
11933
11934 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11935
11936         * dwarf2read.c (read_partial_die): Update the declaration.
11937         (load_partial_dies): Caller update.
11938         (read_partial_die): Remove one argument abbrev_len.
11939
11940 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11941
11942         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11943         assignment operator.
11944         (load_partial_dies): Use ctor and copy ctor.
11945         (read_partial_die): Update.
11946         (dwarf2_cu::find_partial_die): Use ctor.
11947
11948 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11949
11950         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11951         (find_partial_die_in_comp_unit): Change it to
11952         dwarf2_cu::find_partial_die.
11953         (find_partial_die): Update.
11954
11955 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11956
11957         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11958         is NULL.
11959
11960 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11961
11962         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11963
11964 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11965
11966         * arch/amd64.h: Use common/tdesc.h.
11967         * arch/i386.c: Likewise.
11968         * arch/i386.h: Likewise.
11969         * arch/tic6x.c: Likewise.
11970         * arch/tdesc.h: Move file from here...
11971         * common/tdesc.h: ...to here.
11972         * features/aarch64-core.c: Regenerate.
11973         * features/aarch64-fpu.c: Regenerate.
11974         * features/i386/32bit-avx.c: Regenerate.
11975         * features/i386/32bit-avx512.c: Regenerate.
11976         * features/i386/32bit-core.c: Regenerate.
11977         * features/i386/32bit-linux.c: Regenerate.
11978         * features/i386/32bit-mpx.c: Regenerate.
11979         * features/i386/32bit-pkeys.c: Regenerate.
11980         * features/i386/32bit-sse.c: Regenerate.
11981         * features/i386/64bit-avx.c: Regenerate.
11982         * features/i386/64bit-avx512.c: Regenerate.
11983         * features/i386/64bit-core.c: Regenerate.
11984         * features/i386/64bit-linux.c: Regenerate.
11985         * features/i386/64bit-mpx.c: Regenerate.
11986         * features/i386/64bit-pkeys.c: Regenerate.
11987         * features/i386/64bit-segments.c: Regenerate.
11988         * features/i386/64bit-sse.c: Regenerate.
11989         * features/i386/x32-core.c: Regenerate.
11990         * features/tic6x-c6xp.c: Regenerate.
11991         * features/tic6x-core.c: Regenerate.
11992         * features/tic6x-gp.c: Regenerate.
11993         * target-descriptions.c: Use common/tdesc.h.
11994         * target-descriptions.h: Likewise.
11995
11996 2018-02-24  Tom Tromey  <tom@tromey.com>
11997
11998         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11999         (try_thread_db_load_from_dir, thread_db_load_search): Use
12000         std::string.
12001         (info_auto_load_libthread_db_compare): Return bool.  Change
12002         argument types.
12003         (info_auto_load_libthread_db): Use std::vector, std::string.
12004         Remove cleanups.
12005
12006 2018-02-24  Tom Tromey  <tom@tromey.com>
12007
12008         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
12009         std::string.
12010         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
12011         std::string*.
12012         * gdbarch.c: Rebuild.
12013         * gdbarch.h: Rebuild.
12014         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
12015         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
12016         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
12017         std::string*.
12018
12019 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
12020
12021         * gdbtypes.h (sect_offset): Change type to uint64_t.
12022         (sect_offset_str): New function.
12023         * dwarf2read.c (create_addrmap_from_aranges): Use
12024         sect_offset_str.
12025         (error_check_comp_unit_head): Likewise.
12026         (create_debug_type_hash_table): Likewise.
12027         (read_cutu_die_from_dwo): Likewise.
12028         (init_cutu_and_read_dies): Likewise.
12029         (init_cutu_and_read_dies_no_follow): Likewise.
12030         (process_psymtab_comp_unit_reader): Likewise.
12031         (partial_die_parent_scope): Likewise.
12032         (peek_die_abbrev): Likewise.
12033         (process_queue): Likewise.
12034         (dwarf2_physname): Likewise.
12035         (read_namespace_alias): Likewise.
12036         (read_import_statement): Likewise.
12037         (create_dwo_cu_reader): Likewise.
12038         (create_cus_hash_table): Likewise.
12039         (lookup_dwo_cutu): Likewise.
12040         (inherit_abstract_dies): Likewise.
12041         (read_func_scope): Likewise.
12042         (read_call_site_scope): Likewise.
12043         (dwarf2_add_member_fn): Likewise.
12044         (read_common_block): Likewise.
12045         (read_module_type): Likewise.
12046         (read_typedef): Likewise.
12047         (read_subrange_type): Likewise.
12048         (load_partial_dies): Likewise.
12049         (read_partial_die): Likewise.
12050         (find_partial_die): Likewise.
12051         (read_str_index): Likewise.
12052         (dwarf2_string_attr): Likewise.
12053         (build_error_marker_type): Likewise.
12054         (lookup_die_type): Likewise.
12055         (dump_die_shallow): Likewise.
12056         (follow_die_ref): Likewise.
12057         (dwarf2_fetch_die_loc_sect_off): Likewise.
12058         (dwarf2_fetch_constant_bytes): Likewise.
12059         (follow_die_sig): Likewise.
12060         (get_signatured_type): Likewise.
12061         (get_DW_AT_signature_type): Likewise.
12062         (dwarf2_find_containing_comp_unit): Likewise.
12063         (set_die_type): Likewise.
12064
12065 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
12066
12067         * arch/aarch64.c: Include "common-defs.h".
12068         * arch/amd64.c: Likewise.
12069         * arch/i386.c: Likewise.
12070
12071 2018-02-21  Tom Tromey  <tom@tromey.com>
12072
12073         * value.h: (extract_field_op): Update.
12074         * eval.c (extract_field_op): Return a const char *.
12075         * expression.h (parse_expression_for_completion): Update.
12076         * completer.c (complete_expression): Update.
12077         (add_struct_fields): Make fieldname const.
12078         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
12079         (mark_completion_tag, parse_exp_in_context_1): Update.
12080         (parse_expression_for_completion): Change "name" to
12081         unique_xmalloc_ptr*.
12082
12083 2018-02-21  Tom Tromey  <tom@tromey.com>
12084
12085         * infcall.c (call_function_by_hand_dummy): Use std::vector.
12086
12087 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12088
12089         * avr-tdep.c (avr_read_pc): Change parameter type to
12090         readable_regcache.
12091         * gdbarch.sh (read_pc): Likewise.
12092         * gdbarch.c: Re-generated.
12093         * gdbarch.h: Re-generated.
12094         * hppa-tdep.c (hppa_read_pc): Change parameter type to
12095         readable_regcache.
12096         * ia64-tdep.c (ia64_read_pc): Likewise.
12097         * mips-tdep.c (mips_read_pc): Likewise.
12098         * spu-tdep.c (spu_read_pc): Likewise.
12099
12100 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12101
12102         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
12103         * regcache-dump.c: New file.
12104         * regcache.c: Move register_dump to regcache-dump.c.
12105         (maintenance_print_registers): Likewise.
12106         (maintenance_print_raw_registers): Likewise.
12107         (maintenance_print_cooked_registers): Likewise.
12108         (maintenance_print_register_groups): Likewise.
12109         (maintenance_print_remote_registers): Likewise.
12110         (_initialize_regcache): Likewise.
12111         * regcache.h (register_dump): Moved from regcache.c.
12112
12113 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12114
12115         * regcache.c (regcache::regcache): Update.
12116         (regcache::invalidate): Move it to detached_regcache::invalidate.
12117         (get_thread_arch_aspace_regcache): Update.
12118         (regcache::raw_update): Update.
12119         (regcache::cooked_read): Remove some code.
12120         (regcache::cooked_read_value): Likewise.
12121         (regcache::raw_write): Remove assert on m_readonly_p.
12122         (regcache::raw_supply_integer): Move it to
12123         detached_regcache::raw_supply_integer.
12124         (regcache::raw_supply_zeroed): Likewise.
12125         * regcache.h (detached_regcache) <raw_supply_integer>: New
12126         declaration.
12127         <raw_supply_zeroed, invalidate>: Likewise.
12128         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
12129         <invalidate>: Likewise.
12130         <m_readonly_p>: Removed.
12131
12132 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12133
12134         * infcmd.c (get_return_value): Let stop_regs point to
12135         get_current_regcache.
12136         * regcache.c (regcache::regcache): Remove.
12137         (register_dump_reg_buffer): New class.
12138         (regcache_print): Adjust.
12139         * regcache.h (regcache): Remove constructors.
12140
12141 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12142
12143         * regcache.c (class register_dump): New class.
12144         (register_dump_regcache, register_dump_none): New class.
12145         (register_dump_remote, register_dump_groups): New class.
12146         (regcache_print): Update.
12147         * regcache.h (regcache_dump_what): Move it to regcache.c.
12148         (regcache) <dump>: Remove.
12149
12150 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12151
12152         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
12153          reg_buffer_rw *.
12154         (jit_unwind_reg_set_impl): Call raw_supply.
12155         (jit_frame_sniffer): Use reg_buffer_rw.
12156         * record-full.c (record_full_core_regbuf): Change its type.
12157         (record_full_core_open_1): Use reg_buffer_rw.
12158         (record_full_close): Likewise.
12159         (record_full_core_fetch_registers): Use regcache->raw_supply.
12160         (record_full_core_store_registers): Likewise.
12161         * regcache.c (regcache::get_register_status): Move it to
12162         reg_buffer.
12163         (regcache_raw_set_cached_value): Remove.
12164         (regcache::raw_set_cached_value): Remove.
12165         (regcache::raw_write): Call raw_supply.
12166         (regcache::raw_supply): Move it to reg_buffer_rw.
12167         * regcache.h (regcache_raw_set_cached_value): Remove.
12168         (reg_buffer_rw): New class.
12169
12170 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12171
12172         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
12173         readonly_detached_regcache.
12174         (dummy_frame_prev_register): Use regcache->cooked_read.
12175         * frame.c (frame_save_as_regcache): Change return type.
12176         (frame_pop): Update.
12177         * frame.h (frame_save_as_regcache): Update declaration.
12178         * inferior.h (get_infcall_suspend_state_regcache): Update
12179         declaration.
12180         * infrun.c (infcall_suspend_state) <registers>: use
12181         readonly_detached_regcache.
12182         (save_infcall_suspend_state): Don't use regcache_dup.
12183         (get_infcall_suspend_state_regcache): Change return type.
12184         * linux-fork.c (struct fork_info) <savedregs>: Change to
12185         readonly_detached_regcache.
12186         <pc>: New field.
12187         (fork_save_infrun_state): Don't use regcache_dup.
12188         (info_checkpoints_command): Adjust.
12189         * mi/mi-main.c (register_changed_p): Update declaration.
12190         (mi_cmd_data_list_changed_registers): Use
12191         readonly_detached_regcache.
12192         (register_changed_p): Change parameter type to
12193         readonly_detached_regcache.
12194         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
12195         readonly_detached_regcache.
12196         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
12197         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
12198         New.
12199         (regcache::save): Move it to reg_buffer.
12200         (regcache::restore): Change parameter type.
12201         (regcache_dup): Remove.
12202         * regcache.h (reg_buffer) <save>: New method.
12203         (readonly_detached_regcache): New class.
12204         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
12205         readonly_detached_regcache.
12206         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
12207
12208 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12209
12210         * frame.c (frame_save_as_regcache): Use regcache method save.
12211         (frame_pop): Use regcache method restore.
12212         * infrun.c (restore_infcall_suspend_state): Likewise.
12213         * linux-fork.c (fork_load_infrun_state): Likewise.
12214         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
12215         save.
12216         * regcache.c (regcache_save): Remove.
12217         (regcache::restore): More asserts.
12218         (regcache_cpy): Remove.
12219         * regcache.h (regcache_save): Remove the declaration.
12220         (regcache::restore): Move from private to public.
12221         Remove the friend declaration of regcache_cpy.
12222         (regcache_cpy): Remove declaration.
12223
12224 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12225
12226         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
12227         parameter type to 'readable_regcache *'.
12228         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12229         * arm-tdep.c (arm_neon_quad_read): Likewise.
12230         (arm_pseudo_read): Likewise.
12231         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12232         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12233         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12234         * gdbarch.c: Re-generated.
12235         * gdbarch.h: Re-generated.
12236         * gdbarch.sh (pseudo_register_read): Change parameter type to
12237         'readable_regcache *'.
12238         (pseudo_register_read_value): Likewise.
12239         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
12240         (h8300_pseudo_register_read): Likewise.
12241         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
12242         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12243         (i386_pseudo_register_read_into_value): Likewise.
12244         (i386_pseudo_register_read_value): Likewise.
12245         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
12246         declaration.
12247         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
12248         * m32c-tdep.c (m32c_raw_read): Likewise.
12249         (m32c_read_flg): Likewise.
12250         (m32c_banked_register): Likewise.
12251         (m32c_banked_read): Likewise.
12252         (m32c_sb_read): Likewise.
12253         (m32c_part_read): Likewise.
12254         (m32c_cat_read): Likewise.
12255         (m32c_r3r2r1r0_read): Likewise.
12256         (m32c_pseudo_register_read): Likewise.
12257         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12258         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12259         (mep_pseudo_cr64_read): Likewise.
12260         (mep_pseudo_register_read): Likewise.
12261         * mips-tdep.c (mips_pseudo_register_read): Likewise.
12262         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12263         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12264         * regcache.c (regcache::raw_read): Move it to readable_regcache.
12265         (regcache::cooked_read): Likewise.
12266         (regcache::cooked_read_value): Likewise.
12267         (regcache_cooked_read_signed):
12268         (regcache::cooked_read): Likewise.
12269         * regcache.h (readable_regcache): New class.
12270         (regcache): Inherit readable_regcache.  Move some methods to
12271         readable_regcache.
12272         * rl78-tdep.c (rl78_pseudo_register_read): Change
12273         parameter type to 'readable_regcache *'.
12274         * rs6000-tdep.c (do_regcache_raw_read): Remove.
12275         (e500_pseudo_register_read): Change parameter type to
12276         'readable_regcache *'.
12277         (dfp_pseudo_register_read): Likewise.
12278         (vsx_pseudo_register_read): Likewise.
12279         (efpr_pseudo_register_read): Likewise.
12280         * s390-tdep.c (s390_pseudo_register_read): Likewise.
12281         * sh-tdep.c (sh_pseudo_register_read): Likewise.
12282         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
12283         (sh64_pseudo_register_read): Likewise.
12284         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
12285         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12286         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
12287         (spu_pseudo_register_read): Likewise.
12288         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12289         (xtensa_pseudo_register_read): Likewise.
12290
12291 2018-02-21  Yao Qi  <yao.qi@linaro.org>
12292
12293         * regcache.c (regcache::regcache): Call reg_buffer ctor.
12294         (regcache::arch): Move it to reg_buffer::arch.
12295         (regcache::register_buffer): Likewise.
12296         (regcache::assert_regnum): Likewise.
12297         (regcache::num_raw_registers): Likewise.
12298         * regcache.h (reg_buffer): New class.
12299         (regcache): Inherit reg_buffer.
12300
12301 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
12302
12303         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
12304         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
12305
12306 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
12307
12308         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
12309
12310 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
12311
12312         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
12313         (SFILES): Remove common/*.c files.
12314         (COMMON_OBS): Remove some *.o files built from common/*.c files.
12315         * common/common.host: Add common reference.
12316         * configure.ac: Likewise.
12317         * configure: Regenerate.
12318
12319 2018-02-16  Yao Qi  <yao.qi@linaro.org>
12320
12321         * block.c (block_namespace_info): Inherit allocate_on_obstack.
12322         (block_initialize_namespace): Use new.
12323         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
12324         (dwarf2_free_objfile): Use delete.
12325         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
12326         (copy_type_recursive): Use new.
12327         * gdb_obstack.h (allocate_on_obstack): New.
12328
12329 2018-02-15  Yao Qi  <yao.qi@linaro.org>
12330
12331         PR gdb/22849
12332         * inferior.c (exit_inferior_1): Reset inf->control.
12333
12334 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
12335
12336         * ada-lang.c (ada_to_fixed_value_create): Delete advance
12337         declaration.
12338
12339 2018-02-14  Pedro Alves  <palves@redhat.com>
12340
12341         * frame-unwind.c (frame_unwind_try_unwinder): Always call
12342         frame_cleanup_after_sniffer on exception.
12343
12344 2018-02-14  Tom Tromey  <tom@tromey.com>
12345
12346         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
12347         const.
12348         (solib_bfd_open): Make pathname const.
12349         * solib.c (solib_bfd_open): Make pathname const.
12350         * solib-spu.c (spu_bfd_fopen): Make name const.
12351         (spu_bfd_open): Make pathname const.
12352         * solib-darwin.c (darwin_bfd_open): Make pathname const.
12353         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
12354
12355 2018-02-14  Tom Tromey  <tom@tromey.com>
12356
12357         * symfile.c (symfile_bfd_open): Update.
12358         * source.h (openp, source_full_path_of, find_and_open_source):
12359         Change argument type to unique_xmalloc_ptr.
12360         * source.c (openp): Take a unique_xmalloc_ptr.
12361         (source_full_path_of, find_and_open_source): Likewise.
12362         (open_source_file, symtab_to_fullname): Update.
12363         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
12364         unique_xmalloc_ptr.
12365         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
12366         (exec_file_find): Update.
12367         * psymtab.c (psymtab_to_fullname): Update.
12368         * nto-tdep.h (nto_find_and_open_solib): Update.
12369         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
12370         unique_xmalloc_ptr.
12371         * exec.c (exec_file_attach): Update.
12372         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
12373         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
12374
12375 2018-02-14  Tom Tromey  <tom@tromey.com>
12376
12377         * solib.c: Include source.h.
12378         * nto-tdep.c: Include source.h.
12379         * mi/mi-cmd-env.c: Include source.h.
12380         * infcmd.c: Include source.h.
12381         * exec.c: Include source.h.
12382         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
12383         (add_path, directory_switch, source_path, init_source_path): Move
12384         declarations...
12385         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
12386         (add_path, directory_switch, source_path, init_source_path):
12387         ...here.
12388
12389 2018-02-14  Tom Tromey  <tom@tromey.com>
12390
12391         * solist.h (exec_file_find, solib_find): Return
12392         unique_xmalloc_ptr.
12393         (solib_bfd_fopen): Take a const char *.
12394         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
12395         (exec_file_find, solib_find): Likewise.
12396         (solib_bfd_fopen): Do not take ownership of "pathname".
12397         (solib_bfd_open): Use unique_xmalloc_ptr.
12398         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
12399         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
12400         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
12401         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
12402
12403 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
12404
12405         * ada-lang.c (name_match_type_from_name): Remove reference to
12406         ada_name_for_lookup in function's documentation.
12407         * ada-lang.h (ada_name_for_lookup): Delete declaration.
12408
12409 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12410
12411         * defs.h (enum openp_flags): New enum.
12412         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
12413         Move to enum openp_flags.
12414         (openp_flags): New enum flags.
12415         (openp): Change parameter type to openp_flags.
12416         * source.c (openp): Change parameter type to openp_flags.
12417         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
12418         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
12419
12420 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
12421
12422         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
12423         per-command.
12424
12425 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12426
12427         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
12428         into...
12429         (class dwarf2_queue_guard): ...the destructor of this new class.
12430         (dw2_do_instantiate_symtab): Create instance of the new class
12431         dwarf2_queue_guard, remove cleanup.
12432
12433 2018-02-09  Tom Tromey  <tom@tromey.com>
12434
12435         * source.c (find_source_lines): Don't reference past the end of
12436         the vector.
12437
12438 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12439
12440         * remote.c (remote_btrace_maybe_reopen): Change error message.
12441         * btrace.c (btrace_enable): Likewise.
12442         (parse_xml_btrace): Likewise.
12443         (parse_xml_btrace_conf): Likewise.
12444
12445 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12446
12447         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
12448         (linux_enable_pt, linux_enable_bts): Call
12449         diagnose_perf_event_open_fail.
12450
12451 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12452
12453         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
12454         Remove parameter and change return type.  Update callers.  Move it.
12455         (linux_enable_bts, linux_enable_pt): Improve error message.
12456         (linux_enable_pt): Remove zero buffer size check.
12457         (linux_enable_btrace): Improve error messages.  Remove NULL return
12458         check.
12459
12460 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12461
12462         * btrace.c (btrace_enable): Remove target_supports_btrace call.
12463         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
12464         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
12465         (linux_supports_pt, linux_supports_btrace): Remove.
12466         (linux_enable_bts): Call cpu_supports_bts.
12467         * nat/linux-btrace.h (linux_supports_btrace): Remove.
12468         * remote.c (remote_supports_btrace): Remove.
12469         (init_remote_ops): Remove remote_supports_btrace.
12470         * target-delegates.c: Regenerated.
12471         * target.c (target_supports_btrace): Remove.
12472         * target.h (target_ops) <to_supports_btrace>: Remove
12473         (target_supports_btrace): Remove.
12474         * x86-linux-nat.c (x86_linux_create_target): Remove
12475         linux_supports_btrace.
12476
12477 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12478
12479         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
12480         btrace failed.
12481         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
12482         exception and use message in own exception.
12483
12484 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12485
12486         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
12487         (perf_event_pt_event_type): Use gdb_file_up.
12488         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
12489         scoped_fd, and scoped_mmap.
12490
12491 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12492
12493         * common/scoped_mmap.h: New.
12494         * unittests/scoped_mmap-selftest.c: New.
12495         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12496         unittests/scoped_mmap-selftest.c.
12497
12498 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
12499
12500         * common/scoped_fd.h: New.
12501         * unittests/scoped_fd-selftest.c: New.
12502         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12503         unittests/scoped_fd-selftest.c.
12504
12505 2018-02-09  Tom Tromey  <tom@tromey.com>
12506
12507         * auto-load.c (auto_load_section_scripts): Use
12508         gdb::unique_xmalloc_ptr.
12509
12510 2018-02-09  Tom Tromey  <tom@tromey.com>
12511
12512         * auto-load.c (execute_script_contents): Use std::string.
12513
12514 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
12515
12516         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
12517         Python function, rather than a new command.
12518
12519 2018-02-08  Tom Tromey  <tom@tromey.com>
12520
12521         * solib.c (solib_find_1): Use std::string.
12522         (solib_bfd_fopen): Use unique_xmalloc_ptr.
12523
12524 2018-02-08  Tom Tromey  <tom@tromey.com>
12525
12526         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
12527
12528 2018-02-08  Tom Tromey  <tom@tromey.com>
12529
12530         * source.c (find_source_lines): Use gdb::def_vector.
12531
12532 2018-02-08  Tom Tromey  <tom@tromey.com>
12533
12534         * macrocmd.c (struct temporary_macro_definition): New.
12535         (macro_define_command): Use temporary_macro_definition.  Remove
12536         cleanups.
12537         (free_macro_definition_ptr): Remove.
12538
12539 2018-02-08  Tom Tromey  <tom@tromey.com>
12540
12541         * macroexp.c (maybe_expand): Use std::string.
12542
12543 2018-02-08  Tom Tromey  <tom@tromey.com>
12544
12545         * macroexp.c (struct macro_buffer): Add initializers for some
12546         members.
12547         (init_buffer, init_shared_buffer, free_buffer)
12548         (free_buffer_return_text): Remove.
12549         (macro_buffer): New constructors.
12550         (~macro_buffer): New destructor.
12551         (macro_buffer::set_shared): New method.
12552         (macro_buffer::resize_buffer, macro_buffer::appendc)
12553         (macro_buffer::appendmem): Now methods, not free functions.
12554         (set_token, append_tokens_without_splicing, stringify)
12555         (macro_stringify): Update.
12556         (gather_arguments): Change return type.  Remove argc_p argument,
12557         add args_ptr argument.  Use std::vector.
12558         (substitute_args): Remove argc argument.  Accept std::vector.
12559         (expand): Update.  Use std::vector.
12560         (scan, macro_expand, macro_expand_next): Update.
12561
12562 2018-02-08  Tom Tromey  <tom@tromey.com>
12563
12564         * symtab.c (default_collect_symbol_completion_matches_break_on):
12565         Use unique_xmalloc_ptr.
12566         * macroscope.h: (sal_macro_scope, user_macro_scope)
12567         (default_macro_scope): Return unique_xmalloc_ptr.
12568         * macroscope.c (sal_macro_scope, user_macro_scope)
12569         (default_macro_scope): Return unique_xmalloc_ptr.
12570         * macroexp.h (macro_expand, macro_expand_once): Return
12571         unique_xmalloc_ptr.
12572         * macroexp.c (macro_expand, macro_expand_once): Return
12573         unique_xmalloc_ptr.
12574         * macrocmd.c (macro_expand_command, macro_expand_once_command)
12575         (info_macro_command, info_macros_command): Use
12576         unique_xmalloc_ptr.
12577         * compile/compile-c-support.c (write_macro_definitions): Use
12578         unique_xmalloc_ptr.
12579         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
12580
12581 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
12582
12583         * value.c (value_static_field): Assign field type instead of
12584         containing type when returning an optimized out value.
12585
12586 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12587
12588         * ft32-tdep.c (ft32_read_pc): Remove.
12589         (ft32_write_pc): Remove.
12590         (ft32_gdbarch_init): Update.
12591         * m32r-tdep.c (m32r_read_pc): Remove.
12592         (m32r_gdbarch_init): Update.
12593         * mep-tdep.c (mep_read_pc): Remove.
12594         (mep_gdbarch_init): Update.
12595         * microblaze-tdep.c (microblaze_write_pc): Remove.
12596         (microblaze_gdbarch_init): Update.
12597         * mn10300-tdep.c (mn10300_read_pc): Remove.
12598         (mn10300_write_pc): Remove.
12599         (mn10300_gdbarch_init): Update.
12600         * moxie-tdep.c (moxie_read_pc): Remove.
12601         (moxie_write_pc): Remove.
12602         (moxie_gdbarch_init): Update.
12603
12604 2018-02-06  Yao Qi  <yao.qi@linaro.org>
12605
12606         * expprint.c (print_subexp_standard): Handle
12607         OP_F77_UNDETERMINED_ARGLIST.
12608         (dump_subexp_body_standard): Likewise.
12609
12610 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
12611
12612         * target-descriptions.c (tdesc_element_visitor) Add empty
12613         implementations.
12614         (tdesc_type): Move make_gdb_type from here.
12615         (tdesc_type_builtin): Likewise.
12616         (tdesc_type_vector): Likewise.
12617         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
12618         (make_gdb_type_struct): Move from tdesc_type_with_fields.
12619         (make_gdb_type_union): Likewise.
12620         (make_gdb_type_flags): Likewise.
12621         (make_gdb_type_enum): Likewise.
12622         (make_gdb_type): New function.
12623         (tdesc_register_type): Use static make_gdb_type.
12624
12625 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
12626
12627         * infcmd.c (default_print_one_register_info): Align natural-format
12628         column values consistently one under another.
12629         (pad_to_column): New function.
12630
12631 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
12632
12633         * dwarf2read.c (dwarf2_physname): Move commment.
12634
12635 2018-02-01  Leszek Swirski  <leszeks@google.com>
12636
12637         * varobj.c (varobj_formatted_print_options): Allow recursive
12638         pretty printing if pretty printing is enabled.
12639
12640 2018-02-01  Leszek Swirski  <leszeks@google.com>
12641
12642         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
12643         names after a structop as a filename.
12644
12645 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12646
12647         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
12648         (arm_record_coproc_data_proc): Likewise.
12649
12650 2018-02-01  Yao Qi  <yao.qi@linaro.org>
12651
12652         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
12653
12654 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
12655
12656         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
12657         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
12658
12659 2018-01-31  Pedro Alves  <palves@redhat.com>
12660
12661         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
12662         * inflow.c (child_terminal_save_inferior): Wrap reference to
12663         tcgetpgrp in HAVE_TERMIOS_H.
12664         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
12665         _WIN32.
12666         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
12667         always iterate over all inferiors.
12668         (gdbsim_cntrl_c): Adjust.
12669         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
12670
12671 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12672
12673         * gdbtypes.c (lookup_array_range_type): Make sure the array's
12674         index type is objfile-owned if the element type is as well.
12675
12676 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
12677
12678         GDB 8.1 released.
12679
12680 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12681
12682         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
12683         "features/s390x-linux64.c".
12684         (_initialize_s390_linux_tdep): Remove initialization of tdescs
12685         s390_linux32 and s390x_linux64.
12686         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
12687         default tdesc.
12688         * s390-tdep.c: Include "features/s390-linux32.c" and
12689         "features/s390x-linux64.c".
12690         (s390_tdesc_valid): Add check for tdesc_has_registers.
12691         (s390_gdbarch_init): Make sure there is always a valid tdesc.
12692         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
12693         tdesc_s390x_linux64.
12694         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
12695         tdesc_s390x_linux64 to...
12696         * s390-tdep.h: ...here.
12697
12698 2018-01-30  Pedro Alves  <palves@redhat.com>
12699
12700         PR gdb/13211
12701         * config.in, configure: Regenerate.
12702         * configure.ac: Check for getpgid.
12703         * go32-nat.c (go32_pass_ctrlc): New.
12704         (go32_target): Install it.
12705         * inf-child.c (inf_child_target): Install
12706         child_terminal_save_inferior, child_pass_ctrlc and
12707         child_interrupt.
12708         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
12709         (inf_ptrace_target): No longer install it.
12710         * infcmd.c (interrupt_target_1): Adjust.
12711         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
12712         (child_interrupt): Declare.
12713         (inferior::terminal_state): New.
12714         * inflow.c (struct terminal_info): Update comments.
12715         (inferior_process_group): Delete.
12716         (terminal_is_ours): Delete.
12717         (gdb_tty_state): New.
12718         (child_terminal_init): Adjust.
12719         (is_gdb_terminal, sharing_input_terminal_1)
12720         (sharing_input_terminal): New functions.
12721         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
12722         Set the process's actual process group in the foreground if
12723         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
12724         mark terminal as the inferior's if not sharing GDB's terminal.
12725         Don't check attach_flag.
12726         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
12727         pass down a target_terminal_state.
12728         (child_terminal_save_inferior): New, factored out from ...
12729         (child_terminal_ours_1): ... this.  Handle
12730         target_terminal_state::is_ours_for_output.
12731         (child_interrupt, child_pass_ctrlc): New.
12732         (inflow_inferior_exit): Clear the inferior's terminal_state.
12733         (copy_terminal_info): Copy the inferior's terminal state.
12734         (_initialize_inflow): Remove reference to terminal_is_ours.
12735         * inflow.h (inferior_process_group): Delete.
12736         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
12737         * procfs.c (procfs_target): Don't install procfs_interrupt.
12738         (procfs_interrupt): Delete.
12739         * remote.c (remote_serial_quit_handler): Adjust.
12740         (remote_interrupt): Remove ptid parameter.  Adjust.
12741         * target-delegates.c: Regenerate.
12742         * target.c: Include "terminal.h".
12743         (target_terminal::terminal_state): Rename to ...
12744         (target_terminal::m_terminal_state): ... this.
12745         (target_terminal::init): Adjust.
12746         (target_terminal::inferior): Adjust to per-inferior
12747         terminal_state.
12748         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
12749         (target_terminal::ours, target_terminal::ours_for_output): Use
12750         target_terminal_is_ours_kind.
12751         (target_interrupt): Remove ptid parameter.  Adjust.
12752         (default_target_pass_ctrlc): Adjust.
12753         * target.h (target_ops::to_terminal_save_inferior): New field.
12754         (target_ops::to_interrupt): Remove ptid_t parameter.
12755         (target_interrupt): Remove ptid_t parameter.  Update comment.
12756         (target_pass_ctrlc): Update comment.
12757         * target/target.h (target_terminal_state): New scoped enum,
12758         factored out of ...
12759         (target_terminal::terminal_state): ... here.
12760         (target_terminal::inferior): Update comments.
12761         (target_terminal::restore_inferior): New.
12762         (target_terminal::is_inferior, target_terminal::is_ours)
12763         (target_terminal::is_ours_for_output): Adjust.
12764         (target_terminal::scoped_restore_terminal_state): Adjust to
12765         rename, and call restore_inferior() instead of inferior().
12766         (target_terminal::scoped_restore_terminal_state::m_state): Change
12767         type.
12768         (target_terminal::terminal_state): Rename to ...
12769         (target_terminal::m_terminal_state): ... this and change type.
12770
12771 2018-01-30  Pedro Alves  <palves@redhat.com>
12772
12773         * linux-nat.c (wait_for_signal): New function.
12774         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
12775         directly.
12776         (async_terminal_is_ours)
12777         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
12778         (linux_nat_add_target): Don't override
12779         to_terminal_inferior/to_terminal_ours.
12780
12781 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12782
12783         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12784
12785 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12786
12787         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12788         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12789         dwarf2_per_objfile_free here.
12790         (dwarf2_per_objfile_free): Remove.
12791         (_initialize_dwarf2_read): Don't register
12792         dwarf2_per_objfile_free as a registry cleanup.
12793
12794 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12795
12796         Avoid compilation errors in MinGW native builds
12797
12798         The error is triggered by including python-internal.h, and the
12799         error message is:
12800
12801              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12802                       from build-gnulib/import/math.h:27,
12803                       from d:/usr/Python26/include/pyport.h:235,
12804                       from d:/usr/Python26/include/Python.h:58,
12805                       from python/python-internal.h:94,
12806                       from python/py-arch.c:24:
12807              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12808         using ::hypot;
12809                 ^~~~~
12810
12811         This happens because Python headers define 'hypot' to expand t
12812         '_hypot' in the Windows builds.
12813         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12814         'hypoth'.  This avoids a compilation error.
12815
12816 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12817
12818         * MAINTAINERS (Write After Approval): Fix ordering.
12819
12820 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12821
12822         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12823
12824 2018-01-26  Alan Modra  <amodra@gmail.com>
12825
12826         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12827         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12828         Remove nop.  Make const.  Comment.
12829         (powerpc32_plt_stub_so_2): New.
12830         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12831         Correct count.  Update uses.
12832         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12833         Move common code reading PLT entry word.  Correct
12834         powerpc32_plt_stub PLT address calculation.
12835         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12836         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12837         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12838         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12839         (ppc64_standard_linkage8): Likewise.
12840         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12841         Correct insns description.
12842         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12843
12844 2018-01-24  Pedro Alves  <palves@redhat.com>
12845
12846         GCC PR libstdc++/83906
12847         * gdbtypes.c (operator==(const dynamic_prop &,
12848         const dynamic_prop &)): New.
12849         (operator==(const range_bounds &, const range_bounds &)): New.
12850         (check_types_equal): Use them instead of memcmp.
12851         * gdbtypes.h (operator==(const dynamic_prop &,
12852         const dynamic_prop &)): Declare.
12853         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12854         (operator==(const range_bounds &, const range_bounds &)): Declare.
12855         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12856
12857 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12858
12859         * s390-linux-tdep.c (s390_record_address_mask)
12860         (s390_record_calc_disp_common, s390_record_calc_disp)
12861         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12862         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12863         (s390_process_record): Move to s390-tdep.c.
12864         (s390_linux_init_abi_any): Adjust.
12865         * s390-tdep.c (s390_record_address_mask)
12866         (s390_record_calc_disp_common, s390_record_calc_disp)
12867         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12868         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12869         (s390_process_record): Moved from s390-linux-tdep.c
12870         (s390_gdbarch_init): Adjust.
12871
12872 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12873
12874         * s390-linux-nat.c (s390-tdep.h): New include.
12875         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12876         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12877         (ALLDEPFILES): Add s390-tdep.c.
12878         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12879         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12880         * s390-tdep.h: ...this.  New file.
12881         * s390-linux-tdep.c (s390-tdep.h): New include.
12882         (_initialize_s390_tdep): Rename to...
12883         (_initialize_s390_linux_tdep): ...this and adjust.
12884         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12885         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12886         s390-tdep.h.
12887         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12888         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12889         (s390_is_partial_instruction, s390_software_single_step)
12890         (is_non_branch_ril, s390_displaced_step_copy_insn)
12891         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12892         (s390_prologue_data, s390_addr, s390_store, s390_load)
12893         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12894         (s390_register_call_saved, s390_guess_tracepoint_registers)
12895         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12896         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12897         (s390_pseudo_register_name, s390_pseudo_register_type)
12898         (s390_pseudo_register_read, s390_pseudo_register_write)
12899         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12900         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12901         (s390_addr_bits_remove, s390_address_class_type_flags)
12902         (s390_address_class_type_flags_to_name)
12903         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12904         (s390_function_arg_float, s390_function_arg_vector)
12905         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12906         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12907         (s390_frame_align, s390_register_return_value, s390_return_value)
12908         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12909         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12910         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12911         (s390_trad_frame_prev_register, s390_unwind_cache)
12912         (s390_prologue_frame_unwind_cache)
12913         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12914         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12915         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12916         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12917         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12918         (s390_frame_base_address, s390_local_base_address)
12919         (s390_frame_base, s390_gcc_target_options)
12920         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12921         (s390_validate_reg_range, s390_tdesc_valid)
12922         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12923         * s390-tdep.c: ...this.  New file.
12924
12925 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12926
12927         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12928         (s390_process_record, s390_gdbarch_tdep_alloc)
12929         (s390_linux_init_abi_any): Use/set new hook.
12930
12931 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12932
12933         * s390-linux-tdep.c (osabi.h): New include.
12934         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12935         (s390_linux_init_abi_any): New functions.
12936         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12937
12938 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12939
12940         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12941         tdesc_has_registers check
12942
12943 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12944
12945         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12946         (s390_validate_reg_range): New macro.
12947         (s390_gdbarch_init): Adjust.
12948
12949 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12950
12951         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12952         (s390_gdbarch_tdep_alloc): Adjust.
12953         (s390_gdbarch_init): Adjust.
12954
12955 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12956
12957         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12958         <have_tdb>: Change type to bool.
12959         (s390_gdbarch_tdep_alloc): Adjust.
12960         (s390_gdbarch_init): Adjust.
12961
12962 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12963
12964         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12965         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12966         (s390_gdbarch_tdep_alloc): New function.
12967         (s390_gdbarch_init): Allocate tdep at start and use its fields
12968         instead of separate variables.
12969
12970 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12971
12972         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12973         when looking for cached gdbarch and add comment for remaining.
12974
12975 2018-01-22  Pedro Alves  <palves@redhat.com>
12976             Sergio Durigan Junior  <sergiodj@redhat.com>
12977
12978         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12979         case.
12980
12981 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12982
12983         * MAINTAINERS: Update my company e-mail address.
12984
12985 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12986
12987         * regcache.c (cooked_write_test): New function.
12988         (_initialize_regcache): Register the test.
12989
12990 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12991
12992         * ia64-tdep.c (ia64_pseudo_register_read): Call
12993         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12994         * m32c-tdep.c (m32c_cat_read): Likewise.
12995         (m32c_r3r2r1r0_read): Likewise.
12996         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12997         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12998
12999 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13000
13001         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
13002         method raw_read instead of regcache_raw_read.
13003         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13004         * arm-tdep.c (arm_neon_quad_read): Likewise.
13005         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13006         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13007         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13008         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
13009         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13010         (i386_pseudo_register_read_into_value): Likewise.
13011         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13012         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13013         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13014         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
13015         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
13016         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
13017         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13018         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
13019         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
13020
13021 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13022
13023         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
13024         * configure.tgt: Remove target mt.
13025         * mt-tdep.c: Remove.
13026         * regcache.c (cooked_read_test): Remove the check for mt.
13027
13028 2018-01-22  Yao Qi  <yao.qi@linaro.org>
13029
13030         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
13031         instead of gdbarch_pseudo_register_read_value.
13032
13033 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13034
13035         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
13036         language is Ada.
13037
13038 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
13039
13040         * linespec.c (create_sals_line_offset): Remove code that preserved
13041         the symtab_and_line's line number.
13042
13043 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13044
13045         * varobj.c (varobj_create): Don't set valid_block when creating a
13046         floating varobj.
13047
13048 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13049
13050         * varobj.c (varobj_create): Remove out of date comment.
13051
13052 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13053
13054         PR mi/20395
13055         * ada-exp.y (write_var_from_sym): Pass extra parameter when
13056         updating innermost block.
13057         * parse.c (innermost_block_tracker::update): Take extra type
13058         parameter, and check types match before updating innermost block.
13059         (write_dollar_variable): Update innermost block for registers.
13060         * parser-defs.h (enum innermost_block_tracker_type): New enum.
13061         (innermost_block_tracker::innermost_block_tracker): Initialise
13062         m_types member.
13063         (innermost_block_tracker::reset): Take type parameter.
13064         (innermost_block_tracker::update): Take type parameter, and pass
13065         type through as needed.
13066         (innermost_block_tracker::m_types): New member.
13067         * varobj.c (varobj_create): Pass type when reseting innermost
13068         block.
13069
13070 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13071
13072         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
13073         * ada-lang.c (resolve_subexp): Likewise.
13074         * breakpoint.c (set_breakpoint_condition) Likewise.
13075         (watch_command_1) Likewise.
13076         * c-exp.y (variable): Likewise.
13077         * d-exp.y (PrimaryExpression): Likewise.
13078         * f-exp.y (variable): Likewise.
13079         * go-exp.y (variable): Likewise.
13080         * m2-exp.y (variable): Likewise.
13081         * objfiles.c (objfile::~objfile): Likewise.
13082         * p-exp.y (variable): Likewise.
13083         * parse.c (innermost_block): Change type.
13084         * parser-defs.h (class innermost_block_tracker): New.
13085         (innermost_block): Change to innermost_block_tracker.
13086         * printcmd.c (display_command): Switch to innermost_block API.
13087         (do_one_display): Likewise.
13088         * rust-exp.y (do_one_display): Likewise.
13089         * symfile.c (clear_symtab_users): Likewise.
13090         * varobj.c (varobj_create): Switch to innermost_block API, replace
13091         use of innermost_block with block stored on varobj object.
13092
13093 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
13094
13095         * expression.h (innermost_block): Remove declaration.
13096         * varobj.c: Add 'parser-defs.h' include.
13097
13098 2018-01-19  Tom Tromey  <tom@tromey.com>
13099
13100         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
13101         symbols in the static and global blocks.
13102
13103 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
13104
13105         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
13106         gdb_ptrace.h, and move including gdb_wait.h ...
13107         * nat/linux-ptrace.h: ... to here.
13108
13109 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13110
13111         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
13112         inf_ptrace_detach_success.
13113         (inf_ptrace_detach_success): Add inferior parameter, use it
13114         instead of inferior_ptid, pass it to detach_inferior.
13115         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
13116         parameter.
13117         * inferior.c (detach_inferior): Add overload that takes an
13118         inferior object.
13119         * inferior.h (detach_inferior): Likewise.
13120         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
13121         use inferior_ptid, adjust call to inf_ptrace_detach_success.
13122         * linux-thread-db.c (thread_db_detach): Use inf parameter.
13123
13124 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13125
13126         * target.h (struct target_ops) <to_detach>: Add inferior
13127         parameter.
13128         (target_detach): Likewise.
13129         * target.c (dispose_inferior): Pass inferior down.
13130         (target_detach): Pass inferior down.  Assert that it is equal to
13131         the current inferior.
13132         * aix-thread.c (aix_thread_detach): Pass inferior down.
13133         * corefile.c (core_file_command): Pass current_inferior() down.
13134         * corelow.c (core_detach): Add inferior parameter.
13135         * darwin-nat.c (darwin_detach): Likewise.
13136         * gnu-nat.c (gnu_detach): Likewise.
13137         * inf-ptrace.c (inf_ptrace_detach): Likewise.
13138         * infcmd.c (detach_command): Pass current_inferior() down to
13139         target_detach.
13140         * infrun.c (follow_fork_inferior): Pass parent_inf to
13141         target_detach.
13142         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
13143         target_detach.
13144         * linux-nat.c (linux_nat_detach): Add inferior parameter.
13145         * linux-thread-db.c (thread_db_detach): Likewise.
13146         * nto-procfs.c (procfs_detach): Likewise.
13147         * procfs.c (procfs_detach): Likewise.
13148         * record.c (record_detach): Likewise.
13149         * record.h (struct inferior): Forward-declare.
13150         (record_detach): Add inferior parameter.
13151         * remote-sim.c (gdbsim_detach): Likewise.
13152         * remote.c (remote_detach_1): Likewise.
13153         (remote_detach): Likewise.
13154         (extended_remote_detach): Likewise.
13155         * sol-thread.c (sol_thread_detach): Likewise.
13156         * target-debug.h (target_debug_print_inferior_p): New macro.
13157         * target-delegates.c: Re-generate.
13158         * top.c (kill_or_detach): Pass inferior down to target_detach.
13159         * windows-nat.c (windows_detach): Add inferior parameter.
13160
13161 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
13162
13163         * target.h (struct target_ops) <to_detach>: Remove args
13164         parameter.
13165         (target_detach): Likewise.
13166         * target.c (dispose_inferior): Adjust.
13167         (target_detach): Remove args parameter, adjust.
13168         * aix-thread.c (aix_thread_detach): Adjust.
13169         * corefile.c (core_file_command): Adjust.
13170         * corelow.c (core_detach): Adjust.
13171         * darwin-nat.c (darwin_detach): Adjust.
13172         * gnu-nat.c (gnu_detach): Adjust.
13173         * inf-ptrace.c (inf_ptrace_detach): Adjust.
13174         * infcmd.c (detach_command): Adjust
13175         * infrun.c (follow_fork_inferior): Adjust.
13176         (handle_vfork_child_exec_or_exit): Adjust.
13177         * linux-fork.c (linux_fork_detach): Remove args parameter.
13178         * linux-fork.h (linux_fork_detach): Likewise.
13179         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
13180         * linux-thread-db.c (thread_db_detach): Likewise.
13181         * nto-procfs.c (procfs_detach): Likewise.
13182         * procfs.c (procfs_detach): Likewise.
13183         (do_detach): Remove signo parameter.
13184         * record.c (record_detach): Remove args parameter.
13185         * record.h (record_detach): Likewise.
13186         * remote-sim.c (gdbsim_detach): Likewise.
13187         * remote.c (remote_detach_1): Likewise.
13188         (remote_detach): Likewise.
13189         (extended_remote_detach): Likewise.
13190         * sol-thread.c (sol_thread_detach): Likewise.
13191         * target-delegates.c: Re-generate.
13192         * top.c (struct qt_args) <args>: Remove field.
13193         (kill_or_detach): Don't pass args.
13194         (quit_force): Don't set args.
13195         * windows-nat.c (windows_detach): Remove args parameter.
13196
13197 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13198
13199         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
13200         (arm_linux_init_abi): Install it.
13201
13202 2018-01-19  Yao Qi  <yao.qi@linaro.org>
13203
13204         * osabi.c (gdb_osabi_names): Extend the regexp for
13205         arm-linux-gnueabihf.
13206
13207 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13208
13209         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
13210         m_abbrevs.
13211         (abbrev_table::add_abbrev): Update.
13212         (abbrev_table::lookup_abbrev): Update.
13213
13214 2018-01-18  Yao Qi  <yao.qi@linaro.org>
13215
13216         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
13217
13218 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
13219
13220         * compile/compile.c (compile_to_object): Convert "triplet_rx"
13221         to "std::string".
13222
13223 2018-01-17  Tom Tromey  <tom@tromey.com>
13224
13225         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
13226
13227 2018-01-17  Tom Tromey  <tom@tromey.com>
13228
13229         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
13230         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
13231         (create_array_type_with_stride): Update.
13232         * dwarf2read.c (set_die_type): Update.
13233
13234 2018-01-17  Tom Tromey  <tom@tromey.com>
13235
13236         * dwarf2read.c (delayed_method_info): Remove typedef.
13237         (dwarf2_cu::method_info): Now a std::vector.
13238         (add_to_method_list): Update.
13239         (free_delayed_list): Remove.
13240         (compute_delayed_physnames): Update.
13241         (process_full_comp_unit, process_full_type_unit): Clear the method
13242         list.  Remove cleanups.
13243         (psymtab_include_file_name): Add name_holder parameter.  Use
13244         unique_xmalloc_ptr.
13245         (dwarf_decode_lines): Update.
13246
13247 2018-01-17  Tom Tromey  <tom@tromey.com>
13248             Simon Marchi  <simon.marchi@ericsson.com>
13249
13250         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
13251         (dwarf2_per_objfile::free_cached_comp_units)
13252         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13253         (init_cutu_and_read_dies_no_follow): Update.
13254         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
13255         (dwarf2_cu::~dwarf2_cu): New.
13256         (free_heap_comp_unit, free_stack_comp_unit): Remove.
13257         (age_cached_comp_units, free_one_cached_comp_unit): 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) <abbrev_table>: Remove.
13263         (struct die_reader_specs) <abbrev_table>: New member.
13264         (struct abbrev_table): Add constructor.
13265         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
13266         <abbrev_obstack>: Now an auto_obstack.
13267         (abbrev_table_up): New typedef.
13268         (init_cu_die_reader): Add abbrev_table parameter.
13269         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
13270         Add result_dwo_abbrev_table.
13271         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
13272         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
13273         Update.
13274         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
13275         parameter.
13276         (skip_children): Update.
13277         (abbrev_table::alloc_abbrev): Rename from
13278         abbrev_table_alloc_abbrev.
13279         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
13280         (abbrev_table::lookup_abbrev): Rename from
13281         abbrev_table_lookup_abbrev.
13282         (abbrev_table_read_table): Return abbrev_table_up.
13283         (abbrev_table_free, abbrev_table_free_cleanup)
13284         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
13285         (load_partial_dies): Update.
13286
13287 2018-01-17  Tom Tromey  <tom@tromey.com>
13288
13289         * dwarf2read.c (dwarf2_compute_name): Update comment.
13290         (read_func_scope, read_variable): Update.
13291         (new_symbol): Remove.
13292         (new_symbol_full): Rename to new_symbol.
13293
13294 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
13295
13296         PR gdb/16577
13297         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
13298         a warning instead of throwing an error, set section size to 0 and return
13299         NULL.
13300         * gdb_bfd.h (gdb_bfd_map_section): Update description.
13301
13302 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13303
13304         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
13305         std::string.
13306         (linux_ptrace_attach_fail_reason_string): Likewise.
13307         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
13308         Likewise.
13309         (linux_ptrace_attach_fail_reason_string): Likewise.
13310         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
13311
13312 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
13313
13314         * linux-nat.c (linux_nat_attach): Remove xstrdup.
13315
13316 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
13317
13318         PR gdb/21559
13319         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
13320         checking for fs_base/gs_base fields in struct user_regs_struct.
13321         * configure: Regenerate.
13322
13323 2018-01-17  Yao Qi  <yao.qi@linaro.org>
13324
13325         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
13326         function.
13327         (aarch64_linux_init_abi): Install it to gdbarch hook
13328         gcc_target_options.
13329
13330 2018-01-15  Pedro Alves  <palves@redhat.com>
13331
13332         * common/signals-state-save-restore.c
13333         (save_original_signals_state): Fix typos.
13334
13335 2017-01-12  Tom Tromey  <tom@tromey.com>
13336             Sergio Durigan Junior  <sergiodj@redhat.com>
13337
13338         * Makefile.in (install-only): Install gdb-add-index.
13339
13340 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
13341
13342         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
13343
13344 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13345
13346         * infrun.c (keep_going_pass_signal): Clear step-over info when
13347         insert_breakpoints fails.
13348
13349 2018-01-11  Pedro Alves  <palves@redhat.com>
13350
13351         PR gdb/22583
13352         * infrun.c (resume): Rename to ...
13353         (resume_1): ... this.
13354         (resume): Reimplement as wrapper around resume_1.
13355
13356 2018-01-11  Pedro Alves  <palves@redhat.com>
13357
13358         PR remote/22597
13359         * remote.c (remote_parse_stop_reply): Default to the last-set
13360         general thread instead of to 'magic_null_ptid'.
13361
13362 2018-01-10  Pedro Alves  <palves@redhat.com>
13363
13364         * language.h (language_get_symbol_name_matcher): Rename ...
13365         (get_symbol_name_matcher): ... this.
13366         * language.c (language_get_symbol_name_matcher): Ditto.
13367         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
13368         callers adjusted.
13369
13370 2018-01-10  Pedro Alves  <palves@redhat.com>
13371
13372         PR gdb/22670
13373         * dwarf2read.c
13374         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
13375         Adjust to use language_get_symbol_name_matcher instead of
13376         language_defn::la_get_symbol_name_matcher.
13377         * language.c (language_get_symbol_name_matcher): If in Ada mode
13378         and the lookup name is a verbatim match, return Ada's matcher.
13379         * language.h (language_get_symbol_name_matcher): Adjust comment.
13380         (ada_lookup_name_info::verbatim_p):: New method.
13381
13382 2018-01-10  Pedro Alves  <palves@redhat.com>
13383
13384         PR gdb/22670
13385         * ada-lang.c (ada_collect_symbol_completion_matches): If the
13386         minsym's language is language_auto or language_cplus, pass down
13387         language_ada instead.
13388         * symtab.c (compare_symbol_name): Don't frob symbol language here.
13389
13390 2018-01-10  Pedro Alves  <palves@redhat.com>
13391
13392         PR gdb/22670
13393         * minsyms.c (linkage_name_str): New function.
13394         (iterate_over_minimal_symbols): Use it.
13395
13396 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13397
13398         * NEWS: Document that 'info proc' now works on FreeBSD.
13399
13400 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13401
13402         * configure.ac: Check for kinfo_getfile in libutil.
13403         * configure: Regenerate.
13404         * config.in: Regenerate.
13405         * fbsd-nat.c: Include "fbsd-tdep.h".
13406         (fbsd_fetch_cmdline): New.
13407         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
13408         rather than calling error.
13409         (fbsd_info_proc): New.
13410         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
13411         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
13412         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
13413
13414 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13415
13416         * fbsd-nat.c (struct free_deleter): Remove.
13417         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
13418
13419 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13420
13421         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
13422         NULL for an empty pathname.
13423
13424 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
13425
13426         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
13427         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
13428         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
13429         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
13430         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
13431         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
13432         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
13433         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
13434         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
13435         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
13436         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
13437         (fbsd_core_fetch_timeval, fbsd_print_sigset)
13438         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
13439         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
13440         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
13441
13442 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
13443
13444         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
13445         (gnu_xfer_auxv): New function.
13446         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
13447         TARGET_OBJECT_AUXV.
13448
13449 2018-01-08  Yao Qi  <yao.qi@linaro.org>
13450             Simon Marchi  <simon.marchi@ericsson.com>
13451
13452         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
13453         common/selftest.c.
13454         (COMMON_OBS): Remove selftest.o.
13455         * configure.ac: Append selftest-arch.c and common/selftest.c to
13456         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
13457         * configure: Re-generated.
13458         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
13459         GDB_SELF_TEST.
13460         (maintenance_info_selftests): Likewise.
13461
13462 2018-01-08  Xavier Roirand  <roirand@adacore.com>
13463
13464         * ada-valprint.c (val_print_packed_array_elements): Use
13465         proper number of elements when printing an array indexed
13466         by an enumeration type.
13467
13468 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13469
13470         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
13471         (dw2_get_file_names_reader): Adjust.
13472         (lookup_dwo_signatured_type): Adjust.
13473         (lookup_dwp_signatured_type): Adjust.
13474         (lookup_signatured_type): Adjust.
13475         (create_type_unit_group): Adjust.
13476         (get_type_unit_group): Adjust.
13477         (process_psymtab_comp_unit_reader): Adjust.
13478         (build_type_psymtabs_reader): Adjust.
13479         (scan_partial_symbols): Adjust.
13480         (add_partial_symbol): Adjust.
13481         (add_partial_subprogram): Adjust.
13482         (peek_die_abbrev): Adjust.
13483         (fixup_go_packaging): Adjust.
13484         (process_imported_unit_die): Adjust.
13485         (dwarf2_compute_name): Adjust.
13486         (dwarf2_physname): Adjust.
13487         (read_import_statement): Adjust.
13488         (handle_DW_AT_stmt_list): Adjust.
13489         (read_file_scope): Adjust.
13490         (read_func_scope): Adjust.
13491         (read_lexical_block_scope): Adjust.
13492         (read_call_site_scope): Adjust.
13493         (read_variable): Adjust.
13494         (dwarf2_rnglists_process): Adjust.
13495         (dwarf2_ranges_process): Adjust.
13496         (dwarf2_ranges_read): Adjust.
13497         (dwarf2_get_pc_bounds): Adjust.
13498         (dwarf2_record_block_ranges): Adjust.
13499         (dwarf2_add_field): Adjust.
13500         (dwarf2_add_member_fn): Adjust.
13501         (read_structure_type): Adjust.
13502         (process_structure_scope): Adjust.
13503         (read_enumeration_type): Adjust.
13504         (read_array_type): Adjust.
13505         (mark_common_block_symbol_computed): Adjust.
13506         (read_common_block): Adjust.
13507         (read_namespace_type): Adjust.
13508         (read_namespace): Adjust.
13509         (read_module_type): Adjust.
13510         (read_tag_pointer_type): Adjust.
13511         (read_tag_ptr_to_member_type): Adjust.
13512         (read_tag_string_type): Adjust.
13513         (read_subroutine_type): Adjust.
13514         (read_typedef): Adjust.
13515         (read_base_type): Adjust.
13516         (attr_to_dynamic_prop): Adjust.
13517         (read_subrange_type): Adjust.
13518         (read_unspecified_type): Adjust.
13519         (dwarf2_read_abbrevs): Adjust.
13520         (load_partial_dies): Adjust.
13521         (read_partial_die): Adjust.
13522         (find_partial_die): Adjust.
13523         (guess_partial_die_structure_name): Adjust.
13524         (fixup_partial_die): Adjust.
13525         (read_attribute_value): Adjust.
13526         (read_addr_index): Adjust.
13527         (read_addr_index_from_leb128): Adjust.
13528         (read_str_index): Adjust.
13529         (dwarf2_string_attr): Adjust.
13530         (get_debug_line_section): Adjust.
13531         (dwarf_decode_line_header): Adjust.
13532         (lnp_state_machine::check_line_address): Adjust.
13533         (dwarf_decode_lines_1): Adjust.
13534         (dwarf_decode_lines): Adjust.
13535         (dwarf2_start_symtab): Adjust.
13536         (var_decode_location): Adjust.
13537         (new_symbol_full): Adjust.
13538         (dwarf2_const_value_data): Adjust.
13539         (dwarf2_const_value_attr): Adjust.
13540         (dwarf2_const_value): Adjust.
13541         (die_type): Adjust.
13542         (die_containing_type): Adjust.
13543         (build_error_marker_type): Adjust.
13544         (lookup_die_type): Adjust.
13545         (guess_full_die_structure_name): Adjust.
13546         (anonymous_struct_prefix): Adjust.
13547         (determine_prefix): Adjust.
13548         (dwarf2_name): Adjust.
13549         (follow_die_ref_or_sig): Adjust.
13550         (follow_die_offset): Adjust.
13551         (follow_die_ref): Adjust.
13552         (follow_die_sig_1): Adjust.
13553         (follow_die_sig): Adjust.
13554         (get_signatured_type): Adjust.
13555         (get_DW_AT_signature_type): Adjust.
13556         (decode_locdesc): Adjust.
13557         (dwarf_decode_macros): Adjust.
13558         (cu_debug_loc_section): Adjust.
13559         (fill_in_loclist_baton): Adjust.
13560         (dwarf2_symbol_mark_computed): Adjust.
13561         (init_one_comp_unit): Don't assign
13562         dwarf2_cu::dwarf2_per_objfile.
13563         (set_die_type): Adjust.
13564
13565 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13566
13567         * dwarf2read.c (struct mapped_debug_names): Add constructor.
13568         <dwarf2_per_objfile>: New field.
13569         (dwarf2_per_objfile): Remove global.
13570         (get_dwarf2_per_objfile): New function.
13571         (set_dwarf2_per_objfile): New function.
13572         (dwarf2_build_psymtabs_hard): Change objfile parameter to
13573         dwarf2_per_objfile.
13574         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13575         (read_abbrev_offset): Likewise.
13576         (read_indirect_string): Likewise.
13577         (read_indirect_line_string): Likewise.
13578         (read_indirect_string_at_offset): Likewise.
13579         (read_indirect_string_from_dwz): Likewise.
13580         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13581         dwarf2_per_objfile.
13582         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13583         (create_all_comp_units): Change objfile parameter to
13584         dwarf2_per_objfile.
13585         (create_all_type_units): Likewise.
13586         (process_queue): Add dwarf2_per_objfile parameter.
13587         (read_and_check_comp_unit_head): Likewise.
13588         (lookup_dwo_unit_in_dwp): Likewise.
13589         (get_dwp_file): Likewise.
13590         (process_cu_includes): Likewise.
13591         (struct free_dwo_file_cleanup_data): New struct.
13592         (dwarf2_has_info): Use get_dwarf2_per_objfile and
13593         set_dwarf2_per_objfile.
13594         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
13595         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
13596         context, adjust calls.
13597         (dw2_instantiate_symtab): Likewise.
13598         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
13599         (dw2_get_cu): Likewise.
13600         (create_cu_from_index_list): Change objfile parameter to
13601         dwarf2_per_objfile.
13602         (create_cus_from_index_list): Get dwarf2_per_objfile from
13603         context, adjust calls.
13604         (create_cus_from_index): Likewise.
13605         (create_signatured_type_table_from_index): Change objfile
13606         parameter to dwarf2_per_objfile.
13607         (create_signatured_type_table_from_debug_names): Change objfile
13608         parameter to dwarf2_per_objfile.
13609         (create_addrmap_from_index): Likewise.
13610         (create_addrmap_from_aranges): Likewise.
13611         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
13612         (dw2_setup): Remove.
13613         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
13614         context.
13615         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
13616         get_dwarf2_per_objfile.
13617         (dw2_forget_cached_source_info): Likewise.
13618         (dw2_map_symtabs_matching_filename): Likewise.
13619         (struct dw2_symtab_iterator) <index>: Remove.
13620         <dwarf2_per_objfile>: New field.
13621         (dw2_symtab_iter_init): Replace index parameter with
13622         dwarf2_per_objfile.
13623         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
13624         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
13625         (dw2_print_stats): Likewise.
13626         (dw2_dump): Likewise.
13627         (dw2_expand_symtabs_for_function): Likewise.
13628         (dw2_expand_all_symtabs): Likewise.
13629         (dw2_expand_symtabs_with_fullname): Likewise.
13630         (dw2_expand_marked_cus): Replace index and objfile parameters
13631         with dwarf2_per_objfile.
13632         (dw_expand_symtabs_matching_file_matcher): Add
13633         dwarf2_per_objfile parameter and adjust calls.
13634         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
13635         adjust calls.
13636         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
13637         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
13638         adjust calls.
13639         (create_cus_from_debug_names_list): Replace objfile parameter
13640         with dwarf2_per_objfile and adjust calls.
13641         (create_cus_from_debug_names): Likewise.
13642         (dwarf2_read_debug_names): Likewise.
13643         (mapped_debug_names::namei_to_name): Adjust call.
13644         (dw2_debug_names_iterator::next): Likewise.
13645         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
13646         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
13647         (dw2_debug_names_dump): Likewise.
13648         (dw2_debug_names_expand_symtabs_for_function): Likewise.
13649         (dw2_debug_names_expand_symtabs_matching): Likewise.
13650         (dwarf2_initialize_objfile): Likewise.
13651         (dwarf2_build_psymtabs): Likewise.
13652         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
13653         this_cu.
13654         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
13655         (read_and_check_comp_unit_head): Likewise.
13656         (read_abbrev_offset): Likewise.
13657         (create_debug_type_hash_table): Likewise.
13658         (create_debug_types_hash_table): Likewise.
13659         (create_all_type_units): Replace objfile parameter with
13660         dwarf2_per_objfile.
13661         (add_type_unit): Add dwarf2_per_objfile parameter.
13662         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
13663         with dwarf2_per_objfile.
13664         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
13665         (lookup_dwp_signatured_type): Likewise.
13666         (lookup_signatured_type): Likewise.
13667         (read_cutu_die_from_dwo): Likewise.
13668         (init_tu_and_read_dwo_dies): Likewise.
13669         (init_cutu_and_read_dies): Likewise.
13670         (init_cutu_and_read_dies_no_follow): Likewise.
13671         (allocate_type_unit_groups_table): Add objfile parameter.
13672         (create_type_unit_group): Use dwarf2_per_objfile from cu.
13673         (get_type_unit_group): Likewise.
13674         (process_psymtab_comp_unit): Update call.
13675         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
13676         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
13677         (print_tu_stats): Likewise.
13678         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
13679         in void* parameter.
13680         (build_type_psymtabs): Change objfile parameter to
13681         dwarf2_per_objfile.
13682         (process_skeletonless_type_unit): Use dwarf2_per_objfile
13683         passed in void* parameter.
13684         (process_skeletonless_type_units): Change objfile parameter to
13685         dwarf2_per_objfile.
13686         (set_partial_user): Likewise.
13687         (dwarf2_build_psymtabs_hard): Likewise.
13688         (read_comp_units_from_section): Likewise.
13689         (create_all_comp_units): Likewise.
13690         (scan_partial_symbols): Update calls.
13691         (add_partial_symbol): Likewise.
13692         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
13693         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
13694         (process_queue): Add dwarf2_per_objfile parameter.
13695         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
13696         (compute_compunit_symtab_includes): Likewise.
13697         (process_cu_includes): Add dwarf2_per_objfile parameter.
13698         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
13699         (process_full_type_unit): Likewise.
13700         (process_imported_unit_die): Update call.
13701         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
13702         (read_file_scope): Likewise.
13703         (allocate_dwo_file_hash_table): Add objfile parameter.
13704         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
13705         (create_cus_hash_table): Likewise.
13706         (create_dwp_hash_table): Likewise.
13707         (create_dwo_unit_in_dwp_v1): Likewise.
13708         (create_dwp_v2_section): Likewise.
13709         (create_dwo_unit_in_dwp_v2): Likewise.
13710         (lookup_dwo_unit_in_dwp): Likewise.
13711         (try_open_dwop_file): Likewise.
13712         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
13713         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
13714         cleanup to include a reference to dwarf2_per_objfile.
13715         (open_dwp_file): Add dwarf2_per_objfile parameter.
13716         (open_and_init_dwp_file): Likewise.
13717         (get_dwp_file): Likewise.
13718         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
13719         (queue_and_load_all_dwo_tus): Update call.
13720         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
13721         data.
13722         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
13723         (dwarf2_ranges_process): Likewise.
13724         (dwarf2_get_pc_bounds): Likewise.
13725         (mark_common_block_symbol_computed): Likewise.
13726         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
13727         (dwarf2_read_abbrevs): Update call.
13728         (read_partial_die): Use dwarf2_per_objfile from cu.
13729         (find_partial_die): Likewise.
13730         (fixup_partial_die): Likewise.
13731         (read_attribute_value): Likewise.
13732         (read_indirect_string_at_offset_from): Add objfile parameter.
13733         (read_indirect_string_at_offset): Add dwarf2_per_objfile
13734         parameter.
13735         (read_indirect_string_from_dwz): Add objfile parameter.
13736         (read_indirect_string): Add objfile parameter.
13737         (read_addr_index_1): Add dwarf2_per_objfile parameter.
13738         (read_addr_index): Use dwarf2_per_objfile from cu.
13739         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
13740         call dw2_setup.
13741         (read_str_index): Use dwarf2_per_objfile from cu.
13742         (get_debug_line_section): Likewise.
13743         (read_formatted_entries): Add dwarf2_per_objfile parameter.
13744         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
13745         (new_symbol_full): Use dwarf2_per_objfile from cu.
13746         (build_error_marker_type): Likewise.
13747         (lookup_die_type): Likewise.
13748         (determine_prefix): Likewise.
13749         (follow_die_offset): Likewise.
13750         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
13751         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
13752         (dwarf2_fetch_die_type_sect_off): Likewise.
13753         (dwarf2_get_die_type): Likewise.
13754         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
13755         (get_signatured_type): Likewise.
13756         (get_DW_AT_signature_type): Likewise.
13757         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
13758         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
13759         (cu_debug_loc_section): Likewise.
13760         (fill_in_loclist_baton): Likewise.
13761         (dwarf2_symbol_mark_computed): Likewise.
13762         (dwarf2_find_containing_comp_unit): Change objfile parameter to
13763         dwarf2_per_objfile.
13764         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
13765         parameter.
13766         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
13767         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
13768         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
13769         (set_die_type): Use dwarf2_free_objfile from cu.
13770         (get_die_type_at_offset): Likewise.
13771         (dwarf2_per_objfile_free): Don't assign global variable.
13772         (debug_names) <constructor>: Add dwarf2_per_objfile
13773         parameter, update m_debugstrlookup construction.
13774         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
13775         parameter.
13776         <m_dwarf2_per_objfile>: New field.
13777         <lookup>: Use m_dwarf2_per_objfile.
13778         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
13779         (psyms_seen_size): Likewise.
13780         (write_gdbindex): Replace objfile parameter with
13781         dwarf2_per_objfile.
13782         (write_debug_names): Likewise.
13783         (write_psymtabs_to_index): Likewise.
13784         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13785         calls.
13786
13787 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13788
13789         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13790         <dwarf2_per_objfile>: New field.
13791         (struct dwarf2_per_cu_data) <objfile>: Remove.
13792         <dwarf2_per_objfile>: New field.
13793         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13794         of objfile.
13795         (create_signatured_type_table_from_index): Likewise.
13796         (create_debug_type_hash_table): Likewise.
13797         (fill_in_sig_entry_from_dwo_entry): Likewise.
13798         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13799         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13800         objfile.
13801         (create_partial_symtab): Access objfile through
13802         dwarf2_per_objfile.
13803         (process_psymtab_comp_unit_reader): Likewise.
13804         (read_comp_units_from_section): Likewise.
13805         (scan_partial_symbols): Likewise.
13806         (add_partial_symbol): Likewise.
13807         (add_partial_subprogram): Likewise.
13808         (peek_die_abbrev): Likewise.
13809         (fixup_go_packaging): Likewise.
13810         (process_full_comp_unit): Likewise.
13811         (process_full_type_unit): Likewise.
13812         (process_imported_unit_die): Likewise.
13813         (dwarf2_compute_name): Likewise.
13814         (dwarf2_physname): Likewise.
13815         (read_import_statement): Likewise.
13816         (create_cus_hash_table): Assign dwarf2_physname instead of
13817         objfile.
13818         (read_func_scope): Access objfile through dwarf2_per_objfile.
13819         (read_lexical_block_scope): Likewise.
13820         (read_call_site_scope): Likewise.
13821         (read_variable): Likewise.
13822         (dwarf2_rnglists_process): Likewise.
13823         (dwarf2_ranges_process): Likewise.
13824         (dwarf2_ranges_read): Likewise.
13825         (dwarf2_record_block_ranges): Likewise.
13826         (dwarf2_add_field): Likewise.
13827         (dwarf2_add_member_fn): Likewise.
13828         (read_structure_type): Likewise.
13829         (process_structure_scope): Likewise.
13830         (read_enumeration_type): Likewise.
13831         (read_array_type): Likewise.
13832         (read_common_block): Likewise.
13833         (read_namespace_type): Likewise.
13834         (read_namespace): Likewise.
13835         (read_module_type): Likewise.
13836         (read_tag_pointer_type): Likewise.
13837         (read_tag_ptr_to_member_type): Likewise.
13838         (read_tag_string_type): Likewise.
13839         (read_subroutine_type): Likewise.
13840         (read_typedef): Likewise.
13841         (read_base_type): Likewise.
13842         (attr_to_dynamic_prop): Likewise.
13843         (read_subrange_type): Likewise.
13844         (read_unspecified_type): Likewise.
13845         (load_partial_dies): Likewise.
13846         (read_partial_die): Likewise.
13847         (find_partial_die): Likewise.
13848         (guess_partial_die_structure_name): Likewise.
13849         (fixup_partial_die): Likewise.
13850         (read_attribute_value): Likewise.
13851         (read_addr_index_from_leb128): Likewise.
13852         (dwarf2_read_addr_index): Likewise.
13853         (dwarf2_string_attr): Likewise.
13854         (lnp_state_machine::check_line_address): Likewise.
13855         (dwarf_decode_lines_1): Likewise.
13856         (dwarf_decode_lines): Likewise.
13857         (dwarf2_start_symtab): Likewise.
13858         (var_decode_location): Likewise.
13859         (new_symbol_full): Likewise.
13860         (dwarf2_const_value_data): Likewise.
13861         (dwarf2_const_value_attr): Likewise.
13862         (dwarf2_const_value): Likewise.
13863         (die_type): Likewise.
13864         (die_containing_type): Likewise.
13865         (lookup_die_type): Likewise.
13866         (guess_full_die_structure_name): Likewise.
13867         (anonymous_struct_prefix): Likewise.
13868         (dwarf2_name): Likewise.
13869         (follow_die_ref_or_sig): Likewise.
13870         (follow_die_offset): Likewise.
13871         (follow_die_ref): Likewise.
13872         (dwarf2_fetch_die_loc_sect_off): Likewise.
13873         (dwarf2_fetch_constant_bytes): Likewise.
13874         (dwarf2_fetch_die_type_sect_off): Likewise.
13875         (dwarf2_get_die_type): Likewise.
13876         (follow_die_sig): Likewise.
13877         (decode_locdesc): Likewise.
13878         (dwarf2_per_cu_objfile): Likewise.
13879         (dwarf2_per_cu_text_offset): Likewise.
13880         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13881         objfile.
13882         (set_die_type): Access objfile through
13883         dwarf2_per_objfile.
13884
13885 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13886
13887         * valprint.c (converted_character_d): Remove typedef.
13888         (DEF_VEC_O (converted_character_d)): Remove.
13889         (count_next_character): Use std::vector.
13890         (print_converted_chars_to_obstack): Likewise.
13891         (generic_printstr): Likewise.
13892
13893 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13894
13895         * xml-support.h (struct gdb_xml_value): Add constructor.
13896         <value>: Change type to unique_xmalloc_ptr.
13897         (gdb_xml_value_s): Remove typedef.
13898         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13899         (gdb_xml_element_start_handler): Change parameter type to
13900         std::vector.
13901         (xml_find_attribute): Likewise.
13902         * xml-support.c (xml_find_attribute): Change parameter type to
13903         std::vector and adjust.
13904         (gdb_xml_values_cleanup): Remove.
13905         (gdb_xml_parser::start_element): Adjust to std::vector.
13906         (xinclude_start_include): Change paraeter type to std::vector
13907         and adjust.
13908         * btrace.c (check_xml_btrace_version): Likewise.
13909         (parse_xml_btrace_block): Likewise.
13910         (parse_xml_btrace_pt_config_cpu): Likewise.
13911         (parse_xml_btrace_pt): Likewise.
13912         (parse_xml_btrace_conf_bts): Likewise.
13913         (parse_xml_btrace_conf_pt): Likewise.
13914         * memory-map.c (memory_map_start_memory): Likewise.
13915         (memory_map_start_property): Likewise.
13916         * osdata.c (osdata_start_osdata): Likewise.
13917         (osdata_start_item): Likewise.
13918         (osdata_start_column): Likewise.
13919         * remote.c (start_thread): Likewise.
13920         * solib-aix.c (library_list_start_library): Likewise.
13921         (library_list_start_list): Likewise.
13922         * solib-svr4.c (library_list_start_library): Likewise.
13923         (svr4_library_list_start_list): Likewise.
13924         * solib-target.c (library_list_start_segment): Likewise.
13925         (library_list_start_section): Likewise.
13926         (library_list_start_library): Likewise.
13927         (library_list_start_list): Likewise.
13928         * tracepoint.c (traceframe_info_start_memory): Likewise.
13929         (traceframe_info_start_tvar): Likewise.
13930         * xml-syscall.c (syscall_start_syscall): Likewise.
13931         * xml-tdesc.c (tdesc_start_target): Likewise.
13932         (tdesc_start_feature): Likewise.
13933         (tdesc_start_reg): Likewise.
13934         (tdesc_start_union): Likewise.
13935         (tdesc_start_struct): Likewise.
13936         (tdesc_start_flags): Likewise.
13937         (tdesc_start_enum): Likewise.
13938         (tdesc_start_field): Likewise.
13939         (tdesc_start_enum_value): Likewise.
13940         (tdesc_start_vector): Likewise.
13941
13942 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13943
13944         * extension.h (struct xmethod_worker) <clone>: Remove.
13945         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13946         Remove.
13947         (python_xmethod_worker::clone): Remove.
13948         * valops.c (find_overload_match): Use std::move instead of
13949         clone.
13950
13951 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13952
13953         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13954         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13955         <free_xmethod_worker_data>: Remove.
13956         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13957         <get_xmethod_arg_types>: Remove.
13958         <get_xmethod_result_type>: Remove.
13959         <invoke_xmethod>: Remove.
13960         * extension.c (new_xmethod_worker): Remove.
13961         (clone_xmethod_worker): Remove.
13962         (get_matching_xmethod_workers): Return void, pass std::vector by
13963         pointer.
13964         (get_xmethod_arg_types): Rename to...
13965         (xmethod_worker::get_arg_types): ... this, and adjust.
13966         (get_xmethod_result_type): Rename to...
13967         (xmethod_worker::get_result_type): ... this, and adjust.
13968         (invoke_xmethod): Remove.
13969         (free_xmethod_worker): Remove.
13970         (free_xmethod_worker_vec): Remove.
13971         * extension.h (enum ext_lang_rc): Move here from
13972         extension-priv.h.
13973         (struct xmethod_worker): Add constructor and destructor.
13974         <data>: Remove.
13975         <value>: Remove.
13976         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13977         virtual pure methods.
13978         <get_arg_types, get_result_type>: New methods.
13979         (xmethod_worker_ptr): Remove typedef.
13980         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13981         (xmethod_worker_vec): Remove typedef.
13982         (xmethod_worker_up): New typedef.
13983         (invoke_xmethod): Remove.
13984         (clone_xmethod_worker): Remove.
13985         (free_xmethod_worker): Remove.
13986         (free_xmethod_worker_vec): Remove.
13987         (get_xmethod_arg_types): Remove.
13988         (get_xmethod_result_type): Remove.
13989         * valops.c (find_method_list): Use std::vector, don't use
13990         intermediate vector.
13991         (value_find_oload_method_list): Use std::vector.
13992         (find_overload_match): Use std::vector.
13993         (find_oload_champ): Use std::vector.
13994         * value.c (value_free): Use operator delete.
13995         (value_of_xmethod): Rename to...
13996         (value_from_xmethod): ... this.  Don't assign
13997         xmethod_worker::value, take rvalue-reference.
13998         (result_type_of_xmethod): Adjust.
13999         (call_xmethod): Adjust.
14000         * value.h: Include extension.h.
14001         (struct xmethod_worker): Don't forward-declare.
14002         (value_of_xmethod): Rename to...
14003         (value_from_xmethod): ... this, take rvalue-reference.
14004         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
14005         (struct python_xmethod_worker): ... this, add constructor and
14006         destructor.
14007         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
14008         (gdbpy_free_xmethod_worker_data): Rename to...
14009         (python_xmethod_worker::~python_xmethod_worker): ... this and
14010         adjust.
14011         (gdbpy_clone_xmethod_worker_data): Rename to...
14012         (python_xmethod_worker::clone): ... this and adjust.
14013         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
14014         temporary vector.
14015         (gdbpy_get_xmethod_arg_types): Rename to...
14016         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
14017         (gdbpy_get_xmethod_result_type): Rename to...
14018         (python_xmethod_worker::do_get_result_type): ... this and
14019         adjust.
14020         (gdbpy_invoke_xmethod): Rename to...
14021         (python_xmethod_worker::invoke): ... this and adjust.
14022         (new_python_xmethod_worker): Rename to...
14023         (python_xmethod_worker::python_xmethod_worker): ... this and
14024         adjust.
14025         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
14026         Remove.
14027         (gdbpy_free_xmethod_worker_data): Remove.
14028         (gdbpy_get_matching_xmethod_workers): Use std::vector.
14029         (gdbpy_get_xmethod_arg_types): Remove.
14030         (gdbpy_get_xmethod_result_type): Remove.
14031         (gdbpy_invoke_xmethod): Remove.
14032         * python/python.c (python_extension_ops): Remove obsolete
14033         callbacks.
14034
14035 2018-01-05  Pedro Alves  <palves@redhat.com>
14036
14037         PR gdb/18653
14038         * common/signals-state-save-restore.c
14039         (save_original_signals_state): New parameter 'quiet'.  Warn if we
14040         find a custom handler preinstalled, instead of internal erroring.
14041         But only warn if !quiet.
14042         * common/signals-state-save-restore.h
14043         (save_original_signals_state): New parameter 'quiet'.
14044         * main.c (captured_main_1): Move save_original_signals_state call
14045         after option handling, and pass QUIET.
14046
14047 2018-01-05  Pedro Alves  <palves@redhat.com>
14048
14049         * spu-tdep.c (spu_catch_start): Pass
14050         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
14051
14052 2018-01-05  Pedro Alves  <palves@redhat.com>
14053
14054         PR gdb/22670
14055         * ada-lang.c (literal_symbol_name_matcher): New function.
14056         (ada_get_symbol_name_matcher): Use it for
14057         symbol_name_match_type::SEARCH_NAME.
14058         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
14059         it down instead of assuming symbol_name_match_type::FULL.
14060         * block.h (block_lookup_symbol): New parameter 'match_type'.
14061         * c-valprint.c (print_unpacked_pointer): Use
14062         lookup_symbol_search_name instead of lookup_symbol.
14063         * compile/compile-object-load.c (get_out_value_type): Pass down
14064         symbol_name_match_type::SEARCH_NAME.
14065         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
14066         symbol_name_match_type::FULL.
14067         * cp-support.c (cp_get_symbol_name_matcher): Handle
14068         symbol_name_match_type::SEARCH_NAME.
14069         * infrun.c (insert_exception_resume_breakpoint): Use
14070         lookup_symbol_search_name.
14071         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
14072         * psymtab.c (maintenance_check_psymtabs): Use
14073         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
14074         * stack.c (print_frame_args): Use lookup_symbol_search_name and
14075         SYMBOL_SEARCH_NAME.
14076         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
14077         if symbol_name_match_type::SEARCH_NAME.
14078         (lookup_symbol_in_language): Pass down
14079         symbol_name_match_type::FULL.
14080         (lookup_symbol_search_name): New.
14081         (lookup_language_this): Pass down
14082         symbol_name_match_type::SEARCH_NAME.
14083         (lookup_symbol_aux, lookup_local_symbol): New parameter
14084         'match_type'.  Pass it down.
14085         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
14086         (lookup_symbol_search_name): New declaration.
14087         (lookup_symbol_in_block): New 'match_type' parameter.
14088
14089 2018-01-05  Pedro Alves  <palves@redhat.com>
14090
14091         PR gdb/22670
14092         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
14093         ada_lookup_symbol.
14094         (ada_lookup_symbol): Reimplement in terms of
14095         ada_lookup_symbol_list, bits factored out from
14096         ada_lookup_encoded_symbol.
14097
14098 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14099
14100         * ada-exp.y (write_object_renaming): When subscripting an array
14101         using a symbol as the index, pass the block in call to
14102         ada_lookup_encoded_symbol when looking that symbol up.
14103
14104 2018-01-05  Jerome Guitton  <guitton@adacore.com>
14105
14106         * ada-lang.c (ada_array_length): Use ada_index_type instead of
14107         TYPE_INDEX_TYPE.
14108
14109 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14110
14111         * ada-lang.c (ada_to_fixed_value_create): Add handling of
14112         the case where VALUE_LVAL (val0) is not lval_memory.
14113
14114 2018-01-05  Xavier Roirand  <roirand@adacore.com>
14115
14116         * ada-valprint.c (print_optional_low_bound): Handle
14117         character-indexed array printing like boolean-indexed array
14118         printing.
14119
14120 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14121
14122         * NEWS: Create a new section for the next release branch.
14123         Rename the section of the current branch, now that it has
14124         been cut.
14125
14126 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
14127
14128         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
14129         * version.in: Bump version to 8.1.50.DATE-git.
14130
14131 2018-01-03  Xavier Roirand  <roirand@adacore.com>
14132
14133         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
14134         Add field.
14135         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
14136         Add field.
14137         (default_exception_support_info) <catch_handlers_sym>: Add field.
14138         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
14139         (ada_exception_name_addr_1): Add "catch handlers" handling.
14140         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
14141         Update all callers.
14142         (create_excep_cond_exprs) <ex>: Add parameter.
14143         (re_set_exception): Update create_excep_cond_exprs call.
14144         (print_it_exception, print_one_exception, print_mention_exception)
14145         (print_recreate_exception): Add "catch handler" handling.
14146         (allocate_location_catch_handlers, re_set_catch_handlers)
14147         (check_status_catch_handlers, print_it_catch_handlers)
14148         (print_one_catch_handlers, print_mention_catch_handlers)
14149         (print_recreate_catch_handlers): New function.
14150         (catch_handlers_breakpoint_ops): New variable.
14151         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
14152         Add parameter.  Add "catch handler" handling.
14153         (ada_exception_sym_name, ada_exception_breakpoint_ops):
14154         Add "catch handler" handling.
14155         (ada_exception_catchpoint_cond_string): Add "catch handler"
14156         handling.
14157         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
14158         call.
14159         (catch_ada_handlers_command): New function.
14160         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
14161         operations structure.
14162         (_initialize_ada_language): Add "catch handlers" command entry.
14163         * NEWS: Document "catch handlers" feature.
14164
14165 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14166
14167         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
14168         account when creating the array type of the slice.
14169         (ada_value_slice): Likewise.
14170
14171 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14172
14173         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
14174         New enum value.
14175         (create_array_type_with_stride): Add byte_stride_prop parameter.
14176         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
14177         New parameter.  Update all callers in this file.
14178         (array_type_has_dynamic_stride): New function.
14179         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
14180         of arrays with dynamic byte strides.
14181         * dwarf2read.c (read_array_type): Add support for dynamic
14182         DW_AT_byte_stride attributes.
14183
14184 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
14185
14186         * dwarf2read.c (read_unspecified_type): Treat
14187         DW_TAG_enumeration_type DIEs from Ada units as stubs.
14188
14189 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14190
14191         Update copyright year range in all GDB files.
14192
14193 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14194
14195         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
14196         and gdb/testsuite/gdb.base/step-line.c.
14197
14198 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14199
14200         * copyright.py (main): Dump the contents of
14201         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
14202         even if BY_HAND is empty.
14203
14204 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14205
14206         * top.c (print_gdb_version): Update Copyright year in version
14207         message.
14208
14209 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
14210
14211         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
14212
14213 For older changes see ChangeLog-2017.
14214 \f
14215 Local Variables:
14216 mode: change-log
14217 left-margin: 8
14218 fill-column: 74
14219 version-control: never
14220 coding: utf-8
14221 End: